Upload
tyler-dennis
View
227
Download
3
Embed Size (px)
Citation preview
© 2002-2003 by Yu Hen Hu1ECE533 Digital Image Processing
Image Segmentation
© 2002-2003 by Yu Hen Hu2ECE533 Digital Image Processing
What is Image Segmentation?
Segmentation: » Split or separate an image into
regions» To facilitate recognition,
understanding, and region of interests (ROI) processing
Ill-defined problem» The definition of a region is context-
dependent
20 40 60
20
40
60
© 2002-2003 by Yu Hen Hu3ECE533 Digital Image Processing
Outline
Discontinuity Detection» Point, edge, line
Edge Linking and boundary detection Thresholding Region based segmentation Segmentation by morphological
watersheds Motion segmentation
© 2002-2003 by Yu Hen Hu4ECE533 Digital Image Processing
Point Detection
Apply detection mask, followed by threshold detection
© 2002-2003 by Yu Hen Hu5ECE533 Digital Image Processing
Line Detection
Useful for detecting lines with width = 1.
© 2002-2003 by Yu Hen Hu6ECE533 Digital Image Processing
Edge Detection
Points and lines are special cases of edges.
Edge detection is difficult since it is not clear what amounts to an edge!
© 2002-2003 by Yu Hen Hu7ECE533 Digital Image Processing
Edge Detection
© 2002-2003 by Yu Hen Hu8ECE533 Digital Image Processing
Impact of Noise
© 2002-2003 by Yu Hen Hu9ECE533 Digital Image Processing
First & Second Derivatives of Edges
gradient, ofdirection :tan),(
gradient of magnitude :
/
/
1
22
x
y
yxyx
y
x
G
Gyx
GGGG
yf
xf
G
G
f
f
© 2002-2003 by Yu Hen Hu10ECE533 Digital Image Processing
Edge Detection Operators
Figure 10.8, 10.9
© 2002-2003 by Yu Hen Hu11ECE533 Digital Image Processing
Approximate Gradient with L1 Norm
© 2002-2003 by Yu Hen Hu12ECE533 Digital Image Processing
Effects of Smoothing
© 2002-2003 by Yu Hen Hu13ECE533 Digital Image Processing
Emphasizing Diagonal Edges
Use diagonal Sobel operator shown in figure 10.9(d)
© 2002-2003 by Yu Hen Hu14ECE533 Digital Image Processing
Laplacian and Mexican Hat
2222 2/4
222/22
2
2
2
22
)(
rr e
rerh
y
f
x
ff
LoG operator
© 2002-2003 by Yu Hen Hu15ECE533 Digital Image Processing
Comparison of Edge Detection
original Sobel LoG Threshold LoG Zero-crossing
Gaussian smooth operator
Laplacian operator
Gradient method: suitable for abrupt gray level transition, sensitive to noise
2nd order derivative: good for smooth edges
© 2002-2003 by Yu Hen Hu16ECE533 Digital Image Processing
Boundary Extraction
Edge detection classifies individual pixels to be on an edge or not.
Isolated edge pixels is more likely to be noise rather than a true edge.
Adjacent or connected edge pixels should be linked together to form boundary of regions that segment the image.
Edge linking methods:» Local processing » Hough transform» Graphic theoretic method» Dynamic programming
© 2002-2003 by Yu Hen Hu17ECE533 Digital Image Processing
Local Processing Edge Linking
An edge pixel will be linked to another edge pixel within its own neighborhood if they meet two criteria:
( , ) ( , )
( , ) ( , )
o o
o o
f x y f x y E
x y x y A
© 2002-2003 by Yu Hen Hu18ECE533 Digital Image Processing
Global Processing Edge Linking: Hough Transform
Find a subset of n points on an image that lie on the same straight line.Write each line formed by a pair of these points as
yi = axi + bThen plot them on the parameter space (a, b):
b = xi a + yi
All points (xi, yi) on the same line will pass the same parameter space point (a, b).Quantize the parameter space and tally # of times each points fall into the same accumulator cell. The cell count = # of points in the same line.
© 2002-2003 by Yu Hen Hu19ECE533 Digital Image Processing
Hough Transform in () plane
To avoid infinity slope, use polar coordinate to represent a line.
Q points on the same straight line gives Q sinusoidal curves in () plane intersecting at the same (ii) cell.
sincos yx
© 2002-2003 by Yu Hen Hu20ECE533 Digital Image Processing
Example
© 2002-2003 by Yu Hen Hu21ECE533 Digital Image Processing
Example
© 2002-2003 by Yu Hen Hu22ECE533 Digital Image Processing
Threshold Segmentation
© 2002-2003 by Yu Hen Hu23ECE533 Digital Image Processing
Effect of Illumination on Thresholding
© 2002-2003 by Yu Hen Hu24ECE533 Digital Image Processing
Threshold Example
© 2002-2003 by Yu Hen Hu25ECE533 Digital Image Processing
Needs of Adaptive Threshold
© 2002-2003 by Yu Hen Hu26ECE533 Digital Image Processing
Needs of Local Threshold
Properly and improperly segmented subimages from Fig. 10.30.
Further division of the sub-image, and result of adaptive thresholding
© 2002-2003 by Yu Hen Hu27ECE533 Digital Image Processing
Threshold: Hypothesis Testing
Question: » Does this pixel with
intensity z belong to a region (edge) or not?
Hypothesis» H0: Null. It does not» H1: Alt. It does
Likelihood» p(z|zH0) = p1(z)» p(z| z H1) = p2(z)
Prior» P1 = p(zH0) , » P2 = p(zH1)
Maximum likelihood: » Pixel z belongs to a region if
p(z|H1) > p(z|H0)
Bayesian:
P2 p(z|H1) > P1 p(z|H0)
Sufficient statistic:z > T
© 2002-2003 by Yu Hen Hu28ECE533 Digital Image Processing
Uni-model Gaussian Example
Given
Set
P1 p1(T) = P2 p2(T)
and solve for T. Take log on both sides
and simplify to
AT2 + BT + C = 0
2
2
2exp
2
1)(
i
ii
zzp
1
2
21
221
21
21
1222
21
21
22
22
21
212
221
22
21
ln2
then, If
ln2
2
P
PT
P
PC
B
A
© 2002-2003 by Yu Hen Hu29ECE533 Digital Image Processing
Clustering Problem Statement
Given a set of vectors {xk; 1 k K}, find a set
of M clustering centers {w(i); 1 i c} such that each xk is assigned to a cluster, say, w(i*),
according to a distance (distortion, similarity) measure d(xk, w(i)) such that the average
distortion
is minimized. I(xk,i) = 1 if x is assigned to cluster i with cluster
center w(I); and = 0 otherwise -- indicator function.
c
i
K
kkk iWxdixI
KD
1 1
))(,(),(1
© 2002-2003 by Yu Hen Hu30ECE533 Digital Image Processing
k-means Clustering Algorithm
Initialization: Initial cluster center w(i); 1 i c, D(–1)= 0, I(xk,i) = 0, 1 i c, 1 k K;
Repeat (A) Assign cluster membership (Expectation step)
Evaluate d(xk, w(i)); 1 i c, 1 k K
I(xk,i) = 1 if d(xk, w(i)) < d(xk, w(j)), j i; = 0; otherwise. 1 k K (B) Evaluate distortion D:
(C) Update code words according to new assignment (Maximization)
(D) Check for convergence if 1–D(Iter–1)/D(Iter) < , then convergent = TRUE,
ciixINxixIiWN
kki
N
kkk
1,),(,),()(11
KkiwxdixIiterDN
kkk
1))(,(),()(1
© 2002-2003 by Yu Hen Hu31ECE533 Digital Image Processing
A Numerical Example
x = {1, 2,0,2,3,4},
W={2.1, 2.3}
Assign membership
2.1: {1, 2, 0, 2}
2.3: {3, 4}
Distortion
D = (1 2.1)2 + (22.1)2 + (0 2.1)2 + (2 2.1)2 + (3 2.3)2 + (4 2.3)2
3. Update W to minimize distortionW1 = (12+0+2)/4 = .25
W2 = (3+4)/2 = 3.5
4. Reassign membership.25: {1, 2, 0}3.5: {2, 3, 4}
5. Update W:
w1 = (1 2+0)/3 = 1w2 = (2+3+4)/3 = 3.
Converged.
© 2002-2003 by Yu Hen Hu32ECE533 Digital Image Processing
Thresholding Example
Threshdemo.m