Pattern Recognition, Vol. 28, No. 6, pp. 843 852, 1995 Elsevier Science Ltd Pattern Recognition Society Printed in Great Britain 0031-3203/95 $9.50+.00
Pergamon
0031-3203(94) 00100-6
CORNER D E T E C T I O N FOR CHAIN C O D E D CURVES J A C K K O P L O W I T Z t and S T E P H E N P L A N T E "~Clarkson University, ECE Department, Potsdam, NY 13699, U.S.A. ;~TRW, 5 Shaws Cove, New London, CT 06320, U.S.A.
(Received 15 September 1993; in revisedform 23 June 1994; receivedfor publication 17 August 1994) Abstract--A corner detection scheme for chain coded curves is proposed that significantly improves on the performance of current algorithms. The proposed scheme measures the number of links to either side of a point that can produce the largest digital straight line. That value is used as an indication of curvature at that point with very high curvature being indicative of a corner. A modification of the proposed algorithm can further reduce the false detection rate with virtually no affect on the number of corners missed by omitting certain patterns that can arise from contours with arbitrarily small curvature. Chain coding Binary images
Corner detection Feature extraction
Line drawings
1. INTRODUCTION The digitization of curves can often bring a loss of important feature information. In particular it can mask the presence of corners as well as create the illusion of corners when they are not present in the original curve. Various corner detection algorithms have been developed for application to two categories of problems. One type of algorithm detects corners from gray scale image data. (x-5) A second type detects corners from chain-coded curves. (6-13) The chain code based methods can be applied to gray scale images as well as to digitized representations of precisely defined curves. The proposed corner detection algorithm is intended primarily for the latter application. By limiting its scope improved performance for the desired application should be expected. While only the eight directional chain code is considered here, the algorithm can easily apply to four directional codes. Freeman and Davis (6) developed an algorithm for detecting corners by measuring two features, the angle of discontinuity in the slope of the chain coded curve and the lengths on either side of each point with little or no curvature, which is called the discontinuity free region. The slope is measured by a straight line test segment which connects the endpoints of a fixed number of consecutive links. Beus and Tiu (7) modified the Freeman and Davis (e) scheme suggesting that the discontinuity in slope be calculated for various sizes of the test segment and then averaging the results. They also set a m a x i m u m cutoff on the length of the discontinuity free regions surrounding a point. Kruse and Rao 113) used a matched filtering approach to detect corners. The Medioni and Yasumoto ¢8) corner detector attempts to fit a parametric cubic B-spline to the boundary curve. The decision of whether a point is a
Image analysis
Digitized images
corner is determined by the distance between the point and the interpolating spline. The proposed corner detection algorithm is similar to that of Freeman and Davis in that it uses features of the chain code links. However, rather than measuring slope from which curvature is then obtained, a feature directly indicative of curvature is used. The algorithm defines the feature referred to as the straight line distance of a point, which is the maximum number of links that can produce a digital straight line centered about that point. The straight line distance is then used as an indicator of the curvature at a point on the chain coded curve. If the curvature is high enough, the point is considered a corner point. The results show significant improvement of the proposed corner detection algorithm over that of Freeman and Davis. However, the Freeman and Davis algorithm can tolerate imperfect coding, whereas the proposed algorithm assumes the chain coding of the curve is performed without error. The Freeman and Davis method is used as .the standard for comparison. Section 2 gives a brief description of the Freeman and Davis algorithm, and Section 3 gives a detailed description of the proposed corner detection scheme. Section 4 of the paper compares the performance of the proposed scheme to that of the Freeman and Davis scheme taking into account the modifications of Beus and Tiu. Section 5 discusses the advantages of the proposed corner detection scheme. 2. FREEMAN AND DAVIS CORNER DETECTION
A chain coded curve is a digitized representation of the boundary of an object. The chain consists ofn links, {at}i, each link pointing in one of eight directions, 843
844
J. KOPLOWITZ and S. PLANTE
a~e {0. . . . . 7}. Freeman and Davis scan the chain-coded curve with a straight line segment, L~, which connects the endpoints of s consecutive links aj _ s + 1.... , aj _ 1, aj. The amount of smoothing that is done to the curve increases with the number of links, s, used to create the scanning line segment, L~. A range of values for s from 5 to 11 is suggested. The line segment L~ creates an angle 0~ with the x axis. Freeman and Davis define the incremental curvature, @ as twice the mean over two adjacent angular differences -
~j-
2 (0~+1
-
0~) + (0~ -
0~--0
2
_
- 0j+ 1 - 01-1.
(1)
As the scanning segment passes through a corner the incremental curvature will be non-zero for a distance of s + 1, implying that corners must be separated by a distance of s + 1. The abruptness in the slope discontinuity at a corner is estimated by ~b~, the sum of the incremental curvatures produced by the scanning segment as it passes through the corner, j+s
q~ = Z 6~.
(2)
i--j
This is the first of two features used for corner detection. The second is a measure of the lengths, tl and tz, of the curves with little or no curvature on either side of a point. At a point a j, tl and t 2 a r e defined as
tl=max{t:6j_~,~(-A,A),Vl <_v
(3)
t2=max{t:~j+~+~e(-A,A),Vl<_v<_t},
(4)
where 1 A = tan--.
(5)
s--1
Freeman and Davis measure the prominence of a corner as a function of the slope discontinuity, q~, and the lengths, tl and t 2, of the discontinuity free regions to either side of the corner given by
3. P R O P O S E D C O R N E R D E T E C T I O N A L G O R I T H M
The chain coded representation of a boundary with a corner (i.e. a point of infinite curvature) cannot be distinguished from that of a boundary with very high curvature. When detecting corners from chain coded curves, corners as well as very high curvature in the original image will cause detections. Hence, corner detection is equivalent to detecting very high curvature. A trade off will exist between detecting true corners and false corner detections due to high curvature. The work of Koplowitz and Sundar Raj (14~ shows that for chain coded contours the curvature at a point is related to the expected length of the maximal digital straight line around that point. A sequence of links in a chain code is defined as a digital straight line if it is the digitization of a straight line in the original image. The proposed corner detection algorithm uses digital
straight line lengths around a point as an indication of the curvature at that point, thereby locating points of high curvature, i.e. corner points. The proposed corner detection algorithm defines the straight line distance, di, at a point, ai, as the maximum number of links that can produce a digital straight line on the chain coded curve with midpoint a i. An indication of low curvature exists if the straight line distance is large while a small distance is indicative of high curvature. The latter is also the case for detecting corners which is the objective here. Detection of corners is more difficult when the objects are not very large relative to the digitization grid. The focus here is on this more difficult case for which a low threshold of straight line distance is used to detect corners. The straight line distance of a point can be found by expanding outward from the point, adding links to both sides until the sequence of links producing the line segment on the chain coded curve is no longer a digital straight line. This is illustrated in Fig. 1. If the segment of the chain coded curve from point a j_ 1 to aj + 1 is a digital straight line, then examine the segment of the curve from point a j_ 2 to aj+z. Repeat the procedure until the line segment with midpoint aj is not a digital straight line. In Fig. 1 this occurs from aj_ 4 to aj+,. N o w examine the two segments from a j - 4 to aj + 3 and a j_ 3 to aj + 4- Since neither are digital straight lines the longest digital straight line segment extends from a j_ 3 to point aj + 3, a length of six chain links. The straight line distance, d j, at point aj in Fig. 1 would thus be six. A performance trade-off exists for the proposed corner detection scheme between the number of corners not detected and the number of false alarms. As the threshold on di indicating a corner is increased, the number of undetected corners will decrease, but the number of false detections will increase. As the threshold is decreased, the number of false detections decreases, but the number of missed corners increases. For our experimentation with objects that are not very large a value of di _< 3 produced the most desirable trade-off between missed detections and false alarms. A higher threshold increases the false alarm rate without significantly improving the detection rate. Therefore, if ci is the binary code where 1 and 0 indicate a corner and a non-corner respectively at point a~, then
ci =
{~
ifd~<3 otherwise.
(7)
a_jt4
/4,,,
-
I-3 Fig. 1. Straight line distance at a point on a chain coded curve.
Corner detection for chain coded curves Since the threshold for a corner point is at d i _< 3, it is only necessary to calculate the straight line distance up to 4. If a digital straight line segment of length four can be produced with midpoint ai, then ai is not a corner point and there is no reason to continue further with the calculation of the straight line distance d~. Checking for a digital straight line distance of only four is trivial and need not use the general and sophisticated methods in the literature. The criteria for straightness of length 4 is simply: (i) all four links must be within 45 ° of each other, and (ii) the pattern cannot consist of two consecutive links at one angle followed by two consecutive links at a different angle. Two examples of corner points are given in Fig. 2. Figure 2(a) shows the chain code for two straight lines that meet at an angle. Point a~ is the point closest to where the two lines meet. The straight line distance d~ is one, thus indicating a corner point. For the same situation in Fig. 2(b) at point a k the straight line distance dk = 3, thus indicating that ak is also a corner point. If multiple corners reside very close to each other on an image, it will not be possible to distinguish them from a single corner when detecting corners from a chain coded curve. Therefore, a set of consecutive points on a chain coded curve having straight line distances indicative of a corner should be interpreted as representing only one corner. One of the consecutive points on the chain coded curve must be chosen as the corner point. In Fig. 3, points a j_ 1, aj and aj+ 1 have straight line distances indicative of a corner with straight line distances dj = 1, dj a = 3, and dj+ 1 = 3. To choose only one corner point among these three, consider that the most prominent point would be the one having the shortest straight line distance, indicative of highest curvature. Therefore, aj would be the best choice as the true corner because the curvature indicator is greatest at that point. It is also possible to have a set of consecutive points each indicating a corner and having equal straight line distance i.e. d i - , . . . . . di . . . . . di+m < 3. In this case the center of the group is selected as the corner point. In Fig. 4(a), points a~ and ag+ 1 each have a straight line distance of one. If the choice for a corner point is not limited to the link endpoints then the midpoint between ai and a~+ ~ is selected. Otherwise either point can be selected. Figure 4(b) shows three consecutive points with straight line distances equal to three. The choice for the location of the corner would therefore, be a~. There are some patterns c o m m o n in chain coded curves that result in a straight line distance of three or
845
Fig. 3. Consecutive points on a chain coded curve with a straight line distance less than or equal to 2. =
\/
"j b.
I.
Fig. 4. Consecutive points on a chain coded curve with equal straight line distances indicating a corner.
ai b.
I.
7.
_-
v
---
c.
--
--
d.
Fig. 5. Corner producing chain code patterns which can result from low curvature.
less, indicating that they are points of high curvature, yet in the original boundary they can be points of arbitrarily low curvature. A simple search found four such patterns in chain coded curves that cause false corner detections. These patterns, shown in Fig. 5, can arise with arbitrarily small curvature in the original image. The four patterns together with their mirror and rotational (multiple of ~z/4) equivalents form a complete set. Point ai in Fig. 5(a) has a straight line distance of one, indicative of high curvature. F r o m Fig. 5(a) it can be seen that the pattern is due to a boundary with low curvature. The same situation exists for the link sequences in Figs. 5(b)-(d). Since these four patterns
J a! 8.
\
b,
Fig. 2. Examples of corner point on a chain coded curve.
846
J. KOPLOWITZ and S. PLANTE
can arise from arbitrarily low curvature but give an indication of high curvature, they should not be considered as corner points. Section 4 shows the performance of the algorithm before and after detections due to these patterns are considered as false corners.
4. E X P E R I M E N T A L RESULTS
Simulations were performed on the proposed corner detection algorithm and compared with the Freeman and Davis method. 16) The test objects consisted of variations of the object shown in Fig. 6. These objects consist of arcs, each with a radius of curvature R, and meeting to form two corners with a discontinuity angle of ~b. The table in Fig. 6 shows the various values of ~b and size used to evaluate performance. The unit length is that of a horizontal or vertical link of the chain code. Note that the size of the object is related to the radius of curvature, R, by size = 2R cos½qS.
(8)
By using these objects and varying the angle of discontinuity, qS, and the radius of curvature, R, it is
Fig. 7. Chain coded curve for object with size = 24, q5= 40 ° at an arbitrary angle.
possible to examine detection of a wide range of corners as well as false detections over a wide range of curvature. Performance evaluations were made on each of the 15 individual objects as well as on a composite image consisting of all the objects. Comparisons show that the proposed corner detection algorithm can provide
q
t~
size
[d©gr©esl
~z,e 16
60
Z4
40. 50. 50. 70
28
30
34
3 ~ 4 0 , 5 0 . 6 ~ 70
44
50,60.70
70
50
Fig. 6. Test objects of various size and ~b.
Corner detection for chain coded curves
847
50
5,0
c~
E $
40
o.
300 o "0 ol
20
"5 10
P2 ,6.
0
I
0
I
Pl .tI
2
I
4
% of false corners per node
Fig. 8. Performance for object with size = 24, q~= 40 °. significant performance improvement over current methods. The performance of a corner detection algorithm is given by the percentage of corners missed and the number of false corners detected. Figure 7 shows a typical digitized object with q~ = 40 ° and size = 24. The object is digitized using the Freeman 8-directional grid intersect method. The operating points for the two versions of the proposed algorithm as discussed in Section 3 are shown in Fig. 8 for this object. The x-axis represents the number of false detections for every 100 links in the object and is referred to as the percentage of false detections. The y-axis represents the percentage of corners missed per object. The cross, + , and the triangle, A, in Fig. 8 plot the performance of the two versions of the proposed corner detection algorithm. The first version, represented by the cross, produces a corner detection for all di < 3, while the second version, represented by the triangle, produces a corner detection for di < 3 resulting from chain code patterns other than those shown in Figs. 5(a)-(d). The curve passing through the squares, D, in Fig. 8 represents the performance curve of the Freeman and Davis method. Each square in the curve represents the performance of the scheme with a different threshold for Ki to indicate a corner as explained in Section 2. A low threshold produces a relatively high false alarm rate and a relatively low missed corner percentage. A high threshold results in a high missed corner percentage and low false alarm rate. The proposed corner detection scheme uses a fixed threshold, thus creating a performance curve consisting of only one operating point for each version. The first version of the proposed corner detection scheme shown in Fig. 8 produces a missed corner
percentage of approximately 2% and a false alarm rate slightly above 4 ~ . The second version has the same missed corner percentage as the first but reduces the false alarm rate under 2~o, thus improving upon the first version. The operating point for both versions falls well below the performance curve of the Freeman and Davis method, achieving significantly better performance. F o r the data in Fig. 8 as well as for each of the other test objects, multiple chain coded curves were produced by placing the object on a digitization grid at various orientations with randomly selected center points. Each object was superimposed on a digitization grid at eight different orientations: 0 °, 7 °, 15 °, 21 °, 28 °, 33 °, 39 °, 45 °. For each orientation there were three random translations between - 0 . 5 and 0.5 in the x- and y-direction. Thus, twenty-four different chain coded curves representing the object with q5 = 40 ° and size = 24 were used to calculate the performance curve shown in Fig. 8. Strict guidelines were imposed on the proposed corner detection algorithm when evaluating its performance. A corner was considered detected if a detection occurred on the chain coded curve no more than one chain link away from the true corner. The Freeman and Davis algorithm was given more leeway by considering a corner as detected if a detection occurs as much as two chain links away from a true corner. A false detection for the proposed scheme was any detection occurring at least four chain links away from any other detection. The Freeman and Davis method was again allowed more leeway by only taking into consideration those non-corner detections occurring at least s + 1 links away from any other detection when evaluating the performance (where s is the parameter discussed in Section 2).
848
J. KOPLOWITZ and S. PLANTE
The Freeman and Davis corner detection algorithm was optimized to achieve the best possible performance for the objects. The algorithm has two parameters, s and the threshold on K~, as discussed in Section 2. These parameters can be adjusted to change the performance of the algorithm. For each of the objects in Fig. 6, the value of s, over the set of all integers that achieves the best performance, is s = 5. The threshold value for K~ used to choose corner points determines the operating point for the algorithm. In Fig. 8, for example, the threshold ranges from 200 through 600. The modifications suggested by Beus and Tiu ~v) were taken into consideration when comparing the performances of the algorithms. Beus and Tiu (7) suggest two modifications to the Freeman and Davis algorithm. They suggest using various sizes, of the test segment, used to calculate the discontinuity in slope, given by equation (2), and averaging the results. For our experimentation we chose an optimum value thus achieving the best possible performance, better than that achievable by averaging. The second modification suggested by Beus and Tiu was to place a limit on the lengths in equation (6) in order to reduce the number of false corner detections due to long segments of low curvature. Figure 9 shows a typical example of the performance curves of an object containing long segments of low curvature. The best performance curve, represented by the curve passing through the squares, was obtained when no limit was placed on the lengths of the low curvature regions. (The curve passing through the crosses was produced by limiting the lengths of tl a n d t 2 t o 15.) This was found to be true for all 15 test objects used, making this particular modification unnecessary for the test objects.
5. DISCUSSION
Of the two versions of the proposed corner detection algorithm the second achieved better performance by giving the same missed corner percentage as the first version but reducing the false alarm rate. As shown in Fig. 8 for an object with angles of 40 ° and size of 24, both versions achieved a missed corner percentage of about 2%. However, the second version yielded a false detection rate about half that of the first. Figures 10 12 illustrate three additional examples showing similar comparative results. Both versions of the proposed corner detection scheme achieved the same percentage of missed corners but the second version produced a false detection rate ranging from 1% to 2% less than the first version. Either version of the proposed algorithm achieves a more desirable performance than that of the Freeman and Davis algorithm. For example, in Fig. 8 two reasonable operating points from the performance curve of the Freeman and Davis algorithm are obtained at a threshold of 200 and 400. At 200 the Freeman and Davis method yields a false detection rate of about 5% and a missed corner percentage of about 20%. At 400 the false detection rate is about 1.75% with a missed corner percentage of about 30%. The operating point for either version of the proposed corner detection method has an order of magnitude smaller missed corner percentage at roughly the same false detection rate. The magnitude of the angle of discontinuity, q~, of a corner affects the detectability of a corner, where a large magnitude is more detectable than a small magnitude. Figure 13 shows the performance curves for the second
3.5
a)
Q.
3
z.s
1250 E
uo
600 1125
500
z
0.5 Pl
'2 0
,~ 0
i
~
0(~i I 0.4
0.8
1.2
,
,
1.6
, 2
,
,9gO 2.4
% of false corners per node
Fig. 9. Performance with limits on t 1 and t 2 for object with size = 70, q5= 60°.
, 2.8
Corner detection for chain coded curves
849
40
L
35
30
~ 25 CJ
E 2o 0 o "O
"6
I
I
i
2
4
5'0 of false Corners per node
Fig. 10. Performance for object with size = 28, ~b= 30 °.
60
~00 50 ~
q~ O~
2
0
0
"-o
100
:50
o
o
4.0 O. to 30 0 (J '10
E
20
"6 10
P2
I
I 2:
I
I 4
I
I:'1
I 6
% of false corners per node Fig. 11. Performance for object with size = 16, ~b= 60 °.
version of the p r o p o s e d corner detection a l g o r i t h m a n d the F r e e m a n a n d Davis a l g o r i t h m for three of the test objects, each with s i z e = 24 b u t different angles of discontinuity at the corners. The A, X a n d V plot the p e r f o r m a n c e of the second version of the p r o p o s e d scheme for the objects with discontinuity angles of 4> = 30 °, 4> = 40 ° a n d ~b = 50 °, respectively. Each of the three objects has the same false detection rate (of a b o u t 0.1~o) for the p r o p o s e d scheme. This is expected since
the curvature of the objects is roughly the same. T h e test object c o n t a i n i n g a corner with the largest discontinuity angle of q5 = 50 ° yields the lowest missed corner percentage at a b o u t 2.5~o. F o r the object with the smallest corner discontinuity angle of ~b = 30 °, the missed corner percentage is highest at a b o u t 10~o. The p r o p o s e d corner detection scheme starts to degrade in p e r f o r m a n c e with corners h a v i n g a discontinuity angle less t h a n 30 ° .
850
J. K O P L O W I T Z
a n d S. P L A N T E
4Q 5OO
a.,
35
~
,3O
E Q. 25
E
0 ¢J "0
20 200
P2 0
I
I
0
P1
A
I
q
¢
I
4
2
% of false corners per node Fig. 12. Performance for object with size = 24, q~ = 50 °.
45
40
35 O~
E 30
O. @-j
$¢-
25
0 o
_
600
20 (/)
E: "5
15 6OO
10
700 675 !
(
0.4
0
I
I
I
0.8
I
I
1,2
~50 I
I
f .6
626 I
600
I
I
2
2.4
l
I
9.8
% of false corners per node P2 A N G L E - 3 0
X
P2 ANGLE-40
V
P'2 A NGLE.-50
Fig. 13. Performance for object with size = 34, q~ = 30 °, 40 °, 50 °.
High curvature (small size) in an object will produce a large number of false detections. Figure 14 shows the performance for three of the test objects with different size but each contains a discontinuity angle of 4) = 60 ° at the corners. The A, the X, and the V in Fig. 14 plot the performances of the second version of the proposed scheme for the three objects with size values 24, 34 and 70, respectively. All three objects yield the same missed
corner percentage close to zero. This is expected since the angles are the same. The largest object (i.e. smallest curvature), size = 70, has the smallest false detection rate of 0 with the proposed scheme. The object with smallest size = 24 (i.e. highest curvature) has the highest false detection rate of about 1.5%. The proposed corner detection scheme begins to degrade rapidly with high false detection rates for objects with a value of size less
Corner detection for chain coded curves
851
35
30 o) ol
._E
25
CL O)
20
E
0 0
¢n u)
"5
15 ¸
10-
700
800 I
I~-..~..
5
175
1260 ¢
I coO
O +.~.l
i
0
0,2
i
i
i
f
0,4
i
0.6
i
i
0.8
I
i
1
"i" ~ g 1.2
I
~l
i
1.4
1,6
i 1.8
% of false corners per node 1>2 9 Z E - 2 4
X
1='2 S I Z E - 3 4
,r/
P2 SIZE-70
Fig. 14. Performance for object with ~b= 60°, size = 24, 34, 70. ,.30
~O
28 26 24
g
22 20
E 18 O. u~ 1 6 (1) c14 O o "0 1 2
10
~6
8
6 4
P2 A
20
Pl 4-
i
0
!
2
I
4
I
i
6
% of false corners per node
Fig. 15. Performance for composite image. than 16 or radius of curvature, R, less than 9. Table 1 gives the performance of the proposed algorithm for all 15 test objects listed in Fig. 6. For a composite image consisting of all 15 test objects, the proposed corner detection scheme performed favorably. The composite image is representative of an object containing various curvatures and corners with various angles of discontinuity. Figure 15 shows the performance of two versions of the proposed
scheme and of the Freeman and Davis algorithm. Of the two versions of the proposed scheme, the second achieved the best performance. As shown in Fig. 15, both versions of the proposed scheme achieved a missed corner percentage of about 2~o, however, the false alarm rate achieved by the second version was about 1~o, roughly half that of the first. The proposed corner detection scheme achieved a more desirable performance than that of the Freeman
852
J. KOPLOWITZ and S. PLANTE
a n d Davis scheme on the composite image. In Fig. 15, a reasonable operating p o i n t on the F r e e m a n a n d Davis performance curve would be at a threshold of 400. At t h a t point, the F r e e m a n a n d Davis m e t h o d yields a false a l a r m rate of a b o u t 3.75% a n d a missed corner percentage of a b o u t 15%. The operating p o i n t for either version of the proposed scheme is significantly better.
generate small false detection rates for objects with a radius of curvature R _> 9. A small angle of discontinuity, ~b, of a corner in an object results in a relatively high percentage of missed corners. The percentage of missed corners generated by the p r o p o s e d scheme was found to be small for corners with discontinuity angle of q~ >_ 30 °. REFERENCES
6. SUMMARY A corner detection a l g o r i t h m is p r o p o s e d which significantly improves on the performance of current algorithms for chain coded curves. The p r o p o s e d a l g o r i t h m determines the n u m b e r of links on either side of a p o i n t t h a t can produce the largest digital straight line a n d uses t h a t value as a n indication of curvature at t h a t point. High curvature, i.e. a short digitally straight line, is indicative of a corner. The p r o p o s e d corner detection scheme generates a corner detection if the length of the digital straight line at a p o i n t is di _< 3. A second version of the p r o p o s e d corner detection method, whose objective is to reduce false detections, was examined. T h e second version generates a corner detection for di _< 3 resulting from chain code p a t t e r n s o t h e r t h a n those in Figs 5(a) (d). This version of the p r o p o s e d scheme reduces the false detections of the first version by a b o u t half w i t h o u t any noticeable change in the percentage of missed corners. T h e first a n d second versions of the p r o p o s e d corner detection scheme achieved a m o r e desirable perform a n c e t h a n the F r e e m a n a n d Davis algorithm. However, the p r o p o s e d corner detection scheme assumes no errors in chain coding of curves. It assumes t h a t the error is in the q u a n t i z a t i o n process a n d is n o t i n t e n d e d for gray level images containing noise a n d edge detector errors. T h e F r e e m a n a n d Davis a l g o r i t h m does not necessarily have this limitation. F o r corner detection schemes a small radius of curvature of a n object results in a relatively high false detection rate. The p r o p o s e d scheme was found to
1. P. R. Beaudet, Rotational invariant image operators, Proc. Int. J. Conf. Pattern Recognition 579 583 (1978). 2. O. A. Zunuga and R. Haralick, Corner detection using the facet model, Proc. Comput. Vision Pattern Recognition 30-37 (1983). 3. L. Kitchen and A. Rosenfeld, Grey-level corner detection, Pattern Recognition Lett. 1, 95-102 (1982). 4. Z. Wu and A. Rosenfeld, Filtered projections as an aid in corner detection, Pattern Recognition 16, 31-38 (1983). 5. S.T. Liu and W.H. Tsai, Moment-preserving corner detection. Pattern Recognition 23, 441 460 (1990). 6. H. Freeman and L. S. Davis, A corner finding algorithm for chain-coded curves, IEEE Trans. Comput. 26, 297-303 (1977). 7. H, L. Beus and S. S. H. Tiu, An improved corner detection algorithm based on chain-coded plane curves, Pattern Recognition 20, 291 296 (1987). 8. G, Medioni and Y. Yasumoto, Corner detection and curve representation using cubic B-splines, Comput. Vision Graphics Image Process. 39, 267-278 (1987). 9. W. S. Rutkowski and A, Rosenfeld, A comparison of corner detection techniques for chain-coded curves, Technique Report TR-623, Computer Science Center, University of Maryland (1978). 10. A. Rosenfeld and E. Johnston, Angle detection on digital curves, IEEE Trans. Comput. 22, 875-878. 11. F. Cheng and W. Hsu, Parallel algorithm for corner finding on digital curves, Pattern Recognition Lett. 8, 47-53 (1988). 12. R. L. T. Cederberg, An iterative algorithm for angle detection on digital curves, Proc. Int. J. Conf. Pattern Recognition 576 578 (1978). 13. B. Kruse and C. V. K. Rao, A matched filtering technique for corner detection, Proc. Int. J. Conf. Pattern Recoynition 642-643 (1978). 14. J. Koplowitz and A. P. Sundar Raj, A robust filtering algorithm for subpixel reconstruction of chain coded line drawings, IEEE Trans. Pattern Anal. Machine Intell. PAMI-9, 451-457 (1987).
About the Author--JACK KOPLOWITZ received the B.E.E. degree from the City College of New York,
New York in 1967, the M.E.E. degree from Stanford University, Stanford, California, in 1968, and the Ph.D. degree from the University of Colorado, Boulder, Colorado, in 1973. From 1967 to 1970, he was a member of the Technical Staff at Bell Laboratories, Holmdel, New Jersey working in the area of data communications. Since 1973, he has been in the Department of Electrical and Computer Engineering at Clarkson University, Potsdam, New York. He spent the 1986 1987 academic year as a Lady Davis Fellow at the Department of Electrical Engineering, Technion-Israel Institute of Technology, Haifa, Israel. He served as secretary of the Board of Governors of the IEEE Information Theory Group from 1981 to 1983. From 1984 to 1987, he served as Associate Editor for Pattern Recognition of the IEEE Transactions on Information Theory and is currently an associate editor of the journal, Pattern Recognition. His research interests are in pattern recognition, image analysis and statistical communications.
About the Author--STEPHEN PLANTE received the Bachelors degree in computer engineering and the
Masters degree in electrical engineering from Clarkson University in 1990 and 1992, respectively. Since January 1992 he has been with the Systems Integration Group of TRW Systems Division in New London, Connecticut. His interests include signal processing, image analysis and pattern recognition.