Image Segmentation • Segmentation is the process of partitioning an image into regions – region: group of connected pixels with similar properties 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 – 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 • An image may contain several objects and each object may contain several regions corresponding 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 same object are grouped together and are marked to indicate that they form a region 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 – 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 – 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) 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} – Σφ(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 5 5 directions 5 5 5 7 4 7 4 7 7 4 4 φ=14/3+π/(4 * 3) φ=17/3+0 3 5 3 6 promising promising 1 6 1 7 at 7 at 6 1 6 1 6 φ=22/6+0 φ=33/6+ 6 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 dark against a light background 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. 2. Find the lowest point g k in the histogram between g i 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 2. Partition the image into R 1 , R 2 using T 3. Compute the mean values H 1 ,H 2 of R 1 ,R 2 4. Select a new threshold T=1/2(H 1 +H 2 ) 5. Repeat steps 2+4 until H 1 , H 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 m x m 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 � c. simulated uneven illumination d. image � with uneven d. image � with uneven illumination added e. histogram of image � f. thresholding at T=72 failed!! E.G.M. Petrakis Image Segmentation 18
(4) Double Thresholding Select threshold T 1 (apply 1 st or 2 nd algorithm) 1. 2. Set T 2 = T 1 + ε ( ε is user defined) 3. Compute regions R 1 , R 2 , R 3 : a. a. R 1 : pixels with gray values less than T 1 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
Recommend
More recommend