No Slide Title

Download Report

Transcript No Slide Title

Chapter 9

Mathematical morphology:
◦ A useful tool for extracting image components in
the representation of region shape.
 Boundaries, skeletons, and convex hull.

Set theory is usually used to describe
mathematical morphology.
◦ Sets represent objects in a binary image.
 Black: representing object, denoted by 1.
 White: representing background , denoted by 0.
9.1 Preliminaries
• Our interest in this chapter is sets in Z2, where
each element denotes the coordinates of an
object pixel.
– If a=(a1, a2), we write a  A if a is an element in A.
– a  A if a is not an element in A.
• The null or empty set is denoted by  .
• We use braces, {·}, to specify the content of a
set. For example, C={w|w=-d, for d  D }.
Operations of Sets
A  B  {w | w  A or w  B}
A  B  {w | w  A and w  B}
( A and B are said to be disjoint or mutuallyexclusiveif A  B  )
Ac  {w | w  A }
A  B  {w | w  A, w  B }  A  B c
Additional Definitions
• Translation:
– ( A) Z  {c | c  a  z, for a  A}
• Reflection:
– Bˆ  {w | w  b, for b  B}
9.1.2 Logic Operations Involving Binary Images
• The logic operations discussed in this section
involve binary images.
– Black pixel: 1.
– White pixel: 0.
Note: logic operations are restricted to binary variables, which is
not the case in general for set operations.
Logic Operations Involving Binary Images
9.2 Dilation and Erosion
• These two operations are fundamental to
morphological processing.
– Dilation: to enlarge an object along its
boundary.
– Erosion: to shrink an object into a
smaller size.
9.2.1 Dilation
• With A and B are sets in Z2, the dilation of A
by B, denoted A B, is defined as
A B = {z | ( Bˆ ) z  A  }
– Other interpretation: A B = {z | ( Bˆ ) z  A  A}
• B is commonly referred to as the structuring element.
• The dilation of A by B is the set of all displacements, z,
such that the reflection of B and A overlap by at least
one element.
The Illustration of Dilation
The Implementation of Dilation
•
•
Given a binary image f and the structuring
element s, construct a duplicate of f, denoted
by g.
For each pixel p = f(x, y), do the following:
–
If p is black:
•
•
If p is at the boundary (any of the 4-adjacent
neighbors is white) of the object, center the origin of s
at (x, y) in g, and fill the pixels black on which s
covers.
Return g.
Application of Dilation
• One of the simplest applications of dilation is
for bridging gaps.
9.2.2 Erosion
• With A and B are sets
in Z2, the dilation of A
by B, denoted A B, is
defined as
A B = {z | ( B) z  A}
– The erosion of A by
B is the set of all
points z such that B,
translated by z, is
contained in A.
The Implementation of Dilation
•
•
Given a binary image f and the structuring
element s, construct a duplicate of f, denoted
by g.
For each pixel p = f(x, y), do the following:
–
If p is white:
•
•
If p is adjacent to the boundary of the object, center
the origin of s at (x, y) in g, and fill the pixels white on
which s covers.
Return g.
Application of Dilation
• One of the simplest uses of erosion is for eliminating
irrelevant detail (in terms of size) from a binary
image.
Note that objects are represented by white pixels, rather
than by black pixels.
9.3 Opening and Closing
•
Opening: to break narrow isthmuses and to
eliminate thin protrusions.
A  B  ( A B) B
•
Closing: to fuse narrow breaks and long thin
gulfs, to eliminate small holes, and to fill
gaps in the contour.
A  B  ( A B) B
Illustration of Opening and Closing
Example 9.4:
Application of Opening and Closing
9.4 The Hit-or-Miss Transformation
•
•
The morphological hit-or-miss transform is a
basic tool for shape detection or pattern
matching.
Let B denote the set composed of X and its
background.
–
B = (B1, B2), where B1=X, B2=W-X.
The match of B in A, denoted by A B, is
*
c
A * B  ( A X )  [ A (W  X )]
To find objects that may contain X
To find objects that may be
contained in X
The Hit-or-Miss Transformation
•
Other interpretation:
A
*
A
*
•
B  ( A B1 )  [ Ac B2 ]
B  ( A B )  ( A Bˆ )
1
2
If B is 3x3, the matching
can be done directly
rather than computing the
background image.
9.5 Some Basic Morphological Algorithms
•
•
•
•
•
•
•
Boundary extraction
Region filling
Extraction of connected components
Convex Hull
Thinning
Skeletons
Pruning
9.5.1 Boundary Extraction
•
The boundary of a set A, denoted by β(A),
can be obtained by first eroding A by B and
then performing the set difference between A
and its erosion.
Example 9.5: Boundary Extraction
•
•
Binary 1’s are shown in white and 0’s in black.
Using 5x5 structuring element would result in a
boundary between 2 and 3 pixels thick.
The structuring element in this example is 3x3; therefore, the
boundary is one pixel thick.
9.5.2 Region Filling
•
•
Goal: given a point p inside the boundary (Fig. (a)), fill the
entire region with 1’s.
Let X0 = p. The filled set Xk can be obtained by
X k  ( X k 1 B)  Ac
k  1,2,3...
The Procedure of Region Filling
•
•
The algorithm terminates at iteration step k if Xk=Xk-1.
The result is obtained from the union of Xk and the
boundary in A.
9.5.3 Extraction of Connected Components
•
•
Goal: given a point p, find the component that connects
to p.
Let X0 = p. The set Xk can be obtained by
X k  ( X k 1 B)  A k  1,2,3...
•
•
The algorithm terminates at iteration step k if
Xk=Xk-1.
The result Y is obtained from Xk.
The Procedure of
Finding Connected Components
Example 9.7
9.5.4 Convex Hull
•
A set A is said to be convex.
–
If the straight line joining any two points in A lies entirely within
A.
•
The convex hull H of a set S is the smallest convex set
containing S.
– The set H-S is called the convex difference, which is
useful for object description.
•
The procedure is to implement the equation:
X ki  ( X k 1 * Bi )  A i  1,2,3,4 and k  1,2,3...
–
With Xi0=A. Let Di=Xiconv, where “conv” indicates
that Xik=Xik-1. The convex hull of A is
4
C ( A)   D i
i 1
Convex Hull
Limiting Growth of Convex Hull
9.5.5 Thinning
•
The thinning of a set A by a structuring element B,
denoted A x B, is defined by
A
•
x
B  A  ( A * B)
Each B is usually a sequence of structuring elements:
{B}  {B , B , B ,...,B }
1
–
•
2
3
n
B1, B2,…are different rotated versions of B.
The result of thinning A by one pass is the union
of the results obtained by thinning by Bi by one
pass.
Thinning Procedure
9.5.6 Thickening
•
The thickening of a set A by a structuring element B,
denoted A · B, is defined by
A
•
·
B  A  ( A * B)
A more efficient scheme is to obtain the complement of
A, say Ac, and then to compute Cc, where C is the
thinned result of Ac and Cc is its complement.
9.5.7 Skeletons
•
The dot line : the skeleton of A, S(A).
K
S ( A)   S k ( A) with S k ( A)  ( A kB)  B
k 0
K  max{k | ( A
kB)  }
The Procedure of Skeletonization
9.5.8 Pruning
spur
The Procedure of Pruning
•
Thinning an input set A to eliminate the short line
segment by
X1  A {B}
•
To restore the character to its original form:
–
Find the set containing all the end points by
8
X 2   ( X1 * B k )
k 1
–
Dilate the end points and find the intersection with A:
X3  (X2 H )  A
–
The union of X3 and X1 yields the desired result:
X 4  X 1  X3
9.6 Extensions to Gray-Scale Images
•
Dilation
–
Let Df and Db be the domains of f and b, where b is the
structuring element.
( f  b)(s, t )  max{f (s  x, t  y)  b( x, y) | (s  x), (t  y)  Df ; ( x, y)  Db }
•
•
•
The dilated image tends to be brighter.
The dark details either reduce or eliminated, depending on their
values and shapes relate to the structuring element.
Erosion
(f
b)(s, t )  min{f (s  x, t  y)  b( x, y) | (s  x), (t  y)  Df ; ( x, y)  Db }
•
•
The eroded image tends to be darker.
The bright details either reduce or eliminated.
Example 9.9
9.6.3 Opening and Closing
Example 9.10
•
•
In (a), the decreased sizes of the small, bright details,
with no appreciable effect on the darker gray levels.
In (b), the decreased sizes of the small, dark details, with
relatively little effect on the bright features.
9.6.4 Applications of Gray-Scale Morphology
•
Morphological smoothing
–
•
i.e. performing opening followed by a closing.
Morphological gradient
–
Let g denote the operation, and then
g  ( f  b)  ( f b)
–
Depending less on edge directionality.
9.6.4 Applications of Gray-Scale Morphology
•
Top-hat transformation
h  f  ( f  b)
9.6.4 Applications of Gray-Scale Morphology
•
Textural segmentation
–
–
–
Use closing operation to eliminate the left half.
Apply opening to restore and join the right half.
Threshold the result to draw the boundary.
9.6.4 Applications of Gray-Scale Morphology
•
Granulometry (粒度測量)
–
–
–
–
Apply opening with different sizes of structuring elements.
Calculate image difference.
Draw the histogram to evaluate the difference with respect to
various sizes of structuring elements.
For some x, particles with similar size of x have higher responses
in the histogram.