I:'altern Recognition Lctlers 12 (1991) 241-248 North-Holla,ld
April 1991
Variable-resolution character thinning X i a o b o Li a n d A n u p Basu AIberta Centerfor Machine Intelligence and Robotics. Dt.lmrtment of Comlmling Science. University of AIberta. Edntortton. Alberta. Canada T6G 2tll
Received 18 Jammry 1991
:1bstract Li. X. and A. Basu. Variable-resolution character thinning. Pattern Recognition Letters 12 (1991) 241-248. Most current thinning algorithms use only small windows (lemphlles) due to the heavy coarputation load associated wilh large templale size. However. the lack of global information leads to severe shape distortion and misdassificalion. We develop a new variable resolution method to solve this problent. The proposed algorithtn, which is I',aralld in nature, uses a 9 × 9 window with a high resolution .1 ::<3 cenler and low resolution periphery. The resolution is reduced by a ratio of 9 : 2 in the periphery. Thus the complexity of our method is less than twice thai of a method ttsin~ 4 × 4 windows. Our method tesetnbles the human visual system which has a high resolution fovea and low resoh|lion periphery. The advantage of the proposed algorithm over two well-kllown algorhhlns is denlonslrated using several inl'~al characters.
Ko'words. Characler Ihilming. i'Jarallel algorilhm, shal',e adaptive, comrmlational ¢omplexhy.
!. Introduction Characler thinning is often used as a preprocessing step for character recognition. The inpu! to a thinning algorithm is a binary image of a character. The pixels with value 1 form the characler (objecl) and the pixels with value 0 form the background. The strokes of the input character are several pixels thick. The objective of thinning is to generate the skeleton of the character in order to achieve information reduction and extraclion for further recognilion. Mosl Ihirming algorilhms use a 3 x 3 window to scan the contour pixels of lhe character in order to determine whether each pixel should be
This work i~ ~upporled ill parl by llw ('anadJal| Nalutal Scir:n~c.~ and lh11~hwerlnl, t Rescart:h C'ouncll under Oriilil0(1P9198 and the Cenlral Resealch lqlnd of [Jidvelsltyof Allwrla .L~-26050, 016"/-I~6~.~/911503,~0 ,,~ 1991
eliminated from the character (value changed from 1 to 0). In some methods, such as 141, the 3 × 3 neighborhood oflhe contour pixeliscompared with a set of 3 x 3 templates. Other methods, such as 171,apply a sequence of tests on the 3 x 3 neighborhood. which isequivalent to the template matching. AFter several iterations, a skeleton of the character is obtained. Various thinning algorithms differ in the templates (or the tests) used and the order in which they are applied. Some thinning algorithms take a sequential approach, in which the contour pixels arc examined in sequence. A parallel approach will allow all the pixcls of the character to be examined and transformed simultaneously. Early thinning algorithms were designed for serial implementation, but there has been a growing interest in parallel tlfinning algorithms as parallel machines have become more easily available. Many thinning algorithms have been proposed
l~Isevler Sciencv l'ubli~hl~is ILV, (No;lhdioll~md)
241
Volume 12, Number 4
PATTERN RECOGNITION LETTERS
[1,3,4,5,6,10,11,14]. Surveys of various approaches can be found in [9, 12]. Guo et al. [7] proposed two thinning algorithms AI and A2. Algorithm A2 is suitable for parallel processing, but AI generates more desirable results. Theoretical proof and rather extensive experimental results are given in [7] for these methods. Comparisons with several well-known thinning algorithms favor algorithm AI over the other methods. Our method improves on Guo's and some other papers results. It is important for the skeleton to preserve the shape of the original input character in order to keep the necessary information for correct recognition. For algorithm A1 and most other thinning methods a 3 x 3 window is used, thus the programs do not make use of information outside of that window. The lack of global knowledge about the entire character may cause severe shape distortion in the resulting skeleton and lead to misclassification of the character. This point will be demonstrated in detail in the next section. Suen and Plamondon [12] conducted an intensive study on human thinning behavior. The character skeletons generated by human operators were used as a criterion to judge machine thinning algorithms. However, it is still unclear how one can make machines simulate human behavior. When humans examine a character, they see the entire character at once, see the shape of the strokes, sometimes even recognize the character before thinning. Strictly speaking, the human thinning operator 'cheats' in the thinning process. It has global knowledge about the character and some knowledge about what the character and its skeleton 'should' look like. On the other hand a computer program has no knowledge whatsoever outside a small, say, 3 x 3, window. Some thinning algorithms [6, 13] use templates larger than 3 x 3 to obtain knowledge of a larger neighborhood of the character pixel currently being considered, and significantly reduce the skeleton shape distortion. However, the computational complexity increases exponentially with increasing template size. When the template size is increased from n 2 to N 2, the number of comparisons goes up by O(N2-n2). Also, the number of possible (potential) templates increases exponentially. The 242
April 1991
9 × 9 template scheme seems to be impractical and therefore has never been used so far. The human visual system has a high resolution fovea and low resolution periphery. The central viewing window allows the detailed identification of objects, and the peripheral low resolution field allows fast processing. A general discussion on variable resolution vision techniques is given in [2]. We take this variable resolution approach to improve thinning algorithms, i.e., a 'rough' look of a larger neighborhood of the contour pixel being examined is used to help preserve the shape of the output skeleton. The next section demonstrates the severe drawback of the existing thinning algorithms and point out the danger of misclassification caused by shape distortion. Section 3 proposes a variable resolution method to improve current thinning algorithms. This algorithm takes a parallel approach where all the pixels are examined and processed at once. Some experiments comparing the results of the proposed method with two other methods are reported in Section 4. Section 5 gives a brief conclusion.
2. Limitations of small templates
The following examples demonstrate the severe limitations of the current thinning algorithms using small templates. Figure l(a) shows an input character, a letter 'B'. A symbol ' # ' indicates a character pixel, i.e., a pixel with value I. Background pixels with value 0 are shown as blanks for the ease of presentation. A human thinning operator would generate a skeleton with a straight vertical stroke at the left end. A computer thinning algorithm using 3 x 3 templates can hardly achieve this. Consider the contour pixel marked 'Z' (pixel (10,5) of the input image matrix). The 3 x 3 neighborhood of pixel 'Z' is given in Figure l(b). Figure l(c) shows the result of Guo's thinning algorithm A1 [7] after iteration 5. Consider the contour pixel (18,7) (marked 'V') at the middle of the left-most column. Figure l(d) gives the neighborhood of pixel 'V'. Since only 3 x 3 templates are used, the matching result for pixel 'V' is no different from that of pixel 'Z'. Thus pixel 'V' will be deleted from the char-
Volume 12, Number 4
PATTERN RECOGNITION LETTERS ###### ######### ########## ########### .... > # ###• ### Z#####• #########•## ##### ###### ##### ##### • #### •##### ######•##### ######•##### ########### ########## ########### ############ ############ ##### ###### • ###• ##### ####• •##### ############ ############ ############ ########### #########• ######### ######
.....
•###•
i 011 OZ1 I 011 .....
•###•#• •• |g• # ##
•
•#
Cb)
•
#
• • •
# # #
•
• • • • • •• •• ### #####• .... > V###•• •#g### •# ### # g• # • • • • • • •• •# ### •####~# g•#### •••
Ca)
April 1991
Co)
OV1 011
•
#
# #
• •
# #
• •
# #
# • # • # #• #
(d)
(e)
Figure 1. Character 'B' and some thinning result using Guo's algorithm AI: (a) input, (b) neighborhood of pixel 'Z', (c) after iteration 5, (d) neighborhood of pixel 'V', (e) tile final skeleton.
acter in iteration 6, just as pixel 'Z' was deleted in iteration 1. Several other pixels near pixel 'V' (see Figure 1(c)) are in a similar situation as 'V', and thus are deleted. As a result, a 'valley' will be formed at the middle-left part of the character (Figure l(e)). A character classification procedure is likely to recognize Figure l(e) as the number '8' rather than the letter 'B'. Several existing thinning algorithms using 3 ×3 templates will generate a skeleton similar to this. This problem cannot be solved as long as only 3 x 3 templates are used. l####• ####•##•• ##•#•••#•• ####••####• .... > # Z###• #• ## •• #• #### #######•#### #•##• •##### ##### ##### ##### ###### • ##########• • #########••
I
...... 0111 0Zll I 0111 0111 ......
#" #" #" #" #'#"# # # # ###••###•#• ############ ####•####### • #### ••#•## ####• #•### • ###• •####• ##•#######•# #####••##### ############ ##########• #########• ######•#• #####•
Ca)
Holt et al. [8] use a 4 x 4 window, which is still too small to correct the above problem. Figure 2 shows similar phenomena when Holt's method is applied to the same input character 'B'. Figure 2(b) shows the neighborhood of pixel (10,5) which is marked 'Z' in Figure 2(a). Figure 2(c) gives the result of iteration 2 of Holt's method. Pixel (18,8) is marked 'W'. Figure 2(d) gives the neighborhood of pixel 'W', which is identical to that of pixel 'Z'. Figure 2(e) gives the final result. The above examples demonstrate the fact that
•1##• •####•• •••##••• ••••••#• •• ••• • •• # #g • ## •# •## •#•••##• .... > ~###### •"'" ••••••• ##••#••• #• ••• • •# # •• # •• •# ##• #######• ######•# •###### ###•
(b)
(c)
•# #• • • # • •
10111I .....
0Nll 0111 0111 ......
•
•• • • • # • • ••
•• ••• •• • # # # •
•
# ####
(d)
•• • • # • • •
(e)
Figure 2. Character 'B' and some thinning result using Holt's algorithm: (a) input, (b) neighborhood of pixel 'Z', (c) after iteration 2, (d) neighborhood of pixel 'W', (e) the final skeleton. 243
Volume 12, Number 4
PATTERN RECOGNITION LETTERS
vertical strokes are critical in distinguishing characters, such as 'B' and '8', 'K' and 'X', 'E' and ' ~ ' . In processing common characters, a shapepreserving thinning algorithm should pay special attention to preserve vertical strokes. This problem was first noticed by Govindan and Shivaprasad [6] who proposed a sequential method to make thinning algorithms more shape adaptive. In their method, contour-tracing algorithms are used to identify the presence of right-angles, T-corners and acute-angle corners. The pixel of the character contours are examined sequentially following a contour-tracing algorithm. The chain codes of several previous pixels are to be stored to help the decision of the current contour pixel. In the test for different corners a neighborhood larger than 3 x 3 is required. Wigena and Li [6, 13] use a part of a large template (5 x 5) to make thinning more shape adaptive. It is becoming more obvious that a larger window is necessary to improve the quality of thinning, and it is desirable to efficiently obtain information from a larger neighborhood of the contour pixels. Some thinning algorithms (see [4]) directly compare the neighborhood of a pixel with a set of templates, and delete this contour pixel if its neighborhood matches one of the templates. Many other algorithms compute some functions of the neighborhood, such as the number of character pixels ('BP' in [6]), or the number of l-to-0 pixel transitions in a path through the neighborhood. Some tests are performed on these functions, such as BP> 1 or BP<7. A contour pixel is deleted if its neighborhood passes these tests. Different sets of templates and various functions and tests have been proposed. The (time and space) complexities of these methods are difficult to compare because of the various ways they are implemented on different machines. A simple way to directly compare the complexity of these thinning algorithms would be to convert all the rules (templates, functions, tests) into a large look-up table. If the neighborhood involves N pixels (N= 8 for a 3 x 3 neighborhood), an N-dimensional table could be used. The table entries are indexed by the values of the neighborhood pixels, and the content of each entry should be either 0 ('do not delete') or 1 ('delete'). The size of this table is equal to the number of 244
April 1991
Table 1 template size 3x3 4x4 5x 5 7x 7 9x 9
number of neighbors
number of possible templates
8 15 24 48 80
28 2 t5 224 248 280
possible templates that could be used. The table look-up operation takes one step, thus the complexity of the algorithm is completely converted to space complexity, which provides a ground for comparison among algorithms in a heuristic sense. When the size of templates is increased from n 2 to N 2, the number of possible templates goes up by O(N 2 - n 2), which is shown in Table I. Shape adaptive methods use larger templates which will either require larger memory or more complex testing. Because of the time and space limitation of current computer technology 9 x 9 templates have not been used. It is the intention of this paper to propose a simple parallel thinning algorithm to efficiently use information from a large neighborhood to preserve the shape of the resulting skeleton.
3. A variable resolution method to improve thinning We propose a variable resolution approach to improve current thinning algorithms. In our current experiment all character pixels are first examined by Guo's algorithm A1 [7]. Equivalently, a set of 3 × 3 templates are used to compare with the neighborhood of each character pixel simultaneously. If certain conditions are satisfied, another set of 9 × 9 templates are used. Each of these templates is partitioned into 9 equal square-shaped parts as shown in Figure 3. The center part is a regular 3 × 3 template. Each one of the eight peripheral parts also covers a 3 x 3 region, but at a reduced resolution. Two binary values, a and fl, are generated from each peripheral region of 9 pixels. In our current experiment, a simple thresholding is used to determine tz as
Volume 12, Number 4
PATTERN RECOGNITION LETTERS
April 1991 X=o Y=I 0 0
°l I 0 1 0 l x=0
l l
Y=l (~) 1 2 3 4 5 6 7 8 9
f0 l
if there are _<5 character pixels in this region, otherwise.
Binary variable fl is used to record some special pattern of the pixel arrangement in this 3 x 3 region. For example, a 3 x 3 region with three '1' pixels randomly arranged should be distinguished f r o m three ' I ' pixels forming a straight line in this region. In this case, the periphery forms a straight line so the center pixel should not be deleted. Variable fl is set to 1 in such a situation. Other situations, such as a horizontal line or a corner, could also be represented. This approach makes using a 9 x 9 template equivalent to working with one 3 × 3 template and at most one 4 x 4 template. Furthermore, our method is parallel, unlike the
#g#### t######$#
####•~•### #$,#.,..##.
###$,,,''#,' --> Z######$##,# ,#,,,#,#$,,# #$##$ #$1$## • #l•• $ $ t # • # • #### •$#•#• ####|#••#### • ##•#####•t• ###•####### ##1#1#151$ #####1##1#1 #######$###• ######W$#### ####$ #•#$I¢g
000 000 000 000
011 011 011
..... , 011
111 111 111 ,
111
000 l OZ1 I 111 000 011 111 .....
000 000 000
(c)
Figure 4. Example templates: (a) a 3 x 3 template, (b) and (c) are variable resolution templates.
Figure3. Avariableresolutiontemplate.
a =
(b)
011 011 011
111 111 111
algorithms based on contour tracing, which are inherently sequential. If the pixels above and below the contour pixel are both object pixels (with value '1'), as shown in Figure 4(a), then a set of larger templates are used. A blank indicates a ' d o n ' t care' condition. Figures 4(b) and 4(c) give examples of such large templates. Other large templates are similar but symmetric to these two. These larger templates specify that the character possibly has a long vertical stroke. A contour pixel should N O T be deleted if its neighborhood matches any of these templates. Very few large templates are needed and the peripheral part of a template can be stored and tested separately from the central part. Since at most two binary values are used for each peripheral 9-pixel-region, at most 216 bits are used for the
.....
'''$',, " ' " ' ,, $ • • • • • • •# •• ••• •••••• --> TI•••• •11111 $• ••• • ••
####• •#### ##### • # # # # • ####$##$~### #####•#$#### ~#$•#•###~#•
• • • • • • • •• • •#• ##•#••#
• #########$
•$#•••
..
,
000 000 000
010 010 011
.....
000 000 001
000 I 011 I 111 000 [ OT1 1 111 000 011 111 000
000 000
..... 011
010 010
# , • It • • •
, '
• • Ill• • • • •
. • • • •
•
001
•
•
000 000
• • • • •
• • • • • • •#• •
•####$#g• ######
Ca)
(b)
Co)
(d)
Ce)
Figure 5. Character 'B' and some thinning result using the proposed algorithm: (a) input, (b) neighborhood of pixel 'Z', (c) after iteration 5, (d) neighborhood of pixel 'T', (e) the final skeleton. 245
Volume 12, Number 4
. . ---i . --I
.
---I . ---I . --I---I . --I . ---I . --I---I . --I .
. .
PATTERN RECOGNITION LETTERS
.
. .
. . .
. .
.
. .
. .
. .
. .
.
Ill-+ +i----
. .
i+-----
.
I ..... . . II .... - - l l - - . . . ii----. . . . I. . . . . . . . . It .... ----ll---. . . II--* . . . I
--e--
--I--
--q--
--e---e--
--llIllllllllIlllIlllll--
-e-NI--
,
April 1991
IIIIIIIIII
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
III1||111111
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IIIIIIII1|11
.....
Illllll|lllll
---I1---II
I|lllllllllll
---g
I1|
|1 . . . . . . . . . .
. . . . . . .
|--II
II .....
. . . . . . . .
l--|l
....
I . . . . . .
| .....
I . . . . . .
I .....
|--I---
IIIll
I|llll
--I
. . . .
I .
.
.
.
.
I . . . .
I .
.
.
.
.
I . . . .
I|l|l
I|l||l
--|
. . . .
| .
.
.
.
.
I . . . .
| .
.
.
.
.
I . . . .
| | l l | l l | | | | l
--I
.....
| .
.
.
.
.
| .....
| .
.
.
.
.
I .....
Illllll|lOil
---I---||
.
.
.
.
.
I ....
l l l l l l l l l l l l
---I-III
IIIIIIII|II
....
I . . . . . . . . . .
IIIIIIIIIII
---I
. . . . . . . . . .
.
.
.
.
|---|
.
.
.
l--I
.
II . l .
. .
.
.
.
. .
.
l---I IIII
.
I ........
I .
.
.
.
I--
IIIII
--I
.
.
.
.
I .
.
.
.
l--
IIIII
--I
.
.
.
.
I .
.
.
.
I--
IIIII
--I
.
.
.
.
I .
.
.
.
I--
IIIII
--I
.
.
.
.
I .
.
.
.
I--
IIIII
--I
.
.
.
.
I .
.
.
.
lllll
--I
IIIII
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
IIIII
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
I .
(b)
.
.
.
I .....
.
I .....
l--
.
(c)
.....
. .
.
.....
.
.
.
.
.
|---
.
.
.
.
.
I---
l ....
.
.
I .
.
. .
.
.
.
.
.
.
i .
. .
.
.
--I
.
.
.
.
---I
.
.
.
--I
.
.
.
IIIII
.
.
.
.
IIIIIIII
.
.
.
.
IIIIIIII
(a)
ul-.
. . . . . . . . .
.....
I--
(d)
Figure 7. Input character and thinning results of three algorithms: (a) input, (b) Holt's method, (c) Guo's method, (d) proposed method.
-eN °l-
Figure 6. Thinning results of the proposed algorithm for lines of various orientations.
like a letter 'B' rather than numeral '8' since the straight vertical stroke is preserved. periphery of each large template. The generation of the binary variables t~ and p for some 3 x 3 region could be shared by different contour pixels. Two 3 ×3 regions which overlap can also share part of the computation. Figure 5 demonstrates the use of the proposed method. Consider again the input character 'B' from Figure 1. Figure 5(b) gives the neighborhood of pixel 'Z'. Figure 5(c) shows the result of iteration 5 with pixel (18,7) marked 'T'. The neighborhood of pixel 'T' is shown in Figure 5(d). The rules described above can distinguish this neighborhood from that of pixel 'Z'. Figure 5(e) gives the final result, which looks more IIIIIIIIIIIIIIIIIllllll
.......................
IIIIIIIIIIIIIIIIIIIIIII
.......................
IIIIIIIIIIIIIIIIIIIIIII
....
IIIIIIIIIIIIIIIII--
IIIIIIIIIIIii11111111|1
---I
...................
|l|llllllllllllllllllll
--I
lelll
--I--
lille
--I--
....................
III1!
--I--
IIIII
--I--
I|111111111111111
--I
IIIIIIIIIII1||111
---I
Illllllllllll|lll
---IIIIIIIIIIII--
IIIIIIIit11111111
---I
IIIIIIIIIIIIIIIII
--I ..............
IIIII
--I--
.............. ............. .............
Illll
--I--
I1|1|
--I--
Illl|
--I--
!1111111111111111111111
--I
Illllllllllllll|llllll!
---I
...................
IIIIIIIIIIIIIIIIIIIIIii
....
I1|11111111111111--
I1|111111111111111t||1|
.......................
IIIIIIIIIII1|i111111111 (a)
....................... tb)
....................
4. Experimental results The proposed algorithm was tested on some artificially generated character strokes and characters. Figure 6 demonstrates that the variable resolution approach generates reasonable results on the input strokes recognized as representative patterns [7]. The symbol ' - ' indicates an object pixel being deleted and '#' represents a skeleton pixel. Figures 7, 8 and 9 present the results on characters 'P', 'E', and 'K'. Each figure contains
.... -.-|
#lll||l|||l|l|lll . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Illllllllllllllll-! ...................
--I
. . . . . . . . . . . . . . . . . . . . . .
| ....................
--|
.
I--
--! --!
. .
---|
.
.
. . .
. .
.
.
.
.
.
.
.
---IIIIIIIIIIII ---| . . .
.
.
.
.
. . .
.
.
.
.
I-| ..............
.
.
.
.
.
.
.
.
| ..............
.
.
.
.
.
.
.
.
IIIIIII1|1111-| ..............
.
.
.
.
.
.
.
| ..............
.
. .
.
.
.
.
--!
.
--! --|
. . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
--|
---|
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . .
I-I-| .................... | ...................
.... IIIIIIII1|1111111 . . . . . . I1|111111|111111|-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (c)
(d)
Figure 8. Input character and thinning results of three algorithms: (a) input, (b) Holt's method, (c) Guo's method, (d) proposed method. 246
Lt~
aql aseaaou! plnOA~ salelduial Ja~'J131 qanui jo uo!l -ea!Idde aq,L "uolola~ls aql jo odeqs aql aaoadui! O1
"901-66 '(E)L s.talla7 uo!l -!ugoaa~t uaallod "suJalll~d i~l!~!p aoJ tUtll!JO~le ~u!uu!tll lalleaed lsej pau!pom V "(8861) nsH "3A pu~ "A 'uaqD [E] •l~lJaqiv jo .~l]SaaA!Ul'l 'aauo!aS ~u!mdtuo D jo "lda(1 '17[-06 ~.L "da~l "qaa.L "UO!S!A uo!mlOSOa alq~!a~A "(0661) !'I 'X pue "V 'nseo [E] "I,L1,-Egt, '(t,)L "llaml au!qaoI,V "louV ItJallo(t "SU°JdL ffffffl
"u.lql!aO~'ll~
~U]UU!t[I
lsl~J
lu;)puadapu!-qlp]Ax V "(~86D u feB !G "g'O pu~ "D 'HIOOJV [I] saauaaajaH
•su~uinq uioaj sal~lduial ~u!uu!ql luaJaJJ!p ,u.~l~Ol, ol qaeo.ldd'e lL'O!ls!l"els 1~ ~u!sn
O.II~aa,~ "s.lOl~JadO ~utuu!ql uguinq oql ol ae!I!uieJ -un a~en~ue I e uioaj saalaeaeqo !u!uu!ql SaAIOAU! fipnls Jno j o dols lxau aql 'ssoooad fi'u!tui!ql ueuinq
StlO!l:3aS.IOltl! JO S.laU.IO:) luaaaJJ!p .~J!luap! o l p o o q
-aoqq~!au o~a~ I pu~ ~u!a~al-anoluoa ash suiql!.m~ie l~!luanbas auio S "posn aq lsnui uo!leuiJoju! leqOl~ pue pooqaoqq~!au aa~a~ I 'uo!laols!p ~u!uu!ql .~q pa -sn~a alea uo!lea!j!SSelaS!ui aql aanpaa pu~ ~u!uu!ql jo al!!enb oR1 aAoadui! O1 aapao u I "az!s alelduial ileuis aql ol anp RllUa.laqu! s! uialqoad s!qJ~ "pa -AJaSoJd 1OU aae sal[o.lls IL'a!1.1OAauiOS UOqA~ sana:)o
uo!l~a!j!SSelaS!ui 'aldui~xa ao d "llna!jj!p aaa^ uo!l -ui~oaaa aala~a~qa sa~leui qa!qA~ uolala~IS @U!llnsaa aql jo uo!laols!p ad~qs aaa^as asn~a a~ui s!qj, •pooqaoqq~!au s!ql ap!slno uo!l~uiaoJu! ou asn pue iax!d anoluoo Rata jo pooqaoqq~!au (~ x t;) II~uis omui~xo suiql!ao~I~ @u!uu!ql l~UO!l!pe.I1 lsolAl uo!snlauoD "S
oql ,(pnls Jaql.mj o.1. ".lala'e.ll~q:3 aql j o S.laUlOa
luaaajj!p uo uiql!aO~l~ ~u!uu!ql aql jo aO!Aeqaq aql aAoadui! O1 palonpuoo ~u!aq .~llUOaano oar SlUaUI!aadxa aaOlA! "sluaui!aadxa Jno U! S.lalOl~.ll~qa I~aa^as uo luauiaAoadui! lu~a!j!u~!s ^'mRS poqlaui pasodoad aql jo sllnsaa atLL "aaaqA~aSla palaodoJ oq II!A~ sanb!uqaal uo!l~lnduioa auios pue aanl~u u! Iallea~d s! uiql!ao~[~ s!q,L "uo!~oa E x E lea1uaa oR1 u! ls!xa suo!l!puoa U!~laOa uoqA~ pooqaoqq~!au E X E oql jo op!slno uo!~aa ie~oqd!aad oql j o A'~a!A ,q~noa, ~ s u ! ~ qaeoadd~ s!q,L "suiql!aO~Ie ~u!u -u!ql luaaana aql aAoadui! ol qaeoadde uo!lnlosoa alq~!a~A ~ osodoad OAk "alp!d~a peal uo!l~lnduioa
"op oi pal!~J s p o q l a u i .lat[lo a q l qo!qA~ 'suolala~lS aql u! aztoals ll~O!l.laA aql p a u ! e l a J p o q l a u i p a s o d o J d aql saldui~xa oaJql aql IIe u I •p o q l a u i u o ! l n l o s a J alq'e.I.II~A aql ,~q pall~Jaua~ uolalaZts paAO.Idui! (p) ' s a l e I d u i a l E x E sasn qa!qAx '[L] p o q l a u i s , o n D fiq p a l e a a u a ~ uolaia~ts leU!j (a) ' s a l e I d u i a l 9 x 17 sasn qa!qAx '[8] p o q l a u i S,llOH fiq p o l e a a u a ~ uolala,.ls I~u!J (q) 'a~eui! .~Jeu!q l n d u ! (e) :slJl~d a n o j
"potllatu posodosd (p) 'potllatu s,ono (a) 'potllatu s,qoH (q) 'mdu! (r) :stuql!Jo~It~ a0atll jo sllnsoJ ffu!uu!tll pue aola~JVtla mdul "6 aJn~!:I (p)
(a)
(~)
(q)
. . . . . . . . . . . . . . . . . . . . . . . . ---I
.
.
....
ll
......
.
J.
.
. . . . . . .
I .
.
I . . . . . . .
I .
.....
.
II .....
.
.
.
I|
.......
l .
.
I ......
I .
.
I .
.
.
.
II
.... I--II
....
IIll
....
Ill
....
ll-|l I
....
.
I
.....
.....
II
---ll
.
. .
I66I l!'dv
.
. .
. .
. .
. .
.
. .
.
.
.
.
.
.
. .
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
I
.
.
.
.
.
.
.
. .
.
I .
.
I .
. .
.
.
.
.
.
.
.
I .
.
.
.
.
. .
.
. .
. .
.
.
. .
.
I---
.......
.....
....
Ill
I
|
....
I-I--
. . . . . . . .
.....
l--
II . . . . . . .
I--
.....
.
l--
---I!
I--
.
.
.
.
.
.
.
.
.
. .
.
. .
.
.
.
II
.
II . .
I I I I I I I I I I I I I I I I I I I I I I I IIIII!11|111|1
I|---I--Jl ......
I--
I . . . . . . .
i--
. . . . . . .
I--
. .
I I I I I I I i i
!1 ....
. . . . . . . .
i111111111
.... | ....
ll--l---
..... ..... ......
|1111|11|111
.... |l
.....
l---
I I I I I I I I I I I I I I I I!111111111111
I1-1
....
|1 ......
I---
.... ....
. .
. .
. .
. .
.
StI~t.L.L~Iq NOLLINDOD~I~I N'dBdAVd
II1|1
Iit11111111111111
I|---|--....
....
. . . . . . .
I I I I I I I I I I I I
I--
I .....
I ....
II
.
II
.....
I-I
.
. .
IIIII
.....
I---I---
II
.
.......
II .....
I .....
.
. .
I--
.
.
. .
.
.
.
II
.
.
.
I--
.
I
.
. . . . . . .
. .
.
I--
II---I---
.
.
.
! .....
. .
I I I I I I I I I I I I
I--
.....
.
.
. .
I--
IJ . . . . . . .
I--
.
. .
.
.
IIIII
. . . . . . .
I . . . . . . .
.
.
Illll
I I I I I I I I I I I
I--
.
II
I .
. .
.
. .
I
. .
. .
I .
. . . . . . . .
. .
IIIII
II!111111
. . . . . . .
.
IIIII
IIII1|1
l-I--
. . . . . . . . . . . ---it . . . . . . . .
.
ll
$ .....
. . . . . . . .
.
.
......
|| II
.
.
. .
I .
. . . . . . .
.....
..... .
....
.
.
. .
.....
.
.
I .
.....
.
.
. . . . . . .
.....
.
.
IIII!
I I I I I I I I I I I I I ! 1 1 I1|111111111
III!1
I I I I I I l | l l l l
II|l|
I--
| | l | | l | l l | | l
||l|l
I--
JJJ|lJ|J|| JJ||||J| J||JJJJ
J|||J Jill| ||JJ|
||1||
|llll
I--
t7 aaqtunN 'Z;[ atunlOA
Volume 12, Number 4
PATTERN RECOGNITION LETTERS
[4] Chin, R.T., H-K. Wan, D.L. Stover and R.D. Iverson (1987). A one-pass thinning algorithm and its parallel implementation. Computer Vision, Graphics and Image Processing 40, 30-40. [5] Dyer, C. and A. Rosenfeld (1979). Thinning algorithm for gray-scale pictures. IEEE Trans. Pattern Anal. Machine Intell. 1, 88-89. [61 Govindan, V. and A. Shivaprasad (1987). A pattern adaptive thinning algorithm. Pattern Recognition 20(6), 623-637. [7] Guo, Z. and R. Hall (1989). Parallel thinning with two subiteration algorithms. Comm. A C M 32(3), 359-373. [8] Holt, C., A. Stewart, M. Clint and R. Perrott (1987). An improved parallel thinning algorithm. Comm. A C M 30(2), 156-160. [9] Tamura, H. (1978). A comparison of line thinning algo-
248
[10] [11]
[12]
[13]
[14]
April 1991
rithms from digital geometry view point. Proc. 4th Intl. Joint Conf. on Pattern Recognition, 715-719. Kwok, P. (1988). A thinning algorithm by contour generation. Comm. A C M 31, 1314-1324. Pavlidis, T. (1981). A flexible parallel thinning algorithm. Proc. Conf. Pattern Recognition and Image Processing, 162-167. Plamondon, R. and C.Y. Suen (1988). On the definition of reference skeletons for comparing thinning algorithms. Proc. Vision Interface '88, 70-75. Wigena, A. and X. Li (1989). Thinning algorithms and criteria. Proc. Canadian Conf. on Electrical and Computer Engineering, 765-770. Yu, S. and W. Tsai (1990). A new thinning algorithm for gray-scale images by tile relaxation technique. Pattern Recognition 23, 1067-1076.