© 2002-2003 by yu hen hu 1 ece533 digital image processing image segmentation

Post on 02-Jan-2016

227 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

© 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

top related