P. 1
01713982

01713982

|Views: 0|Likes:
Published by msdn12000
Hough Trasform
Hough Trasform

More info:

Published by: msdn12000 on Mar 20, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

03/20/2013

pdf

text

original

Generalized Hough Transform: Fast Detection for Hybrid

Multi-Circle and Multi-Rectangle
*
Zi-qiang LI
1,2,3


1)
Department of Computer Science & Engineer, Dalian University of Technology, Dalian 116024
2)
School of Information and Engineering, Xiangtan University, Xiangtan 411105
3)
Key Lab for Precision and Non-traditional Machining Technology , Ministry of Education, Dalian 116024
(E-mail: xtulzq@hotmail.com)

*
This work is supported by NSF Grant #50335040, #50575031.
Abstract - The solution to the issue of hybrid multi-circle and
multi-rectangle detection is to firstly detect all circles from a
digital image with Multi-Rectangle. When detecting multi-circle,
this approach determined each possible circle by two random
sample edge pixels and the third edge pixel searched on their
perpendicular bisector. As two points are randomly picked and
the third point of the possible circle is searched, invalid sample
decreases because of the removing of isolated noises, half-link
noises and the elimination of non-co-circle points. By affirming
the possible circle for true circle in minimal area, invalid
computation decreases. When rectangle is detected, any possible
rectangle can be obtained by tracking close curve with rule given
and can be affirmed whether it is true rectangle or not by the
definition of rectangle. The experimental results demonstrate
that the approach can implement well hybrid multi-circle and
multi-rectangle detection and the detection speed of multi-circles
is faster an order of magnitude than Randomized Circle
Detection (RCD) proposed by Chen&Chung (2001) on condition
of multi-circle, multi-rectangle and/or random levels of noise.
Index Terms - Generalized Hough Transform. Multi-Circle.
Multi- Rectangle. Detection.
I. INTRODUCTION
One of the most important tasks of computer vision is the
recognition of geometry graphics. It is mainly used to design
automation, probe in deeper sea and construct the national
defense and so on. For example, in the solution to the layout
design problem of satellite
[1]
(see Fig.1), its 2-D problem is
actually a kind of complicated layout design one with constraint
of performance caused by the no coincidence between the
centre of mass of the bearing and the axes, that is, many circular
and rectangular objects are placed in a circular container with
some conditions (see Fig.2). It is difficult to resolution. Paper
[2] primarily explores a layout design method, called
“Integration of Human, Algorithm and Knowledge”. The layout
method is based on the information fusion of existent
knowledge layout drawing (or called “knowledge resolution”),
numeric resolution given by human on the spot (called
“artificial resolution”) and the one calculated by machine
(called “calculated resolution”). The fusion method used is
evaluation algorithm (such as genetic algorithm). Before the
fusion, it is required to implement transform from prior
knowledge layout drawing to graphic parameters. The method
used frequently is Hough transform. Quick, reliable and
accurate transform from layout drawing into numeric resolution
(i.e. detects circular and rectangular objects) is a premise to
implement the fusion of the three mentioned above with the
genetic algorithm. It is obvious that quickly and accurately
detecting multi-circle and multi-rectangle in an image is an
important component for this layout design method. Because
Standard Hough transform (SHT) and Generalized Hough
transform (GHT) are good at single-circle detection
[3-5]
but no at
multi-circle. Therefore, a lot of scholars have studied many
algorithms for multi-circle detection. For example, Xu
[7]
proposed Randomized Hough Transform (RHT) in 1993. In the
RHT, 3 non-collinear edge pixels taken by sampling randomly
are mapped into a point in the parameter space. The map of
many-to-one avoids the problem of tremendous workload
caused by map of one-to-many in SHT. But blind random
sample brings invalid sample and invalid accumulation that
lowers the detection efficiency. So, Shih-Hsuan Chiu et al
[8]
brought forward an efficient voting method for circle detection
in 2005. It improved efficiency of RHT. Chen Tehchuan et al
[7]
presented an non HT series algorithm called Randomized Circle
Detection (RCD). Its detection speed is faster than RHT for the
noise level between the light level and the moderate level. In
addition, other numeric methods for multi-circle detection can
be found in paper
[9]
. The method mainly focused on the
robustness and accuracy in multi-circle detection. Detecting
rectangle generally is implemented by detecting line segment.
By far, the algorithm of hybrid multi-circle and multi-rectangle
detection can’t be found. This paper gives a detection approach
based on solution to the layout design problem of satellite. The
approach has following advantages: (1) it can eliminate isolated
and half-link noises; (2) when detecting circle, it can further
decrease invalid sampling; (3) it has real-time detection speed.
x
y
Fig.1. Satellite layout. Fig.2. A floor layout of satellite
o
1-4244-0332-4/06/$20.00 ©2006 IEEE
10130
Proceedings of the 6th World Congress on Intelligent Control
and Automation, June 21 - 23, 2006, Dalian, China
II. THE RELATED KNOWLEDGE
Definition 1. Noise pixels and pixels on circle and
rectangle are called the edge pixel (pixel value:1), others are
called the non-edge pixel (pixel value:0) in this paper.
Theorem 1. Suppose that there are Ȧ digital circles in an
image without any noise and rectangle. They consist of N
1
,
N
2
,…,N
Ȧ
edge pixels, respectively. The probability that 2 edge
pixels (3 edge pixels) sampled randomly lie on the same circle
is approximatelyӪ
1

2
) times larger than that of 3 edge pixels
picked randomly (4 edge pixels) (Ӫ
1

2
ę[
1
i
i
N
ω
=
¦ /
1
max
i
i
N
ω ≤ ≤
,Ȧ]), and
when the difference between N
i
(1İiİȦ)is slight,Ӫ
1

2
are
approximately Ȧ.
Theorem 2. Suppose that there are Ȧ digital circles in an
image without any noise and rectangle. They consist of
N
1
,N
2
,…, N
Ȧ
edge pixels, respectively. Then the probability
that 2 edge pixels sampled randomly lie on the same circle is
approximatelyӪ(Ӫę[1/Ȧ,
1
max
i
i
N
ω ≤ ≤
/
1
i
i
N
ω
=
¦ ]), and when the difference
between N
i
(1İiİȦ) is slight, then Ӫ is 1/Ȧapproximately.
Theorem 3. Suppose that the sum of number of noise
pixels and number of edge pixels on all rectangles isӻtimes
greater than the sum of number of edge pixels on Ȧ digital
circles in an image, then probability that 2 edge pixels (4 edge
pixels) sampled randomly lie on the same circle is
approximately 1/(1+ӻ)
2
times (1/(1+ӻ)
4
times) than that of no
noise and rectangle.
III. THE MULTI-CIRCLE DETECTION
As RHT and RCD detect multi-circle in an image, possible
circles are determined by sampling randomly so that many of
them are false. It is better solved by reducing number of points
sampled randomly and eliminating invalid sample in this paper.
A. Eliminating Two Kinds of Noises
Let A=[a
ij
]
Heigh×Width
denote a matrix with Height row and
Width column, where Width and Height denote breadth and
height of an image, respectively, a
ij
is a pixel value corre-
sponding to a pixel in image (non-edge pixel: 0 , edge pixel:1).
Definition 2 Let P(x,y) be a edge pixel in an image, there
is no one edge pixel in its 3ͪ3 neighborhood, then P is called
an isolated noise.
Definition 3 Let 4ͪ4 neighborhood of a edge pixel P(x,y)
in an image satisfy: Boundary consists of 14 non- edge pixels
and except P(x,y) there are 1~3 edge pixels in it then P is
called a half-link noise.
By the analysis of digital image, the most noises belong to
the above two kinds. According to Theorem 3, removing all
isolated noises and half-link noises before detecting circle and
rectangle can reduce remarkably invalid sample.
B. The Basic Idea
According to theorem 1~2, 2 edge pixels P
1
(x
1
, y
1
) and
P
2
(x
2
, y
2
) are picked randomly in an image. IfΨP
1
P
2
Ψ•T
d
(T
d
is a threshold), then we begin from midpoint M(x
m
,y
m
) of
line segment P
1
P
2
, and search a edge pixel P
3
(ȗ,Ș) on perpen-
dicular bisector of line segment P
1
P
2
. Suppose that circles
don’t intersect each other, and if P
1
and P
2
lies on the same
circle with center O(a,b) and radius r, then P
3
is certainly on
the ФO (see Fig3). According paper[7], 3 parameters of the
ФO can be written as:
2 2 2 2 2 2 2 2
2 1 2 1 1 1 1 2 1
2 1 1 1 2 1
( )( ) ( )( )
2(( )( ) ( )( ))
x x y y y x y y y
a
x x y x y y
η ζ η
η ζ
− + − − − − + − −
=
− − − − −
(1)
2 2 2 2 2 2 2 2
1 1 2 1 2 1 2 1 3 1
2 1 1 1 2 1
( ))( ) ( ))( )
2(( )( ) ( )( ))
x y x x x x y y x x
b
x x y x y y
ζ η
η ζ
− + − − − − + − −
=
− − − − −
(2)
( ) ( )
2 2
1, 2, 3.
i i
r x a y b i = − + − = (3)
The above stated is only an ideal case. In general, the paper
makes following process according to Theorem 2~3.
C. Deceasing Invalid Sample Farthest
Theorem 2 shows that even if P
1
and P
2
are not noise
pixels, the invalid sample rate is much larger for multi-circle
detection. For example, the invalid sample rate goes up 9/10
possibly when Ȧ=10. So, it is quite necessary to reduce invalid
sample most. The judge method is as follows: If there isn’t
any edge pixel on the perpendicular bisector of line segment
P
1
P
2
, then P
1
and P
2
are invalid sample; or else, the slope a
1
of
fitting line y=a
0
+a
1
x can be figured out by the equationʳ set
(4) obtained by least- squares line fitting with 9 edge pixels in
3ͪ3 neighborhood of P
3
and element value corresponding to
them in matrix A. According to character of circle, if kЋa
1
(k
denotes slope of line segment P
1
P
2
), then P
1
,P
2
and P
3
aren’t
certainly on the same circle and belong to invalid sample(see
Fig.4). In programming the condition k=a
1
is replaced by |k-a
1
|
<T
k
(T
k
is a threshold) because of the digital circle.
1 1
0 1 1
1 1
1 1 1 1
2
0 1 2
1 1 1 1
9
y x
ij
i y j x
y y x x
ij i j
i y j x i y j x
a a j a u
a j a a j a u
+ +
= − = −
+ + + +
= − = − = − = −
­
+ × =
°
°
®
°
× + × =
°
¯
¦ ¦
¦ ¦ ¦ ¦

¹+)
When k=a
1
and line segment P
1
P
2
and circle through P
3
lie on 2 sides of tangent respectively (see Fig.5), because the
line going through P
3
(ȗ,Ș) and running parallel to line segment
P
1
P
2
can be written as y=Ș+k(x-ȗ). Define:
s(P
i
,M)=[y
i
-Ș-k(x
i
-ȗ)]×[y
m
-Ș-k(x
m
-ȗ)] (5)
Then it can be known that P
i
and M both are on the same side
of line l: y=Ș+k(x-ȗ) when s(P
i
,M)>0, on line l when s(P
i
,M)=
0, on 2 sides of line l when s(P
i
,M)<0. In 3ͪ3 neighborhood of
P
3
, we figure out respectively Ȝ
1
(the number of edge pixels on
the same side with M), Ȝ
2
(the number of edge pixels on other
side of M), Ȝ
0
(the number of edge pixels lying on the line) by
Eq.(5). If Ȝ
0

1

2
<T
Ȝ
(T
Ȝ
is a threshold), then P
1
, P
2
and P
3
certainly are not on the same circle and are invalid sample.
D. Determining True Circle Fleetly
Fig. 3. ideal case to detect Fig. 4. the P1,P2 lies on ФO1 ,P3 on Ф2
P
1
P2
P
3
M
O
P1
P2
P3
O2
O1
10131
Fig.7. Tracking process of rectangle
(a)
(b)
(c)
(d)
(e)
A
F
C
D
B2
B
1
Q1
Q2
Q
1
Q1 Q2
Q2
Q3
C E
F
D
E
After working out centre O(a,b) and radius r of the
possible circleΔonly when statistic of the edge pixels on ФO
is conducted in the smaller area contained the circle, can the
detection speed be improved. The area D in the paper is the
difference of 2 square areas. Side-lengths of 2 square are
2(r+1) and 1.1r respectively. Their sides run paralleling with
the coordinate axes respectively, and their symmetry centre
both are the circle centre O(a,b).
( ) ( )
2 2
a b r η ζ − + − − <T
İ
(6)
Let T
İ
=0.5, if P(ȗ,Ș)∈D and satisfies inequality(6), Then P is
affirmed on the possible circle. Because the number of edge
pixels on a digital circle is different from radius. Whether the
possible circle in area D is true circle is affirmed by the fact
whether the edge pixels M
c
satisfying inequality (6) in area D
is larger than the least edge pixels T
m
. Set T
m
=ӳͪ2Ӹr, where
ӳis proportional coefficient. When M
c
>T
m
the possible circle
is true circle marked with C(a,b,r ).
IV. THE MULTI-RECTANGLE DETECTION
In this paper, we prescribe that any side of a rectangle
can't overlap and intersect with any side of others in an image.
A. Warm-up work
After taking out the circles detected, all rectangles
intersected with the circle are divided into several segments
and there are some new noises in the image. In order to carry
out contour track of rectangles, we connect all broken points
according to rule 1 after removing isolated noise and half-link
noise by Definition 2,3 in section III( B).
Rule 1 If P
1
and P
2
are end-points of two curves and
|P
1
P
2
|İ3, then P
1
,P
2
are connected.
B. Contour track
After all broken points are connected we begin scanning the
image from left to right and from up to down. Once an edge
pixel is met we pause scanning and regard it as the first track
pixel, marking with P
b
. After all edge pixels in its adjacent
pixels (on eight directions) are found out, one with the largest
direction value (see Fig.6) is regarded as the next track pixel.
After the track pixel is renewed twice, we search for the next
track pixel by the rule 2 until we meet an edge pixel with N
u
=0. In this way, we can obtain all the points on the possible
rectangle. After taking out all the edge pixels of the possible
rectangle we begin at P
b
and repeat the process above until a
sequence of points of all possible rectangles can be found out.
Rule 2 Suppose there are N
u
edge pixels untracked
among edge pixels adjacent to current track pixel, then 0İN
u
İ7. If N
u
=0 then we finish tracking; if N
u
=1 then we regard
the unique untracked edge pixel adjacent to current track pixel
as the next track pixel; if 2İN
u
İ7 and they are marked by
Q
j
(j=1, 2,…,N
u
) according to direction value from small to
large. When N
u
=2 and N(Q
1
)ЋN(Q
2
), the edge pixel Q
j
with
the smallest N(Q
j
) is regarded as the next track pixel. When N
u
=2 and N(Q
1
)=N(Q
2
) or N
u
ı3, the edge pixel Q
j
with the
smallest direction value is regarded as the next track pixel.
N(Q
j
) denotes number of untracked edge pixels adjacent to
Q
j
(j=1, 2,…,N
u
).
For example, if Fig.7(a) is scanned from top to bottom
and from left to right, the edge pixel met firstly is A. i.e. A
become the first track pixel. Edge pixels neighbored on pixel
A are F and B
1
. Their direction values are 4 and 6 respectively.
Because of 6>4, the next track pixel is B
1
. Afterward B
2
turn
into next track pixel of B
1
. When C is current track pixel,
untracked edge pixels adjacent to C are Q
1
, Q
2
(see Fig.7(b)).
Because N(Q
1
), N(Q
2
) are 3, 4 respectively, Q
1
(or D) is the
next track pixel of C. the untracked edge pixels adjacent to D
are Q
1
,Q
2
,Q
3
(see Fig.7(c)). The 3 direction values
corresponding to Q
1
,Q
2
,Q
3
are 4,5,6 respectively. Thus the
next track pixel of D is Q
1
. Being similar with C, the next
track pixel of E is Q
2
(see Fig.7(d)), namely the vertex of the
possible rectangle. But for 3 cases as Fig.8, the next track
pixel of E is Q
1
. Only when true rectangle is affirmed, can the
possible rectangle’s vertex Q
2
be found out. When F become
the current track pixel (see Fig.7(e)), N
u
=0. Therefore the track
is ended.
C. Affirm true rectangle
Let G={G
i
(x
i
,y
i
),i=1,2,…,m} be a set composed by all edge
pixels of a possible rectangle, and x
min
İx
i
İx
max
, y
min
İy
i
İ
y
max
(i=1,2,…,m), the possible rectangle is determined by
G
r1
(x
min
,y
min
), G
r2
(x
min
,y
max
), G
r3
(x
max
,y
max
), G
r4
(x
max
,y
min
) (or G
t1
(x
min
,y
t1
), G
t2
(x
t2
,y
min
), G
r3
(x
max
, y
r3
),G
t4
(x
t4
, y
max
)). Where 1İ
ri,tiİm(see Fig. 9 (a),(b)). If each of the 4 sides of the possible
rectangle is a true line segment and the possible rectangle
satisfies the definition of rectangle, the possible rectangle is
Fig. 6. 8 directions of a pixel Fig.5. P
1
,P
2
is on ФO
1
and P
3
is on ФO
2
P
1
P
2
P
3
O
1
O
2
M
1
0
2
3 4
5
6
7
E E
E
Q
1
Q
2
Q
1
Q
2
Q
1
Q
2
Fig.8. The rectangle vertex om`tt·d du· to t·u·king.
(a) (b) (c)
(a) (b)
Gr3
Gr2
Gr1 Gr4
Gt2
Gt3
Gt4
Gt1
Fig. 9. Two case of the possible rectangle
10132
true. Left bottom vertex (x´,y´), length d, width w, slant angleӽ
of rectangle R(x´,y´,d,w,ӽ) are finally calculated.
V. THE SIMPLE DATA STRUCTURE
In this approach, we initialize the matrix A with value 0 or
1 of Height×Width pixels in an image, and the 2-D list V (set
V) with row and column value of all edge pixels in an image.
Once a possible circle or rectangle is affirmed for true, all
elements corresponded to the edge pixels on the circle or
rectangle are assigned 0 in matrix A, and elements in set V are
renewed by row and column value of the nonzero elements in
matrix A. Thus, the changing set A and V plays the role of
dynamic list in the process of detection. By using it we can
obtain fleetly the information of circle or rectangle in an
image and speed up detection.
VI. PSEUDO CODE OF THE APPROACH
From the above description, C/C++ pseudo code in the
approach can be written as following:
Initialization Given T
f
,N
c
,T
d
,T
k
,T
Ȝ
,T
İ
,ӳ.set f=N=M
c
=0.
V= V-all the isolated noise and half-link noise;
do{
do { randomly sample P
1
,P
2
in V}while (|P
1
P
2
|İT
d
);
calculate slope k and midpoint M(x
m
,y
m
) of P
1
P
2
;
P
3
(ȗ,Ș) = M(x
m
,y
m
);
do {P
3
(ȗ,Ș)=next pixel of P
3
(ȗ,Ș) on digital perpendicular bisector of P
1
P
2
with the same direction ;
calculate a
1
of fitting line with Eq.(4);
if(|k-a
1
|>T
k
) continue ;
else { calculate Ȝ
0
, Ȝ
1
, Ȝ
2
with Eq.(5);
if (Ȝ
0

1

2
< T
Ȝ
) continue; else break;}
} while (P
3
is in the image space);
if( P
3
is out of a image space) continue;
calculate C(a,b,r) through P
1
,P
2
,P
3
with Eqs. (1),(2),(3);
if (there is C(a,b,r) in table P) continue;
else {calculate set V
1
{ P(ȗ,Ș)| P(ȗ,Ș)ęDЕV and it can satisfy
inequality (6)};
if(size M
c
of set V
1
>ӳͪ2Ӹr)
{ N++, store C (a,b,r) into table P;
if(N<N
c
) { f=0; according to section V alter A and V with
V
1
, continue ;}
else {output all circles in P; break; }
}
else if (++ f>T
f
)output “no circle is detected”; break;}
}while ( true );
all elements in Acorrespond to all the noise pixels =0;
connect curves broken by detecting circle with rule 1;
P
f
=P
b
=(0,0); N=0; P =NULL;
do{ P
b
=P
f
;
scanA from P
b
and find the first edge pixel G
1
and P
f
= G
1
;
obtain edge pixel set G of the possible rectangle;
calculate x
max
,x
min
,y
max
,y
min
for the G ;
affirm true rectangle G
r1
G
r2
G
r3
G
r4
, G
t1
G
t2
G
r3
G
t4
;
if (rectangle G
r1
G
r2
G
r3
G
r4
or G
t1
G
t2
G
r3
G
t4
is true)
{N++; store R (x
min
,y
min
,d,w,ӽ) into table P;}
if (N=N
r
) {output all rectangles in P; break; }
}while(P
f
ЋP
b
);
Where, V
1
denotes set of edge pixel for a possible circle,
N
c
,N
r
stands for the number of circles and rectangles
respectively; N is the number of circles or rectangles detected;
f stands for the number of failures; T
f
denotes the number of
failures that we can tolerate. The others are the same as what
is mentioned in the previous context.
VII. EXPERIMENTAL RESULTS AND DISCUSSION
A. Experiment
In order to test time performance of RCD and our
approach, 3 experiments are performed on a Pentium ҉ 933
MZ computer, with the program written using visual C++ 6.0.
In our approach,˨ is set in turn to be 0.6, 0.5, 0.7; T
f
, T
k
, T
İ
, T
Ȝ
are 500, 1.4, 0.5, 1 respectively.
Experiment 1. The original 181ͪ243 image with 3270
pixels is shown in Fig.10(a). It consists of 5 circles, 7 rectangles
and 1638 noise points. We use algorithm proposed by paper [7]
and our approach to detect Fig.10(a) 50 times individually. The
average time to detect 5 circles by paper [7] is 14013 (ms). 7
rectangles and 5 circles (see Fig.10(b) and TABLE I) are detected
by our approach. But the average time is only 1275 (ms).
TABLE I
RESULT DETECTED FIG.10(a) BY OUR APPROACH
No. Circle Rectangle
1 C1 (24,20,17) R1 (140,8,46,28,90°)
2 C2(86,67,44) R2 (17,26,51,36,0°)
3 C3(42,106,28) R3 (92,38,92,51,35.5°)
4 C4(140,117,24) R4 (148,58, 23,14, 0°)
5 C5(128,28,20) R5 (7,68, 38,25, 90°)
6 R6 (57,117,25,19,0°)
7 R7 (81,122,26,19,90°)
Experiment 2. It is a real image shown as Fig.11 (a), the
size of which is 166ͪ210 with 4 circles. After we extract the
edge of the image by Kirsch operator, its result is shown in
Fig.11(b) with 1580 edge pixels. We apply the approach
proposed by paper [7] and ours to detect Fig.11(b) 50 times
individually. The average time to detect 4 circles by paper [7]
is 1143 (ms). 4 circles (see TABLE ҈) and 2 rectangles
R
1
(9,5,153, 20,0°), R
2
(184,29,129,22,90°) are detected by our
approach. But the average time is only 211 (ms).
Fig.10. (a) The image with 5 circles, 7 rectangles and
1638 noises (b) detection result
(a) (b)
(a) (b)
Fig.11. An example of image detection
10133
TABLE ҈
RESULT DETECTED FIG.11(b) BY OUR APPROACH
No. Detect value Accurate value
1 C1 (48,71,42) C1 (48,70,42)
2 C2(40,127,33) C2(40,127,33)
3 C3(129,128,32) C3(129,128,33)
4 C4(138,73,42) C3(129,128,33)
Experiment 3. Fig.1 is a 3D optimal layout of satellite
module. Fig.2 is the planner layout of a bearing surface for the
satellite, which contain 10 circles and 7 rectangles. We apply
the algorithm proposed by literature [7] and our approach to
Fig.2 to detect 50 times individually. The average time to
detect 10 circles by literature [7] is 2713 (ms). 10 circles and 7
rectangles are detected by our approach (see TABLE ҉). But
the average time is only 750 (ms).
TABLE ҉
RESULT DETECTED FIG.2 BY OUR APPROACH
No. Circle Rectangle
1 C1 110,38,13) R1 (56,10,26,17,0°)
2 C2(79,40,13) R2 (27,33, 17,14,0°)
3 C3(32,91,10) R3 (19,47,35,21,90°)
4 C4(53,44,13) R4 (41,57, 22,18, 0°)
5 C5(87,84,13) R5 (44,77, 31,21, 0°)
6 C6(122,59,10) R6 (98,92,15,15,0°)
7 C7(115,80,13) R7 (54,98,92,120,0°)
8 C8(68,68,64)
9 C9(77,60,13)
10 C10(71,63,12)
B. Discussion
1) Applicable scope: The approach can suit the detection
of the image with multi-circle and multi-rectangle. But any
side of a rectangle can't overlap and intersect with any side of
others in a digital image.
2)ʳ Precision: The precision of circles detection is same
as paper[7], controlled by T
İ
in inequality(6) and ӳin section
III(D). So, the detection precision of circles is the same as
paper [7]. If the rectangle’s side is single pixel width there
isn’t error in its detected value.
3)ʳ Workload: Experiments show that main workload is
multi-circle detection in our approach. So, our approach
merely compares circle detection with RCD.
Suppose that there are Ȧ circles in an image. After a circle
is detected, all pixels of the circle are removed. So then, when
there are i circles (i=Ȧ,…,2,1) in the image,Ӫ
1

2
,Ӫ,ӻof
Theorem 1~3 are marked asӪ
i
1
, Ӫ
i
2

i
,
1
i
τ
+
2
i
τ
(i=Ȧ,…,2,1)
respectively, where
1
i
τ =
1
j
j
L
ϖ
=
¦ /
1
j
j
N
ω
=
¦ (
j
L denotes number of pixels
of rectangle j (j=1,2,…,ϖ ));
2
i
τ is noise level. The meanings
of
V and D are the same as the above mentioned. In term of
Theorem 1~3 and procedure of RCD, RCD and our approach
samples ( )
4
1 2 1 2
1 /
1
i i
i i i
i
ω
β β τ τ β ¦ + +
=
and ( )
2
1
1 /
1
i
i
i
ω
τ β ¦ +
=
times respectively.
SinceӪ
i
1

i
2
(i=1,2,…, Ȧ) are related to Ȧ, andӪ
i
(i=1,
2,…,Ȧ) is related to reciprocal of Ȧ, and
1
i
τ
>
1
1
τ
,
2
i
τ
>
2
1
τ
(i=1,
2,…,Ȧ), the average number of the sample times of RCD
increase sharply at the same order as O(Ȧ
3
(1+
1
i
τ
+
2
i
τ
)
4
)
quantitative level. Average number of the sample times of our
approach increases at the same order as O(Ȧ(1+
1
i
τ
)
2
)
quantitative level. Furthermore, invalid sample times in RCD
are more than those in our approach. When it affirms true
circle, RCD does more invalid computing meanwhile. The
whole detection time increases with exponential of Ȧ and
1+
1
i
τ
+
2
i
τ
. If there are more circles and rectangles or some
level noises in an image, the detection speed of our approach
is faster an order of magnitude than that of RCD averagely.
VIII. CONCLUSION
This paper proposes the fast detection approach for
hybrid multi-circle and multi-rectangle. Our approach only
requires 0,1 pixel value of all pixels in the image, not any
other information and can eliminate isolated, half-link noise
and has very fast detection speed. So, in the condition of more
circles and more rectangles and some noises defined by
definition 2~3, the advantages lay with our approach. The
experimental results demonstrate our approach can realize the
graphics-parameters transform of hybrid multi-circle and non-
overlapped multi-rectangle. The future work is detecting
multi-circle and hybrid multi-rectangle with overlapped
rectangles from a digital image.
ACKNOWLEDGMENT
This work is supported by the National Natural Science
Foundation of China (Grants No. 50335040, 50575031).
REFERENCES
[1] Sun Zhiguo, Teng Hongfei. Optimal layout design of a satellite
module[J]. Engineering Optimization, 2003,35 (5): 513-529.
[2] Liu Zhanwei, Teng Hongfei. Integration of Human, Algorithm and
Knowledge: An Intelligent Layout Design Method. [EB/OL] [2005- 11-
2]http://www.paper.edu.cn/ scholartools/released/ download.jsp? file =
200403-189(in Chinese).
[3] Loannou,D Huda, W Laine, et al. Circle recognition through a 2D Hough
transform and radius histogram [J].Image and Vision Computing, 1999,
17(1):15-26.
[4] Heung Sookim, Jong Hwankim. A two-step circle detection algorithm
from the intersection chords [J]. Pattern Recognition Letters, 2001, 22(6-
7): 787 -798.
[5] Peng Yenyin. A new circle/ellipse detector using genetic algorithms[J].
Pattern Recognition Letters, 1999,20(7): 731- 740
[6] L.Xu and E.Oja. Randomized Hough transform (RHT): Basic
mechanisms, algorithms, and computational complexities [J]. CVGIP:
Image Understanding, 1993, 57 (2):131-154.
[7] Chen Tehchuan and Chung Kuoliang. An efficient randomized algorithm
for detecting circles[J]. Computer Vision and Image Understanding, 2001,
83 (2): 172-191.
[8] Shih-Hsuan Chiu, Jiun-Jian Liaw. An efficient voting method for circle
detection[J]. Pattern Recognition letters,2005,26(2):121-133.
[9] YuQiao,S.H.Ong. Connectivity-based multiple-circle fitting[J]. Pattern
Recognition, 2004,37(4): 755-765.
10134

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->