Image Segmentation - INTELLIGENCE: Lab Description

Download Report

Transcript Image Segmentation - INTELLIGENCE: Lab Description

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
5
directions
5
7 4
3
5
1
6
1
6
6
E.G.M. Petrakis
first path
second path
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  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 gi, gj in the
histogram that are at least at distance d apart

d is user defined
2. Find the lowest point gk in the histogram between gi
and gj
3. Peakiness = min{H(gi),H(gj)}/H(gk)
4. Take the combination (gi,gj,gk) with the highest
peakiness
5. Threshold the image at T=gk
6. N thresholds: take the N greater peakinesses (Ti=gki)
E.G.M. Petrakis
Image Segmentation
15
(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
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 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. R1: pixels with gray values less than T1
b. R2: pixels with gray values between T1 and T2
c. 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