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 7
Edge Following as a Graph Traversal Problem E.G.M. Petrakis Image Segmentation 8
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 directions 5 5 5 5 5 5 7 4 7 4 φ=17/3-0 3 5 3 6 promising at 7 1 6 1 7 1 6 1 6 φ=22/6-0 6 6 φ=14/3-π/(4*3) promising at 6 φ=33/6-2*π/(4*6) E.G.M. Petrakis 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 more than two regions with different intensity values E.G.M. Petrakis Image Segmentation 14
(1) Peakiness Detection Algorithm 1. Find the two highest local maxima g i, g j in the histogram that are at least at distance d apart d is user defined 2. Find the lowest point g k in the histogram between g i and g j 3. Peakiness = min{h(g i ),H(g j )}/H(g k ) 4. Take the combination (g i,g j,g k ) with the highest peakiness 5. Threshold the image at T=g k 6. N thresholds: take the N greater peakinesses (T i =g ki ) E.G.M. Petrakis Image Segmentation 15
(2) Iterative Algorithm 1. Compute a threshold T T: mean gray value of image 2. Partition the image into R 1, R 2 using T 3. Compute the mean values µ 1,µ 2 of R 1,R 2 4. Select a new threshold T=1/2(µ 1 +µ 2 ) 5. Repeat steps 2-4 until µ 1, µ 2 do not change E.G.M. Petrakis Image Segmentation 16
(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 T ij for each subimage apply 1 st or 2 nd 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 T 1 (apply 1 st or 2 nd algorithm) 2. Set T 2 = T 1 + ε (ε is user defined) 3. Compute regions R 1, R 2, R 3 : a. R 1 : pixels with gray values less than T 1 b. R 2 : pixels with gray values between T 1 and T 2 c. R 3 : pixels with gray values above T 2 4. Visit each pixel of R 2 : if the pixel has a neighbor in R 1, reassign it to R 1 5. Repeat step 4 until no pixels of R 2 are reassigned 6. Reassign all pixels remaining in R 2 to R 3 E.G.M. Petrakis Image Segmentation 19