An adaptive method for detecting dominant points

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.