A Fingerprint Matching Algorithm Based On ... - Semantic Scholar

3 downloads 3690 Views 290KB Size Report
tiae which have similar structures as RMPs for align- ing, and matching is ... align input fingerprint. ... edge. 3. Forming triangles: Search on the right-hand side of.
A Fingerprint Matching Algorithm Based On Delaunay Triangulation Net1 Ning Liu, Yilong Yin, Hongwei Zhang Computer Department, Shandong University, Jinan, 250100, China [email protected]

Abstract Fingerprint matching is a key issue in research of an automatic fingerprint identification system. On the basis of Delaunay triangulation (DT) in computational geometry, we proposed a fingerprint matching algorithm based on DT net in this paper. It uses DT in fingerprint matching, and then develops a matching algorithm based on DT net to find reference minutiae pairs (RMPs). Using DT on the topological structure of minutiae set, a DT net is formed with minutiae as vertexes. From the nets of the input minutiae set and template minutiae set, select out a certain pairs of minutiae which have similar structures as RMPs for aligning, and matching is carried out based on point pattern. The experiment is conducted on FVC2002, and the result indicates the validity of our algorithm.

1. Introduction Automatic fingerprint identification system (AFIS) has been the research focus of biometrics in the past few decades. It consists of image capture, image enhancement, fingerprint classification, feature extraction and fingerprint matching. Matching result determines whether two fingerprint images are corresponded. Great improvement has been achieved in the development of matching algorithm, but there are still many problems. So fingerprint matching will still be a hot research area in AFIS for a long time. Minutiae matching algorithm is the most wellknown and widely used algorithm for fingerprint matching and it has been generally addressed as a point pattern matching problem. Two kinds of minutiae are adopted in matching: ridge ending and ridge bifurcation. For each minutia usually extract three features: type, the coordinates and the orientation. Generally, there are three problems in fingerprint matching 1

described as follows: ķtoo small overlap, ĸlost of genuine minutiae and pseudo minutiae extraction Ĺ localization deviation of minutiae. Many work have been done to deal with these difficult problems and many researchers have proposed a number of improved algorithms based on minutiae matching. For example, Ranade and Rosenfeld et al. proposed a point pattern matching by relaxation using reliability [1]. Anil K. Jain et al. use ridge information in alignment and a fixed sized bounding box in matching [2]. Xiping Luo et al. and Yilong Yin et al. both introduce ridge information in matching process [3][4]. Some algorithms using structural information are proposed. For instance, Xudong Jiang et al. proposed a fingerprint minutiae matching based on the local and Global Structures [5]. Weiwei Zhang et al. proposed a core-based structure matching algorithm [6]. George Bebis et al. proposed a fingerprint identification algorithm using the minutiae triangles for indexing[7]. Zsolt MikloÂs et al. use triangular matching to cope with the strong deformation of fingerprint image [8].At the same time, other kinds of algorithms are proposed. Arun Ross et al. proposed an average deformation model for fingerprints based on thin plate splines to deal with nonlinear deformation [9]. Tico Marius et al. proposed a fingerprint recognition algorithm using wavelet feature[10]. A.k.Jain et al. use a bank of Gabor filters to capture both local and global details in a fingerprint as a compact fixed length FingerCode[11]. Vivek A Sujan et al. proposed an identification algorithm using a Hausdorff Voronoi NETwork [12]. Tian Jie et al. proposed a hybrid fingerprint recognition algorithm [13]. In this paper, we proposed a matching algorithm based on DT net. The local structure of minutiae in DT net is rotation and translation invariant because it consists of the direction and location only relative to its some neighboring minutiae. Our algorithm uses the DT net of minutiae set to find RMPs, then uses RMPs to

Supported by the National Natural Science Foundation of China under Grant No. 60403010 and the Natural Science Foundation of Shandong Province under Grant No. Z2004G05.

Proceedings of the 2005 The Fifth International Conference on Computer and Information Technology (CIT’05) 0-7695-2432-X/05 $20.00 © 2005

IEEE

align input fingerprint. The template image and aligned input image have a global point pattern matching and the result determines whether the two fingerprints are originated from the same finger. Besides location coordinates and orientation of minutiae, length and orientation of edge in DT net also be used in matching algorithm. This paper is organized logically into five parts: Section 2 introduces the application of DT net in fingerprint matching. Section 3 presents matching algorithm based on DT net. Section 4 is the experimental results on fingerprint database. Last section gives conclusions and further work.

D

E

F

G

Fig 1. Forming DT net of a minutiae set. (a) Finding the first edge, (b) Forming the first triangle, (c) Adding the second triangle on clockwise direction and (d) Putting triangles together

2. DT Net in Fingerprint Matching Minutiae set extracted from fingerprint can be regarded as scattered points on the plane. Triangulation is an effective tool in dealing with scattered data set. The net produced by triangulation with a suitable rule has good performance, for example, the uniqueness (assuming no degeneracies) and the good local stability. So the triangulation can be applied to fingerprint matching. In this paper, the DT net is used to find RMPs, which are used for aligning.

2.1. DT Algorithm of Minutiae Set DT algorithm [14] is used to form a DT net of a minutiae set. The time complexity of the algorithm is O( N log N ) , and N is the number of minutiae. Fig.1 shows the procedure of forming DT net of minutiae set and the DT net of minutiae set formed by triangulation using Delaunay criterion is shown in Fig.2. The algorithm consists of four steps described as follows:

(a)

DT net taking thinning fingerprint image as background

1. Preprocessing the data: Compute the uniform grid and then put each minutia in one and only one grid cell. 2. Finding the first edge: Find a start minutia through searching from center of grid or from neighbor of center of grid. Then, find second minutia, which is closest minutia among the neighbors of the start point. Finally, link the two minutiae to form the first edge. 3. Forming triangles: Search on the right-hand side of the first edge and find a minutia, which gives the largest angle. Then, get the circle defined by the original triangle and set the min-max box of the circle. Select the minutia with the largest angle in the min-max box and do the same thing as above. Stop the search when there are no unvisited rows and columns inside the current min-max box. 4. Putting triangles together: Add triangles successively so that the added triangles are simply connected. That is, there are no holes and bridges with the already chosen triangles. The algorithm proceeds and considers all the cases to ensure that the triangulation is complete and correct.

2.2. Characteristics of DT Net in Matching In fingerprint matching, triangulation net of scattered points on the plane has three characteristics described as follows: 1. Triangulation net is unique (The scattered points is assumed non-degenerate). This guarantees a minutiae set can always get same triangulation net. 2. Triangulation net has very good local stability. This guarantees that triangulation nets of fingerprints generated from the same finger are basically same. 3. Triangulation algorithm of 2D data points has a tested linear time complexity. This makes the algorithm suitable for an on-line automatic fingerprint identification system. Besides the above characteristics, DT has the best structural stability under random positional perturba-

Proceedings of the 2005 The Fifth International Conference on Computer and Information Technology (CIT’05) 0-7695-2432-X/05 $20.00 © 2005

IEEE

(b)

Fig 2. DT net of minutiae set. (a) Minutiae set, (b) The

tions and the DT net has two key characteristics as follows: 1. For each triangle in DT net, no data point is found inside the circumscribing circle. 2. Max-min angle. The smallest angle in DT net is larger than the smallest angles in other triangulation nets. For point pattern matching, property 1 supports that the loss of genuine minutiae, pseudo minutiae extraction and localization deviation of minutiae affects the DT net only locally. Property 2 implies that the triangles obtained are not “skinny”. Since avoiding the skinny triangles that lead to instabilities and errors, the DT net has excellent structural stability.

the vertex with larger x coordinates. The same to T

vector (T ih ,T ib , J i , l i ) .

(a)

(b)

(c)

(d)

3. Fingerprint Matching Based on DT Net In the pretreatment of fingerprint, the minutia location coordinate and the minutia orientation have been obtained. On the basis of above information, the algorithm in this paper consists of three steps: (1) DT of minutiae set (shown in section 2.2), (2) Extracting RMPs (shown in section 3.1), (3) Alignment and matching (shown in section 3.2).

3.1. Extracting RMPs Matching the DT nets is used for finding several RMP. In the beginning, some pairs of similar edge pairs (SEPs) can be found through matching. Having the SEPs, the corresponding similar triangle pairs (STPs) can be found quickly. The three pairs of vertexes of each STP are three RMPs needed in alignment. The procedure of seeking RMPs is outlined. Fig. 3 shows local structures and features, fig.4 shows the procedure of matching as follows: 1. Given the template image and the input image, two corresponding DT nets have produced by the algorithm in section 3.1. Minutia can be described as a vector ( xt , yt ,T t )

T

in template image or as

( xi , y i ,T i ) T in input image. Meanwhile, edge can be described as a vector (T th ,T tb , J t , l t ) plate DT net or (T ih ,T ib , J i , l i )

T

T

in tem-

in input DT net.

In vectors, x , y denotes x, y coordinates of minutia,

T,J

denote minutia angle and orientation of

edge, respectively, and l denotes length of edge. T

In (T th ,T tb , J t , l t ) , with smaller x

T th corresponds to the vertex coordinates and T tb corresponds to

Fig 3. Local structures and features. (a),(b) DT edges, (c), (d) DT triangles

2. Edge matching is used to find SEP. Choose two T

edges T (T th ,T tb , J t , l t ) and I (T ih ,T ib , J i , l i )

from the template and input DT net, respectively. Only when the equations (1), (2) and (3) are satisfied, T and I are considered a SEPs. The equations (1) , (2) and (3) are defined as follows:

ltˉli  T1

T thˉT ih ˉ T tbˉT ib

IEEE

(1)

 T2

J t  J i  T3

(2) (3)

Where, T1 , T2 and T3 are respectively thresholds of length of edge, minutia angle and orientation of edge, respectively. If template DT net has M edges and input DT net has N edges, the total number of edge comparison will be MhN. If no similar edge is found, the local matching should end in a rejection, which means the two fingerprints are not generated from the same finger. 3. Triangle matching is used to find STPS. To choose a SEP T and I and to search triangle on the righthand side of them. If they are edges on right boundary, to search triangle on the left-hand side of them. If they are internal edges, to search two sides of them. Therefore, every pair of similar edges can produce one or two pairs of triangles. Let

vector

(lt1 , l t 2 , lt 3 , D 1 ,D 2 ,D 3 ) T

and

T

(li1 , li 2 , li 3 , E1 , E 2 , E 3 ) denote two triangles found on the right-hand side of T and I, respectively. In vectors, l t1 , l t 2 , l t 3 , l i1 , l i 2 , l i 3 denote length of six edges

Proceedings of the 2005 The Fifth International Conference on Computer and Information Technology (CIT’05) 0-7695-2432-X/05 $20.00 © 2005

T

of two triangles and

D 1 ,D 2 ,D 3 , E 1 , E 2 , E 3

denote

six angles of two triangles. According to suffix, these weights of two vectors are one to one correspondence. If the two triangles can satisfy the following inequations (4) and (5), they will be regarded as a STP.

Where, l t1

ltjˉlij  T4 , j 2,3

(4)

D j  E j  T5 , j 1,2,3

(5)

l t , li1

l i , T4 and T5 are respectively

thresholds of length of edge and angle. Vertexes of STPs are used as RMPs. If there is no STP after traversing all pairs of triangles, the matching should result in rejection.

2. Align the input fingerprint. Regard one of the three reference minutiae of the input fingerprint as the center, align the input image according to formulas (6) and (7):

ª cos 'T sin 'T º ª X º ª'x º (6) « sin 'T cos 'T » « Y »  «'y » ¬ ¼¬ ¼ ¬ ¼ (7) T ' T  'T T Where, [ X, Y ] and T are minutia location co-

ª X 'º » ¬Y ' ¼

 «

T

ordinates and orientation before aligning. [X c, Y c]

and T c are minutia location coordinates and orientation after aligning. 3. Achieve the number of corresponding minutiae pairs. Given an alignment ( 'x, 'y , 'T ) , minutiae of input fingerprint are mapped into template finT

gerprint. Let ( xt , y t ,T t ) denotes a minutia of T

template and ( xic , y ic ,T ic) denotes a minutia of in-

(a)

(b)

put fingerprint aligned. Judging they are matched or not according to equations (8): ­ yes, if ( x  x c ) 2  ( y  y c ) 2 d r t i t i 0 ° m ® (8) and T t  T ic d T 0 ° no otherwise , ¯

(d)

orientation, respectively. After traversing all minutiae, we can get the number of corresponding minutiae pairs. Using all STPs to aligning input image, there will be many results. The biggest number of them is defined as Max. 4. Matching score=Max/sqrt(M h N), M, N are the number of minutiae in two fingerprints. If the score exceeds a threshold given, the two fingerprints are considered coming from the same finger.

Where, r0 and

(c)

Fig 4. The procedure of matching two fingerprints. (a) and (b) are DT nets of two fingerprints, white lines are five SEPs, but edge 1 and 2 are a pseudo pair, (c) and (d) are three genuine STPs and six RMPs according to the similar lines in (a) and (b), and edge 1 and 2 have been eliminated

T0

are thresholds of distance and

4. Experiment and Results 3.2. Alignment and Matching The algorithm selects three pairs of vertexes from a STP as RMPs and then determines the number of corresponding minutiae pairs using the remaining set of minutiae. The procedure is described in details as follows: 1. Calculate the parameters of aligning. To select a STP, the three pairs of vertexes are three RMPs. According to the three RMPs, we can calculate out an average displacement of ['x, 'y ] and an average counterclockwise rotation 'T . Obviously, a STP corresponds to a group of average aligning parameters.

We perform experiments using the fingerprint database of FVC2002 to evaluate the performance of algorithm in this paper and show the results of experiments.

4.1. Experiment Condition The experiment uses four databases: DB1_a, DB2_a, DB3_a and DB4_a in database FVC2002. Each database contained 800 fingerprints from 100 different fingers and in each database dry, wet, scratched, distorted and markedly rotated fingerprints were also adequately represented. The test is performed under Windows 2000 O.S. on Pentium IV, 2.8GHz and 526 MRAM machine.

Proceedings of the 2005 The Fifth International Conference on Computer and Information Technology (CIT’05) 0-7695-2432-X/05 $20.00 © 2005

IEEE

we hope to apply the algorithm proposed in this paper to deal with matching of fingerprints that have different resolution ratio.

4.2. Results on the Experiment This section reports the performance of the tested algorithm. For stating the result of our algorithm, we list the result of another algorithm proposed in [13] by Tian Jie et al. The comparison of ROC (Receiver Operating Characteristic) curves on four databases of FVC2002 is shown in Fig.5. The results of Tian Jie’s algorithm are downloaded from FVC2002 Web page2.

(a)

(b)

(c)

(d)

Fig 5. ROC curves on (a) DB1_a, (b) DB2_a, (c) DB3_a and (d) DB4_a of FVC2002 obtained with the algorithm in this paper (solid line) and Tian Jie’s algorithm (dotted line)

5. Conclusions and Further Work In this work we proposed a fingerprint matching algorithm based on DT net. It is a synthetic algorithm, which combines structure matching and point pattern matching at principle. The DT net can be formed by DT on topological structure of minutiae set and then look for some RMPs correctly from the DT net. According to the RMPs, the input fingerprint is aligned and then matches the template fingerprint using point pattern matching. As DT net has better structure stability, noise only affects the DT net in a local field. Meanwhile, since many correct RMPs can be found, the accuracy of results on rotation and translation of fingerprint is improved greatly and the effort of matching also is improved correspondingly. In addition, structure of DT net is not influenced by the change of resolution ratio of fingerprint image, so 2

References [1] A. Ranade and A. Rosenfeld, “Point pattern matching by relaxation”, Pattern Recognition, 1993, 12(2), pp. 269-275 [2] A. K. Jain, L. Hong and R. Bolle, “On-line fingerprint Verification”, IEEE Trans. Pattern Anal. and Machine Intell., 1997,19(4), pp.302~314 [3] X. P. Luo and J. Tian, “Image Enhancement and Minutia Matching in Fingerprint Verification”, Journal of Software, 2002,13(5), pp. 946-956 (In Chinese) [4] Y. L. Yin, X. B. Ning, X. M. Zhang, and Y. L. Wang, “A Fingerprint Matching Algorithm Based on Ridge Comparability”, Pattern Recognition and Artificial Intelligence, 2002, 15(4), pp.502-506 (in Chinese) [5] X. D. Jiang and W. Y. Yau, “ Fingerprint minutiae matching based on the local and Global Structures”, Proceedings of the 15th International Conference on Pattern Recognition, 2000, pp.1042-1045 [6] W. W. Zhang, S. Wang, and Y.S. Wang, “Structure Matching Algorithm of Fingerprint Minutiae Based on Core Point”, Journal of Acta Automatica Sinica, October 2003. 6 [7] G. Bebis, T. Deaconu, and M. Georgiopoulos, “ Fingerprint Identification Using DT, IEEE International Conference on Intelligence”, Information and Systems (ICIIS'99), 1999, pp. 452 - 459 [8] Z. Miklos and K. Vajna, “A Fingerprint Verification System Based on Triangular Matching and Dynamic Time Warping”, IEEE Trans. PAMI, 2000, 22 (11), pp.1266-1276 [9] A. Ross, S. Dass and A. Jain, “A deformable model for fingerprint matching”, Pattern Recognition, 2005, 38(1), pp.95-103 [10] T. Marius, I. Eero, R. Pauli, K. Pauli and S. Jukka, “Fingerprint recognition using wavelet feature”, Circuits and Systems, 2001(2), pp.11-24 [11] A.K. Jain, S. Prabhakar, L. Hong and S. Pankanti, “Filterbank-based fingerprint matching”, Image Processing, 9(5), 2000, pp.846 - 859 [12] V. A. Sujan and, M. P. Mulqueen, “Fingerprint identification using space invariant transforms”, Pattern Recognition Letters, 2002, 23(5), pp. 609-619 [13] J. Tian, T.H. Zhang, J.G. Cheng, H. Chen, Y.L. He, Q. Ren, H.H. Li and X. Liu, “The test of performance of hybrid fingerprint recognition algorithm on FVC database”, Advances in Biametrics (1). Beijing: Publishing house of TsingHua University, 2002, 199-204 (in Chinese) [14] T.P. Fang and L. A. Piegl, “DT Using a Uniform Grid”, University of South Florida Computer Graphics, May/June 1993,13 (3), pp.36-47

http://bias.csr.unibo.it/fvc2002/participants/PA42.asp

Proceedings of the 2005 The Fifth International Conference on Computer and Information Technology (CIT’05) 0-7695-2432-X/05 $20.00 © 2005

IEEE