Curvature Based Image Corner Detection

Farzin Mokhtarian and Riku Suomela

Centre for Vision, Sp eech, and Signal Pro cessing

Department of Electronic and Electrical Engineering

University of Surrey, Guildford, England GU2 5XH, UK

e-mail: [email protected]. uk

ABSTRACT quality of its results. Note however that the Canny de-

tector is not a critical part of our corner detector: it can

This pap er describ es a new metho d for image corner

b e replaced with another edge detector if the new edge

detection based on the scale space (CSS) rep-

detector is b elieved to p erform b etter.

resentation. The rst step is to extract edges from the

Section 2 gives a brief overview of the CSS metho d

original image using a Canny detector. The Canny de-

and section 3 describ es the prop osed corner detector.

tector sometimes leaves a gap in T-junctions so during

The p erformance of a corner detector is b est evaluated

edge extraction, the gaps are examined to lo cate the

with real test images and in section 4 the results of the

T-junction corner p oints. The corner p oints of an im-

CSS corner detector are presented. Four images with

age are de ned as p oints where image edges have their

di erent prop erties are used in the exp eriments.

maxima of absolute curvature. The corner p oints are de-

tected at a high scale of the CSS and the lo cations are

2 The curvature scale space technique

tracked through multiple lower scales to improve lo caliz-

ation. The nal stage is to compare T-junction corners

The curvature scale space technique is suitable for re-

to CSS corners and remove duplicates. This metho d

covering invariant geometric features (curvature zero-

is very robust to noise and we b elieve that it p erforms

crossing p oints and/or extrema) of a planar curve at

b etter than the existing corner detectors.

multiple scales. To compute it, the curve is rst para-

metrized by the arc length parameter u:

1 Intro duction

(u)=(x(u);y(u)):

Corner detection is an imp ortant task in various ma-

chine vision and image pro cessing systems. Applications

An evolved version of can then b e computed [10]:

include motion tracking, ob ject recognition, and stereo



matching. It is a fundamental problem and several dif-

=(X(u;  );Y (u;  ))



ferent algorithms have b een prop osed. Corner detection

should satisfy a numb er of criteria in order to p erform

where

satisfactorily. We prop ose the following criteria:

X (u;  )=x(u) g(u;  )

 All the true corners should b e detected

Y (u;  )=y(u) g(u;  )

 Corner p oints should b e well lo calized

where is the convolution op erator and g (u;  ) denotes

 No false corners should b e detected

a Gaussian of width  . Note that  is also referred to as

the scale parameter. The pro cess of generating evolved

 Corner detector should b e robust to noise

versions of as  increases from 0 to 1 is referred to

as the evolution of . This technique is suitable for

 Corner detector should b e ecient

removing noise from and smo othing a planar curve as

This pap er prop oses a new corner detection metho d

well as gradual simpli cation of its shap e [7, 9].

based on the curvature scale space (CSS) technique. The

In order to nd curvature zero-crossings or extrema

CSS technique is suitable for extraction of curvature fea-

from evolved versions of the input curve, one needs to

tures from an input contour at a continuum of scales.

compute curvature accurately and directly on an evolved

This corner detection metho d requires edge contours of

version of that curve. Curvature  on is given by:

 

the real image. In the implementation of the CSS de-

X (u;  )Y (u;  ) X (u;  )Y (u;  )

u uu uu u

tector a was used [1]. The Canny

(u;  )=

1:5

2 2

detector was selected since we were satis ed with the

(X (u;  ) + Y (u;  ) )

u u

(a) Africa (b)  =4

Figure 2: Curvature Scale Space image of Africa

(c)  =8 (d)  =16

As the contour evolves, the actual lo cations of the

corners change. If the detection is achieved at a large

scale the lo calization of the corners will be p o or. To

Figure 1: Evolution of Africa

overcome this problem tracking is intro duced in the de-

tection. The corners are lo cated at a high scale  ,

hig h

where

this assures that the corner detection is not a ected by

noise. Then sigma is reduced and the same corner p oints

@

X (u;  )= (x(u) g(u;  )) = x(u) g (u;  )

are examined at lower scales. As a result, lo cation of

u u

@u

corners may be up dated. This is continued until the

2

scale is very low and the op eration is very lo cal. This

@

X (u;  )= (x(u) g(u;  )) = x(u) g (u;  )

uu uu

improves lo calization and the computational cost is not

2

@u

high, as curvature values at scales lower than  do

hig h

Y (u;  )=y(u) g (u;  )

u u

not need to b e computed at every contour p oint but only

in a small neighb ourho o d of the detected corners.

and

There are lo cal maxima on the evolved contours due

Y (u;  )=y(u) g (u;  ):

uu uu

to rounded corners. These can be removed by intro-

The function de ned implicitly by (u;  ) = 0 is the

ducing a threshold value. The curvature of a sharp

CSS image of . Figure 1 shows an example of contour

corner is higher than that of a rounded corner. There

evolution. Figure 2 shows the CSS image of the contour

is one nal addition to the corner candidate declara-

shown in gure 1.

tion. Each lo cal maximum of curvature is compared to

its two neighb ouring lo cal minima. The curvature of a

3 CSS corner detection metho d

corner p oint has to b e 2 times higher than the curvature

of a neighb oring extremum. This is necessary since if

3.1 Overview

the contour is continuous and round, the curvature val-

The corners are de ned as the lo cal maxima of the abso-

ues are well ab ove the threshold value and false corners

lute value of curvature. Atavery ne scale there exists

would b e declared.

many such maxima due to noise on the digital contour.

As the scale is increased, the noise is smo othed away and

3.2 Outline

only the p eaks corresp onding to the real corners remain.

The pro cess of CSS image corner detection is as follows:

The CSS corner detection metho d nds the corners at

 Utilize the Canny edge detector to extract edges these lo cal maxima. The problem is to nd the right

from the original image scale where the corners are to b e detected.

Figure 3: Arti cial test image with noise

 Extract the edge contours from the edge image

{ Fill the gaps in the edge contour

Figure 4: Blo cks image

{ Find T-junctions and mark them as T-corners

the images increases, the p erformance of the CSS image

 Compute the curvature at highest scale  and

hig h

corner detector was not a ected much. Due to shortage

determine the corner candidates by comparing the

of space, only the results for the CSS detector are shown

maxima of curvature to the threshold t and the

here (see gures 3-6).

neighb oring lo cal minima.

All the detectors were implemented in C++, and had

 Track the corners to the lowest scale to improve

rather similar sp eeds. Tests showed that ab out 85% of

lo calization

the time used by the CSS detector is sp ent in the edge

detection stage.

 Compare the T-corners to the corners found using

The CSS corner detector uses only two imp ortant

the curvature pro cedure and remove corners which

parameters. Exp eriments showed that  = 4 gave

hig h

are to o close.

good results with almost all images. The threshold t

dep ends on the value of  and with  = 4 the

hig h hig h

4 Exp erimental results and discussion

threshold can b e set to 0.03. Other values of  are

hig h

The CSS corner detector was tested using four di er-

also p ossible and for a very noisy image  = 8 and

hig h

ent images and the results were compared to the output

threshold t =0:02 can b e used. Starting with  =

hig h

of three other corner detectors: Kitchen and Rosenfeld

4, tracking can be accomplished at  = 2,  = 1 and

[5], Susan [15] and Plessey [4] corner detectors. Other

 = 0.7. The nal scale  should b e as lo cal as

f inal f inal

corner detectors [3, 17,13,2, 11, 14,8,6,12,16]were

p ossible to ensure go o d lo calization. It was found that

also considered. Note that we attempted to obtain the

the results were not sensitive to the exact values of the

b est p ossible results for each corner detector tested by

parameters, and that the same values worked well for

searching for parameter values that app eared to yield

the di erent test images used except for one that was

the b est results. The rst test image is an arti cially cre-

very noisy byintention. Note however that the detection

ated test image with well-de ned geometric shap es. It

of corners can b e carried out at multiple scales. As a res-

was obtained by adding Gaussian noise with zero mean

ult, by adjusting the scale, the numb er of corner p oints

and standard deviation 20. The second test image is a

recovered can increase or decrease, dep ending on the

real image of blo cks. Much texture and noise is present

requirements of later pro cesses. For example, in a mo-

in the image. The third test image is an image of a

tion tracking system, ob ject detail is not needed when

house with small details and texture in the brickwall.

tracking in a non-cluttered scene, and a small number

Finally the fourth test image is a rotated lab image.

of corners will b e sucient. However, when part of the

ob ject b ecomes o ccluded, a larger numb er of corners will The results show that the CSS corner detector gives

b e required. the b est results in each of the four cases. As the noise in

Figure 5: House image

Figure 6: Lab image

It has b een argued that corner detectors that p erform [5] L. Kitchen and A. Rosenfeld. Gray level corner detec-

tion. Pattern Recognition Letters, pages 95{102, 1982.

directly on images may b e preferrable since they do not

[6] H. J. Lee and H. C. Deng. Three-frame corner match-

dep end on the results of an earlier stage (such as edge

ing and moving ob ject extraction in a sequence of im-

detection). It should be p ointed out that most corner

ages. , Graphics, and Image Pro-

cessing, 52:210{238, 1990.

detectors carry out some form of either

[7] A. K. Mackworth and F. Mokhtarian. Scale-based de-

implicitly or explicitly. As a result, even when they

scription of planar curves. In Proc Canadian Society

app ear to b e directly applicable to the input image, the

for Computational Studies of Intel ligence, pages 114{

119, London, Ontario, 1984.

results are a ected by the implicit edge detection. The

[8] R. Mehrotra, S. Nichani, and N. Ranganathan. Corner

CSS detector simply makes the pro cess explicit.

detection. Pattern Recognition, 23(11):1223{1233, 1990.

The CSS detector makes b oth image edges and im-

[9] F. Mokhtarian and A. K. Mackworth. Scale-based de-

age corners available for later pro cesses. It can also

scription and recognition of planar curves and two-

dimensional shap es. IEEE Trans Pattern Analysis and

provide additional p oint features as well as the tradi-

Machine Intel ligence, 8(1):34{43, 1986.

tional corners. The new features are the curvature zero-

[10] F. Mokhtarian and A. K. Mackworth. A theory of multi-

crossings or in ection p oints of the image edge contours

scale, curvature-based shap e representation for planar

curves. IEEE Trans Pattern Analysis and Machine In-

recovered in a similar way as the corners. They can

tel ligence, 14(8):789{805, 1992.

complement the traditional corners when used by later

[11] A. Noble. Finding corners. Image and Vision Comput-

pro cesses. For example, they can b e utilized by motion

ing, 6:121{128, 1988.

tracking systems in an area of the image where there is

[12] C. M. Orange and F. C. A. Gro en. Mo del based corner

detection. In Proc IEEE Conf on Computer Vision and

a lack of corner features.

Pattern Recognition, 1993.

[13] K. Paler, J. Foglein, J. Illingworth, and J. Kittler. Lo cal

ordered grey levels as an aid to corner detection. Pattern

References

Recognition, 17(5):535{543, 1984.

[1] J. F. Canny. A computational approach to edge de-

[14] K. Rangara jan, M. Shah, and D. V. Brackle. Optimal

tection. IEEE Trans on Pattern Analysis and Machine

corner detector. Computer Vision, Graphics and Image

Intel ligence, 8(6):679{698, 1986.

Processing, 48:230{245, 1989.

[2] E. R. Davies. Application of the generalized hough

[15] S. M. Smith. A new class of corner nder. In Proc

transform to corner detection. IEE Proceedings, 135:49{

British Machine Vision Conference, 1992.

54, 1988.

[16] H. Wang and M. Brady. A practical solution to corner

[3] J. Q. Fang and T. S. Huang. A corner nding algorithm

detection. In Proc International Conference on Image

for image analysis and registration. In Proc. AAAI

Processing,volume 1, 1994.

Conf, pages 46{49, 1982.

[17] O. A. Zuniga and R. M. Haralick. Corner detection

[4] C. G. Harris. Determination of ego-motion from

using the facet mo del. In Proc Conference on Pattern

matched p oints. In Proc. Alvey Vision Conf., Cam-

bridge, UK, 1987. Recognition and Image Processing, pages 30{37, 1983.