You are on page 1of 19

Image Segmentation

Segmentation is the process of partitioning an image into regions


region: group of connected pixels with similar properties properties: gray levels, colors, textures, motion characteristics (motion vectors), edge continuity

There are two approaches to segmentation


region segmentation edge segmentation
E.G.M. Petrakis Image Segmentation 1

Edges and Regions


In ideal images, a region is bounded by a closed contour
the close contours may be obtained from the regions by edge detection the regions may be obtained from the closed contours by boundary-filling

In real images, it is rare to obtain regions from contours directly and vice versa
E.G.M. Petrakis Image Segmentation 2

Regions and Objects


Regions are important for the interpretation of images because they may correspond to objects in a scene An image may contain several objects and each object may contain several regions corresponding to different parts of an object Due to a number of factors (noise, bad illumination, 3D world etc.) segmentation is usually not perfect Image Interpretation requires object specific knowledge
E.G.M. Petrakis Image Segmentation 3

Image with many objects Each object consists of several regions


E.G.M. Petrakis Image Segmentation 4

Region Segmentation
Region Segmentation: the pixels of the same object are grouped together and are marked to indicate that they form a region Criteria for region segmentation: pixels may be assigned to the same region if they have similar intensity values and they are close to one another
E.G.M. Petrakis Image Segmentation 5

Edge Segmentation
Find all pixels on region boundaries Canny Operator
apply Gaussian smoothing apply edge detection remove false edges (e.g., noise) thin the edge boundary is 1 pixel wide fill the gaps recover missing edges put boundary pixels in order all pixels in a list

Ideally closed boundaries


E.G.M. Petrakis Image Segmentation 6

Edge Following
There may exist gaps and noisy edges in the output of Canny Fill gaps and follow the edge in many directions
there may exist more than one regions meeting each other not all directions are promising
continuity proximity intensity length direction

E.G.M. Petrakis

Image Segmentation

Edge Following as a Graph Traversal Problem

E.G.M. Petrakis

Image Segmentation

Graph Traversal
Edge following on a graph can be viewed as a minimization (or maximization) problem
the most promising path is the one which maximizes a function (i,j) promising paths correspond to strong edges

Graph search can be hard combinatorial


Can become very slow Dynamic Programming (DP) Heuristics
E.G.M. Petrakis Image Segmentation 9

Criterion (C)
The edge C with maximum is the most promising
(C) = (i,j) over all points on a curve (i,j) = average{intensity} - average{angle} takes averages over all points on a path

In places where the curve splits into 2 or more directions (paths), follow the direction with the maximum
this situation changes after a while and may be necessary to backtrack to an earlier point
E.G.M. Petrakis Image Segmentation 10

edges

first path

second path

5 directions 5 7 4 3 5 1 6 1 6 6
E.G.M. Petrakis

5 5 5 5 7 4 =14/3-/(4*3) 3 =17/3-0 6 1 promising 7 promising at 7 at 6 1 6 =22/6-0 =33/66 2*/(4*6)


Image Segmentation 11

Using the maximum cost criterion to find the cell boundaries in microscope images a. a stage in the search process b. the completed boundary
E.G.M. Petrakis Image Segmentation 12

Region Segmentation
Analyze the grey value distribution (histogram) of the image
assumption: objects are dark against a light background their grey-value distributions can be separated putting thresholds between them convert a grey-level image into a binary one by applying carefully selected thresholds
E.G.M. Petrakis Image Segmentation 13

Many Regions

One threshold

two regions

black pixels: object white pixels: background

More than two thresholds different intensity values


E.G.M. Petrakis

more than two regions with

Image Segmentation

14

(1) Peakiness Detection Algorithm


1. Find the two highest local maxima gi, gj in the histogram that are at least at distance d apart
d is user defined

2. 3. 4. 5. 6.

Find the lowest point gk in the histogram between gi and gj Peakiness = min{H(gi),H(gj)}/H(gk) Take the combination (gi,gj,gk) with the highest peakiness Threshold the image at T=gk N thresholds: take the N greater peakinesses (Ti=gki)
Image Segmentation 15

E.G.M. Petrakis

(2) Iterative Algorithm


1. Compute a threshold T
T: mean gray value of image

2. 3. 4. 5.

Partition the image into R1, R2 using T Compute the mean values 1,2 of R1,R2 Select a new threshold T=1/2(1+2) Repeat steps 2-4 until 1, 2 do not change
Image Segmentation 16

E.G.M. Petrakis

(3) Adaptive Thresholding


The same threshold is not usable everywhere in the image
e.g., uneven illumination

1. Partition the image into mxm subimages 2. Select a threshold Tij for each subimage
apply 1st or 2nd threshold selection algorithm

3. Compute the union of the thresholded subimages


E.G.M. Petrakis Image Segmentation 17

a. original image with uniform illumination b. histogram of a c. simulated uneven illumination d. image a with uneven illumination added e. histogram of image d f. thresholding at T=72 failed!!

E.G.M. Petrakis

Image Segmentation

18

(4) Double Thresholding


1. Select threshold T1 (apply 1st or 2nd algorithm) 2. Set T2 = T1 + ( is user defined) 3. Compute regions R1, R2, R3:
a. b. c. R1: pixels with gray values less than T1 R2: pixels with gray values between T1 and T2 R3: pixels with gray values above T2

4. Visit each pixel of R2: if the pixel has a neighbor in R1, reassign it to R1 5. Repeat step 4 until no pixels of R2 are reassigned 6. Reassign all pixels remaining in R2 to R3
E.G.M. Petrakis Image Segmentation 19