+ All Categories
Home > Documents > Bhowmick 2009

Bhowmick 2009

Date post: 04-Apr-2018
Category:
Upload: akfaditadikaparira
View: 220 times
Download: 0 times
Share this document with a friend
14
Approximate Matching of Digital Point Sets Using a Novel Angular Tree Partha Bhowmick, Ranjan K. Pradhan, and Bhargab B. Bhattacharya, Fellow , IEEE Abstract—Matching and analysis of patterns or shapes in the digital plane are of utmost importance in various problems of computer vision and pattern recognition . A digital point set is such a pattern that corresponds to an object in the digital plane. Although there exist several data structures that can be employed for Approximate Point Set Pattern Matching (APSPM) in the real domain, they require substantial modification to support algorithms in the digital domain. To bridge this gap, a novel data structure called “angular tree” is proposed, targeting an efficient and error-controllable circular range query in the digital plane. The farthest pair of points may be used as the starting correspondence between the pattern set and the background set. Several classical discrete structures and methodologies of computational geometry, as well as some topological features of circles/discs in digital geometry, have been used in tandem, for successful realization of the proposed APSPM algorithm in the digital plane. The APSPM algorithm based on the angular tree has been implemented and tested on various point sets and the reported results demonstrate the efficiency and versatility of the new data structure for supporting APSPM algorithms. Index Terms—Approximate matching, circular range query, digital geometry, point set pattern matching, polygonal range query. Ç 1 INTRODUCTION A PPROXIMATE Point Set Pattern Matching (APSPM) is a challenging problem having numerous applications in the dig ital pla ne. Some of these app lications are ima ge registration [40], [41], [44], object recognition [9], fingerprint mat chi ng [13], [42], bioinf ormati cs [30], [31], medical imaging [45], human mot ion representati on for gai t analysis, sports studies, animation, computer games [25], [37], digital imaging and modeling [39], [51], drug design [23], and vehicle tracking [48]. The und erl ying abs tract proble m of APS PM may be envisaged as follows: If a board has some pins randomly fix ed on it (ba ckgrou nd set, Q) and anot her has some randomly located holes (pattern set, P ), then, using the term “boardsynonymously wi th the term “poi nt set ,” the APSPM pr oblem is to check whet her the boar d P can somehow be placed on the board Q so that, in each hole of P , we can see exactly one pin of Q. If no transformation is allowed, then checking for a match simply means that we have to place the board P over the board Q and count the number of holes cont ai ni ng one pin each (see Fi g. 1a). Finall y, (approximate ) mat chi ng dec isio n can be taken  based on the number of holes containing the pins. For matc hing under transformation , the board P has to be translated and/or rotated appropriately so as to maximize the number of holes containing pins (Fig. 1b). In a discrete domain, the location of each pin in Q is constrained by its integer coordinates and each hole in P is a digital disc having integer radius and having center with integ er coordinates. Furt her, for faster query proce ssing, each digital disc may be replaced by a suitable regular (real) polygon with its center coinciding with the center of the corresponding disc. The regular polygon should be such that it should not produce a matching result different from the one obtained wi th the di gita l di sc. This can be guaranteed if and only if there exists no grid point in the digital disc that lies outside the polygon and, conversely, there exists no grid point outside the digital disc that lies on or inside the polygon. Such a polygon is said to be “ideal.” In this pap er (a pre limina ry ver sion of whi ch app eared earlier [14]), we have shown that an ideal regular polygon corresponding to a digital disc is analytically possible for some of the digit al dis cs, especi all y for the ones having lower radii; for larger digital discs, approximate polygons, tending to ideal ones, are possible, which would have very low error rates. The usage of a regular polygon instead of a digital disc for range query on a digital plane simplifies and expedi tes the pr ocess. Polygonal range query can be efficiently serviced by using an angul ar tree , a new data structure, which is introduced in this paper. The proposed angular tree is marked by its admissibility to a query on the two-dimensional (2D) plane using any convex query polygon of arbitrary shape and size. We have also shown that, for a query in Q containing n points using such a query polygon having an arbitrarily large number of vertices, the worst-case time complexity of the proposed range query is  bounded by OðnÞ and, hence, asymptotically independent of the complexity (that is, the number of vertices) of query polygon. For a smaller size query polygon, of course, the query time is less and is bounded by Oðlog nÞ. IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 31, NO. 5, MAY 2009 769 . P. Bhowmick is with the Computer Science and Engineering Department, Indian Institute of Technology, Kharagpur, India 721302. E-mail: [email protected], [email protected]. . R.K. Pradhan is with Tata Consultancy Services, India, Nilkunthya, East  Midnapur, India 721627. E-mail: [email protected]. . B.B. Bhattacharya is with the Advanced Computing and Microelectronics Unit, Indian Statistic al Institute (ISI), 203, B.T. Road , Kolka ta, India 700108. E-mail: [email protected].  Manuscript received 17 July 2006; revised 24 Jan. 2007; accepted 23 July 2007; published online 11 Oct. 2007. Recommended for acceptance by R. Klette. For information on obtaining reprints of this article, please send e-mail to: [email protected] , and reference IEEECS Log Number TPAMI-0530-0706. Digital Object Identifier no. 10.1109/TPAMI.2007.70812. 0162-8828/09/$25.00 ß 2009 IEEE Publ ishe d by the IEEE Comp uter Soci ety
Transcript
Page 1: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 1/14

Approximate Matching of Digital Point SetsUsing a Novel Angular Tree

Partha Bhowmick, Ranjan K. Pradhan, and Bhargab B. Bhattacharya, Fellow , IEEE 

Abstract—Matching and analysis of patterns or shapes in the digital plane are of utmost importance in various problems of computer

vision and pattern recognition. A digital point set is such a pattern that corresponds to an object in the digital plane. Although there exist

several data structures that can be employed for Approximate Point Set Pattern Matching (APSPM) in the real domain, they require

substantial modification to support algorithms in the digital domain. To bridge this gap, a novel data structure called “angular tree” is

proposed, targeting an efficient and error-controllable circular range query in the digital plane. The farthest pair of points may be used

as the starting correspondence between the pattern set and the background set. Several classical discrete structures and

methodologies of computational geometry, as well as some topological features of circles/discs in digital geometry, have been used in

tandem, for successful realization of the proposed APSPM algorithm in the digital plane. The APSPM algorithm based on the angular

tree has been implemented and tested on various point sets and the reported results demonstrate the efficiency and versatility of the

new data structure for supporting APSPM algorithms.

Index Terms—Approximate matching, circular range query, digital geometry, point set pattern matching, polygonal range query.

Ç

1 INTRODUCTION

APPROXIMATE Point Set Pattern Matching (APSPM) is achallenging problem having numerous applications in

the digital plane. Some of these applications are imageregistration [40], [41], [44], object recognition [9], fingerprintmatching [13], [42], bioinformatics [30], [31], medicalimaging [45], human motion representation for gaitanalysis, sports studies, animation, computer games [25],[37], digital imaging and modeling [39], [51], drug design

[23], and vehicle tracking [48].The underlying abstract problem of APSPM may beenvisaged as follows: If a board has some pins randomlyfixed on it (background set, Q) and another has somerandomly located holes (pattern set, P ), then, using the term“board” synonymously with the term “point set,” theAPSPM problem is to check whether the board P  cansomehow be placed on the board Q so that, in each hole of P , we can see exactly one pin of  Q. If no transformation isallowed, then checking for a match simply means that wehave to place the board P  over the board Q and count thenumber of holes containing one pin each (see Fig. 1a).

Finally, (approximate) matching decision can be taken based on the number of holes containing the pins. Formatching under transformation, the board P  has to be

translated and/or rotated appropriately so as to maximizethe number of holes containing pins (Fig. 1b).

In a discrete domain, the location of each pin in Q isconstrained by its integer coordinates and each hole in P  isa digital disc having integer radius and having center withinteger coordinates. Further, for faster query processing,each digital disc may be replaced by a suitable regular (real)polygon with its center coinciding with the center of the

corresponding disc. The regular polygon should be suchthat it should not produce a matching result different fromthe one obtained with the digital disc. This can beguaranteed if and only if there exists no grid point in thedigital disc that lies outside the polygon and, conversely,there exists no grid point outside the digital disc that lies onor inside the polygon. Such a polygon is said to be “ideal.”In this paper (a preliminary version of which appearedearlier [14]), we have shown that an ideal regular polygoncorresponding to a digital disc is analytically possible forsome of the digital discs, especially for the ones havinglower radii; for larger digital discs, approximate polygons,

tending to ideal ones, are possible, which would have verylow error rates. The usage of a regular polygon instead of adigital disc for range query on a digital plane simplifies andexpedites the process. Polygonal range query can beefficiently serviced by using an angular tree, a new datastructure, which is introduced in this paper. The proposedangular tree is marked by its admissibility to a query on thetwo-dimensional (2D) plane using any convex querypolygon of arbitrary shape and size. We have also shownthat, for a query in Q containing n points using such a querypolygon having an arbitrarily large number of vertices, theworst-case time complexity of the proposed range query is

 bounded by OðnÞ and, hence, asymptotically independentof the complexity (that is, the number of vertices) of querypolygon. For a smaller size query polygon, of course, thequery time is less and is bounded by Oðlog nÞ.

IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 31, NO. 5, MAY 2009 769

. P. Bhowmick is with the Computer Science and Engineering Department,Indian Institute of Technology, Kharagpur, India 721302.E-mail: [email protected], [email protected].

. R.K. Pradhan is with Tata Consultancy Services, India, Nilkunthya, East Midnapur, India 721627. E-mail: [email protected].

. B.B. Bhattacharya is with the Advanced Computing and MicroelectronicsUnit, Indian Statistical Institute (ISI), 203, B.T. Road, Kolkata, India700108. E-mail: [email protected].

 Manuscript received 17 July 2006; revised 24 Jan. 2007; accepted 23 July

2007; published online 11 Oct. 2007.Recommended for acceptance by R. Klette.For information on obtaining reprints of this article, please send e-mail to:[email protected], and reference IEEECS Log Number TPAMI-0530-0706.Digital Object Identifier no. 10.1109/TPAMI.2007.70812.

0162-8828/09/$25.00 ß 2009 IEEE Published by the IEEE Computer Society

Page 2: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 2/14

In this work, we have chosen a regular convex polygoninstead of a general convex polygon to approximate adigital disc in order to substitute a circular region of query by a polygonal range query since the former offers somesymmetry (in resemblance to the 8-axis symmetry of adigital disc) as opposed to the latter. In fact, we have used aregular 2k-gon ðk ! 2Þ to implement our APSPM algorithmsince each edge e of a regular 2k-gon has a symmetricedge e0 in the same direction as that of  e. This, in effect,reduces the dimensionality of the associated angular tree

and hence reduces subsequent computations because of fewer transformed axes (as the directions of the axes aregiven by those of the edges of the query polygon).

For a better approximation of the digital disc, the numberof vertices of the regular polygon may be increased forimproved matching. However, the space and time complex-ities of the allied algorithms and the dimensionality of thesupporting data structures will increase significantly.Having an approximating regular polygon with fewervertices (with a trade-off on the acceptable error part) willsimplify the query process and expedite the subsequentmatching process with desired accuracy. In most of the

practical applications related to digital images, the circularranges used in approximate matching are found to havereasonably low radii. Thus, an approximating polygonrequires only a few vertices to achieve a desired level of matching accuracy. For instance, in fingerprint matching[13], [15] using the algorithms of APSPM, the circular rangequery is evoked for a circular range with radius notexceeding 10 pixels, which can be “ideally” replaced by aregular polygon.

Several methods on APSPM are available in theliterature, most of which aim at matching in the realdomain. Discussions on these algorithmic techniques for

shape matching, simplification, and morphing using rangesearch may be found in the survey paper by Agarwal andErickson [1]. Typically, rectangles, half spaces, simplices, or balls are used for range queries. Implementations of these

real-domain algorithms in the digital plane, however, posedifficult problems because of the complexity of the under-lying data structures, which have to be tailored appro-priately to suit the digital domain. A few empirical methodsfor geometric pattern matching algorithms in the digitalspace have been reported earlier [27], [35], [44], which areusually based on an exhaustive search of the transformationspace with suitable pruning techniques.

In this paper, we present a novel data structure calledangular tree that can be deployed in the 2D digital space (andin the 2D real space also, if required) and whose (angular)precision can be controlled depending on the requirement.The angular tree can be used for (regular) polygonalpartitioning of 2D digital points to enable the circular rangequery required for the algorithm on APSPM in the digital

plane. Since it has been shown [14] that a digitally circularrange query can be well-approximated by a regular (real)polygon in 2D, a circular range query may be replaced by thecorresponding polygonal rangequery, thereby producingthedesired results of approximate matching (of point sets) forpractical applications related to digital images. The processhas been further expedited by considering the farthest pointpair (as the first correspondence between two point sets) forinitial anchoring, whose rationale is also given in this paper.Relevant discrete structures and methodologies of computa-tional geometry have been used along with some geometricfeatures of digital discs for a successful realization of the

APSPM algorithm.A short schematic diagram of our solution on a small

instance of the APSPM problem is shown in Fig. 2. Here, theapproximation parameter is ¼ 3, which is the radius of thecircular region/disc centered about the concerned point of the point set in the digital plane. The pattern set P  containsnine points (colored black) and the background set Qcontains 10 points (colored green). The points of both P  andQ have been labeled with their index numbers increasingfrom left to right for the sake of easy readability. In theactual problem, however, the points of  P  and Q arearbitrarily numbered. After anchoring the farthest point

pair h p1; p9i of  P  with (the -neighborhood of) the point pairhq 2; q 10i of Q, each other point of  P  is searched in Q using a(regularly shaped) polygonal (hexagonal in this instance)range query that replaces the corresponding (digital)

770 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 31, NO. 5, MAY 2009

Fig. 1. Approximate matching of point sets in the real plane. (a) Without

transformation. (b) With transformation.

Fig. 2. A small instance of the proposed matching scheme in the digital

plane for approximation parameter ¼ 3.

Page 3: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 3/14

circular range query in the point set Q. Every circular/polygonal range is defined with the corresponding point of P  as center. The polygonal range query in Q is realizable bythe angular tree defined on Q proposed in this paper (notshown in this diagram). It may be noticed that there may besome point ð p3Þ in P  for which the (circular range) querydoes not return any point from Q. There may be also somepoint ð p2Þ in P  for which the query may return multiple

points (q 3 and q 4) from Q, or there may be multiple points( p6 and p8) in P  returning the same point ðq 9Þ from Q. Wehave considered all of these cases with proper treatments inour algorithm.

2 APPROXIMATION OF A DIGITAL DISC BY A

REGULAR POLYGON

An efficient approximation of a real circle/disc from thecontinuousdomaintothedigitaldomainowesitsorigintotheearly adoption of scan-conversion techniques [8], [18], [21],[38] and their subsequent improvements [17], [33], [43], [53].

Apart from this well-researched problem on construction of circles/discs in digital space, the anisotropic and irregularnature of a circle/disc in the digital space (opposed to itsinfinitely symmetrical property in thereal domain) shapesupan engrossing area involving circles and circular arcs in thedigital domain. Some of these works on digital circles andrelated problems are polygonal approximation of digitalcircles [14], [32], characterization of digital circles [28], [52],parameterization of circular arcs [50], [54], etc.

In a recent work [14], it has been shown that “ideal”regular polygons are analytically possible to construct forsome of the digital discs, especially for the ones having

lower radii, and, for those with higher radii, ideal regularpolygons are rarely possible. However, in reality (asrevealed by exhaustive procedural results), approximatepolygons, tending to ideal ones, are possible, which wouldhave very low error rates. The conditions that guaranteethat an ideal regular polygon exists corresponding to adigital disc and those without which its existence becomesuncertain have also been reported. Furthermore, when thecomplexity (that is, the number of vertices) of the idealregular polygon is high or when an ideal regular polygondoes not exist, a regular polygon with fewer vertices can beconsidered for a useful approximation of the ideal regular

polygon. Results in Section 5.1 demonstrate the variouscriteria of approximation and the associated errors.A disc Dðq; rÞ in IR2, q  :¼ ðxq ; yq Þ 2 IR2 and r 2 IRþ  being

its center and radius, respectively, can be realized in ZZ2  bythe corresponding digital disc, namely, ÁðDðq; rÞÞ, inseveral ways [4], [5], [47], some of which are given asfollows (see Fig. 3):

ÁðDðq; rÞÞ ¼

Dð; Þ ¼ p 2 ZZ2 : round ðd ð p; ÞÞ È É

for Type 1;

Dðq; Þ ¼ p 2 ZZ2 : round ðd ð p; q ÞÞ È É

for Type 2;

Dðq; rÞ ¼ p 2 ZZ2 : d ð p; q Þ rÈ É for Type 3;

8><

>:where d ð p; q Þ is the euclidean distance between p andq , round ðxÞ ¼ bx þ 0:5c for x 2 IR, ¼ round ðrÞ, and ¼ ðround ðxq Þ; round ðyq ÞÞ.

It is known that [4], [5], [52] when Dðq; rÞ is discretizedwithout rounding q  and r as mentioned above, the result(Type 2) is not necessarily same as Type 1 digital disc.Another procedure [52] to obtain a digital disc is to have itscenter ðq Þ and radius ðrÞ the same as those of the given realdisc such that, finally, each grid point of the digital disc(Type 3) has distance not exceeding r as measured from q .Thus, contrary to Type 1, the center or/and radius (of the

digital discs) are not necessarily integers in Types 2 and 3.Since, for an APSPM involving point sets in ZZ2, thecoordinates of the center and radius of the digital disc fora circular range query are integers, we have considered onlyType 1 digital discs. Nevertheless, the other types may beinvestigated for exploring other possible applications in thedigital plane.

The Type 1 digital disc, DðO; Þ, is given by the union of the set of points defining the corresponding digital circle,CðO; Þ, and the set of grid points lying inside CðO; Þ,where O denotes (0, 0). The digital circle CðO; Þ, in turn, isobtained from the corresponding real circle CðO; Þ using

the 8-axis symmetry of digital circles [18], [24]. Further, eachpoint ði; jÞ of Dð; Þ with center :¼ ðx; yÞ 2 ZZ2 has one-to-one correspondence with a unique point ði0; j0Þ of DðO; Þ,which is given by i ¼ i0 þ x, j ¼ j0 þ y. Hence, we can geta digital disc Dð; Þ, provided that DðO; Þ is known.

A pertinent question in this context is whether therealways exists such a regular polygonal enclosure for adigital circle Cð; Þ and the corresponding digital disc,Dð; Þ, thereof. As shown in [14], a regular polygonalenclosure for Cð; Þ certainly exists, provided there exists agrid point in Cð; Þ such that has simultaneously themaximum isothetic distance, namely,  , and the maximum

radial distance, namely, , from Cð; Þ. Here, the isotheticdistance of  from Cð; Þ is given by the minimum of thehorizontal distance and the vertical distance (in euclideanmetric space on IR2) of  from Cð; Þ, whereas its radialdistance indicates its (euclidean) distance from Cð; Þ(explained later in Fig. 11). In short, if there exists a gridpoint 2 Cð; Þ such that   ¼ max    :   2 Cð; Þf g and ¼ max   :   2 Cð; Þf g, then the existence of a regularpolygonal enclosure for Cð; Þ is certain; otherwise, it isuncertain. In Section 5, we have given some experimentalresults on (exact/approximate) polygonal enclosures of digital discs, which testifies the feasibility of replacing a

(digitally) circular query by a regular polygonal rangequery. This, in turn, will lead to the implementation of anefficient APSPM algorithm in 2D digital space, as explainedin Section 3.

BHOWMICK ET AL.: APPROXIMATE MATCHING OF DIGITAL POINT SETS USING A NOVEL ANGULAR TREE 771

Fig. 3. Digital discs obtained by three different procedures on

discretization of a real disc with center q ¼ ðÀ0:25; 0:00Þ and radius

r ¼ 4:90. (a) Type 1. (b) Type 2. (c) Type 3.

Page 4: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 4/14

We have shown that, for all digital discs, especially formost of the discs with radii exceeding 10 units, althoughideal enclosing polygons do not exist, it is possible toconstruct very good approximate polygons with minorerror margins. The error of approximation, as testified bythe error distribution in Section 5, depends on the numberof vertices of the approximate polygon. Given the radiusð :¼ Þ1 of a digital disc and the admissible error in its

polygonal approximation, we can determine the (even)number of vertices of the resultant polygon, as explained inSection 3.

3 APPROXIMATE POINT SET PATTERN MATCHING IN

THE REAL PLANE

In APSPM, given two point sets P  and Q, the problem isto find a transformation, matching each point p 2 P  intothe -neighborhood ð ! 0Þ of some unique point q  2 Q. Ithas two broad variations: pattern matching and largestcommon point set. In the pattern matching problem, given

P  and Q, jP j ¼ m, jQj ¼ n, with m n and ! 0, i t isr eq ui r ed t o f ind a t ra nsfor ma ti o n T  suc h t ha tjd ðT ðP Þ; QÞj . The largest common point set problemmeans, finding a transformation T  and a set P 0 P , suchthat jP 0j ! nmin and jd ðT ðP 0Þ; QÞj . (T ðP Þ is the point setafter applying the transformation T  to P  and jd ðT ðP Þ; QÞjdenotes the maximum distance in the set of distances between the corresponding points of  T ðP Þ and Q.)

If  ¼ 0, then each of the above problems reduces to ExactPoint Set Pattern Matching (EPSPM); otherwise, it isAPSPM under . The APSPM problem again has twoversions: decision problem and optimization problem. A

decision problem is to find whether or not P  and Q(approximately) match for a given value of  ; the optimiza-tion problem determines the optimized value of  so thatthey match under . This paper focuses on the APSPMdecision problem with references to EPSPM depending onthe relevance.

3.1 Existing Algorithms

Several methods have been developed in the past for solvingthe pattern-matching problem. It is not difficult to design andimplement a polynomial time algorithm for EPSPM underrigid motion, but the challenge lies in the APSPM version. A brief overview of some existing algorithms for both types of pattern matching is given below.

3.1.1 String Matching Algorithm 

A problem on EPSPM can be reduced to string matching,provided jP j ¼ jQj ¼ n. There exist several forms of thisclass of algorithms with Oðn log nÞ time complexity [7], [20].The polar coordinates of the points in P  and Q with respectto their geometric centroids are used to prepare theirlexicographically ordered lists (angle first, distance second),LP  and LQ. Then, the exact match of  P  with Q is obtained by checking whether LQ is a substring of  LP  under any

cyclic shift, using a fast string matching algorithm. Thus, P and Q are exactly congruent if and only if the algorithmgives a positive answer.

3.1.2 Alignment Scheme in EPSPM 

Here, jP j :¼ m and jQj :¼ n are usually unequal. Withoutloss of generality, if  m n, then P  Q is considered as avalid match [16]. The (euclidean) distances for all point

pairs in the background set Q are stored in an ordered list,LQ; moreover, for each point q  of  Q, the distances of allother points of Q from q are stored in a separate ordered list,L

ðq ÞQ . During matching, an arbitrary point pair of  P  is

aligned with each of the k matching point pairs of  Q, asfound from LQ. After applying the necessary transforma-tion T  to P , if the points of  T ðP Þ are found to match withpoints of Q (verified from the L

ðq ÞQ s), then Q matches with P 

under T ; if no such T  exists, then Q does not match with P .Construction of  LQ and L

ðq ÞQ s needs Oðn2 log nÞ time,

whereas the (successful or unsuccessful) matching time is bounded by Oðkm log nÞ ¼ Oðmn4=3 log nÞ since the max-

imum number k of a particular distance in Q is bounded bydn4=3e [49].

3.1.3 Alignment Scheme in APSPM 

Different alignment schemes for APSPM problems have been reported earlier [3], [6], [22]. Given as the euclideantolerance for matching P  and Q under arbitrary rigidmotions, a valid matching is said to exist in this scheme,provided that each point in P  lies in the (-)neighborhood of some point in Q. Mapping two points p; p0 2 P  onto the(circular) boundaries of  q; q 0 2 Q leaves one degree of freedom, which is parameterized by the angle 2 ½0; 2Þ between the vector qp and the horizontal line through q . Apoint p00 2 P  n f p; p0g will trace an algebraic curve of degree 6 which intersects the boundary of the disc of radius with center at some point q 00 2 Q at most 12 times.Thus, there can be at most six intervals of  for which p00 liesin the neighborhood of  q 00. The parameter space ½0; 2Þ is,therefore, partitioned into Oðn2Þ intervals, each intervalcorresponding to a unique point pair in P  so that, for all inone interval, the points of  P  are mapped into theneighborhoods of points in Q. All of these relationshipsare represented as edges in a bipartite graph whose twosides of nodes are P  and Q. The decision problem has apositive solution if there is some for which the

corresponding graph has a perfect matching. This ischecked by finding the graph for the first subinterval of ½0; 2Þ and constructing a maximum matching for it. Next,while traversing the subintervals from left to right, themaximum matching is updated until a perfect matching isfound or it turns out that none exists.

Apart from the fact that the total runtime of the abovealgorithm is Oðn8Þ, determining the intersection points of the curve of degree 6 with circles poses nontrivial numericalproblems. For easier variations of the one-to-one matchingproblem, simpler and faster algorithms were found, forexample, for the case of translation only, geometric

arguments have been used in [22], whereas in [6],algorithms have been proposed assuming that the-neighborhoods of the points are disjoint. There are alsoseveral other algorithms based on the alignment scheme,

772 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 31, NO. 5, MAY 2009

1. is used to represent the radius of a digital circle/disc in this section,whereas is replaced by in the subsequent sections since the latter isconventionally used to indicate the measure of approximation in an APSPMand we use this to define the radius of a digital disc involved in theapproximation procedure.

Page 5: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 5/14

such as Basic Alignment [26], Multiple Grid [36], acomparative study of which appeared in [2].

3.1.4 Hausdorff Metric 

A widely used metric for approximate matching of thepoint set P  with the point set Q is the Hausdorff distance [34], [35], [44]. If  jP j ¼ m, jQj ¼ n, and m n,then the Hausdorff distance from P  to Q is given by

hðP ; QÞ ¼ maxfminfd ð p; q Þ : q 2 Qg : p 2 P g, where d ð p; q Þ isthe euclidean distance between p and q . Thus, hðP ; QÞdenotes the smallest amount by which we need to “grow”the points of  Q in order that all points of  P  are covered bythe grown set. Hence, given the space of transformations À,P  is said to match with Q within a tolerance parameter ,provided that hðÀÞðP ; QÞ ¼ minfhðT ðP Þ; QÞ : T  2 Àg .

For approximate matching under arbitrary rigid motion,the concept of “dynamic” Voronoi diagram is used [34],which is the subdivision of the three-dimensional space-time whose cross section at a time t equals the Voronoidiagram at t. The upper bound on the complexity of the

dynamic Voronoi diagram, hence obtained from thenumber of topological changes undergone by the Voronoidiagram with passage of time, is subsequently used to showthat the time complexity of an optimal match between twopoint sets using Hausdorff distance is Oððm þ nÞ6 logðmnÞÞ.

3.1.5   -Approximate Pattern Matching 

In this framework [29], for a given tolerance > 0 tos ol ve t he a pp ro xi ma te c on gr ue nc e, d ef in ed a smax hðÀÞðP ; QÞ; hðÀÞðQ; P Þ

À Á, between the point sets P  and

Q, the process of approximation is further relaxed byallowing to “give up,” if  is found to be “too close” toà ¼ hðÀÞðP ; QÞ

at any point of time, which, however, mayincur a large computing time in case of no approximation.Further, an extra parameter, namely, > 0, that corre-sponds to the accuracy of approximation is required totake the matching decision of  P  with Q as follows: 1) If Ã , then return a transformation T  2 À such thathðT ðP Þ; QÞ ð1 þ  Þ, 2) if   < à ð1 þ  Þ, then returnthe required transformation T , and 3) if  à > ð1 þ  Þ, thenreturn NONE. The rationale is based on the fact that,determining an answer close to the optimal is harder thandetermining an answer that is further away. Hence, if Ã liesin the given approximation range ½; ð1 þ  Þ, then thisapproach gives an answer close to the prescribed error

 bound.There exist several other techniques for solving APSPM

and related problems. For example, in [46], the digitalVoronoi diagram of the set is constructed using theeuclidean distances between the pairwise points/pixels of an image. From this diagram, a certain planar graph isconstructed, which is a subgraph of the Delaunay triangu-lation of the point set. Finally, the shape of the point set iscomputed as a subgraph of the planar graph.

4 PROPOSED METHOD

We have proposed here a novel algorithm on the APSPM in2D digital space that extends the conventional orthogonalrange query (for example, kd-tree [10], [11], [12]) to adigitally circular range query, which in turn can be replaced

 by a (regular and convex) polygonal range query, where thepolygon (in IR2) may be judiciously selected depending onthe value of the digital tolerance :¼ since a digital disc of radius can be replaced by a suitable regular polygon, asexplained in Section 2.

The proposed algorithm uses a novel data structurecalled angular tree, denoted as T  ðQÞ, defined on a point setQ :¼ fq 1; q 2; . . . ; q ng & ZZ2, that augments the structure of a

kd-tree [10] as follows: A kd-tree refers to a k-dimensionaltree. If a set of points is defined in a 2D space (real ordigital), then a kd-tree is a balanced tree, meant foranswering 2D orthogonal range query. Now, given the setof points Q, the kd-tree defined on Q permits us to searchfor points contained within a specified orthogonal box.Since we need circular range query in Q, where the numberof vertices of the regular polygon that replaces a (digital)disc of radius depends on and the desired degree of precision associated with the query, we require angulartree T  ðQÞ to suit our purpose. The speciality of  T  ðQÞ isthat it accepts all possible values of  kð! 2Þ for a 2k-gonal

range query in Q. For instance, if  k ¼ 3, then we can searchfor points in Q within a (regular) hexagonal region. It may be mentioned here that indicates the internal angle of therespective query polygon in the corresponding tree T  ðQÞ,that is, ¼ ðk À 1Þ=kð Þ180 degrees. Hence, specifying thevalue of  k as well describes (dimensionality of) T  ;therefore, we have used k synonymously with in thesubsequent discussions.

4.1 Construction of an Angular Tree

To illustrate the construction of an angular tree andassociated operations, we start with k ¼ 2 and then go forthe generalization. For k ¼ 2, we split the set Q of  n points by a horizontal (median) line at the root ðdepth ¼ 0Þ of thetree into two subsets, namely, Q1 and Q2, whose sizes differ by at most unity. The splitting line being stored at the rootand Q1 and Q2 being stored in the respective left and rightsubtrees of the root, Q1 and Q2 are subsequently partitionedrecursively by appropriate vertical and horizontal (median)lines alternately to obtain the desired T   for k ¼ 2. Thus, fork ¼ 2, we split a region by a horizontal line (that is, a 0 line)at a node, if its depth is even, and by a vertical line (that is, a90 line) at a node, if its depth is odd. An instance of  T   fork ¼ 2 is shown in Fig. 4, which indicates that, for k ¼ 2, T   isstructurally same as the corresponding 2D kd-tree.

In general, if the splitting line be inclined at an angle with the horizontal line, then, at depth d , we have ¼ ðd mod kÞ Â ð180=kÞ. For example, for k ¼ 3, we splitQ by a 0 line at depth d ¼ 0 (root), by a 60 line at d ¼ 1, bya 120 line at d ¼ 2, by a 0 line at d ¼ 3, by a 60 line atd ¼ 4, and so forth. The angular tree for k ¼ 3 correspond-ing to a small instance of Q is shown in Fig. 5. The algorithmBUILD-ANGULAR-TREE for construction of  T  ðQÞ for anygiven value of  k ! 2 is shown in Fig. 6.

In order to accelerate the repetitive procedure of median extraction in Step 5 of BUILD-ANGULAR-TREE,we have presorted the points of  Q in k ordered lists,

na mel y , LðQÞ fo r ¼ 0; ’; 2’; . . . ; ðk À 1Þ’, w he re’ ¼ 180=k. Each LðQÞ stores the points in nondecreasingorder of their projections (transformed coordinates) alongthe line (transformed axis) at an angle of  90 þ

BHOWMICK ET AL.: APPROXIMATE MATCHING OF DIGITAL POINT SETS USING A NOVEL ANGULAR TREE 773

Page 6: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 6/14

measured with respect to þx-axis in the anticlockwisedirection. Hence, the time complexity for the preproces-sing (that is, presorting) phase is T 1 ¼ Oðkn log nÞ.

Each recursive call for building the left and the right

subtrees (Step 7 and Step 8) has an input of at most dn=2epoints and all other operations (including the medianfinding on a presorted list) require constant time. Hence,after preprocessing, the time to construct T   is

T 2ðnÞ ¼Oð1Þ if  n ¼ 1;Oð1Þ þ 2T 2ðdn=2eÞ if  n > 1;

&

which solves to OðnÞ. Thus, the total time complexity for building T  ðQÞ is T ðnÞ ¼ T 1ðnÞ þ T 2ðnÞ ¼ Oðkn log nÞ. How-ever, without presorting, each recursive call in Step 5 requiresOðnÞ time [19], whereby T 2ðnÞ ¼ OðnÞ þ 2T ðdn=2eÞ if n > 1 orT 2ðnÞ ¼ Oðn log nÞ, which yields T ðnÞ ¼ Oðn log nÞ.

Space complexity. At each step of the algorithm, a region isrecursively split into two subregions whose points differ innumber by at most unity. The height of  T  ðQÞ is, therefore, bounded by Oðlog nÞ, where the total number of (internaland terminal) nodes is OðnÞ. For a fixed value of  k, the building of  T  ðQÞ needs Oðn log nÞ time, which is indepen-dent of  k (and of preprocessing, thereof)2 and, hence, wehave the following fact:

Fact 1. An angular tree T  ðQÞ for a point set Q of n points needsOðnÞ space and the tree can be constructed in Oðn log nÞ timewith no preprocessing or, alternatively, in Oðkn log nÞ timewith preprocessing for presorting the points with respect to

their transformed coordinates.

4.2 Searching in an Angular Tree

For k ¼ 2, searching of points would be done in T   inside arectangular boundary. Similarly, for k ¼ 3 or 4, a searchinghas to be performed in a hexagonal region or an octagonalregion, respectively. An example of an octagonal query ðk ¼4Þ in T   is shown in Fig. 7, in which the query polygon R issufficiently small so that at most one point of  Q lies in R.The search starts from the root of  T  ðQÞ, follows the rightpath for d ¼ 0 and d ¼ 1, and bifurcates at d ¼ 2 as the

corresponding node ðl3Þ intersects R indicating that R has

intersections with both the regions divided by l3. At each

subsequent node, depending on whether or not the

corresponding line of division intersects R, the decision is

taken for traversing the left path and/or the right path fromthe concerned node. In the leaf level, q 1 corresponds to the

leftmost node and q 5 corresponds to the rightmost node at

which the respective searches along the leftmost path and

along the rightmost path terminate.The query algorithm (Fig. 8) takes the root of  T   and a

query range R as input. The query R is specified by 1) the

center p 2 ZZ2 of the corresponding (regular) polygon, 2) the

perpendicular distance d of an edge of the polygon from its

774 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 31, NO. 5, MAY 2009

2. In our implementation, we have incorporated the preprocessing phase.

Without preprocessing, the construction of  T  ðQÞ needs a linear-timemedian finding algorithm, which, due to its high hidden cost (not reflectedin its asymptotic linear time complexity) caused by its inherent proceduralcomplexities, is computationally effective only when n is sufficiently large(for example, when n ! 2; 048, as found in our experiments).

Fig. 4. A point set Q and its corresponding angular tree T   for ¼ 90 (that is, k ¼ 2), which resembles a 2D tree.

Fig. 5. The angular tree T  ðQÞ for k ¼ 3 corresponding to Q containing12 points on 2D grid. If a point q  lies exactly on the median line, then q belongs to one of the two subsets of the partition, which is shown byturning the median line around q toward the region in which it is included,

for the sake of clarity. The dashed lines indicate the limiting lines ofregionðrootÞ associated with the root node of T  ðQÞ and the points fvt :1 t 2k ¼ 6g denote its vertices obtained from the intersections ofthese limiting lines (Section 4.2).

Page 7: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 7/14

center p, and 3) the number of edges ð2kÞ of the polygon.From this specification, the ordered set of  2k vertices,namely, V R :¼ hvt :¼ ðxt; ytÞ 2 IR2i2k

t¼1, is obtained for a low-level description of  R, where v1 in V R corresponds to theleft-bottom vertex of  R. Using a recursive procedure, thequery process reaches each node (that is, region) intersected by/contained in R. If the region regionð Þ corresponding toa node   lies entirely inside R (that is, regionð Þ R), thenall of the points (leaf nodes) stored in the subtree T  

ð Þ

rooted at   are reported in Oðn Þ time, where n  is thenumber of points in T  

ð Þ . If  regionð Þ \ R 6¼ ;, then the

search proceeds along the appropriate subtree of    and if regionð Þ \ R ¼ ;, then the search does not proceed down below   (but possibly proceeds from some other node  0

of  T  ).

The main test in the query algorithm is for the type of 

intersection between R and regionð Þ. We compute

regionð Þ for each node   while constructing T  ðQÞ, using

the splitting line at   and the region of its predecessor

node. The region corresponding to the root node of  T  ðQÞ

is given by (the ordered set of) k pairs of minimum and

maximum coordinates along the (transformed) axes. Thus,

if  xðeÞmin and x

ðeÞmax denote the respective minimum and

maximum xðeÞ-coordinates ð1 e kÞ for the point set Q

(Fig. 5), then the region associated with the root of  T  ðQÞ

is regionðrootÞ ¼ f½xðeÞmin; x

ðeÞmaxgk

e¼1.

From the above set, we can define the (ordered set of)

vertices of  regionðrootÞ as V root ¼ vt :¼ ðxt; ytÞf g2

kt¼1, wherethe point of intersection between the lines3 x

ðtÞmin and x

ðtþ1Þmin is

vtð1 t k À 1Þ; between xðkÞmin and x

ð1Þmax is vk, between x

ðtÞmax

and xðtþ1Þmax is vtðk þ 1 t 2k À 1Þ, and between x

ð2kÞmax and

xð1Þmin is v2k (see Fig. 5).

The description of  regionðlrÞ (and of  regionðrrÞ) in terms

of its vertices can be obtained from the vertices of 

regionðrootÞ as follows: Since each vertex ðvtÞ in V root is

the point of intersection between the limiting lines (say, xðtÞmin

and xðtþ1Þmin , without loss of generality), the xðtÞ and

xðtþ1Þ-coordinates of  vt become xðtÞmin and x

ðtþ1Þmin , respectively,

which are used to obtain its ðx; yÞ coordinates for comput-ing the other k À 2 coordinates of  vt. For instance, in Fig. 5,

the first two ðxð1Þ; xð2ÞÞ coordinates of  v1 are xð1Þmin and x

ð2Þmin

and its third ðxð3ÞÞ coordinate is obtained from these two;

similarly, for v2, we have xð2Þ ¼ xð2Þmin and xð3Þ ¼ x

ð2Þmin, etc. The

other k À 2 coordinates of  vt are needed to find the

subregions of  regionðrootÞ as discussed next.When the first median line x

ð1Þmed is used to split

regionðrootÞ, we search in V root for two pairs of consecutive

vertices, namely, ðvt; vtþ1Þ and ðvt0 ; vt0þ1Þ, such that xð1Þ

med lies between xð1Þ-coordinates of  ðvt; vtþ1Þ and those of  ðvt0 ; vt0þ1Þ.(In Fig. 5, the first median line is l1 and the correspondingpairs of consecutive vertices are ðv2; v3Þ and ðv4; v5Þ.)Subsequently, the fact that the median line x

ð1Þmed intersects

the two edges (of  regionðrootÞ) defined by ðvt; vtþ1Þ andðvt0 ; vt0þ1Þ at two points, v0 and v00, is used to construct therespective vertex sets for the left and the right subregions of regionðrootÞ a s V lr

¼ fv1; . . . ; vt; v0; v00; vt0þ1; . . . ; v2kg a n dV rr

¼ fv0; vtþ1; . . . ; vt0 ; v00g. Continuing this process, we ob-tain the vertex set V   for each node   of  T  ðQÞ from thevertex set V ð Þ of its parent node ð Þ by considering the

points of intersection of the median line at 

with the twoconcerned edges of  V ð Þ.The low-level description of the query polygon R, as

described above, enables checking the type of intersection between regionð Þ, which is performed as follows:

. If all vertices in V   lie inside R, then regionð Þ R,

. If no vertex in V   lies inside R and no vertex in R liesinside V  , then regionð Þ \ R ¼ ;.

. Failures of the above two cases imply that regionð Þhas partial intersection with R.

To ascertain whether a vertex u :¼ ðxu; yuÞ 2 V   liesinside R (and whether a vertex of  R lies inside regionð Þ),

we check whether u lies to the left of each edge et, directedfrom vt :¼ ðxt; ytÞ 2 V R to vtþ1 :¼ ðxtþ1; ytþ1Þ 2 V R. This isdone by simply computing the sign of the determinant,

Dðet; uÞ :¼1 xt yt

1 xtþ1 ytþ1

1 xu yu

;

since u lies to the left of  et if and only if  Dðet; uÞ > 0.For a circular range query, R is specified by the center q 

and the radius of the query (digital) disc. Therefore,whether a vertex (or a grid point) p lies in R (in the abovethree cases and in Step 2 in Fig. 8) can be decided in

Oð1Þ time by checking whether round d ð p; q Þð Þ . Such acheck is faster and easier with respect to the procedureusing D, which needs OðkÞ time if  R has OðkÞ edges.However, we have to look at D when R is a general convexpolygon and not induced by a digital disc. Henceforth, inthis paper, we consider R as a regular polygon with2k vertices.

To estimate the time complexity of searching against aquery polygon R with 2k vertices and arbitrary size (that is,an arbitrarily large value of the perpendicular distance d of an edge of  R from its center p) in T  ðQÞ, let n0ð nÞ be thenumber of reported points. Then, the total time for

reporting these n0

points after (complete) traversal of theassociated subtrees (Step 4 and Step 8) of  T  ðQÞ isT 1ðnÞ ¼ Oðn0Þ. Apart from the traversal of these subtrees,the searching procedure recursively visits some nodes that

BHOWMICK ET AL.: APPROXIMATE MATCHING OF DIGITAL POINT SETS USING A NOVEL ANGULAR TREE 775

Fig. 6. Algorithm for constructing the angular tree T  ðQÞ corresponding

to the 2D point set Q.

3. Here, we denote the line xðtÞ ¼ xðtÞmin by x

ðtÞmin for simplicity.

Page 8: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 8/14

are not in these subtrees (Step 6 and Step 10). Since R has anonempty intersection with regionð Þ corresponding toeach such node   (by the conditions of  if statements inStep 5 and Step 9), the maximum path length (in T  ðQÞ) for

the searching recurrence is given by the maximum numberof regions intersected by an edge of  R or, equivalently, by aline having any one of the k possible slopes correspondingto k numbers of transformed axes. Without loss of general-ity, let us consider a horizontal line l for this purpose. Sucha horizontal line intersects the regions whose nodesrepresent horizontal splitting lines in T  ðQÞ. Clearly, thefirst horizontal splitting line is the root node ðdepth ¼ 0Þ,the second one is at depth ¼ k, the third one at depth ¼ 2k,and so on. For instance, for k ¼ 4, in Fig. 7, the noderepresenting l1 is the first horizontal splitting line, the nodesrepresenting l6 and l7 are the next ones, etc.

Now, at depth kð! 0Þ, T  ðQÞ contains 2k nodes,eac h r ep resent ing a r eg io n c ontai ni ng a t mostd. . . 1

2 d12 dn

2ee . . .upto ke ¼ dn=2ke points. If the horizontalline l lies below the first horizontal splitting line,namely, l1, then, in the worst case, l may intersect allthe regions below l1. Similar arguments hold if  l liesabove l1. Hence, half of the nodes at depth k, that is,2kÀ1 nodes, correspond to the maximum number of regions intersected by the horizontal line l. Thus, wehave to count the number of intersected regions in thesubtrees rooted at these 2kÀ1 nodes recursively (Step 6and Step 10). Also, the regions from (and including)

level ¼ 0 to (and including) level ¼ k À 1 that areintersected by l are those corresponding to the root, oneof the two children of the root, two of the fourgrandchildren of the root, and so on, which counts to

1 þ1

2 ð21

þ 22

þ . . . þ 2kÀ1

Þ ¼ 1 þ 2kÀ1

À 1 ¼ 2kÀ1

.Hence, the recursive equation for the number of regions

intersected by any line (the time complexity for recursivetraversal of  T  ðQÞ, there of) is given by

T 2ðnÞ ¼OðnÞ if  n < k;2kÀ1 þ 2kÀ1T 2 n=2k

À Áif  n ! k;

&

which solves to T 2ðnÞ ¼ Oðnlog2k 2kÀ1

Þ ¼ OðnðkÀ1Þ=kÞ. For anarbitrarily large value of  k, therefore, T 2ðnÞ ¼ OðnÞ. Hence,the total searching time in T  ðQÞ is T ðnÞ ¼ T 1ðnÞ þ T 2ðnÞ ¼OðnðkÀ1Þ=k þ n0Þ or T ðnÞ ¼ OðnðkÀ1Þ=kÞ if  n0 OðnðkÀ1Þ=kÞ;therefore, for a polygonal query region with an arbitrarily

large size and with an arbitrarily large number of vertices,w e g et T ðnÞ ¼ T 1ðnÞ þ T 2ðnÞ ¼ Oðn þ n0Þ ¼ OðnÞ. T hesefindings are put together in the following fact:

Fact 2. The worst-case polygonal range query with an arbitraryregular polygon having 2k vertices in an angular tree T  ðQÞ,storing a set Q of  n points, needs OðnÞ time.

Searching with a small query polygon R that alwayscontains at most one point of  Q (as found in practice [14]),however, would proceed along a single path starting fromthe root and ending at the leaf node that lies inside R foreach edge of  R, being suitably small in length, would

intersect just one or two regions at each level of  T  ðQÞ,thereby curtailing the recursions (Step 6 and Step 10), forexample, Fig. 7. There will be at most 2k regions havingnonempty intersections with R when it is sufficiently smallsized. For such an R, therefore, the above search timecomplexity has a poor bearing apropos the actual runtime.Here, the bound for T 2ðnÞ is 2k  Oðlog nÞ ¼ Oðk log nÞ,which reduces to Oðlog nÞ for a prescribed value of  k; andT 1ðnÞ is Oð1Þ ðn0 1Þ. Hence, the search time drops down toT ðnÞ ¼ Oðlog nÞ, giving the following fact:

Fact 3. A polygonal range query in an angular tree T  ðQÞ,representing a point set Q of  n points, needs Oðlog nÞ time

with the hypothesis that the size of the query polygon is smallenough so as to contain at most one point or a constantnumber of points of  Q.

776 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 31, NO. 5, MAY 2009

Fig. 7. An instance of range query with the query octagon R ðk ¼ 4Þ in an angular tree T   corresponding to a point set Q.

Fig. 8. Algorithm for searching in the angular tree T  ðQÞ.

Page 9: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 9/14

It may be noted that, in the APSPM algorithm (Sec-tion 4.3) and subsequent discussions, the circular rangequery is considered to be appropriately small in size so thatthe number of points reported against the query is a smallconstant, which ensures Oðlog nÞ time for each query in theangular tree.

4.3 APSPM Algorithm Using Circular Range QueryFor approximate matching of the pattern set P  containingm points with the background set Q containing n points, weconstruct the angular tree T  ðQÞ corresponding to Q, whichis used for the circular/polygonal range query for eachpoint of  P . To negotiate the correspondence among thepoints of  P  and Q, we adopt an alignment policy thatspeeds up the matching process. We pick the point pair in P having the largest (euclidean) distance (in P ) to be anchorednear and aligned along a point pair in Q having its distancematching within a tolerance of . Such an act of choosing thelargest distance, failure of which is followed by repetition(s)with the next largest distance(s), has an experimental bearing on the frequency of distances in a (discrete/real)point set (test results in Section 5) and also has a theoretical basis that is given as follows:

Let S  be a finite subset of the euclidean metric space IR2.Let a and b be any two distinct points in S . Let L be the realline segment joining a and b and having length L. Let a0 andb0  be two distinct points lying on the line segment L. Hence,if a0 and b0 do not simultaneously coincide with the points aand b, then the length L0 of the line segment L0  joining a0

and b0 follows the relation:

0 < L 0 < L: ð1Þ

There may exist infinitely many such point pairs ða0; b0Þ onL, each of which has the distance L0. Thus, given two real-valued distances, L and L0, satisfying (1), we get infinitelymany point pairs having distance L0 and contained by a linesegment of length L that lies in S . Further, since there mayexist multiple (infinitely many, possibly) instances of linesegments having length L in S , we might get multipleassemblages of infinitely many smaller line segments of length L0 contained by the former line segments of length L.

Apart from the distance L (that is, line segments of 

length L) in S , there may exist only two types of distances inS , which may be classified into two disjoint sets given by

D ¼ fL : L < Lg and D ¼ fL : L > Lg

so that D [ fLg [ D contains all distances in S . No distance Lin D will contain the distance L in S  because a line segmentof length L cannot be made to lie on a line segment of smaller length L. However, a distance in D may contain thedistance L0 in S  if the former is greater than the latter. Thus,the set D may contribute L0  but never contributes L.

Regarding the set D, each distance L in D alwayscontains (infinitely many instances of) the distance L, eachof which in turn contains (infinitely many instances of) thedistance L0. Therefore, the frequency of L0 contributed by Dis always greater than that of  L contributed by D. Inparticular, the higher the ratio L : L0, the greater will be thefrequency of  L0 in D compared to that of  L in D.

As a result, the (continuous) probability density of  L0

always exceeds that of  Lð> L 0Þ. The above arguments willalso hold true for the 2D digital space, although themonotonically increasing nature of frequency with decreas-ing distances in IR2 would not satisfy in ZZ2 due to theanisotropic nature of ZZ2. Hence, we state the following fact,

whose bearing with the reality is evidenced by the plots inFig. 14 (Section 5).

Fact 4. Small distances are more frequent and large distances areless frequent in a point set, whether real or discrete.

The proposed algorithm is given in Fig. 9. In thisalgorithm, we consider T ðP Þ to be a valid match with Q(Step 8), provided that the number of points in correspon-dence between T ðP Þ and Q exceeds a certain factor, namely,%, of the maximum number of points (that is, minðm; nÞ),possible to produce an ideal match between them.Evidently, a match found with a low value of  % for two

given sets, P  and Q, signifies a slackened approximation,whereas that with a high value signifies a tight approxima-tion. All of the results shown in Section 5 are with % ¼ 1.

The time complexity of the proposed algorithm isinfluenced by the number of failures for the misalignmentsarising out of the mismatching transformations in Step 6. Foreach such transformation T , all points in P  are subject topolygonal range queries in T  ðQÞ, which incurs Oðlog nÞ timeper query, producing Oðm log nÞ time for m queriescorresponding to P . Each possible alignment of a pointpair h p0; p00i of  P  with a matching pair hq 0; q 00i of  Q involvesOð2Þ possible positions of  p0 in the ð-Þneighborhood of  q 0

(that is, inside the digital disc with radius and center q 0

)and each such position of p0 in turn allows OðÞ positions of  p00 in the neighborhood of  q 00 (which are the grid points of the digital circle, having radius round ðd ð p0; p00ÞÞ and

BHOWMICK ET AL.: APPROXIMATE MATCHING OF DIGITAL POINT SETS USING A NOVEL ANGULAR TREE 777

Fig. 9. Algorithm on APSPM using angular tree.

Page 10: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 10/14

center p0, lying inside the neighborhood of  q 00), thereby

 bringing in Oð3Þ possible orientations of  p0 p00 for (approx-

imate) alignment with q 0q 00. Thus, the total complexity for all

possible alignments for a given (approximately matching)

pair of point pairs is Oð3Þ Â Oðm log nÞ ¼ Oðm3 log nÞ.Since there are Oðn2Þ point pairs in P  and each of 

these point pairs may have to be approximately aligned

with any of the Oðm2Þ possible point pairs of  Q, theworst case time complexity for finding out an approx-

imate match (successful or unsuccessful) between the

point sets P  and Q in the 2D digital space is given by

T ðm;n;;kÞ ¼ Oðm2n2Þ Â Oðm3 log nÞ ¼ Oð3m3n2 log nÞ,

which reduces to Oðm3n2 log nÞ for a prescribed value of  .

Hence, we observe the following fact on the time complex-

ity for approximately matching a 2D point set P  with

another set Q.

Fact 5. For an -approximate matching of  P  containing

m points with Q containing n points in ZZ2 using the angular

tree T  ðQÞ, the worst-case time complexity is given byOðm3n2 log nÞ for a given value of the approximation

 parameter .

From the above results and discussion, it is clear that the

angular tree and the APSPM algorithm proposed here have

reasonable complexities and are readily realizable for

relevant applications involving point sets in the digital

plane. We have implemented and tested the APSPM

algorithm using the angular tree, which has produced

encouraging results, as shown in Section 5. A comparative

study of some existing point set pattern matching algo-rithms with the proposed algorithm using angular tree is

given in Table 1, which indicates its readiness and usability

in the digital plane.

5 TEST RESULTS

5.1 Polygonal Approximation of Digital Discs

Exhaustive procedural checking has revealed that each of the digital discs with radii from 1 to 10 has a grid point that has simultaneously maximum isothetic distance andmaximum radial distance from Cð; Þ, which implies thateach of them has a regular polygonal enclosure. To cite a

few more, for ¼ 12-16; 20-25; 32; 33; 40, etc., the corre-sponding digital discs possess regular polygonal enclosures(Fig. 10). It is apparent in Fig. 10 that the chance of theexistence of a grid point decreases as the radius of the disccontinues to increase. In other words, the existence of aregular polygonal enclosure for a digital disc having radius becomes more and more uncertain as becomes large.

Shown in Fig. 10 are two plots—one theoretical and theother experimental—on the number of vertices of theregular polygonal enclosures against the radii of digitaldiscs. The thin-lined vertical bars denote the theoreticalvalues of the number of vertices, namely, , plotted against

the radii of digital discs, for the regular polygonalenclosures for the corresponding digital discs. The thickvertical lines represent the corresponding minimum evennumber of vertices, namely, Ã, found experimentally, whichthe regular polygonal enclosures should possess such thateach grid point of the digital disc Dð; Þ lies on or insidethe polygon and no grid point lying outside Dð; Þ lies onor inside the polygon. It may be observed in this figure that,for a digital disc having > 2 and whose regular polygonalenclosure exists, Ã is appreciably less than the correspond-ing value of  , whose explanation is given as follows:

Let be the (euclidean) distance of each of the Ãð< Þ

vertices of the regular polygonal enclosure from the center of the corresponding disc Dð; Þ (Fig. 11). Then, each of these à vertices lies on Cð; Þ. Let vt and vtþ1 be two suchadjacent vertices. If  Cð; Þ represent the real circle

778 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 31, NO. 5, MAY 2009

TABLE 1Comparison of Existing Methods with the Proposed Method

Fig. 10. Plotted against radius are (thin bar) and à (thick line)—the former being the theoretical number of vertices and the latter being an

experimental number of vertices of the regular polygonal enclosures of digital discs. See text for explanation.

Page 11: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 11/14

centered at and passing through , where denotes thedistance of  from , then it may happen that each gridpoint  0, lying outside Cð; Þ and inside Cð; Þ, alwayslies outside the enclosing polygon. For instance, in Fig. 11,the grid point  0 lies outside the edge vtvtþ1 and inside thecircle Cð; Þ.

For digital discs whose (ideal) regular polygonal en-closures are not possible, which are found to be the majorityin the output of our program (a part of which shown inFig. 10), approximate polygonal enclosures with low errorrates are possible. Further, for large digital discs, we may beinterested in their regular polygonal enclosures with a smallnumber of vertices. In such a situation, the relative errorassociated with the approximation of a digital disc by itsregular polygonal enclosure is important, which may beobtained as follows:

Let P  Cð; Þ; 2kð Þ represent the set of grid points lying onand inside the approximate polygon with 2k vertices, such

that Dð; Þ & P  Cð; Þ; 2kð Þ, then the number of erroneousgrid points is given by P  Cð; Þ; 2kð Þ n Dð; Þj j; therefore,the relative error of approximation is given by

error ¼P  Cð; Þ; 2kð Þ n Dð; Þj j

Dð; Þj j 100%;

which falls off drastically as the number of vertices of theapproximate polygons increases, as is evident in Fig. 12. InFig. 13, a few approximate polygons have been shown for ¼ 8 to demonstrate the rapid convergence of the polygontoward the ideal situation as the number of vertices

increases. Here, we have considered an even ð2kÞ numberof vertices of the enclosing polygon simply for doubling theaxes of symmetry and for ease of implementation of theAPSPM algorithm.

5.2 Performance of Circular Range QueryGiven a point set in IR2 containing n points and a(euclidean) distance d , it has been shown [49] that thenumber of distinct point pairs having distance d  may be ashigh as dn4=3e. Our experimental results, however, revealthat the maximum observed frequency of a particular(range of) distance in ZZ2 is far short of the theoretical value.

We have generated 1,000 synthetic point sets, each setðQÞ containing 10 to 500 randomly located points in ZZ2 andhave studied the change in frequency versus distance inthese sets, considering the following three parameters:

. nð10 n 500Þ ¼ number of points in Q.

. d minð5 d min 25Þ ¼ minimum distance betweentwo distinct points in Q.

. Að50 Â 50 A 500 Â 500Þ ¼ m i n i m u m - a r e aorthogonal region containing all points in Q.

For a few sample point sets, the trend of variation of the(average) frequency and the corresponding standard devia-tion versus the (average) distance have been shown inFigs. 14a, 14b, and 14c. From these plots, it is evident that,for a given point set, the number of occurrences of aparticular distance in the point set decreases as the distanceincreases and vice versa. This corroborates the theoretical

interpretation of the frequency pattern of point-pair dis-tances given in Section 4.3. In the matching algorithm,therefore, we select the farthest point pair (since itsfrequency is likely to be very small) from the pattern set

BHOWMICK ET AL.: APPROXIMATE MATCHING OF DIGITAL POINT SETS USING A NOVEL ANGULAR TREE 779

Fig. 11. Enclosing polygon with à vertices for the digital disc Dð; Þ.

The gray region denotes the region where each grid point  0, lying

outside Cð; Þ and inside Cð; Þ, always lies outside the polygon.

Fig. 12. Error (percent) of approximation plotted against the radii ofdigital discs and half the number of vertices of their regular 2k-gonalenclosures. It is evident from the plot that, for a given radius , highervalues of k drastically reduce the error.

Fig. 13. Comparison of approximate regular polygons for a digital circlewith radius ¼ 8. For other values of k, the corresponding errors (that is,the number of grid points ð Þ lying outside the real circle and inside theapproximating polygon) are  ðk ¼ 4; 5Þ ¼ 8,  ðk ¼ 6Þ ¼ 4,  ðk ! 7Þ ¼ 0.(a) k ¼ 2:  ¼ 68. (b) k ¼ 3:  ¼ 18. (c) k ¼ 4:  ¼ 8. (d) k ¼ 7:  ¼ 0.

Page 12: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 12/14

as the first matching distance for applying the alignmentscheme (Step 5 of the algorithm in Section 4).

5.3 Execution Time

Given a prescribed value of  for -approximation match, theruntime of the proposed APSPM algorithm depends upontwo parameters:

. m ¼ the number of points in the pattern set P .

. n ¼ the number of points in the background set Q.

Varying these two parameters, we have obtained two sets of plots (Figs. 15a and 15b)—one for m and the other for n—illustrating the variation of CPU time versus the anchoringdistance. We have also considered the dimension k of theangular tree T  ðQÞ defined on Q andthatitseffectontheCPUtimeis muchlessevidentfrom the plots shown inFig.15c. The

algorithm has been implemented in C on SunOS Release 5.7Generic of Sun_Ultra 5_10, Sparc, 233 MHz.

From the above plots, it may be concluded that theruntime of the proposed APSPM algorithm increases with

the decrease in the distance of the point pair (in the patternset, P ) selected for anchoring. Hence, we select the pairhaving the maximum distance in P ; in case it does not yielda successful match, we choose the pair(s) with the next

maximum distance, and so on. Such a policy of selecting thefarthest point pair in P  for anchoring with some suitablepoint pair in the background set, Q, reduces the timerequirement to a great extent in real-time matchingapplications, which is reflected in the plots in Fig. 15.

6 CONCLUSION

We have shown how a digital disc can be substituted by anappropriate regular polygon so that a (digitally) circularrange query in ZZ2 can be efficiently replaced by a polygonalrange query. Such a query for each point in the pattern set P 

can be performed efficiently on the background set Q byusing an appropriate data structure, namely, the angulartree T  ðQÞ, defined on Q. The major contributions of thispaper may be summarized as follows.

780 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 31, NO. 5, MAY 2009

Fig. 14. Frequency distribution of distances (shown in uniform intervalsof size 10) for different values of n, d min, and A. The histogram profilesshow the average frequencies and the points indicate the respectivestandard deviations. (a) Frequency versus distance of point pairs for nvarying in three intervals ðA ¼ 200 Â 200; d min ¼ 5Þ. (b) Frequencyversus distance of point pairs for three different values of d min

ðA ¼ 200 Â 200; n ¼ 200Þ. (c) Frequency versus distance of point pairsfor three different sizes of A ðn ¼ 200; d min ¼ 10Þ.

Fig. 15. CPU time versus anchoring distance (shown in uniform intervalsof size 10) in case of successful matching the point set P  containingm points with the point set Q containing n points for different values ofm, n, k ðA ¼ 200 Â 200; ¼ 6Þ. (a) CPU time versus the anchoringdistance for different values of m ðn ¼ 200; k ¼ 4Þ. (b) CPU time versusthe anchoring distance for different values of n ðm ¼ 200; k ¼ 4Þ.(c) CPU time versus the anchoring distance for different values of kðm ¼ 80-320; n ¼ 80-320Þ.

Page 13: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 13/14

Most of the existing approaches rely on orthogonal rangequery. In our method, a (regular) polygonal approximationof a circular query in the digital plane is computed. Such anapproximation ensures improved matching of a point in thedigital pattern set with the circular neighborhood of asimilar point in the digital background set. Further, for asmall disc, its polygonal approximation is almost error-free,whereas, for a large disc, the approximation incurs a very

small error. The associated error can also be estimatedeasily from the level of approximation.

Regarding polygonal partitioning of points, we haveproposed an efficient search tree in which the 2D points arestored in accordance to their distribution in the digitalplane. The circular neighborhood of a point is defined bythe grid points of the corresponding digital disc with theconcerned point as center, which are finite (and small for asmall disc) in number. Hence, the approximate matching of points in the digital plane can be nicely implemented byusing an angular tree that effectively limits the difficultcircular query to an easier polygonal query. Keeping in

mind the trade-off with space and time complexities, theangular precision (and the error thereof) can be controlled by varying the specification of the query polygon, depend-ing on the application.

The proposed approach may be further studied forfinding the general solution of the APSPM problems inhigher dimensions. The possibilities lie in deriving theregular (convex) polytope that would replace the regular2D polygonal range query and in constructing the (general-ized) angular tree based on median hyperplanes instead of 2D median lines. The allied procedures and associated datastructures, of course, would invoke higher complexities,

 both in terms of developing theory and subsequentimplementation.

REFERENCES

[1] P.K. Agarwal and J. Erickson, “Geometric Range Searching and ItsRelatives,” Advances in Discrete and Computational Geometry,B. Chazelle, J. Goodman, and R. Pollack, eds., pp. 1-56, Am.Math. Soc., 1998.

[2] H. Alt and L.J. Guibas, “Discrete Geometric Shapes: Matching,Interpolation, and Approximation—A Survey,” Report B 96-11,Freie Universitat, 1996.

[3] H. Alt, K. Mehlhorn, H. Wagener, and E. Welzel, “Congruence,Similarity and Symmetries of Geometric Objects,” Discrete and

Computational Geometry, vol. 3, pp. 237-256, 1988.[4] E. Andres, “Discrete Circles, Rings and Spheres,” Computers andGraphics, vol. 18, no. 5, pp. 695-706, 1994.

[5] E. Andres and M. Jacob, “The Discrete Analytical Hyperspheres,”IEEE Trans. Visualization and Computer Graphics, vol. 3, no. 1,pp. 75-86, Mar. 1997.

[6] E.M. Arkin, K. Kedmen, J.S.B. Mitchell, J. Sprinzak, and Werman,“Matching Points into Pair-Wise Disjoint Noise Regions: Combi-natorials Bounds and Algorithms,” ORSA J. Computing, vol. 4,no. 4, pp. 375-386, 1992.

[7] M.D. Atkinson, “An Optional Algorithm for Geometric Congru-ence,” J. Algorithms, vol. 8, pp. 159-172, 1998.

[8] N.I. Badler, “Disk Generators for a Raster Display Device,”Computer Graphics and Image Processing, vol. 6, pp. 589-593, 1977.

[9] H.S. Baird, “Model-Based Image Matching Using Location,” MITPress, 1985.

[10] J.L. Bentley, “Multidimensional Binary Search Trees Used forAssociative Searching,” Comm. ACM, vol. 18, pp. 509-517, 1975.[11] J.L. Bentley, “Multidimensional Binary Search Trees Used in

Database Applications,” IEEE Trans. Software Eng., vol. 4, no. 5,pp. 333-340, 1979.

[12] M.D. Berg, M.V. Kreveld, M. Overmars, and O. Schwarzkopf,Computational Geometry Algorithms and Applications. Springer,2000.

[13] P. Bhowmick and B.B. Bhattacharya, “Approximate FingerprintMatching Using Kd-Tree,” Proc. 17th Int’l Conf. Pattern Recognition,vol. 1, pp. 544-547, 2004.

[14] P. Bhowmick and B.B. Bhattacharya, “Approximation of DigitalCircles by Regular Polygons,” Proc. Int’l Conf. Advances in PatternRecognition, pp. 257-267, 2005.

[15] P. Bhowmick, A. Bishnu, B.B. Bhattacharya, M.K. Kundu, C.A.

Murthy, and T. Acharya, “Determination of Minutiae Scores forFingerprint Image Applications,” Int’l J. Image and Graphics, vol. 5,pp. 1-35, 2005.

[16] A. Bishnu, S. Das, S.C. Nandy, and B.B. Bhattacharya, “AnImproved Algorithm for Point Set Pattern Matching Under RigidMotion,” Proc. Fifth Italian Conf. Algorithms and Complexity, pp. 36-45, 2003.

[17] J.F. Blinn, “How Many Ways Can You Draw a Circle,” IEEEComputer Graphics and Applications, vol. 7, no. 8, pp. 39-44, Aug.1987.

[18] J.E. Bresenham, “A Linear Algorithm for Incremental DigitalDisplay of Circular Arcs,” Comm. ACM, vol. 20, no. 2, pp. 100-106,1977.

[19] T.H. Cormen, C.E. Leiserson, and R.L. Rivest, Introduction to Algorithms. Prentice Hall of India, 2000.

[20] P.J. de Rezende and D.T. Lee, “Point Set Pattern Matching ind-Dimensions,” Algorithmica, vol. 13, pp. 387-404, 1995.

[21] M. Doros, “Algorithms for Generation of Discrete Circles, Rings,and Disks,” Computer Graphics and Image Processing, vol. 10,pp. 366-371, 1979.

[22] A. Erafat and A. Itai, “Improvements on Bottleneck Matching andRelated Problems Using Geometry,” Proc. 12th Ann. ACM Symp.Computational Geometry, pp. 301-310, 1996.

[23] P.W. Finn, L.E. Kavraki, J. Latombe, R. Motwani, C.R. Shelton, S.Venkatasubramanian, and A. Yao, “RAPID: Randomized Phar-macophore Identification for Drug Design,” Proc. Symp. Computa-tional Geometry, pp. 324-333, 1997.

[24] J.D. Foley, A. van Dam, S.K. Feiner, and J.F. Hughes, ComputerGraphics—Principles and Practice. Addison-Wesley, 1993.

[25] M. Gleicher, “Animation from Observation: Motion Capture and

Motion Editing,” Computer Graphics, vol. 33, no. 4, pp. 51-55, 1999.[26] M.T. Goodrich, J.B. Mitchel, and M.W. Orletsky, “Practical

Methods for Approximate Geometric Pattern Matching UnderRigid Motion,” Proc. 10th Ann. ACM Symp. ComputationalGeometry, pp. 103-113, 1994.

[27] M. Hagedoorn and R.C. Veltkamp, “Reliable and Efficient PatternMatching Using an Affine Invariant Metric,” Int’l J. ComputerVision, vol. 31, nos. 2/3, pp. 203-225, 1999.

[28] R.M. Haralick, “A Measure for Circularity of Digital Figures,”IEEE Trans. Systems, Man, and Cybernetics, vol. 4, pp. 394-396, 1974.

[29] P.J. Heffernan and S. Schirra, “Approximate Decision Algorithmsfor Point Set Congruence,” Computational Geometry: Theory and

 Applications, vol. 4, no. 3, pp. 137-156, 1994.[30] F. Hoffmann, K. Kriegel, and C. Wenk, “An Applied Point Pattern

Matching Problem: Comparing 2D Patterns of Protein Spots,”

Discrete Applied Math., vol. 93, pp. 75-88, 1999.[31] L. Holm and C. Sander, “Mapping the Protein Universe,” Science,

vol. 273, no. 5275, pp. 595-602, Aug. 1996.[32] P.I. Hosur and K.-K. Ma, “A Novel Scheme for Progressive

Polygon Approximation of Shape Contours,” Proc. IEEE ThirdWorkshop Multimedia Signal Processing, pp. 309-314, 1999.

[33] S.Y. Hsu, L.R. Chow, and C.H. Liu, “A New Approach for theGeneration of Circles,” Computer Graphics Forum 12, vol. 2, pp. 105-109, 1993.

[34] D.P. Huttenlocher, K. Kedem, and J.M. Kleinberg, “On DynamicVoronoi Diagrams and the Minimum Hausdorff Distance forPoint Sets under Euclidean Motion in the Plane,” Proc. Eighth Ann.

 ACM Symp. Computational Geometry, pp. 110-120, 1992.[35] D.P. Huttenlocher and W.T. Rucklidge, “A Multi-Resolution

Technique for Comparing Images Using the Hausdorff Distance,”

Proc. Int’l Conf. Computer Vision and Pattern Recognition, pp. 705-706, 1993.[36] P. Indyk, R. Motwani, and S. Venkatasubramanian, “Geometric

Matching under Noise: Combinatorial Bounds and Algorithm,”Proc. 10th Ann. SIAM-ACM Symp. Discrete Algorithms, 1999.

BHOWMICK ET AL.: APPROXIMATE MATCHING OF DIGITAL POINT SETS USING A NOVEL ANGULAR TREE 781

Page 14: Bhowmick 2009

7/29/2019 Bhowmick 2009

http://slidepdf.com/reader/full/bhowmick-2009 14/14

[37] A. Jobbagy, E. Furnee, B. Romhanyi, L. Gyongy, and G. Soos,“Resolution and Accuracy of Passive Marker-Based MotionAnalysis,” Automatika, vol. 40, pp. 25-29, 1999.

[38] R. Klette and A. Rosenfeld, Digital Geometry: Geometric Methods forDigital Picture Analysis. Morgan Kaufmann, 2004.

[39] B. Li and H. Holstein, “Using k-d Trees for Robust 3D PointPattern Matching,” Proc. Fourth Int’l Conf. 3-D Digital Imaging and

 Modeling, 2003.[40] B. Likar and F. Pernus, “Automatic Extraction of Corresponding

Points for the Registration of Medical Images,” Medical Physics,

vol. 26, no. 8, pp. 1678-1686, 1999.[41] J. Maintz and M. Viergever, “A Survey of Medical ImageRegistration,” IEEE Eng. in Medicine and Biology Magazine, vol. 2,no. 1, pp. 1-36, 1998.

[42] D. Maltoni, D. Maio, A.K. Jain, and S. Prabhakar, Handbook of Fingerprint Recognition. Springer, 2003.

[43] M.D. Mcllroy, “Best Approximate Circles on Integer Grids,” ACMTrans. Graphics, vol. 2, no. 4, pp. 237-263, 1983.

[44] D. Mount, N. Netanyahu, and J. Lemoigne, “Improved Algo-rithms for Robust Point Pattern Matching and Applications toImage Registration,” Proc. 14th Ann. ACM Symp. ComputationalGeometry, pp. 155-164, 1998.

[45] J. Panek and J. Vohradsky, “Point Pattern Matching in theAnalysis of Two-Dimensional Gel Electropherograms,” Electro-

 phoresis, vol. 20, pp. 3483-3491, 1999.[46] S.K. Parui, S. Sarkar, and B.B. Chaudhuri, “Computing the Shape

of a Point Set in Digital Images,” Pattern Recognition Letters, vol. 14,no. 2, pp. 89-94, 1993.

[47] M.L.V. Pitteway, “Algorithm for Drawing Ellipses or Hyperbolaewith a Digital Plotter,” The Computer J., vol. 10, no. 3, pp. 282-289,1967.

[48] B. Soifman, D. Beymer, P. McLauchlan, and J. Malik, A Real-TimeComputer Vision System for Vehicle Tracking and Traffic Surveillance,http://www.cs.berkeley.edu/pm/RoadWatch, 2004.

[49] I. Szekely, “Crossing Numbers and Hard Erdos Problems inDiscrete Geometry,” Combinatorics, Probability, and Computing,vol. 6, pp. 36-47, 1997.

[50] S.M. Thomas and Y.T. Chan, “A Simple Approach for theEstimation of Circular Arc Center and Its Radius,” ComputerVision, Graphics, and Image Processing, vol. 45, no. 3, pp. 362-370,1989.

[51] G. Tian, D. Gledhill, and D. Taylor, “Comprehensive InterestPoints Based Imaging Mosaic,” Pattern Recognition Letters, vol. 24,pp. 1171-1179, 2003.

[52] M. Worring and A.W.M. Smeulders, “Digitized Circular Arcs:Characterization and Parameter Estimation,” IEEE Trans. Pattern

 Analysis and Machine Intelligence, vol. 17, no. 6, pp. 587-598, June1995.

[53] C. Yao and J.G. Rokne, “Hybrid Scan-Conversion of Circles,” IEEETrans. Visualization and Computer Graphics, vol. 1, no. 4, pp. 311-318, Dec. 1995.

[54] P.C. Yuen and G.C. Feng, “A Novel Method for ParameterEstimation of Digital Arc,” Pattern Recognition Letters, vol. 17, no. 9,pp. 929-938, 1996.

Partha Bhowmick  graduated from the IndianInstitute of Technology, Kharagpur, India, andreceived the the master’s and PhD degrees fromthe Indian Statistical Institute, Kolkata, India. Heis currently on the faculty of Computer Scienceand Technology, Indian Institute of Technology,Kharagpur, India. His research interests includedigital geometry, low-level image processing,approximate pattern matching, shape analysis,and biometrics. He has published more than

35 research papers in international journals, edited volumes, andrefereed conference proceedings and holds three US patents.

Ranjan K. Pradhan received the degree incomputer science and engineering from theCollege of Engineering and Management, Kola-ghat, India, in 2002 and the degree in computerscience and technology from Bengal Engineer-ing and Science University (BESU), Howrah,India, in 2004. His research interests includealgorithms, image processing, and patternmatching. He currently is a software professionalat Tata Consultancy Services, India. He was

recognized as the “Amex Star Performer” in 2006 by American Express.

Bhargab B. Bhattacharya received the BSc

degree in physics from the Presidency College,Calcutta, the BTech and MTech degrees inradiophysics and electronics, and the PhDdegree in computer science from the Universityof Calcutta, India. Since 1982, he has been onthe faculty of the Indian Statistical Institute,Calcutta, where he is a full professor. He heldvisiting positions in the Department of ComputerScience and Engineering, University of Nebras-

ka, Lincoln, from 1985 to 1987 and from 2001 to 2002 and in the Fault-Tolerant Computing Group, Institute of Informatics, University ofPotsdam, Germany, from 1998 to 2000. In 2005, he visited the IndianInstitute of Technology Kharagpur as a VSNL chair professor. Hisresearch interests include logic synthesis and testing of VLSI circuits,physical design, digital geometry, and image-processing architecture.He has published more than 200 papers in archival journals andrefereed conference proceedings and holds nine US patents. He is onthe editorial board of the Journal of Circuits, Systems, and Computers and the Journal of Electronic Testing—Theory and Applications . He is afellow of the Indian National Academy of Engineering, a fellow of theNational Academy of Sciences, India, a fellow of the IEEE, and amember of the IEEE Computer Society.

. For more information on this or any other computing topic,please visit our Digital Library at www.computer.org/publications/dlib.

782 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 31, NO. 5, MAY 2009


Recommended