DIP2 Points
DIP2 Points
of the region. These can be viewed as external or internal characteristics, respectively. Chain codes: represent a boundary of a connected region. Representation Chain Codes
Chain codes can be based on either 4-connectedness or 8-connectedness. The first difference of the chain code: This difference is obtained by counting the number of direction changes (in a counterclockwise direction) For example, the first difference of the 4-direction chain code 10103322 is 3133030. Assuming the first difference code represent a closed path, rotation normalization can be achieved by circularly shifting the number of the code so that the list of numbers forms the smallest possible integer. Size normalization can be achieved by adjusting the size of the re-sampling grid.
Representation Polygonal Approximations Polygonal approximations: to represent a boundary by straight line segments, and a closed path becomes a polygon. The number of straight line segments used determines the accuracy of the approximation. Only the minimum required number of sides necessary to preserve the needed shape information should be used (Minimum perimeter polygons). A larger number of sides will only add noise to the model. Representation Polygonal Approximations Minimum perimeter polygons: (Merging and splitting) Merging and splitting are often used together to ensure that vertices appear where they would naturally in the boundary. A least squares criterion to a straight line is used to stop the processing.
Representation Signature The idea behind a signature is to convert a two dimensional boundary into a representative one dimensional function.
Signatures are invariant to location, but will depend on rotation and scaling. Starting at the point farthest from the reference point or using the major axis of the region can be used to decrease dependence on rotation. Scale invariance can be achieved by either scaling the signature function to fixed amplitude or by dividing the function values by the standard deviation of the function. Representation Boundary Segments Boundary segments: decompose a boundary into segments. Use of the convex hull of the region enclosed by the boundary is a powerful tool for robust decomposition of the boundary.
Representation Skeletons Skeletons: produce a one pixel wide graph that has the same basic shape of the region, like a stick figure of a human. It can be used to analyze the geometric structure of a region which has bumps and arms.
(d ' ) p2 p6 p8 = 0 (c' ) p2 p4 p8 = 0
Step 2: Flag a contour point p1 for deletion again. However, conditions (a) and (b) remain the same, but conditions (c) and (d) are changed to P9 P8 P7 P2 P1 P6 P3 P4 P5
A thinning algorithm: (1) applying step 1 to flag border points for deletion (2) deleting the flagged points (3) applying step 2 to flag the remaining border points for deletion (4) deleting the flagged points This procedure is applied iteratively until no further points are deleted. Representation Skeletons: Example One application of skeletonization is for character recognition. A letter or character is determined by the center-line of its strokes, and is unrelated to the width of the stroke lines.
Boundary Descriptors There are several simple geometric measures that can be useful for describing a boundary. The length of a boundary: the number of pixels along a boundary gives a rough approximation of its length. Curvature: the rate of change of slope To measure a curvature accurately at a point in a digital boundary is difficult The difference between the slops of adjacent boundary segments is used as a descriptor of curvature at the point of intersection of segments
The shape number of a boundary is defined as the first difference of smallest magnitude. The order n of a shape number is defined as the number of digits in its representation.
This is a way of using the Fourier transform to analyze the shape of a boundary. Then the list of coordinates is Fourier transformed using the DFT (chapter 4). The Fourier coefficients are called the Fourier descriptors. The basic shape of the region is determined by the first several coefficients, which represent lower frequencies. Higher frequency terms provide information on the fine detail of the boundary. Boundary Descriptors Fourier Descriptors
Boundary Descriptors Statistical Moments Moments are statistical measures of data. They come in integer orders. Order 0 is just the number of points in the data. Order 1 is the sum and is used to find the average. Order 2 is related to the variance, and order 3 to the skew of the data. Higher orders can also be used, but dont have simple meanings. Let r be a random variable, and g(ri) be normalized (as the probability of value ri occurring), then the moments are
n (r ) = ( ri m) n g ( ri )
k =0 K 1
where m = ri g ( ri )
i =0
K 1
Regional Descriptors Some simple descriptors The area of a region: the number of pixels in the region The perimeter of a region: the length of its boundary The compactness of a region: (perimeter)2/area The mean and median of the gray levels The minimum and maximum gray-level values The number of pixels with values above and below the mean Regional Descriptors Example
Texture is usually defined as the smoothness or roughness of a surface. In computer vision, it is the visual appearance of the uniformity or lack of uniformity of brightness and color. There are two types of texture: random and regular. Random texture cannot be exactly described by words or equations; it must be described statistically. The surface of a pile of dirt or rocks of many sizes would be random. Regular texture can be described by words or equations or repeating pattern primitives. Clothes are frequently made with regularly repeating patterns. Random texture is analyzed by statistical methods. Regular texture is analyzed by structural or spectral (Fourier) methods. Regional Descriptors Statistical Approaches Let z be a random variable denoting gray levels and let p(zi), i=0,1,,L-1, be the corresponding histogram, where L is the number of distinct gray levels. The nth moment of z:
n ( z ) = ( zi m) p ( zi ) where m = zi p ( zi )
n k =0 i =0
L 1
L 1
The measure R: R = 1 1 + 2 ( z )
2 The uniformity: U = p ( zi ) i =0 L 1
L 1
Regional Descriptors Structural Approaches Structural concepts: Suppose that we have a rule of the form SaS, which indicates that the symbol S may be rewritten as aS. If a represents a circle [Fig. 11.23(a)] and the meaning of circle to the right is assigned to a string of the form aaaa [Fig. 11.23(b)] .
Regional Descriptors Spectral Approaches For non-random primitive spatial patterns, the 2-dimensional Fourier transform allows the patterns to be analyzed in terms of spatial frequency components and direction. It may be more useful to express the spectrum in terms of polar coordinates, which directly give direction as well as frequency. Let S (r , ) is the spectrum function, and r and are the variables in this coordinate system. For each direction , S (r , ) may be considered a 1-D function .
S (r )
R0
Regional Descriptors Moments of Two-Dimensional Functions For a 2-D continuous function f(x,y), the moment of order (p+q) is defined as
m pq =
( x x ) p ( y y ) q f ( x, y )dxdy
where x =
00 = ( x x ) 0 ( y y ) 0 f ( x, y ) = f ( x, y ) = m00 10 = ( x x )1 ( y y ) 0 f ( x, y ) = m10
x y
01 = ( x x ) 0 ( y y )1 f ( x, y ) = m01
x y
11 = ( x x )1 ( y y )1 f ( x, y ) = m11
x y
20 = ( x x ) 2 ( y y ) 0 f ( x, y ) = m20 x m10
x y x y
where =
p+q +1 2
for p + q = 2,3,....
A seven invariant moments can be derived from the second and third moments:
1 = 20 + 02
2 2 = ( 20 02 ) 2 + 411
+ (3 21 03 )( 21 + 03 ) 3( 30 + 12 ) 2 ( 21 + 03 ) 2
6 = ( 20 02 ) (30 + 12 ) 2 ( 21 + 03 ) 2 + 411 ( 30 + 12 )( 21 + 03 )
] ] ]
7 = (3 21 03 )(30 + 12 ) (30 + 12 ) 2 3( 21 + 03 ) 2
+ (312 30 )( 21 + 03 ) 3( 30 + 12 ) 2 ( 21 + 03 ) 2