An adaptive method for detecting dominant points

Report 18 Downloads 91 Views
Pattern Recognition 36 (2003) 2231 – 2237 www.elsevier.com/locate/patcog

An adaptive method for detecting dominant points Wen-Yen Wu∗ Department of Industrial Engineering and Management, I-Shou University, Kaohsiung 84008, Taiwan Received 29 August 2002; received in revised form 19 February 2003; accepted 19 February 2003

Abstract In this paper, we propose an adaptive method for the polygonal approximation of a digitized curve. Instead of setting a xed length of support region in advance, the new method will compute the suitable length of support region for each point to nd the best approximated curvature. The dominant points are identied as the points with local maximum curvatures. In addition, the break point detection is conducted to reduce the computations. The experimental results show that the proposed method can approximate the curves eectively. ? 2003 Pattern Recognition Society. Published by Elsevier Ltd. All rights reserved. Keywords: Curvature; Region of support; Polygonal approximation; Dominant points

1. Introduction Due to the rapid development in machine vision, the image processing techniques have been widely used in object recognition, industrial dimensional inspection, and monitoring tasks, etc. Extracting meaningful features from digital curves is one of the important tasks in many machine vision applications. Attneave [1] indicated that information about a curve is concentrated at the dominant points. The dominant points are considered as representative features for the object contours, because they reserve the signicant features of the digitized curve of the images. Following Attneave’s observation, there are many approaches developed for detecting dominant points. The dominant point detection can achieve both data compression and feature extraction for the contour of the object. Over the years, many dominant point detection algorithms have been developed. They can be classied into two main categories: corner detection approaches and polygonal approximation approaches. Ramer [2] proposed a method for approximating polygons. He estimates the distances from the points to the line segments of two ending points. The segment is partitioned at the point with the maximum distance ∗

Tel.: +886-7-6577711 Ext. 5512; fax: +886-7-6578536. E-mail address: [email protected] (W.-Y. Wu).

until the maximum distances is not greater than an allowable value. For a point on a curve, Rosenfeld and Johnston [3] used the point and its forward and backward neighboring points to dene the k-cosine as the approximated curvature. Rosenfeld and Weszka [4] suggested a modied method for approximating curvature at a point. They used the smooth k-cosine approach to approximate the curvature. Sanker and Sharma [5] designed an iterative procedure for detecting points with maximum global curvature, based on the local curvature of each point with respect to its immediate neighbors. Wu and Wang [6] proposed the curvature-based polygonal approximation for dominant point detection. It combined the corner detection and polygonal approximation methods, and it can detect the dominant points eectively. Wang et al. [7] proposed a simple method that used the directions of the forward and backward vectors to nd the bending value as the curvature. Sun and Huang [8] presented a genetic algorithm to conduct polygonal approximation. An optimal solution of dominant points can be found. However, it seems to be time consuming. Yin [9] focused in the computation eorts and proposed the tabu search technique to reduce the computation and memory in the polygonal approximation. Ray and Pandyan [10] used the adaptive smoothing technique to detect dominant points. The roughness of the curve in the neighborhood of the point was computed rstly to determine the smoothing level. Horng [11]

0031-3203/03/$30.00 ? 2003 Pattern Recognition Society. Published by Elsevier Ltd. All rights reserved. doi:10.1016/S0031-3203(03)00087-6

2232

W.-Y. Wu / Pattern Recognition 36 (2003) 2231 – 2237

proposed a dynamic programming approach to improve the tting quality of polygonal approximation. He claimed that the combination of the dominant point detection and the dynamic programming has excellent performances. In this paper, we focus on the corner detection approaches. The common stages for corner detection methods are: (1) curvature estimation, and (2) the local maximum curvatures locating. It is important to choose a pre-specied length of support region to assess the signicance of curvatures. However, if the length of support region is large, we may miss some signicant dominant points. On the other hand, a small length of support region will result in some redundant corners. Therefore, how to nd the best length of support region for all points on the curve is a trade-o problem. A number of adaptive methods for determining the length of support region have been proposed in the past years. Teh and Chin [12] indicated that the detection of dominant points relies not only on the curvature estimation approach, but also on the determination of the region of support. They used the ratio of the deviation and the chord length as the criteria to dene a region of support for each point on the curve. Anyone of three signicance measures which are k-cosine, k-curvature, and 1-curvature, can be used to estimate the discrete curvature. Following a nonmaxima suppression procedure, the dominant points can be identied. Instead of using chord length and distance, Ray and Ray [13] used the k-cosine to determine the region of support for each point. The procedure is parallel and it requires no parameter adjustment. It detects not only the curvature maximum points, but also the curvature minimum points. Cornic [14] pointed out that, as for the Teh and Chin’s algorithm, the Ray and Ray’s algorithm is not robust in presence of noise. In addition, the procedure for choosing three consecutive increasing angles in Ray and Ray’s algorithm is subjective. He used the chain code properties of digital straight lines to compute two vectors of signicance. The dominant points are then detected by a logical function. The method also does not need input parameters. However, it is complex in determining the left and the right supports. In addition, it is dicult to select the best logical function in the dominant point identication step. All of above methods intend to search for the rst local maximum criterion in determining region of support. However, it is reasonable to use both the local and global information for a point to access its signicance. In this paper, we focus on the region of support setting problem. We propose an adaptive method for choosing the lengths of support regions for determining the curvatures. The proposed method is fast and requires no input parameter. The experimental results show that the method is eective in detecting dominant points. It has also consistent results for a curve with dierent scales and orientations. The dominant point detection method is introduced in the next section. The experimental results are presented in Section 3. The nal section gives some concluding remarks.

2. Dominant point detection A digital curve C can be dened as a set consisting of n consecutive points. That is C = {pi (xi ; yi ) | i = 1; 2; : : : ; n};

(1)

where n is the number of points, pi is the ith point with coordinate (xi ; yi ). Suppose that lik and dik are the length of a straight segment pi−k pi+k and the perpendicular distance from pi to Pi−k Pi+k , respectively. The ratio of the deviation and the chord length can be dened as follows (see Fig. 1(a)): dik rik = : (2) lik Further, the k-cosine of two vectors is dened as (see Fig. 1(b)) cosik =

*

*

*

*

a ik · b ik

| a ik  b ik |

*

;

(3) *

where a ik =(xi−k −xi ; yi−k −yi ); b ik =(xi+k −xi ; yi+k −yi ); · is the inner product operator, and | ∗ | is the length of the vector. The points with local maximum curvature are considered as the dominant points. For a continuous curve, the curvature at a point is dened as the rate of change of slope as a function of the arc length. However, the above denition

Fig. 1. Illustrations for: (a) ratio of the deviation and the chord length, and (b) cosine value.

W.-Y. Wu / Pattern Recognition 36 (2003) 2231 – 2237

2233

does not hold for a digital curve, since an exact mathematical denition is not available for the digital curve. Therefore, most of the existing algorithms focus on curvature estimation by use of the information that can be extracted from the neighbors. From the previous studies, it is seen that choosing the suitable length of a support region is very important in determining the curvatures. However, it is not an easy task to set the best length of support region for all points. In fact, setting a xed length of support region for all points on the curve is not a good idea. Instead of setting a xed length of support region for all points in advance, some methods have been proposed to nd the length of support for each point. The reason to set region of support for each point is that it can demonstrate its local geometric characteristics as well as possible. Lot of previous studies intended to develop an adaptive region of support by the local maximum curvature [12,13]. Teh and Chin [12] used the ratio of the deviation and the chord length to determine the region of support of a point. In their study, the following rule is used to nd the lengths of support regions.

region of support in this paper. In order to illustrate the signicance of the point, we should choose the region of support such that it has the global maximum curvature. A suitable length of support region can reduce the inconsistency problem for dierent scales and orientations of curves. That is, the length of support region will be determined point by point to insure that each of the points will have the best approximated curvature. In addition, both the local and global information of the neighbors of the point are used in assessing the signicance. The k-cosine is also used to determine the length of support region in this paper. The length of support region should be set between the lower bound (Kmin ) and the upper bound (Kmax ). For example, we can set Kmin and Kmax to 2 and n=10 respectively, since the adjustment of length of support region should depend on the number of points on a curve. Let ki be the best length of support region at the ith point. It can be simply dened as the following.

Rule 1. Start with k = 1. Increase k by one each time until one of the following conditions holds, then k determines the length of support region at point pi .

The region of support of the ith point is the set of points given by

(a) lik ¿ li; k+1 ;

(4)

Rule 3. ki = k; if cosik = max{cosij | j = Kmin ; : : : ; Kmax }; i=1; 2; : : : ; n:

Di = {pi−ki ; : : : ; pi+ki }:

for (10)

(11)

(6)

The approximated curvature at the ith point, cvi , can be dened by averaging the k-cosines: ki 1  cvi = cosij : (12) ki j=1

In another way, Ray and Ray [13] proposed a simple measure to determine the length of support region. In their work, the k-cosine is used to determine the lengths of support regions by the following rule.

As we know that points on a straight line can’t be considered as the dominant points. The Freeman’s chain code [15] assigns an integer ci varying from 0 to 7 according to its direction to a vector, where 14 ci is the angle between the x-axis and the vector, for i =1; 2; : : : ; n (see Fig. 2). A digital

(b) rik ¿ ri; k+1 rik 6 ri; k+1

for dik ¿ 0; for dik ¡ 0:

(5)

Rule 2. Start with k = 1. Increase k by one each until one of the following conditions satised, then k determines the length of support region at point pi . (a) |cosik | ¡ |cosi; k+1 |;

(7)

(b) cosik = cosi; k+1 ;

(8)

(c) cosik and cosi; k+1 are of opposite sign:

(9)

The above two methods intend to nd the rst local maximum curvature to determine the length of support region. However, the local maximum curvature may be caused by noisy variations on the curve. Cornic [14] pointed out that both the Teh and Chin’s algorithm and the Ray and Ray’s algorithm are not robust in presence of noise. In order to solve the problem of setting the length of support region, we propose an adaptive method to determine the best length of

Fig. 2. Freeman’s chain codes.

W.-Y. Wu / Pattern Recognition 36 (2003) 2231 – 2237

2234

regions of support. Both Eqs. (15) and (16) are used to suppress the points with small lengths of support regions. The proposed method can be summarized as follows. Step 1. Perform contour tracking to nd the chain codes of the curve. Extract the break points by Rule 4. Step 2. For each break point, nd the best length of support by Rule 3 and compute its approximated curvature by Eq. (12). Step 3. Apply Rule 5 to eliminate redundant dominant points. The break points with maximum curvature among their region of support are marked as the dominant points.

3. Experimental results Fig. 3. Break point detection on the curve with chain codes: 0007776555444333100222. (◦) break point; (•) linear point.

curve can be expressed as the n chain codes, and is denoted as c1 c2 : : : cn , where ci = ci±n and all indices are modulo n. An example of chain codes of a curve is shown in Fig. 3. The linear points can be excluded by tracking the chain codes. It can be expressed by the following rule. Rule 4. If ci−1 = ci , then the point pi is a linear point. The candidates of dominant points are called the break points [6]. Only the regions of support of the break points need to be determined. Further, the processing time will be reduced if only the curvatures of break points are estimated. The adaptive regions of support for each of the break points on the curve are determined to compute the approximated curvatures. Besides, it is necessary to suppress those break points with curvatures less than a preset curvature threshold . The dominant points are located as the break points with local maximum curvature among their neighbors within the corresponding region of support. They can be expressed as the following rule.

In order to assess the performance of the proposed method, six performance evaluation criteria were used in the experiment. They are the number of the dominant points, the compression ratio, the sum of square error, the maximum error, the weighted sum of square error, and the weighted maximum error. (1) Number of the dominant points (nd ): It is important to have the consistent number of dominant points for the curves representing the same object with dierent scales and orientations, since a robust method of shape representation should be translation, scale, and rotation invariant. (2) Compression ratio (CR): One of the objectives of dominant point detection is to reduce the amount of data.

Rule 5. Delete the break points from dominant point candidates, if one of the following conditions is satised: (a) cvi ¡ ; (b) cvi ¡ cvj ;

(13) for j ∈ {i − ki ; : : : ; i + ki };

(14)

(c) cvi = cvi−1

and

ki ¡ ki−1 ;

(15)

(d) cvi = cvi+l

and

ki 6 ki+1 :

(16)

Eq. (13) is used to suppress the points with curvatures less than a preset threshold. Eq. (14) is to ensure the dominant points having local maximum curvatures among their

Fig. 4. Testing curves: (a) chromosome, (b) innity, (c) leaf and (d) semicircle.

W.-Y. Wu / Pattern Recognition 36 (2003) 2231 – 2237

2235

Table 1 Results of the proposed method and of three selected other adaptive methods Curve

Method

nd

CR

E2

E∞

WE2

WE∞

Chromosome (n = 60)

Teh and Chin Ray and Ray Cornic Our method

15 18 17 17

4.00 3.33 3.53 3.53

7.20 5.57 5.54 5.01

0.71 0.71 0.86 0.64

1.88 1.67 1.57 1.42

0.18 0.21 0.24 0.18

Innity (n = 45)

Teh and Chin Ray and Ray Cornic Our method

13 12 10 13

3.46 3.75 4.55 3.46

5.93 5.99 4.30 5.17

1.00 0.89 0.78 1.11

1.71 1.60 0.96 1.49

0.29 0.24 0.17 0.32

Leaf (n = 120)

Teh and Chin Ray and Ray Cornic Our method

29 32

4.14 3.76

14.96 14.72

0.99 1.00

3.62 3.93

0.24 0.27

a

a

a

a

a

a

23

5.22

20.34

1.00

3.90

0.19

Teh and Chin Ray and Ray Cornic Our method

22 29 30 27

4.64 3.52 3.40 3.78

20.61 11.82 9.19 9.01

1.00 0.83 0.88 0.83

4.45 3.36 2.70 2.38

0.22 0.24 0.26 0.22

Semicircles (n = 102)

a Not

provided.

The larger the compression ratio is, the more eective in data reduction the method is. For the same curve, a small number of dominant points will result in a large compression ratio. The compression ratio can be dened as n CR = : (17) nd (3) Sum of square error (E2 ): It is necessary to assess the distortions caused by the approximated polygon of a curve. The smaller the sum of square error is, the better descriptive ability the method is. It is dened as n  E2 = ei2 ; (18) i=1

where ei is the perpendicular distance from pi to the approximated line segment. (4) Maximum error (E∞ ): It is another criterion for assessing the approximated errors. It is dened as n

E∞ = max{ei }: i=1

(19)

(5) Weighted sum of square error (WE2 ): In general, a large compression ratio will have a large sum of square error in the same time. The weighted sum of square error is to combine the compression ratio and the sum of square error. It is dened as 1 WE2 = (20) × E2 : CR (6) Weighted maximum error (WE∞ ): The weighted maximum error is to combine the compression ratio and the maximum error. It is dened as 1 (21) WE∞ = × E∞ : CR

The proposed method has been applied to four commonly used curves in many previous studies. They are the chromosome curve (Fig. 4(a)), the innity curve (Fig. 4(b)), the leaf curve (Fig. 4(c)), and the semicircle curve (Fig. 4(d)). Their chain codes can be found in Ray and Ray [13]. In the experiment, the curvature threshold  is set to −0:8. By tracking the chain codes, the break points can be determined. The objective of this paper is not to propose an optimal solution to dominant point detection. Alternatively, it attends to show that the new method is very simple and it can improve the performance of the family of region of support determining algorithms. In addition, as the new method considers only the break points as the dominant point candidates, it will further reduce the computation eort. The experimental results of our method and the selected other adaptive methods are listed in Table 1. The results of other method can be found in Refs. [12–14]. The detected dominant points as well as the polygonal approximation of the original curves are superimposed to the original curves and they are shown in Fig. 5. For the chromosome curve, the Teh and Chin’s method has the best performance when considering the compression ratio. However, it tends to yield the largest values of E2 ; E∞ , and WE2 . The Ray and Ray’s method detects the largest number of dominant points, but with large values of E2 ; E∞ , and WE2 . The Cornic’s method and our method have the same compression ratio. However, our method has better performance when considering the other criteria. The new method has the smallest E2 ; E∞ ; WE2 , and WE∞ among the four adaptive methods. For the innity curve, the new method and the Teh and Chin’s method have the smallest compression ratio, but our

2236

W.-Y. Wu / Pattern Recognition 36 (2003) 2231 – 2237

Fig. 5. Results of polygonal approximation: (a) chromosome, (b) innity, (c) leaf and (d) semicircle.

method has smaller E2 and WE2 than that of Teh and Chin’s method. Ray and Ray’s method has the largest E2 . Cornic’s method has the largest compression ratio and it has the smallest E2 ; E∞ ; WE2 , and WE∞ . Overall, Cornic’s method has the best performance for the innity curve. For the leaf curve, Teh and Chin’s method has the smallest E∞ and WE2 . Ray and Ray’s method has the smallest E2 , since it detects a large number of dominant points. Therefore, the results obtained by Cornic are not provided in his paper. On the other hand, our method has the largest compression ratio and it has the smallest weighted maximum error. For the semicircle curve, the Teh and Chin’s method has the largest compression ratio and the smallest weighted maximum error. The Ray and Ray’s method has the smallest E∞ , while the Cornic’s method has the smallest compression ratio. However, our method has the smallest E2 ; WE2 ; E∞ , and WE∞ . From the above results, it is seen that the new method is eective and performs very well in detecting dominant points. In addition, a robust shape representation scheme should have the ability of invariant to translation, scaling, and rotation. That is, the dominant point detection method should have the consistent results for the curves representing the same object with dierent orientations and scales. Another experiment has been conducted. In Fig. 6, three curves representing the same object with dierent scales and orientations were used to assess the consistency of the proposed method.

Fig. 6. Results for curves with dierent scales and orientations: (a) n = 303 and nd = 25; (b) n = 291 and nd = 23; and (c) n = 469 and nd = 24.

In the experiment, the threshold of curvatures was set to −0:6. From the curves in Fig. 6, it is seen that there are 25, 23, and 24 dominant points detected for the three curves, respectively. It indicates that the new method is consistent since it detects almost the same number of dominant points for the three curves representing the same object. Further, all of the three approximated polygons can properly describe the curves as seen in Fig. 6.

4. Conclusions A modied method for detecting dominant points has been proposed in this paper. Instead of setting a xed length of support region, the region of support is determined point by point. Further, the proposed method for setting the length of support regions is to seek a global maximum curvature for each point. It is dierent from the previous studies that look for a rst local maximum curvature. From the experiments, it is seen that the new approach is simple and eective. Especially, it has the consistent result in the number of dominant points for the curves representing the same object with dierent scales and orientations. The consistent dominant points are very important for the following tasks, such as object recognition and measurement.

Acknowledgements This paper is partially supported by National Science Council, ROC under grant no. NSC 89-2213-E-214-074.

W.-Y. Wu / Pattern Recognition 36 (2003) 2231 – 2237

References [1] F. Attneave, Some information aspects of visual perception, Psychol. Rev. 61 (1954) 183–193. [2] U. Ramer, An iterative procedure for the polygonal approximation of plane curves, Comput. Graphics Image Process. 1 (1972) 244–256. [3] A. Rosenfeld, E. Johnston, Angle detection on digital curves, IEEE Trans. Comput. 22 (1973) 875–878. [4] A. Rosenfeld, I.S. Weszka, An improved method of angle detection of digital curve, IEEE Trans. Comput. 24 (1975) 940–941. [5] P.V. Sankar, C.V. Sharma, A parallel procedure for the detection of dominant points on digital curve, Comput. Graphics Image Process. 7 (1978) 403–412. [6] W.Y. Wu, M.J. Wang, Detecting the dominant points by the curvature-based polygonal approximation, CVGIP: Graphical Model Image Process. 55 (1993) 79–88. [7] M.J. Wang, W.Y. Wu, L.K. Huang, D.M. Wang, Corner detection using bending value, Pattern Recognition Lett. 16 (1995) 575–583.

2237

[8] Y.N. Sun, S.C. Huang, Genetic algorithms for error-bounded polygonal approximation, Int. J. Pattern Recognition Artif. Intell. 14 (2000) 297–314. [9] P.Y. Yin, A tabu search approach to polygonal approximation of digital curves, Int. J. Pattern Recognition Artif. Intell. 14 (2000) 243–255. [10] B.K. Ray, R. Pandyan, ACORD—an adaptive corner detector for planar curves, Pattern Recognition 36 (2003) 703–708. [11] J.H. Horng, Improving tting quality of polygonal approximation by using the dynamic programming techniques, Pattern Recognition Lett. 23 (2002) 1657–1673. [12] C.H. Teh, R.T. Chin, On the detection of dominant points on digital curves, IEEE Trans. Anal. Mach. Intell. 11 (1989) 859–872. [13] B.K. Ray, K.S. Ray, Detection of signicant points and polygonal approximation of digitized curves, Pattern Recognition Lett. 13 (1992) 443–452. [14] P. Cornic, Another look at the dominant point detection of digital curves, Pattern Recognition Lett. 18 (1997) 13–25. [15] H. Freeman, On the encoding of arbitrary geometric congurations, IRE Trans. Electron. Comput. 10 (1961) 260–268.

About the Author—WEN-YEN WU is a Professor of Industrial Engineering and Management at I-Shou University, Kaohsiung, Taiwan, ROC, since 2001. He received a B.S. degree (1988) in Mathematical Sciences from National Chengchi University, and a M.S. degree (1990) and a Ph.D. degree (1993) both in Industrial Engineering from National Tsing Hua University. From 1993 to 2001, he is an Associate Professor of Industrial Engineering and Management at I-Shou University. His research interests include automated inspection, machine vision, fuzzy set theory, pattern recognition, and anthropometric applications. Dr. Wu is a member of the Phi Tau Phi, the Chinese IPPR Society, the Chinese Institute of Industrial Engineers, the Ergonomics Society of Taiwan, and the Chinese Fuzzy Systems Association.