# 1. introduction to the hough transform

AI and Robotics

Oct 18, 2013 (4 years and 8 months ago)

70 views

Witold ŻORSKI

Institute of Teleinformatics and Automation,

Military University of Technology,

Kaliskiego 2, 00
-
908 Warsaw, Poland,

OBJECTS RECOGNITION

AND THE SCALING ISSUE

Abstract

This paper presents an application of the Hough transform to the t
objects in a robot vision system with unknown scale of the scene. The presented method is based
on the Hough transform for irregular objects, with a parameter space defined by translation,
rotation and scaling operations. Th
e high efficiency of the technique allows for poor quality or
highly complex images to be analysed. The technique may be used in robot vision systems,
identification systems or for image analysis, directly on grey
-
level images.

Keywords
: Hough transforms,
robot vision systems, machine vision, pattern matching.

1.

INTRODUCTION TO THE HOUGH TRANSFORM

The Hough Transform was patented in 1962 as a method for detecting complex
patterns of points in a binary image
[5]
. In

1981 Deans noticed
[3]

that the Hough
Transform for straight lines was a specific case of the more general Radon Transform
[9]

known since 1917, which is defined as
(for function

in two
-
dimensional
Euclidean space):

,

(1)

where

is the delta function. This result shows that the function

is integrated
along the strai
ght line determined by the parametric equation
. The
Radon Transform is equivalent to the Hough Transform when considering binary images
(i.e. when the function

takes values

or
). The Radon Transform for shapes
other than straight lines can be obtained by replacing the delta function argument by a
function, which forces integration of the image along contours appropriate to the shape.

Using the Radon Transform to c
alculate the Hough Transform is simple (almost
intuitive) and is often applied in computer implementations. We call this operation
pixel
counting

in the binary image.

An (alternative) interpretation of the Hough Transform is the so
-
called
backprojection

m
ethod. The detection of analytical curves defined in a parametrical
way, other than straight lines is quite obvious. Points

of image lying on the curved
line determined by

parameters

m
ay be presented in the form:

,

(2)

where

describes the given curve.

By exchanging the meaning of parameters and variables in the above equation we
obtain the backprojection relation (mapping image p
oints into parameter space), which
may be written down in the following way:

.

(3)

Based on (3) the Hough Transform

for the image

is defined as
follows:

,

(4)

where

(5)

In order to calculate the Hough Transform digitally an appropriate representation
of the parameter space

is required. In a standard implementation, any
dimension in the pa
rameter space is subject to quantisation and narrowing to an
appropriate range. As a result, an array is obtained where any element is identified by the
parameters
. An element in the array is increased by

whe
n the analytical
curve, determined by co
-
ordinates
, passes through point

of the object in
image
. This process is called
accumulation
and the array used is called an
accumulator (
usuall
y marked with a symbol
).

Thus, we may assume that the Hough Transform is based on a representation of
the image

into the accumulator array
, which is defined as follows:

, where

.

(6)

The symbol

determines the range of
-
parameters of a
-
dimensional space
.
Determining array

is conducted through the calculation of partial values for points of
an object in image

and adding them to the previous ones (see 4) which constitutes a
process of accumulation. Initially, all elements of array

are set to zero.

This paper presents an application of the Hough transform to the tasks of
identifying manipulated objects in a robot vision system with unknown scale of the
scene
. It is based on the Hough Transform with a parameter space defined b
y translation,
rotation and scaling operations. A

fundamental element of this method is a generalisation
of the Hough Transform for grey
-
level images including a solution to the scaling
problem. The author tried to test every introduced theoretical element

in a realistic
situation. With this end in view an application of the elaborated method dedicated to the
robot vision system (see Fig. 1)

has been built. It allows users to carry out a verity of
experiments in the area of computer vision. The results obta
ined confirm the efficiency of
the method even in the case of manipulated objects which are joined or covered by each
other.

Fig.

1. The considered robot vision system (the scene’s image scale is unknown)

2.

THE HOUGH TRANSFORM FOR I
RREGULAR OBJECTS

The Hough Transform may be successfully applied to detect irregular
objects

[1]
,
[11]
. In the generalised Hough Transform, an object is represented by

a
pattern which is a list of boundary points

(without a concrete
analytical description), and the parameter space is defined for translation
,
rotation

and (alternatively) scale

of the pattern in the image.

Each point of the image generates an appropriate hypersurface as a result of
backprojection into parameter space. A number of hypersurfaces that criss
-
cross a given
point

of the paramet
er space is equivalent to a number of points common
for a given object in the image and the fitting pattern.

The Hough transform for binary images has been already described by the author
in details
[10]
.

3.

GENERA
LISATION OF THE HOUGH TRANSFORM FOR
GREY
-
LEVEL IMAGES

Let us first define the concept of a grey
-
level image, an object appearing in such
an image and the concept of a grey
-
level pattern in a computer vision system.

Definitions

An

image with 256 grey levels

means a set of points, which have a value or
. Such an image may be presented as follows

,

where
.

(7)

Object

in image

is any fragment of that image which may be recorded
in terms

of

,

where
.

(8)

Remark
: Identifying an object with an image fragment is a consequence of a set of values
taken by function
.

Pattern

means an image (square matrix) of size

which is as

,

where
.

(9)

An example of a grey
-
level pattern is shown in Fig. 2.

Fig.

2. An example of grey
-
level pattern

In a computerised robot monitoring system the identification process of
manipulated objects is carried out with the use of previously learned patterns. The task is
aimed at identifying (i.
e. determining the location and rotation angle) a given object in the
image. We assume that the given object is represented by pattern
identify pattern

in image

may be reg
arded as determining parameters which
uniquely describe its location and orientation in the given image. Obtained result
examples are shown in Figures 3, 4 and 5.

Fig.

3. Pattern recognition for a scene with separated objects

Fig.

4. Pattern recogni
tion for a scene with joined objects

Fig.

5. Pattern recognition for a scene with partly covered objects

The Hough Transform
, which takes into account translation,
rotation and scaling, for image

(see

7) i
n the process of identifying pattern

determined by (9) may be defined as (compare equations 4 and 5)

,

(10)

where

,

(11)

and the values

are calcul
ated from

.

(12)

The above equations relate to the situation given in Fig.

7.

Fig.

7. Rotation, scaling and translation of a pattern

with respect to an arbitrary point

4.

THE HOUGH TRANSFORM AND THE SCALING ISSUE

Taking into consideration pattern scaling adds an extra dimension to the
parameter space. However, because the scale range is commonly known and it is often
not too large, only a few values of
scale factor

are enough to achieve the process of
identification.

If we assume that the following

values of the scale

factor must be taken into
consideration

,

,

(13)

then the parameter space may be determined in the following way:

,

.

(14)

In order to accelerate calculations (applying the histogram study) the set of
patterns

,

(15)

must be generated first by scaling a given pattern

within a range determined by
values
. The pattern localisation process for any pattern formed from the set (15)
can then

be applied. Such an approach can drastically reduce the number of calculations
required.

However, this method has one disadvantage that results from having to calculate
histograms for an initial image

times (as the size of each pat
tern is different). A
solution is to create a new set of patterns

of the same size but without
losing information connected with the scale of patterns
. Note that the size of
pattern

is

. Appropriate patterns

from patterns

can
be obtained by separating their central part of size
. As a result, we have patterns
that “remember” the scale they were

created at, but are of the same size. A graphical
illustration of this process is shown in Fig.

8.

Fig.

8. Graphical illustration of the process of patterns

creation

Since the received patterns are of the same size, it is sufficient to calculate their
histograms once and compare them with the calculated histogram of the initial image. As
the size of the patterns decreases, the time to create the

histograms is reduced. Decreasing
the patterns size also results in shortening the CPU time for the accumulator calculation.
Unfortunately, patterns

carry less information than patterns
.

Fig.

9. The way
of conduct while identifying objects in images of unknown scale

Test results based on this method are presented in Figures 10 and 11. Due to the
difficulty of illustrating a four
-
dimensional accumulator array it has been split (for every
scale
) and reduced to the flat image by taking cross
-
section for the maximal values of
rotation angle
. Presented figures show slices generated by scale factor
. The main
slice, i.e. containing the globa
l maximum, is distinguished. The numbers indicate patterns
created with different scale parameters (see Fig. 8). The scale values change in size
within the range (
-
25%, +25%).

Fig. 10 shows

identification result for a scene with manipulated objects. The s
cale
of the scene is about 13% increased compare to the pattern. The global maximum has
been found in the slice number 6.

Fig. 11 shows result of an object location in a satellite image (decreased by 25%).
The global maximum has been found in the first sli
ce, i.e. for a pattern with the lowest
scale. The behaviour of the accumulator array is very typical in such situations. The
larger the scale of the pattern the more unclear contents of the adequate slice appear. The
considered figure shows the advantage o
f using a histogram analysis technique described
by the author in
[13]

and
.

Fig. Result for a scene increased about 13% compare to the pattern’s resolution

Fig.

11. Object location in a satellite image decreased by 25%

(Due to the size of the accumulator array this figure shows only important slices’ fragments)

5.

CONCLUSION

The results obtained con
firm the efficiency of the method in the case of detecting
the location and identification of manipulated objects. The method may be used in the
case of image analysis without a skeletonisation and binarisation. This method may be
successfully applied to t
he identification of objects in satellite and aerial images too (see
Fig. 11). The high efficiency of the technique allows for poor quality or highly complex
images to be analysed. The Hough transform may be supported by its hardware
implementation which i
s suggested in Fig.

1 and described by the author in details
[11]
,
[12]
.

REFERENCES

[1]

Ballard D. H.
:

Generalizing the Hough Transform to Detect Arbitrary Shapes.

gs in
Computer Vision: Issues, Problems, Principles, and Paradigms. Los Altos, CA. 1987, pp. 714
-
725.

[2]

Davies E. R.:
Machine Vision: Theory, Algorithms, Practicalities
Oval Road, London NW1 7DX, United Kingdom 1990.

[3]

Deans S. R.:
H
ough transform from the Radon transform
. IEEE Transactions on Pattern
Analysis and Machine Intelligence, vol. 3, no. 2, 1981, 185
-
188.

[4]

Fu K. S., Gonzalez R. C., Lee C. S. G.:
ROBOTICS: Control, Sensing, Vision, and
Intelligence.

McGraw
-
Hill, New York 1987.

[5]

Hough P. V. C.:
Method and means for recognizing complex patterns
.
U.S. Patent 3,069,654,
Dec. 18, 1962.

[6]

Illingworth J., Kittler

J.:

A survey of the Hough Transform
. Computer Vision, Graphics and
Image Processing 44, 1988, pp. 87
-
116.

[7]

Jain A. K.
:

Fundame
ntals of Digital Image Processing.

Prentice
-
Hall, New Jersey 1989.

[8]

Leavers V.

F.:

Shape Detection in Computer Vision Using the Hough Transform
.

Springer,
London 1992.

[9]

Uber die Bestimmung von Funktionen durch ihre Integralwerte langs gewisser
Man
nigfaltigkeiten
. Berichte Sachsische Akademie der Wissenschaften Leipzig, Math Phys
Kl., 69, pp 262
-
267, 1917.

[10]

Żorski W., Foxon

B., Blackledge

J., Turner

M.:
Irregular Pattern Recognition Using the
Hough Transform
. Machine Graphics & Vision, 9, 2000, pp. 6
09
-
632.

[11]

Żorski W., Rabczuk W.: Multi
-
structural Hardware Implementation of the Hough Technique
for Grey
-
level Pattern Recognition. Proceedings of the 10th IEEE International Conference
MMAR 2004, Vol.2, pp.947
-
952.

[12]

Żorski W., Żak A., Turner M.:
Hardware Im
plementation of the Hough Technique for
Irregular Pattern Recognition
. Proceedings of the 8th IEEE International Conference MMAR
2002, 2
-
5 September 2002, Vol.1, pp.561
-
566.

[13]

Żorski W.:
Application of the Hough Technique for Irregular Pattern Recognition to

a Robot
Monitoring System
. Proceedings of the 11th IEEE International Conference MMAR 2005,
pp.725
-
730.

[14]

Żorski W.: The Hough Transform Application Including Its Hardware Implementation.
Advanced Concepts for Intelligent Vision Systems: Proceedings of the
7th International
Conference, Lecture Notes in Computer Science, Springer
-
Verlag Vol. 3708/2005, pp.460
-
467.