A Fast Fingerprint Matching Algorithm using Parzen Density Estimation
Choonwoo Ryu and Hakil Kim Dept. of Automation Engineering, College of Engineering, Inha University #253 Yonghyun-Dong, Nam-Ku, Incheon, Korea
[email protected],
[email protected] Abstract. Minutiae-based finger print matching algorithms generally consist of two steps: alignment of minutiae and search for the corresponding minutiae. This paper presents a triangular matching algorithm for fast alignment, in which the overall processing time can be strikingly cut down by making a quick decision on the amounts of rotation and translation between a pair of fingerprint images. The alignment algorithm proposes a novel triangular data structure and utilizes Parzen density estimation. The proposed algorithm has been tested under well-formed testing scenario over an Atmel fingerprint database and demonstrated promising improvement both in processing time and in recognition ac curacy.
1. Introduction The main task of fingerprint recognition is making a decision on whether two fingerprint images are from the same finger or not. Most widely adopted structural features
from
fingerprint
ridges
are
ending
and
bifurcation,
together
called,
minutiae. Traditionally, it has been believed that the minutiae of fingerprints are the most discriminating and easily extractable features by digital image processing and computer vision techniques [1, 2]. The matching algorithm in [3] uses a different triangular data structures to overcome geometric deformation but it produces a large size of feature templates because of dynamic time warping. An AFIS(Automated Fingerprint Identification System) matching system implemented by a distributed system proposed a triangular based matching algorithm for non-criminal applications [4]. However, in the matching algorithm, database management schemes are required and the larger amount of data is stored in the database than other minutiae based AFIS system. Moreover, a repetition of evidence updating and pose transformation is requisite process for this matching algorithm. A relaxation point pattern matching algorithm in [5] requires excessive matching time due to iterative processes of searching corresponding pairs of minutiae from the two fingerprints.
- 1 -
In this paper, an enhanced triangular matching algorithm and a Parzen density estimation method are proposed for fast triangular matching of a set of fingerprint minutiae for one-to-one and one-to-few applications. The suggested traingular matching method shows easy pose information retrievals performance and less sensitive for non-linear deformations between an enrolled fingerprint and an attempt fingerprint than point-to-point matching schemes. Furthermore, the Parzen density estimation method significantly eliminates the number of pose transformation, which is performed numerous times with different parameters in the same fingerprint matching pair.
2 Proposed Algorithm The overall process of the algorithm is depicted in Fig. 1. It produces triangular minutia structures named clique from minutiae of a search and a file fingerprint, were the file fingerprint is the registered fingerprint in an enrollment process and the search fingerprint is the attempted fingerprint for authentication. The geometry of a clique is shown in Fig. 2. Pair of cliques from the file and the search fingerprints is decided to be identical if all the clements of the cliques are within allowable ranges as described in the next section. The amounts of translation and rotation are calculated from the all paired cliques.
Fig. 1. Overview of the proposed algorithm
- 2 -
Fig. 2. Geometry of cliques over thinned fingerprint image
Conventional matching algorithms used to carry out a large number of minutiae matching processes according to all possible translation and rotation candidates, and then select the highest score as the final matching score. However, a significant portion of the translation and rotation candidates is redundant because they have similar values in the genuine matching and meaningless values in the impostor matching. On the contrary, the proposed algorithm effectively finds one or only a few translation and rotation candidates using Parzen density estimation. Hence, it significantly reduces the number of the minutiae matching processes while keeping the error rate unchanged. 2.1 Clique Data Structure A clique[6] consists of three minutiae and is depicted by the circle passing the minutiae as shown in Fig. 2. There are numerous ways of combination of three minutiae in a fingerprint. In this study, each minutia chooses k nearest minutiae from the minutiae list and produces kC2 cliques. The maximum number of clique is
n × kC2, where n is the number of minutiae in a fingerprint. Obviously, a bigger k needs more memory space and computational power in the alignment stage. Table 1 compares the matching time and the equal error rate (EER) under different k's (100 fingerprints database). Our experiment confirms that a bigger k causes large increase in computational time with unnoticeable improvement in error rates. Therefore, an appropriate k is to be chosen for trading off the error rate against the computational time. In our experiments, k is set to 6. Table 1. Performance of algorithm with various k's
As found in Fig. 2, each clique contains nine geometric elements: radius of the circle r, the biggest inner angle α, the next angle β in the clockwise sense, the ridge directions at the minutiae θ ζ
b
, ζ
c
a
, θ
b
, θ
c
, and the types of the minutiae ζ
a
,
. The elements of a clique in the file fingerprint will be compared with
those from the search fingerprint to find clique pairs in the next step. 2.2 Clique Matching Two cliques are decided to be identical if the following similarity conditions are
- 3 -
satisfied·In equations (1) through (4), the superscript F denotes the file fingerprint while the superscript S denotes search fingerprint. a) The radius r must be similar.
b) The angles α and β must be similar.
c) The minutiae angles θ
d) The minutiae types ζ
a
a
, θ
,ζ
b
,ζ
b
, θ
c
c
, must be similar.
. must be the same.
Figure 3 shows an example for the distributions of the ratio in (1) and the difference values in (2) and (3). In this study, the thresholds in (1)-(3) are chosen from the distributions.
Fig. 3. Distributions of the radius ratio and angle difference values in genuine matching
- 4 -
2.3 Parzen Density Estimation Parzen density estimation is a nonparametric density estimation method. It does not require any assumption on the form of the probability density function, which is usually true for a real-world problem [7]. Let X= [△ x, △ y, △ θ ]
T
denote a
vector representing the amount of translation (△ x, △ y) and rotation (△ θ ) between a pair of cliques. Its density function p n (X) is defined (5), where ϕ((X-X i )/h equals to unity if a certain sample of X
i
falls within the hypercube of volume V
n
) n
centered at X, and is zero otherwise.
Fig. 4. Implementation of Parzen density estimation In this study, as shown in Fig. 4, overlapped Parzen windows are designed to search efficiently and robustly the largest cluster, which represents the pose information for the best match between two fingerprints. w x , w sizes of a Parzen window and △ w x , △ w y , and △ w
θ
y
and w
θ
are the
are increments for the next
window. In the manner of being overlapped, the proposed method assures finding the largest cluster. However, it may duplicate the same cluster in overlapped windows. In order to prevent this multiple detection, the estimation process is followed by a merging process where the duplicated clusters are eliminated by finding the largest cluster. Parzen density estimation method is applied to search the largest cluster in the space of X, which implies the most possible alignment information for matching the two fingerprints. As shown in the second row of Table 2, genuine matching generally yields a much larger amount of X's than impostor matching. Most of the
- 5 -
X's in genuine matching are gathered into a dense cluster representing the optimal alignment information for matching. Meanwhile, in impostor matching they rarely build a cluster because pairs of corresponding cliques randomly occur. Figure 5 compares the cluster distributions of X's between in genuine matching and in impostor matching.
Fig. 5. Example of cluster distributions of X The proposed method first searches as many reasonably dense clusters as possible. For each cluster, the amounts of rotation and translation are determined from its centroid, and the corresponding alignment process is carried out. In genuine matching, the number of searched cluster is very small, mostly single, and the pose information produces the correct alignment. In contrast, the number of searched cluster for impostor matching is relatively large, and the corresponding alignment processes
produce
inconsistent
matching
results.
Based
on
experimental
observation, 93.6% of genuine matching produces a single dominant cluster, and 95.9% of impostor matching at most 9 clusters as shown in Fig,6, Hence, the average number of aligned point pattern matching is 1.10 for genuine matching and 2.84 for impostor matching, which hardly repeats the alignment process compared to no Parzen estimation as shown in Table 2. Table 2. Average number of aligned point pattern matching
3. Experimental Results 3.l Database and Evaluation Method
- 6 -
The fingerprint database used in the experiment is provided by Atmel-Grenoble. The aim of the database is to discriminate the algorithm performance on a large scale.
Fig 6. Cluster distribution Atmel is using this database to quality the Finger Chip partners on a technical point of view. The database contains 2,702 fingerprint images from 20l different fingers. For each finger, the file fingerprint is randomly chosen and the rest are considered as search fingerprints for matching. The minutiae extraction algorithm used in this experiment is basically the one that participated in FVC2000 [8], but enhanced by adding pre-processing filters, quality-check UINH.77(2.85%)
routine,
and
some
fingerprints
are
parameters rejected
in
for the
tuning feature
the
algorithm
extraction
but
of no
failure-to-acquire(FTA) in matching. Table 3 summarizes the total number of trials in this experiment. Table 3. Summary of trials
3.2 Results of Performance Evaluation The experiments are carried out under MS Windows XP with an Intel Pentium III 933MHz
processor.
Table
4
compares
the
average
speeds
of
the
matching
algorithms between matching with and without Parzen density estimation. The difference is not significant as much as in Table 2 because of the overhead of Parzen density estimation.
- 7 -
Table 4. Average matching speed
Fig 7. FMR and FNMR curves Fig. 7 shows the resulted FMR (False Match Rate) and FNMR (False Non-Match Rate) curves with and without Parzen density estimation over the Atmel database. The results show negligible difference in FMR and FNMR except the shift of the equal error rate, which is caused by the fact that the matching without Parzen estimation selects the highest value in all pose transformations.
4. Conclusions and Future Works This paper proposes a fast fingerprint matching algorithm and presents experimental results. A novel triangular minutia structure called a clique is proposed and the Parzen density estimation method is utilized. It improves the performance in the sense of the processing time while keeping the error rate unchanged. However, it raises a problem of large memory requirement for a future work.
Acknowledgement This
research
has
been
supported
by
(KRF-99-041-E00269).
- 8 -
Korea
Research
Foundation,
1999
References 1, A. Jain, L. Hong and R. Bolle, "On-Line Fingerprint Verification", IEEE Trans. on
RAMI, vol. 19, no.4, pp. 302-314, 1997. 2. X Jiang and W. Yau, "Fingerprint Minutiae Maching Based on the Local and Global Structures", IEEE 15th ICPR, pp.1038-1041, 2000. 3 Z. M. Kovacs-Vajna, "A Fingerprint Verification System Based on Triangular Matching and Dynamic Time Warping," IEEE Trans. on PAMI vol. 22. no. 11, pp. 1266-1276, Nov. 2000. 4. Robert S. Germain, Andrea Califano, and Scott Colville, "Fingerprint Matching Using
Transformation
Parameter
Clustering,"
IEEE Computational Science and
Engineering, vol. 4, no. 4, pp. 42-49, Oct -Dec. 1997. 5. A, Ranade and A. Rosenfeld, "Point pattern matching by relaxation,'' Pattern
Recognition vol 12, no. 2, pp 269-275, 1993. 6. Dosung Ahn and Hakil Kim "Fingerprint Recognition Algorithm using Clique,"
Journal of the Institute of Electronics Engineers of Korea, vol. 36-S, no. 5, pp. 69-80, 1999. 7. R O. Duda, P. E Hart and D G. Stork, Pattern Classification, 2nd Ed, Wiley-Interscience, pp. 164-167, 2001. 8. D. Maio, D. Maltoni, R. Cappelli, J. L Wayman and A. K. Jain, "FVC2000: Fingerprint Verification Competition,'' IEEE Trans. on PAMI, vo1. 24, no. 3, pp. 402-412, March 2002.
- 9 -