Graphical Models 64 (2003) 304–315 www.elsevier.com/locate/gmod A dynamic method for dominant point detection Wen-Yen Wu* Department of Industrial Engineering and Management, I-Shou University, Kaohsiung 84008, Taiwan Received 16 April 2001; received in revised form 31 July 2002; accepted 20 November 2002 Abstract Detecting dominant points is an important step for shape representation. Most of dominant point detection methods attend to preset or find the region of support of each point. In this paper, we demonstrate an improved method for determining the region of support in the dominant point detection. Instead of setting the regions of support for points independently, the region of support dynamically depending on the previous region of support. The experimental results show that the proposed method is effective in detecting dominant points. Ó 2003 Elsevier Science (USA). All rights reserved. Keywords: Curvature; Region of support; Polygonal approximation; Dominant points 1. Introduction Attneave [2] pointed out that information on a curve is concentrated at the dominant points. Dominant points are those points that have curvature extreme on the curve and they can suitably describe the curve for both visual perception and recognition. Over the years, many approaches have been proposed to detect the dominant points on digital curves. In general, the two major categories of approaches are corner detection [3,4,7,8, 11,13] and polygonal approximation [1,5,6,9,10,12,14,15]. The purpose of corner detection is to detect some potential points that can sufficiently represent the shape of the object. Corner detection approaches can detect potential significant points, but they cannot represent smooth curve appropriately. For polygonal approximation approaches, sequential, iterative, and optimal algorithms are commonly used. Most of * Fax: +886-7-6578536. E-mail address: [email protected]. 1524-0703/03/$ - see front matter Ó 2003 Elsevier Science (USA). All rights reserved. doi:10.1016/S1077-3169(02)00008-4 W.-Y. Wu / Graphical Models 64 (2003) 304–315 305 the sequential techniques are simple and fast, but they have the drawbacks of missing important features. The family of iterative approaches splits and merges curves iteratively until they meet the preset allowances. The iterative approaches suffer the sensitivity to the selection of the starting points for partitioning curves. For optimal approaches, they tend to find the optimal polygonal approximation based on specified criteria and error bound constraints. They have the disadvantages of large computation cost and memory requirement. In this paper, an improved method is proposed to determine the region of support in finding dominant points. We modify the method proposed by Teh and Chin [11] by setting the next region of support depending on the present region of support. The new choosing strategy can solve the problem of detecting too many dummy dominant points. In Section 2, we will illustrate the proposed method for determining the region of support. Section 3 will present the experimental results of the new strategy. Some concluding remarks are then given in Section 4. 2. Dominant point detection Dominant points are commonly considered as points with local maximum curvature. In the Euclidean plane, curvature can be easily defined as the rate of change of slope as a function of arc length. Unfortunately, the above definitions do not hold for a digital curve, since there exist no exact mathematical definition for the digital curve. Therefore, the existing corner detection algorithms involve in defining an estimation method for curvatures. Most of the algorithms use the information of the knearest neighbors and overcome the fundamental problem of discrete property by defining a region of support to compute curvature measure. The dominant points can then be detected by the following two common stages: (1) estimate the curvature for each point on the digital curve and (2) locate the points with local maximum curvatures as the dominant points. Teh and Chin [11] claimed that a precise determination of region of support was more important than the chosen curvature estimation. In order to solve the region of support setting problem, they presented a nonparametric method. Based on the local properties, the region of support of each point can be determined independently. The chord length and perpendicular distance of the point to the chord were used to determine the region of support. The region of support is symmetric with respect to each point. Once the region of support has been determined, various curvature measures, such as k-cosine, k-curvature, and 1-curvature measures, can be used to detect dominant points. However, Cornic pointed that the Teh–Chin algorithm is known to be not very robust in presence of noise [3]. In addition, the experimental results show that their method detects too many dummy dominant points in most cases. It is due to that their method tends to find small region of support for each point. It has been seen that a small region of support will detect more dominant points than that of a large region of support. In addition, it is seen from the observations that the supporting regions of the points on a curve are dependent each other. That is, the determination of region of 306 W.-Y. Wu / Graphical Models 64 (2003) 304–315 support for each point can be done dynamically by using the information of the previous found regions of support. The initial value of region of support is dynamically set in each stage of determination of region of support. Based on the above observations, we propose a dynamic approach to determine the region of support. 2.1. Break point detection A digital closed curve C can be defined as the set consisting of n consecutive points C ¼ fpi ji ¼ 1; 2; . . . ; ng; ð1Þ where pi is the ith point with coordinate (xi ; yi ), and points pi1 and piþ1 are the immediate backward and forward neighbors of point pi (modulo n), respectively. The FreemanÕs chain code [4] of C consists of the n vectors. The vector is defined as the difference between two consecutive points, namely wi ¼ pi piþ1 . Usually, the concept of 8-connectness is used for tracing a curve. Therefore, each of the vectors is assigned to an integer varying from 0 to 7 (see Fig. 1). The chain codes of C are defined as c1 c2 cn . An example of chain codes for a curve is shown in Fig. 2. Since the points on straight line cannot be considered as the dominant points, they can be excluded by tracking the chain codes [14]. The survived points are candidates of dominant points and denoted as the break points. It will reduce the computation time both in determination of support region and curvature estimation, if only the break points are considered as the possible dominant points. Fig. 2 shows an example of linear points as well as break points on a curve. The following rule is used to identify those linear points. Rule 1. If ci1 ¼ ci , then the point pi is a linear point. 2.2. Determination of region of support Suppose that lik and dik are the length of the chord pik piþk and the perpendicular distance from point pi to the pik piþk , respectively. The ratio of the deviation and the chord length is defined as Fig. 1. FreemanÕs chain codes. W.-Y. Wu / Graphical Models 64 (2003) 304–315 rik ¼ 307 dik : lik ð2Þ In Teh–ChinÕs algorithm [11], if one of the following two conditions is satisfied, the length of supporting region for point pi is denoted as k. Condition A. ð3Þ li;k P li;kþ1 : Condition B. ð4Þ ri;k P ri;kþ1 : Fig. 2. Break point detection on the curve with chain codes: 0007776555444333100222. (s) break point; (d) linear point. Table 1 Results of the proposed method and of the Teh–Chin method Image Leaf ðn ¼ 921Þ Leaf ðn ¼ 674Þ Leaf ðn ¼ 917Þ Screw ðn ¼ 877Þ Screw ðn ¼ 654Þ Screw ðn ¼ 884Þ Fig. Fig. Fig. Fig. Fig. Fig. Fig. Fig. Fig. Fig. Fig. Fig. 2(a) 2(d) 2(b) 2(e) 2(c) 2(f) 3(a) 3(d) 3(b) 3(e) 3(c) 3(f) Method nd CR MSE MAE PT Teh–Chin Dynamic Teh–Chin Dynamic Teh–Chin Dynamic Teh–Chin Dynamic Teh–Chin Dynamic Teh–Chin Dynamic 37 15 28 15 59 15 60 56 57 55 71 56 24.89 61.40 24.07 44.93 15.54 61.13 14.61 15.66 11.47 11.89 12.45 15.78 49.16 282.69 36.98 165.20 18.26 288.28 13.54 13.73 8.95 7.73 13.46 16.31 9.58 35.43 5.59 22.40 2.75 36.59 1.87 1.43 1.62 0.90 2.37 1.80 3.87 1.72 2.16 1.12 3.52 1.60 3.57 1.13 2.50 1.02 3.40 1.42 308 W.-Y. Wu / Graphical Models 64 (2003) 304–315 In this paper, the determinant of support region is designed to depend on the previous region of support. In fact, the starting value of k will be set to the previous region of support of the break points. Suppose that there are m break points on the curve. The length of supporting region for break point qi is denoted as ki , and is determined by the following algorithm. Algorithm (Determination of length of supporting region). Step 1. Start with the first break point q1 . Let i ¼ 1 and k ¼ 0. (a) Increase k by 1. (b) If Condition A or Condition B is satisfied, then k1 ¼ k is the length of supporting region for q1 . Otherwise, go to (a). Step 2. Determine the length of supporting region for qi by the following rule, for i ¼ 2; 3; . . . ; m. Fig. 3. The detected dominant points of leaf curves under different scales and orientations: (a)–(c) Teh– Chin method and (d)–(f) proposed methods. W.-Y. Wu / Graphical Models 64 (2003) 304–315 309 (a) Set k ¼ ki1 . Let j ¼ 0 and s ¼ 1. (b) If Condition A or Condition B is satisfied, then ki ¼ k is the length of supporting region for qi . Go to (a) for next i. (c) If s ¼ 1, then increase j by 1 and change s to 1. Otherwise, change s to )1 k ¼ ki1 þ s j: Go to (b). ð5Þ The determination of support region for the first break point is similar to that of Teh–Chin method. The length of supporting region of the first break point is found in Step 1. The strategy for adjusting k value in Eq. (5), is to vary the k value to differ from its previous length of supporting region 1; 2; . . ., and so on until it meets the Condition A or Condition B. Suppose that the ith break point qi is the bi th point on the curve. The region of support of qi is determined as the set Si ¼ fpj jpj is a break point for j ¼ bi ki ; . . . ; bi þ ki g: ð6Þ 2.3. Dynamic dominant point detection algorithm In this paper, the k-cosine value is used as the curvature measure [8] Fig. 4. The detected dominant points of screw curves under different scales and orientations: (a)–(c) Teh– Chin method and (d)–(f) proposed methods. 310 W.-Y. Wu / Graphical Models 64 (2003) 304–315 * a ik * b ik cosik ¼ * ; * a ik b ik * ð7Þ * where a ik ¼ ðxiþk xi ; yiþk yi Þ, b ik ¼ ðxik xi ; yik yi Þ, is the inner product operator, and j j is the norm of the vector. Once the curvatures of all of the break points have been calculated, the next step is to locate the points that have local maximum curvature. In addition, the points that the curvatures are less than a threshold are removed from the set of candidates for dominant points. Overall, the dynamic dominant point detection can be summarized as follows: Fig. 5. Results of the determination of support for the leaf curve ðn ¼ 921Þ: (a) Teh–Chin method and (b) the proposed method. W.-Y. Wu / Graphical Models 64 (2003) 304–315 311 Algorithm (Dynamic dominant point detection). Step 1. Extract break points from FreemanÕs chain codes. Step 2. Determine region of support for each break point ðki ; i ¼ 1; 2; . . . ; mÞ by the proposed dynamic method. Step 3. Compute the estimated curvatures for all of the break points (cosi;ki , i ¼ 1; 2; . . . ; m). Step 4. Suppress those break points whose curvature less than a preset threshold . Step 5. Locate the points that have local maximum curvature among their region of support as the dominant points. If two successive dominant points detected, remove the point with smaller region of support. Fig. 6. Results of the curvature estimation for the leaf curve ðn ¼ 921Þ: (a) Teh–Chin method and (b) the proposed method. 312 W.-Y. Wu / Graphical Models 64 (2003) 304–315 3. Experimental results and discussions Five performance evaluation criteria were used in the experiment; they are the number of the dominant points ðnd Þ, compression ratio (CR), mean area error (MAE), mean square error (MSE), and processing time (PT). They are defined as follows: n ð8Þ CR ¼ ; nd MAE ¼ MSE ¼ nd 1 X ai ; nd i¼1 n 1X e2 ; n i¼1 i ð9Þ ð10Þ where ei is the distance from pi to the approximated segment, and ai is the area enclosed by the original curve and the approximated segment. Fig. 7. Results of polygonal approximation (clockwise): (a) chromosome, (b) infinity, (c) leaf, and (d) semicircle. W.-Y. Wu / Graphical Models 64 (2003) 304–315 313 In the experiment, the curvature threshold is set to )0.5. Table 1 lists the result of the Teh–Chin method and of the proposed method. For the leaf curves, the Teh– Chin method detects 37, 28, and 59 dominant points, respectively. However, the proposed method detects 15 dominant points for all of the three cases. That is, the proposed method is very insensitive to the problem of scale and orientation. The same result can also be seen for the screw curves. In addition, the proposed method have larger compression ratio than that of the Teh–Chin method. It is due to Teh–Chin method tends to find a small region of support, and therefore detects many dummy dominant points. Because of the proposed method detects only the most significant dominant points, the mean square error and mean area error for the proposed method are larger than that of the Teh–Chin method for the leaf curves. However, although the numbers of dominant points of the Teh–Chin method is larger than that of the proposed method, the Teh–Chin method has both the Fig. 8. Results of polygonal approximation (counter-clockwise): (a) chromosome, (b) infinity, (c) leaf, and (d) semicircle. 314 W.-Y. Wu / Graphical Models 64 (2003) 304–315 larger mean square error and mean area error for the screw curves. Furthermore, the proposed method is faster than the Teh–Chin method for all cases, which can be found by comparing the processing times. The detected dominant points of leaf curves and screw curves by Teh–Chin method as well as the proposed method are shown in Figs. 3 and 4. Fig. 5 shows the lengths of supporting regions for the leaf curve in Fig. 3(a). From the plot of supporting lengths, it is seen that the variations of the k-values for the proposed method is larger than that of the Teh–Chin method. That is, the proposed method can dynamically find a proper region of support of each point, especially for the multi-scaled curves. The estimated curvatures are shown in Fig. 6. Again, it is seen that the variations of the estimated curvatures by the proposed method are larger than that of the Teh–Chin method. It is due to the accurate determination of supporting region for each point. Since the dynamic method for determining supporting region may depend on the tracing direction of a curve, another experiment has been conducted on the curves of chromosome, infinity, leaf, and semicircle. Figs. 7 and 8 show the results of tracing curves clockwise and counter-clockwise, respectively. Although the detected dominant points are different in the two figures, both of the detected dominant points are sufficient to represent the corresponding curves. 4. Conclusions In this paper, we propose a modified approach to determine the region of support. Instead of setting the supporting regions for each point independently, the next supporting region dynamically depending on the present region of support. The modified strategy will find the region of support faster than the traditional method. In addition, only the break points are considered as the candidates of dominant points. It will reduce the computation time on both the determination of supporting region and curvature estimation. Further, The experimental results show that the proposed method is insensitive to noise and it is robust on scale and orientation changing. Acknowledgments This paper is partially supported by National Science Council, ROC under Grant No. NSC 89-2213-E-214-012. References [1] N. Ansari, E.J. Delp, On detection dominant points, Pattern Recognition 24 (1991) 441–450. [2] F. Attneave, Some information aspects of visual perception, Psychol. Rev. 61 (1954) 183–193. [3] P. Cornic, Another look at the dominant point detection of digital curves, Pattern Recognition Lett. 18 (1997) 13–25. [4] A. Held, K. Abe, C. Arcelli, Towards a hierarchical contour description via dominant point detection, IEEE Trans. System Man Cybernet. 2 (1994) 942–949. W.-Y. Wu / Graphical Models 64 (2003) 304–315 315 [5] M.S. Kankanhalli, An adaptive dominant point detection algorithm for digital curves, Pattern Recognition Lett. 14 (1993) 385–390. [6] U. Ramer, An iterative procedure for the polygonal approximation of plane curves, Comput. Graphics Image Process. 1 (1972) 244–256. [7] B.K. Ray, K.S. Ray, An algorithm for detection of dominant points and polygonal approximation of digitized curves, Pattern Recognition Lett. 13 (1992) 849–856. [8] A. Rosenfeld, E. Johnston, Angle detection on digital curves, IEEE Trans. Comput. 22 (1973) 875– 878. [9] J. Sklansky, V. Gonzalez, Fast polygonal approximation of digitized curves, Pattern Recognition 12 (1980) 327–331. [10] Y.N. Sun, S.C. Huang, Genetic algorithms for error-bounded polygonal approximation, Internat. J. Pattern Recognition Artificial Intelligence 14 (2000) 297–314. [11] C.H. Teh, R.T. Chin, On the detection of dominant points on digital curves, IEEE Trans. Pattern Anal. Machine Intelligence 11 (1989) 859–872. [12] K. Wall, P.E. Danielsson, Comput. Vision, Graphics, Image Process. 28 (1984) 220–227. [13] M.J. Wang, W.Y. Wu, L.K. Huang, D.M. Wang, Corner detection using bending value, Pattern Recognition Lett. 16 (1995) 575–583. [14] W.Y. Wu, M.J. Wang, Detecting the dominant points by the curvature-based polygonal approximation, CVGIP: Graphical Models Image Process. 55 (1993) 79–88. [15] P.Y. Yin, A tabu search approach to polygonal approximation of digital curves, Internat. J. Pattern Recognition Artificial Intelligence 14 (2000) 243–255. Further Reading [1] H. Freeman, On the encoding of arbitrary geometric configurations, IRE Trans. Electron. Comput. 10 (1961) 260–268.
© Copyright 2025 Paperzz