Image Processing/Analysis Image Processing Toolbox

pancakesnightmuteAI and Robotics

Nov 5, 2013 (3 years and 9 months ago)

216 views

Sundermeyer

MAR 550

Spring 2013

1

Laboratory in Oceanography:

Data and Methods



MAR550, Spring 2013

Miles A. Sundermeyer

Image Processing/Analysis

Sundermeyer

MAR 550

Spring 2013

2

Image Processing/Analysis

Image Processing Toolbox/Product Overview

Overview of Image Processing Toolbox


A collection of functions that extend the capability of MATLAB numeric
computing for image processing operations, including:


Spatial image transformations


Morphological operations


Neighborhood and block operations


Linear filtering and filter design


Transforms


Image analysis and enhancement


Image registration


Deblurring


Region of interest operations

Sundermeyer

MAR 550

Spring 2013

3

Image Processing/Analysis

Image Processing Toolbox/Product Overview

Loading and writing images


To read an image, use ‘imread’


Example:

>> imfinfo('pout2.png')

>> I = imread('pout.tif');

>> imshow(I)

>> whos I

>>

>> II = imread(‘StarWars.tif’);

>> whos II

>> imshow(StarWars(:,:,1:3);

>>

>> imwrite (II(:,:,1:3), ‘StarWars.png');

Sundermeyer

MAR 550

Spring 2013

4

Image Processing/Analysis

Image Processing Toolbox/Introduction/Image Types in the Toolbox

Image Type

Interpretation

Binary

(aka
bilevel
)

Logical

array of 0s and 1s, interpreted as b&w

Indexed

(aka
pseudocolor
)

Array of class
logical
,
uint8
,
uint16
,
single
, or
double

whose pixel values are direct indices into an
m
-
by
-
3
colormap.

Grayscale

(aka
intensity
,
gray scale
, or
gray level
)

Array of class
uint8
,
uint16
,
int16
,
single
, or
double

whose
pixel values specify intensity values.

Truecolor

(aka
RGB

image )

An
m
-
by
-
n
-
by
-
3 array of class
uint8
,
uint16
,
single
, or
double

whose pixel values specify intensity values.

Sundermeyer

MAR 550

Spring 2013

5

Image Processing/Analysis

Image Processing Toolbox/Introduction/Image Types in the Toolbox

The Separated Color Planes of an RGB Image


Sundermeyer

MAR 550

Spring 2013

6

Image Processing/Analysis

Image Processing Toolbox/Introduction/Image Types in the Toolbox

red

green

blue

Sundermeyer

MAR 550

Spring 2013

7

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies by:


G. A. Stuart (2007)

Sundermeyer

MAR 550

Spring 2013

8

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)


The time evolution of a centrally injected patch of green dye was observed in
response to a preset sequence of 8 mixing events

Sundermeyer

MAR 550

Spring 2013

9

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)

Sundermeyer

MAR 550

Spring 2013

10

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)


Computing and subtracting image background


>> bkgd = blkproc(newa,[5 5],[50 50],@(x) nanmedian(x(:)));

Sundermeyer

MAR 550

Spring 2013

11

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)


Identify ‘dark bits’


>> bkgcutoff = 165;


>> darkbits = find(ambkg<bkgcutoff


& ~(ambkg==nan));

Sundermeyer

MAR 550

Spring 2013

12

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)


Linearly interpolate over masked portions of image


>> newdarkbits = griddata(Xgrid(lightbits),Ygrid(lightbits),a(lightbits), ...


Xgrid(darkbits),Ygrid(darkbits),'linear');

Sundermeyer

MAR 550

Spring 2013

13

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)

Sundermeyer

MAR 550

Spring 2013

14

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)

Sundermeyer

MAR 550

Spring 2013

15

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)

Sundermeyer

MAR 550

Spring 2013

16

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)

Sundermeyer

MAR 550

Spring 2013

17

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)

Sundermeyer

MAR 550

Spring 2013

18

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)

Sundermeyer

MAR 550

Spring 2013

19

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)

Sundermeyer

MAR 550

Spring 2013

20



Area
dt
d
H
2
1


b
a
Area






Two
-
Dimensional dye variance

Inferred Eddy Diffusivity

Time (s)

Area of Ellipse (m
2
)


H

= 2.3 x 10
-
5
m
2
s
-
1

Observed area

Fitted slope

Image Processing/Analysis

Image Processing Toolbox

Example: Lab Studies (cont’d)


Calculate growth rate of dye
variance to determine
effective horizontal diffusivity


Sundermeyer

MAR 550

Spring 2013

21

Laboratory in Oceanography:

Data and Methods



MAR550, Spring 2013

Miles A. Sundermeyer

Image Processing/Analysis

Part II

Sundermeyer

MAR 550

Spring 2013

22

Image Processing/Analysis

Mapping Toolbox/Getting Started/Product Overview

Overview of Mapping Toolbox


A collection of functions that extend the capability of MATLAB numeric
computing for mapping and GIS operations, including:


Geospatial data import and access


Vector map data and geographic data structures


Geo
-
referenced images and data grids


Map projections and coordinates


Map display and interaction


Geographic calculations for vector and raster data


A map viewer and other graphical user interfaces


Sundermeyer

MAR 550

Spring 2013

23

Image Processing/Analysis

Mapping Toolbox/Getting Started/Your First Maps

Loading and plotting simple map data


Example:

>> worldmap world


%
create an empty map axis

>> load coast


% load and plot coastlines

>> plotm(lat, long)



Example:

>> h = worldmap('Europe')

% create a new map axes for Europe

>>




% and add data to the map

>> geoshow('landareas.shp', 'FaceColor', [0.15 0.5 0.15])

>> geoshow('worldlakes.shp', 'FaceColor', 'cyan')

>> geoshow('worldrivers.shp', 'Color', 'blue')

>> geoshow('worldcities.shp', 'Marker', '.', 'MarkerEdgeColor', 'red')

Sundermeyer

MAR 550

Spring 2013

24

Image Processing/Analysis

Mapping Toolbox/Getting Started/Your First Maps

The Map Viewer is an interactive tool for browsing map data


Example:

>> mapview

>> % To import Mapping Toolbox demo data, change directory to:

>> cd(fullfile(matlabroot,'toolbox','map','mapdemos'))

>> % (can also get here by navigating to 'toolbox/map/mapdemos')

>> % Import a vector data layer

>> boston_roads = shaperead('boston_roads.shp');

...

Sundermeyer

MAR 550

Spring 2013

25

Image Processing/Analysis

Mapping Toolbox/Understanding Map Data/Understanding Vector Geo
-
Data

Points, Lines, Polygons


Vector geospatial data is used to represent linear features such as rivers,
coastlines, boundaries, and highways



Example:

>> lat = [45.6
-
23.47 78]; long = [13
-
97.45 165];

Sundermeyer

MAR 550

Spring 2013

26

Image Processing/Analysis

Mapping Toolbox

Example: Allens Pond Nutrient Loading / Tidal Flushing Study

Case Studies in Estuarine Dynamics (MAR620), Spring 2008

Sylvan
Nurseries

Quanset
Nurseries

Zylfee Brook

gauge

Tide gauge
(still need
datum)

Isaac's Brook

gauge

Unable to
gauge

Audubon
Field Station

Fresh Pond

(velocity only)

Margaret's Brook

(velocity only)

Current Inlet
(approximate
location)

Inlet does not
connect to this
channel


Water Column sampling

Zylfee Brook

(velocity only)
TBD

Sundermeyer

MAR 550

Spring 2013

27

Image Processing/Analysis

Mapping Toolbox

Example: Allens Pond Nutrient Loading / Tidal Flushing Study

Case Studies in Estuarine Dynamics (MAR620), Spring 2008

Sundermeyer

MAR 550

Spring 2013

28

Image Processing/Analysis

Mapping Toolbox

Example: Allens Pond Nutrient Loading / Tidal Flushing Study

Case Studies in Estuarine Dynamics (MAR620), Spring 2008

Sundermeyer

MAR 550

Spring 2013

29

Image Processing/Analysis

Mapping Toolbox

Example: Allens Pond Nutrient Loading / Tidal Flushing Study

Case Studies in Estuarine Dynamics (MAR620), Spring 2008

Sundermeyer

MAR 550

Spring 2013

30

Image Processing/Analysis

Mapping Toolbox

Example: Allens Pond Nutrient Loading / Tidal Flushing Study

Case Studies in Estuarine Dynamics (MAR620), Spring 2008

Sundermeyer

MAR 550

Spring 2013

31

Image Processing/Analysis

Mapping Toolbox

Example: Allens Pond Nutrient Loading / Tidal Flushing Study

Case Studies in Estuarine Dynamics (MAR620), Spring 2008

Sundermeyer

MAR 550

Spring 2013

32

Image Processing/Analysis

Mapping Toolbox

Useful Tidbits:


Mass GIS website: http://www.mass.gov/mgis/massgis.htm