Fingerprint indexing based on expanded Delaunay triangulation

Fingerprint indexing based on expanded Delaunay triangulation

Accepted Manuscript Fingerprint indexing based on expanded Delaunay triangulation Javad Khodadoust, Ali Mohammad Khodadoust PII: DOI: Reference: S09...

16MB Sizes 5 Downloads 226 Views

Accepted Manuscript

Fingerprint indexing based on expanded Delaunay triangulation Javad Khodadoust, Ali Mohammad Khodadoust PII: DOI: Reference:

S0957-4174(17)30204-X 10.1016/j.eswa.2017.03.048 ESWA 11206

To appear in:

Expert Systems With Applications

Received date: Revised date: Accepted date:

21 June 2016 20 February 2017 23 March 2017

Please cite this article as: Javad Khodadoust, Ali Mohammad Khodadoust, Fingerprint indexing based on expanded Delaunay triangulation, Expert Systems With Applications (2017), doi: 10.1016/j.eswa.2017.03.048

This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

ACCEPTED MANUSCRIPT

Highlights • A novel and efficient fingerprint indexing based on minutiae triplets, is proposed.

CR IP T

• The proposed fingerprint features are invariant to rotation and translation. • Our fingerprint representation is very robust to distortions and noise.

AC

CE

PT

ED

M

AN US

• The experimental results demonstrate the validity of the proposed algorithm.

1

ACCEPTED MANUSCRIPT

Fingerprint indexing based on expanded Delaunay triangulation Javad Khodadousta,∗, Ali Mohammad Khodadoustb of Computer Engineering and Information Technology, Payame Noor University (PNU), Qeshm, Iran of Electrical Engineering, Sadjad University of Technology, Mashhad, Iran

b Department

CR IP T

a Department

Abstract

AN US

Fingerprint indexing plays a key role in the automatic fingerprint identification systems (AFISs) which allows us to speed up the search in large databases without missing accuracy. In this paper, we propose a fingerprint indexing algorithm based on novel features of minutiae triplets to improve the performance of fingerprint indexing. The minutiae triplet based feature vectors, generated by ellipse properties and their relation with the triangles formed by the proposed expanded Delaunay triangulation, are used to generate indices and a recovery method based on k-means clustering algorithm is employed. The proposed expanded Delaunay triangulation algorithm is based on the quality of fingerprint images and combines two robust Delaunay triangulation algorithms. This paper also employs an improved k-means clustering algorithm which can be applied over large databases, without reducing the accuracy. Finally, a candidate list reduction criteria is employed to reduce the candidate list and to generate the final candidate list for matching stage. Experimental results over some of the fingerprint verification competition (FVC) and national institute of standards and technology (NIST) databases show superiority of the proposed approach in comparison with state-of-the-art indexing algorithms. Our indexing proposal is very promising for the improvement of real-time AFISs efficiency and accuracy in the near future.

M

Keywords: Fingerprint indexing, Delaunay triangulation, Fingerprint quality estimation, Candidate list reduction, Clustering, Ellipse

PT

AC

10

Biometrics, or biometric recognition, refers to the use of the certain biological characteristics, such as deoxyribonucleic acid (DNA), odor, heart beat, electroencephalogram (EEG), behavioural characteristics, such as gait, signature, voice, handwriting, and morphological characteristics, such as hand shape, face, fingerprint, blood vessel, to uniquely and automatically identify individuals. There is no trait that highlights as the best one. Among them, fingerprints have been extensively used in both forensic applications, such as criminal investigation and corpse identification, and nonforensic applications, such as passport control and distance learning. Fingerprints provide a satisfactory balance between accuracy, robustness, speed, and resource requirements (Giot & Rosenberger, 2012; Maltoni et al.,

CE

5

ED

1. Introduction

15

∗ Corresponding

author. Email addresses: [email protected] (Javad Khodadoust), [email protected] (Ali Mohammad Khodadoust) Preprint submitted to Expert Systems with Applications

2009; Peralta et al., 2015). In general, fingerprint characteristics or features can be classified into three different levels (Galar et al., 2015; Maltoni et al., 2009; Peralta et al., 2014a):

20

• Level-1 (global level): This level refers to the macro details of fingerprint such as the ridge flow structures, pattern types, orientation field (OF), frequency field, and singular points (core and delta). • Level-2 (local level): This level refers to the minute details of ridge flow patterns such as the minutiae points (ridge bifurcation and ending). • Level-3 (fine-detail level): This level includes all dimensional attributes of ridge details such as sweat pores, edge contours, incipient ridges, creases, widths, shapes, and scars. Extraction of level-3 features usually requires fingerprint images with more than 500 dots-per-inch (DPI) resolution. Nowadays, most non-forensic automatic fingerprint identification systems (AFISs) work on 500 DPI images so their recognition algorithms primarily February 20, 2017

25

30

35

ACCEPTED MANUSCRIPT

ridge ending core

pore

scar

AN US

delta

CR IP T

ridge bifurcation

(a)

(b)

(c)

Fig. 1. Examples of the features extracted from fingerprints: (a) ridge bifurcation, ridge ending, core, delta, and pore (FVC 2006 DB2 A, 135 2), (b) scar (FVC 2006 DB2 A, 61 6), and (c) OF (FVC 2006 DB2 A, 1 2).

50

M

ED

AC

55

PT

45

CE

40

use level-1 and level-2 features. Level-2 features can provide a very large amount of discriminatory information to determine the individuality of a fingerprint; thus these features are the most commonly used ones for fingerprint matching. Level-1 features are often used for classification of fingerprint database and are not adequate to determine the uniqueness of a fingerprint. Liu & Cao (2016) show the existence of a deep relationship between level-1 and level-2 features of the fingerprints. Fig. 1 shows the features extracted from the fingerprint images. There are many algorithms for identification of fingerprints in the specialized literature and also in the non-forensic applications. Most of these algorithms have acceptable performance when they deal with small databases (Peralta et al., 2014b), but nowadays the sizes of most of modern fingerprint databases are in the order of millions of entries and their sizes are continuously growing (Mu˜noz-Brise˜no et al., 2013), so finding a person among these databases would be very time consuming. Many approaches have been proposed in the literature to speed up the search and identification processes. Among them, fingerprint classification, fingerprint indexing, hardware improvement, and parallel computing are the most common techniques. Fingerprint classification is a technique used to assign a fingerprint to

60

2

one of the several pre-specified types. This technique can be viewed as a coarse-level matching of the fingerprints. An input fingerprint is first classified into one of the pre-specified types and then it is compared to a subset of the database corresponding to that fingerprint type (Maltoni et al., 2009). Most of the classification algorithms are based on the Galton-Henry classification scheme that consist of five major classes: whorl, left loop, right loop, arch, and tended arch. The main drawback of fingerprint classification is that the number of classes are usually small and fingerprints are unevenly distributed among them, about 7% of the fingerprints belong to two classes of arch and tended arch (GagoAlonso et al., 2013; Galar et al., 2015; Maltoni et al., 2009; Mu˜noz-Brise˜no et al., 2013). Therefore, this approach can not adequately narrow down the search in the large databases. Another mostly referenced solution is the use of fingerprint indexing (Maltoni et al., 2009; Mu˜noz-Brise˜no et al., 2013). The purpose of fingerprint indexing is to extract feature vectors that characterize every inserted fingerprint. Each resulting vector extracted is used to conform an index which is stored in an index table. When a query is performed in the retrieving stage, the number of correspondences between the indices of the query and the stored fingerprints are computed (Mu˜nozBrise˜no et al., 2013).

65

70

75

80

85

90

ACCEPTED MANUSCRIPT

105

110

2. Literature review

In this section, we review the work done by other researchers in field of fingerprint indexing. After reading the articles in the literature, we classified the fingerprint indexing methods into three general categories: minutia based approaches, non-minutiae based approaches, and combined approaches. The extracted feature is a critical parameter in the fingerprint indexing methods. Generally, the difference between indexing methods is mainly related to the selection of the features and the retrieving stage. The challenges involved in achieving

AC

130

PT

125

CE

120

ED

M

115

135

140

2.1. Minutia based approaches These approaches are based on minutia and remain as one of the most interesting approaches in field of fingerprint indexing. Feng & Cai (2006) proposed a fingerprint indexing scheme which utilizes substructures formed by minutia and their surrounding ridges. Vij & Namboodiri (2012) proposed a fingerprint indexing based on local neighborhood information of minutiae. Li et al. (2015a) proposed a feature extraction technique to generate a binary template based on minutia location and direction information and then applied the LSH on the binary feature vectors. Jayaraman et al. (2014) proposed a fingerprint indexing technique which uses spatial and directional information associated with minutiae based on core point. In order to accurately match during searching, a minutiae binary pattern (MBP) representation of the fixed length feature vectors was built from each minutia. Tiwari & Gupta (2015) proposed an indexing algorithm similar to Jayaraman et al. (2014) algorithm. They used a coaxial Gaussian track code (CGTC) instead of the MBP. Jayaraman et al. (2014) and Tiwari & Gupta (2015) algorithms rely heavily on the core point. These algorithms have not taken into account the lack of core point, in arch type fingerprints. These algorithms also used 72 sectors that each minutia is lying in a sector. When a minutiae was placed in overlapping areas, boundary between two sectors, their algorithms have not taken into account this special case. Zhou et al. (2011) proposed a model based approach for embedded systems. Their algorithm uses the rotation-invariant features constructed by the core and minutiae, core minutiae pair (CMP). They used two methods to detect core point and then combined these two methods together. The core point detection method in Zhou et al. (2011) algorithm considers arch type fingerprints. However, this algorithm does not have robust strategy to deal with twin loop type fingerprints. Let M = {mi }ni=1 be a set of the selected minutiae, where mi is ith minutiae and n is the number of minutiae. The mentioned algorithms allow to consider only n minutiae during indexing and thus their complexity is O(n). Jin et al. (2010) used minutiae pairs for fingerprint indexing. A single minutiae point suffers from the elastic deformation. However, the change of a minutiae pair is not evident under rigid transformation. Furthermore, minutiae pairing provides certain degree of immunity against noise due to the use of redundant combinations of two minutiae (Jin et al., 2010). Wang & Hu

CR IP T

100

high efficiency and accuracy in fingerprint indexing continues to motivate and interest researchers.

AN US

95

Finally, other solutions to deal with large databases are related to hardware and parallel computing. There’s no doubt that the hardware improvements, e.g., the improvement in the central processing unit (CPU) and the random access memory (RAM), can increase the performance of the identification process. Sutter (2005) discussed the need to start developing software considering concurrency to fully exploit continuing exponential microprocessors throughput gains. Nowadays, microprocessor manufacturers focused on adding processing cores instead of increasing their clock frequency. Thus, it is very important to prepare the software designs and the code to exploit multicore architectures. The fingerprint recognition problem is naturally parallelizable (Peralta et al., 2014b). In the fingerprint identification (one-to-many comparison) the comparisons of the query print (prob) with each of the fingerprints stored in the database (gallery) are independent. Thus, we can take advantage of parallelism using parallel programming for processing huge databases. Peralta et al. (2014b), Guti´errez et al. (2014), and Jiang & Crookes (2008) proposed hardware and software mechanisms to speed up the search and computations. This paper presents a fingerprint indexing approach based on minutiae triplets. This paper also proposes an expanded Delaunay triangulation algorithm based on the quality of fingerprint images by combining two best Delaunay triangulation algorithms which are very tolerant to distortion and missing minutiae. Experiments over some of the FVC and the NIST databases prove superiority of the proposed approach in comparison with well known algorithms. The rest of the paper is organized as follows. Section 2 reviews some related work in fingerprint indexing. Section 3 deals with feature extraction and quality estimation. Section 4 describes our proposed fingerprint indexing algorithm in detail. Experimental results are presented and analyzed in Section 5. Conclusions and directions of future work are covered in Section 6.

3

145

150

155

160

165

170

175

180

185

190

ED

M

AN US

CR IP T

ACCEPTED MANUSCRIPT

(a)

(c)

(d)

(e)

PT

(b)

CE

Fig. 2. Delaunay triangulation: all images of the columns (a)-(e) are taken from same fingerprint (4 3 (top row), 4 4 (middle row), and 4 5 (bottom row) from FVC 2006 DB2 A). (a) Delaunay triangulation by Bebis et al. (1999) and (b)-(e) Delaunay triangulation hierarchy by Uz et al. (2009) ((b) triangulation using minutiae whose quality is greater or equal to 50, (c) triangulation using minutiae whose weight is equal to 25, (d) triangulation using minutiae whose quality is greater or equal to 10, and (e) the triangulations in columns (a)-(d) combined together).

minutiae pairs and stored the distances with their frequencies in a feature vector. Although this algorithm requires low memory space and less computational complexity, the accuracy of this method is low. Recently, Khodadoust & Khodadoust (2017) proposed a fingerprint indexing algorithm based on minutiae pairs and special type of core point, convex or upper core point. This algorithm exploits level-1 and level-2 features and utilizes ellipse properties. Because the number of minutiae pairs are (n(n − 1)/2), thus behind algorithms con-

AC

(2012) utilized pair-minutiae based fingerprint indexing proposed by Jin et al. (2010) and proposed a geometrical model based on a densely infinite-to-one mapping (DITOM). Although Jin et al. (2010) and Wang & Hu (2012) algorithms are fast and secure, they are not suitable to be used for cases requiring high accuracy rate. In fact, Jin et al. (2010) and Wang & Hu (2012) algorithms were designed for security purposes. Barman et al. (2014) used only minutiae pairs to generate feature vectors. They computed Euclidean distance between

195

200

4

205

210

ACCEPTED MANUSCRIPT

AN US

CR IP T

mum angle of each triangle. Liang et al. (2006) used the Delaunay triangulation for distorted fingerprint indexing. Uz et al. (2009) and Elmouhtadi et al. (2015) proposed fingerprint indexing algorithms based on the hierarchical Delaunay triangulation of the minutiae. Uz et al. (2009) algorithm divides minutiae base on their qualities. The matching is performed hierarchically, starting at the top level of the Delaunay hierarchy, which contains high quality minutiae only, and moving down to lower levels, and ending at the bottom level of the Delaunay hierarchy, which contains all possible minutiae, independent of quality. A major issue when employing Delaunay triangulation for matching is that the spurious minutiae and distortions can change the triangulation locally by introducing spurious triangles or eliminating important triangles (see Fig. 2). They improved the estimated alignment by using affine transformation iteratively. Elmouhtadi et al. (2015) used the barycenter of triangles to make sure that at least three near similar triangles are correctly located in the considered fingerprint. Liang et al. (2007) proposed an extended set of triangles (LoD(P)), where P represents the points associated to the minutiae, that is obtained from the Delaunay triangulation of orders 0 and 1, and tries to solve the problem of the minutiae displacement. The main problem of this algorithm is that the number of generated triangles are low. Also, some geometric features are lost, affecting correctness of the fingerprint indexing. Mu˜noz-Brise˜no et al. (2013) proposed an indexing

PT

AC

220

sider O(n2 ) minutiae pairs during matching. Germain et al. (1997), Bhanu & Tan (2003), Choi et al. (2003), and Zhou et al. (2014) used all triangles formed by the minutiae triplets. Reddy et al. (2012) used most of the triangles formed by minutiae triplets. They first considered all triangles and then filtered some of them using core point for reducing memory and computational complexity. The differences among these algorithms are mainly in the selection of the features and in the retrieving stage. Because the number of minutiae triplets are (n!/(n − 3)!3!), thus they consider O(n3 ) minutiae triplets during indexing, which would be very time consuming. Jain & Prasad (2016) used a special type of triangles, based on special spiral curves, for indexing. This triangulation method outputs O(n) triangles. However, if there are the spurious (added or missed) minutia, the constructed triangles structure will change drastically. Bebis et al. (1999) and Khachai et al. (2014) suggested the use of the Delaunay triangulation for fingerprint indexing. Delaunay triangulation is a special type of triangulation and maximizes the mini-

CE

215

ED

M

Fig. 3. Example of ridge-counting errors. Both images in left column are from the same fingers (20 2 (top) and 20 5 (bottom) from FVC 2004 DB1 A) but due to skin deformation, the ridge count numbers between the two corresponding minutiae are different.

225

230

(a)

(b)

Fig. 4. Example of ridge-counting errors. Due to scars, the ridge count number between the minutiae pair of fingerprint image (99 6 from FVC 2004 DB3A) is wrong.

5

235

240

245

250

255

260

ACCEPTED MANUSCRIPT

290

295

CR IP T

AC

300

305

310

2.2. Non-minutiae based approaches These approaches apply level-1 or level-3 features to index fingerprints. Liu et al. (2005) proposed a fingerprint indexing algorithm based on location, direction, and correlation of fingerprint singularities. Location and direction are obtained by applying a T-shape model to directional field of fingerprint images. The T-shape model analyzes homocentric sectors around the candidate singularities to find lateral-axes and further mainaxes. Then a kind of distortion-tolerant filter, minimum average correlation energy (MACE) filter, is utilized to synthesize templates and perform correlation computation to give the similarity measurement. Shuai et al. (2008) presented a fingerprint indexing based on composite set of scale invariant feature transformation (SIFT) local features. The number of features generated by SIFT on a broad range of scales and locations are large, in comparison with minutiae. Also, most of the minutiae can be detected by SIFT detector. The authors further extended their work and used speededup robust features (SURF) and DAISY features, instead of the SIFT, to index fingerprints (Shuai et al., 2010). However, the number of points generated by SURF and DAISY are very large. Principal component analysis (PCA) was used for reducing the dimensionality and LSH was applied for similarity search. Liu & Yap (2012) proposed a fingerprint indexing which uses rotation invariant fingerprint representation of OFs based on a set of polar complex moments (PCMs). PCMs are capable of describing fingerprint orientation patterns, including singular regions and restoring spurious orientations, in noisy fingerprints. In this scheme, a compact feature vector is formed by a set of rotation moment invariants based on PCMs. Wang et al. (2007) proposed a fingerprint indexing algorithm which utilizes fingerprint orientation model based on 2D Fourier expansions (FOMFE). The FOMFE is robust against noise and it can model ridge

AN US

285

M

280

ED

275

PT

270

form of a cylinder, for fingerprint indexing. They generate fixed length binary vectors by the MCC. In the retrieving stage, a local sensitive hashing (LSH) algorithm is used for finding similarities between the binary vectors. Wang et al. (2014) proposed a 3D geometric hashing approach, instead of the LSH, for fingerprint indexing. They exploited a binary local descriptor for geometric hashing. If the number of minutiae templates of a gallery are m and each template contains n minutiae, LSH and geometric hashing are used to index O(mn) basis points, the minutiae point that defines the local neighbourhood invariants, and geometric dictionaries, respectively.

CE

265

algorithm based on an extension of the Delaunay triangulation (expanded triangle set ETk (P), where P and k represent the points associated with the minutiae and order of Delaunay triangulation, respectively), combined with a strategy that allows to discard bad quality triplets. They used the Delaunay triangles with higher order than 1 to generate a set of triangles that acquire more geometric information, and show that their algorithm improved the identification accuracy. The authors further proposed an indexing algorithm using expanded Delaunay triangulation and core point to improve the accuracy of the indexing (Mu˜noz-Brise˜no et al., 2014). Their algorithm deals with erroneous matches between features located in different places of the impressions and reduces the erroneous matches. Also, their algorithm has robust strategy to deal with twin loop and arch type fingerprints. However, it does not cover some partial fingerprints, which the core point may not exist. GagoAlonso et al. (2013) proposed a new expanded triangle set R. This strategy tries to solve the problem of the missing and spurious minutiae. They introduced a new criterion for choosing triangles, considering Delaunay triangles and some redundant triangles. The expanded triangle set R reduces the negative effect produced by spurious and missing minutiae. Delaunay triangulation allows to consider only O(n) minutiae triplets during indexing. The main drawback of Gago-Alonso et al. (2013) and Mu˜noz-Brise˜no et al. (2013) approaches is the selected feature vectors. They used ridge count to generate feature vectors. Problems arise when the ridgecounting line (triangle side) is parallel to the ridge structures, the line may meet the same ridge at no point, at one point, at two points, or at more than two points, due to skin deformation (see Fig. 3). Also, if there are large ridge-gaps (scars) in the intersections of ridges and ridge-counting line, the ridge count feature may be wrong (see Fig. 4). Iloanusi et al. (2011) proposed a new structure based on minutia quadruplets. They used convex quadruplets, a special type of quadruplets, for fingerprint indexing. Their algorithm suffers from high computing complexity, O(n4 ). Mansukhani et al. (2010) and Bai et al. (2015) present the fingerprint indexing schemes based on minutiae K-plets, K-nearest neighbors of each minutia. They employed the index trees to index fingerprint images. Because each minutiae chooses K other minutiae from its local neighborhood, the number of K-plets are O(n). K-plet can not ensure a connection between all parts of the fingerprint. Cappelli et al. (2011a) applied minutia cylinder-code (MCC), a three dimensional (3D) data structure in the

6

315

320

325

330

335

340

345

350

355

360

ACCEPTED MANUSCRIPT

390

395

400

CR IP T

AC

405

410

415

proposed a score-level fusion indexing approach by combing their method with the MCC indexing method. The authors afterwards proposed an indexing algorithm using only minutia location and direction information (Li et al., 2015b). They also fused their method and the MCC indexing. Their experiments show the higher accuracy of fused method, against the proposed method. Ross & Mukherjee (2007) presented an fingerprint indexing scheme based on minutiae triplets by utilizing ridge curve parameters in conjunction with minutiae information. They first employed Delaunay triangulation and then extracted ridge curve features from a triplets. Biswas et al. (2008) proposed a fingerprint indexing method which uses ridge curve features obtained from triplets. In this scheme, instead of triangles of constructed by Delaunay triangulation in (Ross & Mukherjee, 2007), all possible triangles are considered. Dremin et al. (2014) proposed a combined scheme based on the modified Delaunay triangulation in (Khachai et al., 2014), the MCC, and maximum a posteriori (MAP)classifier learning procedure. Li, Yau, & Wang (2006) presented a fingerprint indexing algorithm based on three kinds of symmetrical measurements, core type filter, delta type filter, and parallel type filter, to map the different structures of fingerprints into three different feature spaces. The main steps of this algorithm is computation of orientation image, computation of the complex filter’s response, normalization of feature vectors, reduction of the feature vectors dimension, and combination of features for fingerprint indexing. Deblonde & Morpoho (2014) proposed a fingerprint indexing scheme based on local patterns of ridge flow centered on minutiae. These local descriptors are projected on a learned dictionary of ridge flow patches, with a sparsity-inducing algorithm. The sparse decomposition allows to replace the ridge flow patches by a compressed signature with a reduced loss of accuracy. They also combined these descriptors with the MCC. Boer et al. (2001) combined features extracted from all possible triangles formed by minutiae triplets, the registered directional field (DF) estimate, and FingerCode and shown their indexing scheme are able to search a database more effectively than a simple linear scan. Paulino et al. (2013) proposed an indexing technique that combines level-1 and level-2 features, minutiae, singularities, orientation and frequency fields information. They focus on latent fingerprints. Their approach consists of combining a minutiae triplet based indexing, MCC indexing, an OF descriptor indexing technique, filtering based on singularities, and averaged ridge.

AN US

385

M

380

ED

375

2.3. Combined approaches Cappelli (2011) proposed a fingerprint indexing algorithm which uses ridge frequencies and orientations. His algorithm is based on global and local features: average ridge frequency, a measure of horizontal orientation, ridge frequencies and orientations, aligned with respect to core points symmetry. He also designed ad-hoc score measures to improve effectiveness and efficiency of his algorithm. Zhou et al. (2015) combined a minutiae triplet based indexing scheme and the FOMFE coefficients based indexing scheme for partial fingerprint indexing. Wang et al. (2015) extended their prior work (Wang et al., 2014) and proposed an integrative indexing algorithm that uses combination of the LSH and geometric hashing merits. They applied the theory of Markov random field (MRF) to model bit correlations in MCC. They further designed a hierarchical fingerprint indexing scheme for binary hash codes which can significantly reduce the code length for each minutiae representation. Su et al. (2016) proposed a fingerprint indexing algorithm which combines pose estimation algorithm with an improved LSH for MCC. Pose determined by the well positioned fingerprint and used as global spatial constraint to refine the matched minutiae. Parmar & Degadwala (2016) fused minutiae vicinity (MV) and MCC schemes in features level for their proposed indexing. They applied a support vector machine (SVM) based learning algorithm to train the system using the extracted features. Mngenge et al. (2015) used the LSH, histograms, and clustering to reduce dimension of feature vectors formed by minutiae. First, the LSH and histograms applied on feature vectors to create fixed length feature vectors and afterwards spectral clustering used to create classes. Finally, classes are indexed through three similarity measures, Euclidean and Minkowski distances, and Cosine similarity. Note that Euclidean distance is a special case of Minkowski distance. Li, Yang, & Busch (2014) proposed a fingerprint indexing method based on ridge information and minutia details, including location and direction. They also

PT

370

OFs without requiring the prior knowledge of singularities. Unlike conventional indexing techniques that are based on raw OF data, the FOMFE coefficients is exploited to generate the feature vectors. Xu & Hu (2015) proposed a fingerprint indexing method based on OF modeling using sparse representation. In contrast to the FOMFE, the sparse OF representation has three advantages: better anti-noise property, less storage required, and intrinsic OF patterns capture.

CE

365

7

420

425

430

435

440

445

450

455

460

465

ACCEPTED MANUSCRIPT

3. Feature extraction and quality estimation

been proposed in the literature. Usually, fingerprint images are enhanced either the frequency or the spatial domains. Yang et al. (2013) proposed a two-stage enhancement scheme in both the frequency domain and the spatial domain. They first enhance the fingerprint image in the spatial domain with a spatial ridge-compensation filter by learning from the images. With the help of the first step. Afterwards, the second stage filter, a frequency bandpass filter that is separable in the radial- and angular-frequency domains, is used. In this paper, we employ Yang et al. (2013) algorithm to enhance fingerprint images.

3.1. Pose estimation

480

485

PT

495

3.3. Quality estimation and minutiae extraction The performance of AFISs depends heavily on the fingerprint images quality. Therefore, quality estimation of the fingerprint images is very important process for these systems. Fingerprint image quality can be defined as a clearness of ridges and valleys and/or the extractability of the singularities or minutiae. Low-quality fingerprint images result in errornous minutiae/singularities, thus degrading the performance of the system. This means that if the system does not use all true minutiae/singularities or uses some false minutiae/singularities, the recognition performance will decrease (Lee et al., 2008). Different methods have been proposed in the literature in order to estimate

ED

M

490

CR IP T

475

One of the main challenges in the AFISs is distortion problem, which can have negative effect on identification process. The distortion problem caused by pressing the finger against the sensor surface, due to elastic distortion of finger skin. Registration of multiple impressions of the same finger is beneficial to fingerprint indexing and matching methods. One of the main differences between these methods is how they deal with fingerprint registration problem. Some of the methods perform relative/pairwise registration. However, these methods are not accurate and many false matches can be found. To address false correspondences, Germain et al. (1997) used pairwise registration between each query fingerprint and gallery fingerprint. Unfortunately, this approach is very time consuming. Mu˜noz-Brise˜no et al. (2014) proposed feature vectors based on relative minutia position regarding a core point which can to be tolerant to distorted impressions. Yang et al. (2014) proposed a fingerprint pose estimation algorithm based on Hough transform, which utilizes a whole fingerprint to predict the pose. The pose estimation allows us refine the matched minutiae with global spatial constraint. The estimated poses in Yang et al. (2014) algorithm are not consistent in multiple impressions of a same fingerprint. Su et al. (2016) proposed a fingerprint pose estimation algorithm which can register fingerprints in to a common finger coordinate system. In this algorithm, in stead of singularities, ridge orientation information is used as features. In this paper, we employ pose estimation proposed by Su et al. (2016).

AN US

470

3.2. Segmentation and image enhancement

AC

505

Fingerprint image segmentation is a critical part in AFISs which can improve the accuracy of the feature extraction and reduce the computation time. It is employed to separate a fingerprint foreground from the image background. Many methods can be found to segment of fingerprint images in the literature. Fahmy & Thabet (2013) proposed a simple and fast method based on applying some morphological operation. In this paper, Fahmy & Thabet (2013) method is used to segment fingerprint images. After carrying out the fingerprint image segmentation, image enhancement has been applied. The main goal of a fingerprint image enhancement algorithm is improving the distinctive and clarify of ridge structures. Various fingerprint image enhancement algorithms have

510

(a)

(b)

(c)

(d)

CE

500

Fig. 5. Fingerprint image enhancement and quality estimation. (a) segmented image, (b) enhanced image, (c) binarized image of (b), and (d) quality map.

8

515

520

525

530

535

540

ACCEPTED MANUSCRIPT

555

560

570

4. The indexing approach

PT

The indexing approach uses novel features of minutiae triplets to improve performance of indexing. In this section, we describe the details of the indexing approach. Fig. 9 shows the overall scheme of our indexing

AC

CE

575

ED

M

565

4.1. Creating the index In this subsection, we propose an indexing algorithm that uses a combination of the expanded Delaunay triangulations, ETk (P) and R, were proposed by Mu˜nozBrise˜no et al. (2013) and Gago-Alonso et al. (2013), for reducing negative effects of distortion and erroneous minutiae in fingerprint images. Our algorithm removes disadvantages of these algorithms and uses them to generate a new expanded Delaunay triangulation. Our feature vectors are build by triangles formed by the proposed expanded Delaunay triangulation and uses ellipse properties and their relation with the triangles. Hence, our indexing algorithm is performed by organizing the minutiae into a set of Delaunay triangles. In our algorithm, minutiae weights have four values w1 , w2 , w3 , or w4 , where w1 , w2 , w3 , and w4 correspond to lower-, low-, medium-, and high-quality minutiae, respectively (0 < w1 < w2 < w3 < w4 < 1 and w1 +w2 +w3 +w4 = 1). First, we only consider the high-quality minutiae (qi ≥ τ1 ) and then apply the expanded Delaunay triangulation ET k , without refinement of the triangle set ET k , proposed by Mu˜noz-Brise˜no et al. (2013). The qi is quality of ith minutiae from minutiae set M and τ1 is a quality threshold. Depending on the minutiae ratio MR1 in this quality level, ratio of the number of minutiae in set M1 to the number of minutiae in set M, i.e., N1 /N, we can select the value k for ET k . Note that if the minutiae ratio MR1 is low, the value k should be sufficiently high. In next level of quality, we consider the medium-quality minutiae (τ2 ≤ qi < τ1 ) and then we obtain the minutiae ratios MR2 , i.e., N2 /N, and MR1,2 , i.e., N2 /(N1 + N2 ). Depending on the minutiae ratios MR2 and MR1,2 , we select value k for ET k . Then we consider all minutiae in this quality level and all minutiae of high-quality level and afterwards we apply the expanded Delaunay triangulation ET k similar to Delaunay triangulation of high-quality level. After applying Delaunay triangulation process, we should consider triangles that exist in this quality level and do not exist in high-quality level. In third level of quality, i.e. lowquality minutiae, we consider minutiae (τ3 ≤ qi < τ2 ) and then we apply the expanded Delaunay triangulation R proposed by Gago-Alonso et al. (2013). Then, we should consider triangles that exist in this quality level and do not exist in high and medium -quality levels. In lower-quality level, we consider remain minutiae (0 < qi < τ3 ) and then we apply the expanded Delaunay triangulation R. According to other levels, we only consider all triangles that exist in this quality level and do not exist in other quality levels. Algorithms 1, 2, and 3

CR IP T

550

algorithm.

AN US

545

fingerprint images quality. In this paper, the NIST fingerprint image quality (NFIQ) in NBIS is used to estimate the quality of fingerprint images. The NFIQ computes four maps in each block: direction map, low contrast, low flow, and high curve. These maps are summarized into one quality map, containing five levels of quality. Fig. 5 shows results of the fingerprint image segmentation by Fahmy & Thabet (2013) algorithm, fingerprint image enhancement by Yang et al. (2013) algorithm, and quality estimation by NFIQ in NBIS on fingerprint image f0551 08 from NIST SD4. Minutiae extraction is a general and essential task in most of fingerprint recognition systems. Generally, minutiae are extracted from the skeletonized fingerprint image. The skeletonized image is obtained from either the gray-scale or binary images. Other methods extract minutiae without using the thinning operation. Liu & Cao (2016) presented an approach based on orientation and frequency fields to extract minutiae. Fronthaler et al. (2008) used parabolic symmetry to extract the position and direction of a minutia. In this paper, we utilize the minutiae extraction algorithms proposed by Zhao & Tang (2007) and Peralta et al. (2014a). These two algorithms, cannot remove all border minutiae by themselves. In order to remove of more border minutiae, both filtering algorithms are employed. First, we apply Peralta et al. (2014a) algorithm, convex hull (CH) filter, on the minutiae set (see Fig. 6) and then we employ Zhao & Tang (2007) algorithm on the remaining minutiae.

(a)

(b)

(c)

Fig. 6. Minutiae extraction and the CH. (a) original fingerprint image (f0016 08 from NIST SD4), (b) extracted minutiae after segmentation and enhancement processes, (c) The CH of the extracted minutiae.

9

ACCEPTED MANUSCRIPT

Algorithm 2. Pseudo-code for expanded triangle set ET

show details of the proposed expanded Delaunay triangulation algorithm. After detecting the triangles, we should obtain feature vectors. Our proposal utilizes ellipse properties and their relation with the triangles. Before we continue, it is necessary to provide a brief review of the ellipse and introduce some its attractive properties. Several definitions can be found in the literature for ellipse. An ellipse is defined as the locus of all points in the plane such that the ratio of the distance of each point on the curve from a fixed point is said to be the focal point (foci or focus) to the distance from that same point on the curve to a fixed line is said to be directrix is a constant (Trivedi & Trivedi, 2010). This ratio is called the eccentricity of the ellipse, e. According to Fig. 7(a), the distances of the point p on the curve to the focal points F1 and F2 are correspondingly denoted by d1 and d2 . This results

CR IP T

Input: Minutiae set Me Output: Triangle set ET 1: T Dk ← ∅; 2: DT ← Delaunay T riangulation(Me ); 3: CH ← Convex Hull(Me ); 4: for each side mi m j in DT AND mi m j < CH AND mi m j shared by 4mi m j ml , 4mi m j mt do ml mt ← Connect(ml , mt ); 5: 6: A ← Points In Circumcircle(4ml mt m j ); 7: B ← Points In Circumcircle(4ml mt mi ); 8: if A ≤ k AND B ≤ k then 9: T Dk ← T Dk ∪ 4ml mt m j ∪ 4ml mt mi ; 10: ET ← DT ∪ T Dk (Me ); 11: return ET ;

Algorithm 3. Pseudo-code for expanded triangle set R

AN US

Input: Minutiae set Mr Output: Triangle set R 1: DT 0 ← Delaunay T riangulation(Mr ); 2: E ← Delaunay Graph(Mr ); 3: for each ml ∈ Mr do 4: Zl ← {m j | {ml , m j } ∈ E}; 5: Hl ← Delaunay T riangulation(Zl ); 6: R ← DT 0 ∪ H1 ∪ H2 ∪ ...HNl ; 7: return R;

Algorithm 1. Pseudo-code to generate of triangle set T

Input: Minutiae set M Output: Triangle set T 1: for each mi ∈ M do . i = 1, 2, ..., N 2: if qi ≥ τ1 then 3: M1 ← mi ; 4: else if qi ≥ τ2 then 5: M2 ← mi ; 6: else if qi ≥ τ3 then 7: M3 ← mi ; 8: else 9: M4 ← mi ; 10: M1,2 ← M1 ∪ M2 ; 11: M1,2,3 ← M1,2 ∪ M3 ; 12: M1,2,3,4 ← M1,2,3 ∪ M4 ; 13: MR1 ← N1 /N; . N1 is the number of minutiae in minutiae set M1 14: MR2 ← N2 /N; 15: MR1,2 ← N2 /(N1 + N2 ); 16: if MR1 ≥ τ MR1 then 17: T 1 ← ET (M1 , κ); 18: else 19: T 1 ← ET (M1 , κ0 ); . κ0 > κ 20: if MR2 ≥ τ MR2 AND MR1,2 ≥ τ MR1,2 then 21: T 2 ← ET (M1,2 , ϑ); 22: else if MR2 ≥ τ MR2 AND MR1,2 < τ MR1,2 then 23: T 2 ← ET (M1,2 , ϑ0 ); 24: else if MR2 < τ MR2 AND MR1,2 ≥ τ MR1,2 then 25: T 2 ← ET (M1,2 , ϑ00 ); 26: else 27: T 2 ← ET (M1,2 , ϑ000 ); . ϑ < ϑ0 < ϑ00 < ϑ000 28: T 3 ← R(M1,2,3 ); 29: T 4 ← R(M1,2,3,4 ); 30: T 0 ← T 2 − T 1 ; 31: T 00 ← T 3 − {T 1 , T 2 }; 32: T 000 ← T 4 − {T 1 , T 2 , T 3 }; 33: T ← {T 1 , T 0 , T 00 , T 000 }; 34: return T ;

. E is edge set . l = 1, 2, ..., Nl

ED

M

in the two-center bipolar coordinate equation d1 + d2 = 2a

where a is the semimajor axis and the origin of the coordinate system is at one of the focal points. The standard equation of an ellipse whose major and minor axes are along x-axis and y-axis, respectively, is: x a

PT

(1)

!2

+

y b

!2

= 1, a > b > 0

(2)

CE

where b is the semiminor axis and x, y are the coordinates of any point on the ellipse. If the major axis is along y-axis and minor axis along x-axis then the equation of ellipse is:

AC

x a

!2

+

y b

!2

= 1, b > a > 0

(3)

For an ellipse given by Eq. (2), the focal points are points that lie along the x-axis in the positions F1 = (c1 , 0) and F2 = (c2 , 0) with a2 = b2 + c2

(4)

The distance from the center to either negative focal point (F1 ) or positive focal point (F2 ) is the fixed value c. The length of the whole major axis is 2a, the distance 10

ACCEPTED MANUSCRIPT

y

y

b

d1

r

d2 a

F1

c1

c2

F1 θ

x

F2

l1

(a)

a(1 − e2 ) 1 ± e cos θ

M

(5)

ED

where e is the eccentricity of the ellipse. The eccentricity of the ellipse is calculated as follows: c a

(6)

AC

CE

PT

In this paper, we propose a fingerprint indexing algorithm based on minutiae triplets which uses ellipse properties to construct feature vectors. The ellipse has deep relations to triangle. The proposed feature vector Ve associated to three minutia mi , m j , mk (triangle 4mi m j mk in Fig. 8) from minutiae set M is represented by an ellipse with major axis A = 2a and minor axis B = 2b whose two minutiae mi and m j , the vertices pair corresponding to the largest side of 4mi m j mk , are adapted to the focal points of ellipse. Fig. 8 shows ellipse properties using minutiae triplet. The feature vector Ve is constructed as follows: Ve = (A, B, θ, α, β)

580

l2

AN US

between the focal points is 2c, c1 = c2 , and the distance across the ellipse in the shorter direction is 2b. In polar coordinates, according to Fig. 7(b), the equation of an ellipse is calculated as follows (Lawrence, 1972):

e=

F2

a

x

(b)

Fig. 7. The ellipse and some of its mathematical properties.

r=

b

P

CR IP T

P

(7)

where A is the sum of the middle and the smallest sides of 4mi m j mk , i.e., d jk + dki , B denotes minor axis of ellipse that is calculated by the Eq. (4), θ is the angle between the sides di j and dki , α is the orientation differences between the minutiae correspond to left vertex, 11

mi , and right vertex, m j , of side di j , and β is the differences between orientation of the minutiae mk and the direction of the side di j . Generally, triangles are classified, depending on relative sizes of their sides, into three types: scalene, that all sides are different, isosceles, that two sides are equal, and equilateral, that all three sides are equal. Note that the equilateral triangle is a special case of isosceles triangle. In our proposal, if a triangle is scalene, we only consider the largest side of triangle. If a triangle is isosceles, we only consider the side that is differ from other sides. Finally, if a triangle is equilateral, we consider the side that the difference between its left and right minutiae orientations is smallest. Note that the number of ellipses are three times the number of triangles that can be formed with the minutiae. Thus, we should consider one side of a triangle. If we use all sides of a triangle and do not apply Delaunay triangulation, therefore we should consider (n!/(n − 3)!2!) ellipses during indexing which would be very time consuming. Delaunay triangulation reduces O(n3 ) to O(n). According to Fig. 8 the feature vector Ve is constructed as follows: For three minutiae mi , m j , and mk from minutiae set M, the size of sides di j , d jk , and dki is obtained by Euclidean distance:

585

590

595

600

605

ACCEPTED MANUSCRIPT

mk

mk

mk djk

dki

djk

dki θ

mi

(a)

mj

dij

F1 = m i

C = dij

F2 = mj

CR IP T

mj

mi

(c)

(b)

Fig. 8. Generation of the feature vector Ve : (a) three minutiae mi , mj , mk from minutiae set M, (b) creating triangle 4mi mj mk , (c) considering largest side of 4mi mj mk and creating its ellipse.

AN US

Finally, β is obtained as follows:

q dij = (xi − xj )2 + (yi − yj )2 q djk = (xj − xk )2 + (yj − yk )2 q dki = (xk − xi )2 + (yk − yi )2

(8)

where (xi , yi ), (xj , yj ), and (xk , yk ) are coordinates (x, y) of minutiae mi , mj , and mk , respectively. Note that we can also obtain the size of the sides by Eq. 5 and Fig. 7(b), in polar coordinates. According to ellipse property:

M

610

γ = θk − θij , −360◦ < γ < 360◦    i f 0 ≤ γ < 360◦ γ β=  360◦ + γ i f − 360◦ ≤ γ < 0

ED

615

A = 2a = dki + djk C = 2c = dij

According to Eq. (4), we calculate B as follows: B = 2b =

p

PT

620

(dki + djk

)2

− (dij

)2

CE

Also, according to cosine rule: 625

θ = arccos

(dki )2 +(dij )2 −(djk )2 , 2dki dij

0 < θ < 180◦

AC

Note that we can also obtain θ by Eq. 5 and Fig. 7(b), in polar coordinates.

630

α is calculated as follows:

635

ω = θi − θj , −360◦ < ω < 360◦    i f 0 ≤ ω < 360◦ ω α=  ◦ 360 + ω i f − 360◦ ≤ ω < 0

12

The main reason for using B instead of C is that in the circle, special case of ellipse, value C is 0. Algorithm 4 shows the proposed feature vector extraction. The feature vector Ve has five dimensions and it can considered as a point in a five-dimensional (5D) space. Due to distortion, it is reasonable to consider the tolerance areas. The feature vector Ve is a point in the continuous space, thus Ve should be discretized. In this paper, according to the our previous work (Khodadoust & Khodadoust, 2017), we convert feature vectors in continuous space into equivalent feature vectors in discrete space and we obtain discrete feature vector Vd . The Vd is a fixed-length vector, thus we can use clustering, tree, or hashing based techniques to index feature vectors. In this paper, we utilize a k-means clustering algorithm, one of the most widely used algorithms for clustering analysis, to create index space. Clustering algorithms distribute the feature vectors, or objects, into groups, clusters, of feature vectors, such that feature vectors in a cluster are more similar to each other than to feature vectors in other clusters. In a nutshell, k-means is a simple and fast clustering algorithm that attempts to find k either overlapping or non-overlapping clusters (Khanmohammadi et al., 2017). The k-means clustering algorithms are very simple, fast, and robust, and can be easily parallelized and used for a wide variety of data types. Nevertheless, k-means clustering algorithms have some drawbacks, such as the sensitivity of the algorithm to the initial cluster prototypes and the require

640

645

650

655

660

665

670

ACCEPTED MANUSCRIPT

680

685

algorithm for clustering (CF-EAC). The SF-EAC uses MapReduce programming model as a portable and scalable framework that can deal with large data sets. The MapReduce programming model splits the data set into subsets, called blocks. After the split, each block undergoes clustering, forming partial clustering solutions. These partial solutions are then combined and clustered once more, which results in the final clustering solution. The aim of the CF-EAC is to find clustering solutions with quality close to the SF-EAC, but in less computational time. In this paper, we employ the CF-EAC algorithm to index our feature vectors. The CF-EAC algorithm, which is a variant of the fast evolutionary algorithm for clustering (F-EAC) algorithm (Naldi et al., 2011), has two stages: the generation of clustering models to represent disjoint portions of the data sets and the combination of the results of the models obtained in the previous stage. Assuming that the number of feature vectors in the data set are n and the feature vectors are evenly distributed among the b blocks, the number of feature vectors per block are nb ≈ n/b. The complexity of the first stage is O(g · |P| · t · kmax · nb ), where g is a vector of integers with n positions where each position of this vector corresponds to a feature vector in the data set, |P| is the population size of the set with all partitions, t is the maximum allowed number of k-means iterations, and kmax is the maximum number of clusters found during the evolutionary search. In the second stage of the CF-EAC 0 algorithm, the complexity is O(g · |P| · t · kmax · nr ), where 0 kmax is the maximum number of clusters explored by the weighted F-EAC and nr is the number of centroids resulting from the first stage. Since nr  nb , the complexity of the CF-EAC algorithm can be considered as O(g · |P| · t · kmax · nb ).

CR IP T

675

to provide the number of clusters, k. Nowadays, the correct and optimal number of clusters are a challenge and still remained as an open issue. There are many discussions about the issue of choosing the number of clusters. Considering that there are numerous k-means clustering algorithms proposed in the literature, it may be argued that why some researchers are focused on determining the number of clusters. Recently, Oliveira et al. (2017) proposed two improved k-means clustering algorithms which can automatically achieve the optimal number of clusters and best clustering structures for big data. Their algorithms are called scalable fast evolutionary algorithm for clustering (SF-EAC) and combination of fast evolutionary

AN US

Algorithm 4. Pseudo-code to generate feature vector set V

PT

ED

M

Input: Triangle set T l ∈ T, l = 1, 2, 3, 4 Output: Feature vector set V 1: for each T l ∈ T do 2: i0 ← 0; 3: for each 4mi m j mk ∈ T l do 4: ED ← Euclidean Distance(mi , m j , mk ); 5: if 4mi m j mk is scalene then . di j , d jk , dki 6: d ← Maximum(di j , d jk , dki ); 7: else if 4mi m j mk is isosceles then 8: d ← Di f f erent(di j , d jk , dki ); 9: else . di j = d jk = dki 10: θi j ← S ubtraction(θi , θ j ); . θi − θ j 11: if θi j < 0 then 12: θi j ← 360 + θi j ; 13: θ jk ← S ubtraction(θ j , θk ); 14: if θ jk < 0 then 15: θ jk ← 360 + θ jk ; 16: θki ← S ubtraction(θk , θi ); 17: if θki < 0 then 18: θki ← 360 + θki ; 19: θ s ← Minimum(θi j , θ jk , θki ); 20: d ← S ide(θ s ); 21: C ← S ize(d); 22: A ← Addition(edl , edr ); . ed1 ∈ ED and ed2 ∈ ED are size of sides that connect to left and right vertices of d, respectively 23: B ← 2 × S qrt((A/2)2 − (C/2)2 ); 24: θ ← arccos((edl 2 + d2 − edr 2 )/(2 × edl )); 25: α ← S ubtraction(θl , θr ); . θl and θr are left and right minutiae orientations of d, respectively 26: if α < 0 then 27: α ← 360 + α; 28: β ← S ubtraction(θa , θd ); . θa is orientation of the minutiae on the curve of ellipse and θd is direction of d from its left minutiae to its right minutiae 29: if β < 0 then 30: β ← 360 + β; 31: i0 ← i0 + 1; 32: v ← (A, B, θ, α, β); 33: V ← (v, i0 ); 34: return V;

AC

CE

4.2. Searching In the retrieving stage, the quality estimation, the pose estimation, a proximity measure, and a candidate list reduction criteria are used to retrieve and recover a list of candidates with the highest degrees of affinity with the probe. In the offline stage, the CF-EAC algorithm, an improved k-means clustering, is applied to assign feature vectors in clusters. Furthermore, the poses of gallery fingerprint images are estimated. The pose estimation algorithm used in this paper is based on ridge orientation information and can register fingerprints into a common finger coordinate system. In the online stage, the quality of probe is estimated to assign a weight to take into account the significance and importance of each feature vector. Furthermore, the 13

690

695

700

705

710

715

720

ACCEPTED MANUSCRIPT

Indexing stage

Retrieving stage

Quality estimation

Pose estimation

Segmentation

CR IP T

Segmentation

Pose estimation

Segmented image

Segmented image

Two-stage enhancement

Two-stage enhancement

Enhanced image

Enhanced image

Binarization

Binarization

Binarized image

AN US

Binarized image Thinning

Thinning

Skeletonized image

Skeletonized image

Minutiae extraction

Minutiae extraction

Minutiae set

Feature vector creation

Feature vector set

M

Minutiae set

Feature vector creation

Feature vector set

Index table

Match calculation

PT

Storing

ED

Index calculation

Candidate list

CE

Database

Candidate list reduction

AC

Final candidate list

Fig. 9. Proposed fingerprint indexing and retrieving.

pose estimation is used to reduce false correspondences. Although the descriptors in most of algorithms are invariant to rotation and translation, descriptors of mated minutiae still would vary due to noise. There are several methods to measure of proximity, similarity or dissim-

ilarity, of quantitative feature vectors (Xu & Wunsch, 2005). Minkowski, Euclidean, City-block, Sup, Mahalanobis, Point symmetry distances, Pearson correlation and Cosine similarities are the most important of them. The Minkowski distance between feature vectors 14

ACCEPTED MANUSCRIPT

   min(Kρ ) − 1, nR =   n,

V = (x1 , x2 , ..., xd ) ∈ Rd and V0 = (x10 , x20 , ..., xd0 ) ∈ Rd defined as D=

d X l=1

735

1 N

The City-block, Euclidean, and Sup distances are special cases of Minkowski metric at n = 1, n = 2, and n → ∞, respectively. The Euclidean distance measure is employed in this paper. Finally, a candidate list reduction criteria is employed to reduce the candidate list. Generally, given a probe, the candidate list achieved by fingerprint indexing algorithm should be as short as possible, but it should not be contained the fingerprints dissimilar to the probe. Most of indexing algorithms are based on two main steps (Cappelli et al., 2011b): production of initial candidate list (ICL) and a reduced candidate list (RCL). In the ICL, each candidate consists of a database fingerprint identifier and a distance measure, or similarity score. The RCL is derived from the ICL, by applying a reduction criterion. Generally, two reduction criteria have been used in the literature: top ranking and fixed threshold. In top ranking, a fixed number of candidates with the highest scores is achieved, but in fixed threshold only fingerprints with indexing score higher than a fixed threshold are considered. Given a probe, the ICL scores contain more useful information than the RCL and obtain shorter candidate list, without significantly reducing the hit rate. Cappelli et al. (2011b) proposed two candidate list reduction criteria, variable threshold on score difference and variable threshold on score ratio. Their reduction criteria allow a significant reduction of the candidate list with great improvement in the indexing performance. In this paper, we apply variable threshold on score ratio criteria to reduce the candidate list. Given a fingerprint database and a probe, let ICL = (idk , sk ), k = 1, 2, ..., n be the sorted list of n initial candidates produced by the indexing algorithm. In variable threshold on score ratio, each score is compared to a score s0k , with k0 < k, 0 < sk ≤ sk0 ≤ 1; the list is truncated just before the first score sk such that sk0 /sk is larger than a given value ρ. Position k0 is obtained according to parameter p, a percentage value with respect to the total number of N database fingerprints. A reduction criterion R retains the first nR candidates of the ICL, where the number nR , 0 ≤ nR ≤ n, is determined on the basis of the scores in ICL itself.

This section presents all the questions raised with the experimental study and the results obtained. Subsection 5.1 describes the hardware and software environment used in our experiments. Subsection 5.2 details the data sets used. Subsection 5.3 shows the parameters of the our algorithm and discusses the obtained results. 5.1. Hardwares and softwares

• Cores: 4 (8 threads)

760

765

• Clock speed: 4 GHz

780

• Cache: 8 MB • RAM: 12 GB

ED

• Operating system: Microsoft Windows 10 x64 • Programming languages: C++, MATLAB, Java • Libraries: OpenMPI 2.0.2, OpenCV 3.2

785

• Softwares: Microsoft Visual Studio 2015, MATLAB 2016 5.2. Data sets This subsection describes the six data sets used for this study. These data sets are related to the FVC and NIST databases.

AC

755

775

• Processor: Intel® Core™ i7-4790K

PT

750

770

The experiments were performed on a desktop personal computer (PC) with the following features:

CE

745

≤ p ≤ 1, and 0 ≤ ρ ≤ 1

5. Experiment results

M

740

) ( sk0 > ρ , k0 = max(1, k − dp · Ne), (10) with Kρ = k sk

(9)

CR IP T

730

!n

AN US

725

|xl − xl0 |1/n

if Kρ , ∅ otherwise

• FVC 2000 DB2: This data set has two different sets A and B. Set A contains the fingerprint images from the first 100 fingers, while set B has the images from the other 10 fingers (8 impressions per finger and 880 in total). Each data set is captured using TouchChip sensor, a low-cost capacitive sensor, by ST Microelectronics. The size, format, and resolution of all fingerprint images in this data set are 256 × 364 pixels, tagged image file (TIF), 500 DPI, respectively. 15

790

795

800

ACCEPTED MANUSCRIPT

825

830

835

CR IP T

5.3. Evaluation setup, parameters, and results

845

Furthermore, the OpenMPI 2.0.2 library is used for the communication, synchronization of processes, and handling the threads with in each process. To compare the performance of our indexing algorithm with other algorithms, it is necessary to perform all the indexing algorithms by the same architecture and platform. Therefore, we believe that the results are fairly comparable. First, the pose estimation algorithm (Su et al., 2016) has been used to estimate pose of fingerprint images. Furthermore, the NFIQ in NBIS has been employed to estimate quality of fingerprint images. The fast and accurate segmentation algorithm (Fahmy & Thabet, 2013) has been employed to segment of fingerprint images. In our previous work (Khodadoust & Khodadoust, 2017), we discussed about the problems that exist in some fingerprint images and we used a strategy to cope these problems. After carrying out the segmentation process, twostage enhancement scheme proposed by Yang et al. (2013) has been employed to enhance quality of fingerprint images. Then, we applied binarization and thinning processes on the enhanced images. Afterwards, we employed minutiae extraction process proposed by Zhao & Tang (2007). Although segmentation process can remove some spurious minutiae, very spurious minutiae may still be remained in fingerprint images. Zhao & Tang (2007) algorithm can not remove all border minutiae in fingerprint boundary. Therefore, we should also apply another strategies to remove more border minutiae. We employed the CH filter (Peralta et al., 2014a) and Zhao & Tang (2007) algorithm to remove border minutiae. First, we should apply the CH filter and afterwards we apply Zhao & Tang (2007) algorithm. Note that if we first apply Zhao & Tang (2007) algorithm and then we apply the CH filter, some true minutiae mistakenly will remove. After carrying out the minutiae extraction, we should construct the feature vectors according to algorithms 1 to 4. The weight values consider the significance and importance of each feature vector based on their qualities. After obtaining similarity among measures we should multiply the similarity measures by quality weights. In our experiment, the weight values are as follow: w1 = 0.14, w2 = 0.2, w3 = 0.27, w4 = 0.39. Also, we consider some thresholds to group minutiae based on their qualities. These threshold values are as follow: τ1 = 0.5, τ2 = 0.25, τ3 = 0.1, τ MR1 = 0.05, τ MR2 = 0.2, τ MR1,2 = 0.7, κ = 10 , κ0 = 12, ϑ = 8, ϑ0 = 10, ϑ00 = 12, and ϑ000 = 13. Note that threshold values τ MR1 , τ MR2 , and τ MR1,2 is an average value for all data dets. We should consider different values for each data set. For example values MR1

AN US

• NIST SD14: The NIST SD14 has been also provided by the NIST and contains 27,000 fingers and 2 impressions per finger (F and S) yielding a total of 54,000 fingerprints. Each fingerprint of this data set such as NIST SD4 is captured. Also, the size of each of the fingerprint images in this data set is greater than NIST SD4. The size, format, and resolution of all fingerprint images in this data set are 832 × 768 pixels, wavelet scalar quantization (WSQ), 500.38 DPI, respectively. In this paper, we only consider the last 2700 fingerprints impressions pairs of this data set, NIST SD14 (reduced).

AC

840

• NIST SD4: The NIST special database 4 (SD4) has been provided by the NIST and contains 2000 fingers and 2 impressions per finger, F and S, yielding a total of 4000 fingerprints. Each fingerprint is rolled against a paper card and then scanned into digital form. The size, format, and resolution of all fingerprint images in this data set are 512 × 512 pixels, portable network graphics (PNG), 500.38 DPI, respectively.

M

820

• FVC 2004 DB1: This data set has the same type and number of fingerprint images as FVC 2000 DB2 but at different size. Each data set is captured using V300 sensor, an optical sensor sensor, by CrossMatch. The size, format, and resolution of all fingerprint images in this data set are 640 × 480 pixels, TIF, 500 DPI, respectively..

ED

815

PT

810

• FVC 2002 DB1: This data set has the same type and number of fingerprint images as FVC 2000 DB2 but at different size. Each data set is captured using TouchView II sensor, an optical sensor sensor, by Identix. The size, format, and resolution of all fingerprint images in this data set are 388 × 374 pixels, TIF, 500 DPI, respectively..

CE

805

• FVC 2000 DB3: This data set has the same type and number of fingerprint images as FVC 2000 DB2 but at different size. Each data set is captured using DF90 sensor, an optical sensor sensor, by Identicator Technologyan. The size, format, and resolution of all fingerprint images in this data set are 448 × 478 pixels, TIF, 500 DPI, respectively.

The proposed algorithm evaluated on the data sets was described in the Subsection 5.2. Since the processor in our PC has 4 cores and supports hyper-threading (HT) technology, our algorithm implemented within the parallel architecture proposed in (Peralta et al., 2014b). 16

850

855

860

865

870

875

880

885

890

895

900

ACCEPTED MANUSCRIPT

Table 1 Statistical tests for the identification measures. Best results in the row are highlighted with bold font.

920

4.74

8.97

8.64

7.21

Chikkerur (Chikkerur et al., 2005)

12.11

8.88

7.54

Bozorth3 (NBIS)

1.94

8.96

7.26

MCC (Cappelli et al., 2010)

3.02

2.11

Jiang (Jiang & Yau, 2000)

3.86

3.52

Deng (Deng & Huo, 2005)

2.13

6.77

Friedman p-value

9.73 ×10−5

9.62×10−5

930

935

M 17

4.88 4.42

6.91

0.08

ture vectors in the previous work (Khodadoust & Khodadoust, 2017). In the previous work, we used minutiae pairs and convex core point to construct feature vectors, whereas in this paper we use minutiae triplets. Therefore, we should evaluate our feature vectors and compare with other matching algorithms. In order to establish a fair comparison between the algorithms and to detect significant differences, statistical tests can be applied (Peralta et al., 2015). Analysis of variance (ANOVA), a parametric test, and Friedman tests, a non-parametric test, (Demˇsar, 2006) can be used to measure the differences between the algorithms with a multiple comparison analysis. In this paper, we only apply Friedman test described in (Demˇsar, 2006; Friedman, 1937; Garc´ıa & Herrera, 2008). The Friedman test ranks the algorithms for each data set separately, the best performing algorithm getting the rank of 1, the second best rank 2... (Demˇsar, 2006). The Holm procedure, it was described in (Demˇsar, 2006), is also employed to find out which algorithms are distinctive. A p-value provides information about significance of a statistical hypothesis test (Garc´ıa & Herrera, 2008). Table 1 compares the proposed technique, K-plet coupled with our feature vectors, with some of the matching algorithms published in the literature. The k-means clustering algorithm, the CF-EAC algorithm, described in Section 4 has been applied to the feature vectors. Since k-means clustering algorithms are often terminate at a local optimum, according to (Oliveira et al., 2017), we run the algorithm five times with random initial for each value of k. This procedure is executed thirty times for each data set. Since our processor supports the HT technology, we consider 8 blocks in our experiments. The CF-EAC algorithm automatically seeks the the optimal number of clusters thus we should determine only kmin and kmax values. The kmin√value in our experiments is 2 and also the kmax value is n, which n is the number of feature vectors in each

AN US

and MR2 in FVC 2000 DB3 are higher than other data sets. Therefor we should consider different thresholds for each data set. After retrieving the candidates, we should reduce the candidates. As mentioned in Subsection 4.2, we used Cappelli et al. (2011b) algorithm to reduce the candidates. In this paper, to evaluate the performance of indexing algorithms, the tradeoff between hit rate (HR) and penetration rate (PR) is used. HR is the percentage of probes found with correct identities, measuring the accuracy, while PR is the proportion of database that the system has to search, measuring the efficiency. More clearly, let Pc be the number of probes correctly identified and Pt be the total number of probes made, then HR is given by HR = (Pc /Pt ) × 100%. PR is defined P Pc by PR = ((1/Pc ) × ( i=1 ri /N)) × 100%, where ri is the number of images retrieved for ith probe and N is the database size. Roughly speaking, the better fingerprint indexing algorithm will achieve higher HR at the same PR comparing to other algorithms. Before we continue and analyze the indexing algorithms, it is necessary to evaluate the robustness of the proposed feature vectors. In our previous work (Khodadoust & Khodadoust, 2017), we combined our feature vectors and Chikkerur et al. (2005) algorithm, instead of their feature vectors, and observed the true positive rate (TPR), R100, and ZeroR in Chikkerur et al. (2005) algorithm decrease from 12.11% to 3.73%, 8 .88% to 3.65%, and 7 .54% to 4.71%, respectively, on our data sets. TPR is the percentage of test fingerprints that are correctly identified in the database, when only the best matching score is retrieved. The TPR is also the error obtained when using a rank of 1. R100 is the lowest rank that allows an error lower than 1%. ZeroR is lowest rank that does not allow errors. The optimum value for R100 and ZeroR is 1 (Peralta et al., 2015). Note that our feature vectors in this paper is different from our fea-

CR IP T

Feng (Feng, 2008)

AC

925

ZeroR

3.69

ED

915

R100

3.71

PT

910

TPR

Our feature vectors+Chikkerur (Chikkerur et al., 2005)

CE

905

Matcher

940

945

950

955

960

965

970

975

ACCEPTED MANUSCRIPT

Table 4 Statistical tests of our algorithm and its combination with other algorithms. Best result is highlighted with bold font.

data set. Table 2 reports the number of clusters, k, and Table 2 The number of clusters and maximum number of clusters.

Indexing algorithm

TPR

Proposed

2.29

Number of clusters (k)

Maximum number of clusters (kmax )

Proposed+ Cappelli et al. (2011a)

2.26

Proposed+ Wang et al. (2014)

2.14

NIST SD4

411

516

Proposed+ Khodadoust & Khodadoust (2017)

2.07

NIST SD14 (reduced)

598

653

Proposed+ Liu & Yap (2012)

2.19

FVC2000 DB2

58

73

FVC2000 DB3

172

216

Friedman p-value

9.33×10−5

FVC2002 DB1

56

71

FVC2004 DB1

61

84

TPR

Jin et al. (2010)

3.96

Reddy et al. (2012)

4.25

Jayaraman et al. (2014)

4.21

Jain & Prasad (2016)

5.17

Tiwari & Gupta (2015)

4.18

Choi et al. (2003)

4.01

Germain et al. (1997)

7.84

Elmouhtadi et al. (2015)

5.28

Zhou et al. (2014)

3.48

Bhanu & Tan (2003)

5.13 4.88

Vij & Namboodiri (2012) Bebis et al. (1999)

2.96

5.49

PT

Liu et al. (2005) Mu˜noz-Brise˜no et al. (2013) Wang et al. (2014)

4.97

5.99

Liu & Yap (2012) Liang et al. (2007)

ED

Khachai et al. (2014)

M

Indexing algorithm

CE

Gago-Alonso et al. (2013) Feng & Cai (2006)

3.96 3.18 2.73

3.23 3.97

Uz et al. (2009)

4.92

Barman et al. (2014)

5.27 3.46

Wang & Hu (2012)

4.54

AC

Zhou et al. (2011)

Mu˜noz-Brise˜no et al. (2014)

2.87

Wang et al. (2007)

3.55

Iloanusi et al. (2011)

5.01

Cappelli et al. (2011a)

3.28

maximum number of clusters, kmax , obtained in the experiments for each data set. Since the number of feature vectors of each data set is differs from other data sets, k and kmax values are different for each data set. Note that some of the algorithms, such as two-stage enhancement scheme (Yang et al., 2013), are written in MATLAB, some algorithms, such as NFIQ in (NBIS) are written in C++ and other algorithms, such as Friedman (Garc´ıa & Herrera, 2008) test, are written in Java. Therefore, we used MATLAB and Microsoft Visual Studio softwares in our experiments. Although we used both MATLAB and Microsoft Visual Studio softwares, the main and final experiments executed with Microsoft Visual Studio. MATLAB codes can easily used by Microsoft Visual Studio. In our experiments, we first consider only minutia and non-minutiae based indexing approaches and compare them together. Then, we compare combined indexing approaches together. Generally, combined indexing approaches are more robust than other approaches and they should be compared separately. Table 3 displays the statistical tests results of minutia and non-minutiae based indexing approaches on all the data sets described in the Subsection 5.2. In our experiments, we only have focused on the TPR measures. First, we applied fingerprint indexing algorithms and obtained their candidate list and then we utilized the Bozorth3 (NBIS) matcher, according to our previous work (Khodadoust & Khodadoust, 2017), and obtained their TPR. Note that we can not implement some indexing algorithm correctly, such as Shuai et al. (2008), thus we avoid them in our experiments. Since our proposed algorithm uses the pose and minutiae triplets, it can be considered as combined indexing approach. In our experiments, we also combined our proposed algorithm and some of the indexing algorithms. Table 4 illustrates the statistical tests results of our algorithm and its combination with other algorithms. Note that the proposed indexing algorithm and

AN US

Table 3 Statistical tests for the minutia and non-minutiae based indexing approaches. Best result is highlighted with bold font.

CR IP T

Data set

Wang & Hu (2011)

3.41

Mansukhani et al. (2010)

4.27

Bai et al. (2015)

4.11

Friedman p-value

9.49×10−5

18

980

985

990

995

1000

1005

1010

1015

100

100

95

95

90

90

85

85

80 75 Proposed approach

70

80 75

Proposed approach

70

Su et al. (2016)

Su et al. (2016)

Deblonde & Morpoho (2014)

65

Cappelli (2011)

65

Cappelli (2011) 60

0

1

2

3

4

5

7

6

Boer et al. (2001)

8

9

60

10

0

1

2

Penetration rate (%)

3

4

5

AN US

100

95

10

90

Hit rate (%)

85 80 75

Proposed approach

70

85 80 75

Proposed approach

70

M

Wang et al. (2015) Li et al. (2015a)

65

Li et al. (2015a) Li et al. (2015b)

65

Su et al. (2016) 1

2

3

4

5

7

6

8

9

10

ED

0

Li Yang & Busch (2014) ’ ’ 60

0

1

2

3

Penetration rate (%)

100

75

Proposed approach

AC

70

75 Proposed approach Wang et al. (2015) Su et al. (2016)

65

Mu˜noz-Brise˜no et al. (2014) 3

4

5

10

80

70

Cappelli (2011)

2

9

85

Su et al. (2016)

65

1

8

95

80

0

7

90

CE

85

6

100

Hit rate (%)

90

5

(d) Indexing performance on FVC2004 DB1.

PT

95

4

Penetration rate (%)

(c) Indexing performance on FVC2002 DB1.

Hit rate (%)

9

95

90

60

8

(b) Indexing performance on FVC2000 DB3.

100

60

7

6

Penetration rate (%)

(a) Indexing performance on FVC2000 DB2.

Hit rate (%)

CR IP T

Hit rate (%)

Hit rate (%)

ACCEPTED MANUSCRIPT

6

7

8

9

Deblonde & Morpoho (2014) 60

10

Penetration rate (%)

(e) Indexing performance on NIST DB4.

0

1

2

3

4

5

6

7

8

9

Penetration rate (%)

(f) Indexing performance on NIST DB14 (reduced).

Fig. 10. Comparison with some of state-of-the-art algorithms in FVC and NIST databases.

19

10

ACCEPTED MANUSCRIPT

1030

1035

0.204

Fingerprint enhancement and quality estimation

1.010

Binarization and thinning

0.216

Minutiae extraction and postprocessing

2.003

Extraction of feature vectors from an image

1.677 (offline)

Index space creation and pose estimation

132.145 (offline)

Gallery feature vectors’ assignments to clusters

0.019 (offline)

Mapping of a probe’s feature vectors to clusters

0.019 (online)

Candidate list retrieval for a probe

0.032×10−3 (online)

Candidate list reduction

0.025 (online)

2010, 2011a; Chikkerur et al., 2005; Jiang & Yau, 2000; NBIS), were developed by us and they are only based on the specifications and descriptions given by the respective authors. This step of our work was very tedious due to the fact that the papers do not provide all the details to achieve a perfect implementation of the idea presented. Thus, the results of the evaluated identification and indexing algorithms may differ from the results in the original papers.

M

1040

Time (s)

Segmentation

CR IP T

1025

Stages in fingerprint indexing

AN US

1020

Table 6 Average execution time for different stages of our system.

each of other indexing algorithms generate two candidate lists; then, the fuzzy based fusion scheme designed by Zhou et al. (2015) is used to generate the final candidate list for matching process. Table 5 displays the statistical tests results of combined indexing approaches on all the data sets described in the Subsection 5.2. Furthermore, Fig. 10 compares our proposed algorithm with other algorithms. In this figure, we only use our indexing algorithm without any combination with other indexing algorithms. Finally, since one of the main goals of indexing algorithms is to achieve the speed-up of the identification process, we list the overall time spent on all stags of our algorithm (see Table 6). The exhaustive experiments on the data sets described in the Subsection 5.2 show that our algorithm outperforms most of other algorithms. According to Tables 3, 4, and 5, proposed algorithm, Wang et al. (2015) algorithm, Li et al. (2015a) algorithm, and Su et al. (2016) algorithm are the most accurate algorithms, with statistically significant differences with respect to the other algorithms. Note that since the hit rates of some indexing algorithms are lower than Li, Yang, & Busch (2014) algorithm, we do not include them in the Fig. 10 and we only consider four curves that correspond to the top four performers, according to their data sets. All the implementations of the identification and indexing algorithms, excepting the proposed in (Cappelli et al.,

ED

Table 5 Statistical tests for the combined based indexing approaches. Best result is highlighted with bold font. Indexing algorithm

TPR

Wang et al. (2015) Boer et al. (2001) Su et al. (2016)

CE

Li, Yau, & Wang (2006)

3.11

PT

Zhou et al. (2015)

2.15

2.84 2.67

4.19

Li, Yang, & Busch (2014)

3.17

Cappelli (2011)

2.83

Li et al. (2015b)

2.97 3.86

Parmar & Degadwala (2016)

3.90

AC

Dremin et al. (2014)

Mngenge et al. (2015)

2.88

Ross & Mukherjee (2007)

3.93

Biswas et al. (2008)

4.32

Li et al. (2015a)

2.52

Iloanusi (2014)

3.16

Deblonde & Morpoho (2014)

2.69

Paulino et al. (2013)

3.05

Friedman p-value

9.92×10−5

20

1045

1050

6. Conclusions and future work In the present work, we have presented a novel fingerprint indexing algorithm based on minutiae triplets. The algorithm combines two robust Delaunay triangulation algorithms and uses them to generate triangles. The algorithm also uses ellipse properties to generate feature vectors. Ellipse has deep relations to triangle and can construct robust feature vectors. The pose estimation, the quality estimation, and the improved k-means clustering algorithms are also utilized in this paper. The pose reduces false correspondences and the estimated fingerprint images quality assigns a weight to take into account the significance and importance of each feature vector in the retrieving stage. The improved k-means clustering algorithm provides the required scalability to address large data sets. Our experimental results on public domain data sets FVC2000 DB2, FVC2000 DB3, FVC2002 DB1, FVC2004 DB1, NIST SD4, and NIST SD14 show promising performance over other fingerprint indexing algorithms. The proposed algorithm can also be used in palmprint images indexing. The number of minutiae points in palmprint images are very large compared to fingerprints. Therefore, the identification process in these images will be very time consuming. Since our indexing

1055

1060

1065

1070

1075

ACCEPTED MANUSCRIPT

1080

algorithm is very fast and accurate, in the future work, we will focus on palmprint images, especially latent palmprint images. 7. Acknowledgments

1105

1110

1115

AN US

AC

1120

M

1100

ED

1095

Bai, C., Zhao, T., Wang, W., & Wu, M. (2015). An efficient indexing scheme based on K-plet representation for fingerprint database. In Proceedings of the 11th international conference on intelligent computing (ICIC’15) Fuzhou, China (pp. 247-257). Barman, S., Chattopadhyay, S., Samanta, D., Bag, S., & Show, G. (2014). An efficient fingerprint matching approach based on minutiae to minutiae distance using indexing with effectively lower time complexity. In Proceedings of the international conference on information technology (ICIT’14) Bhubaneswar, India (pp. 179183). Bebis, G., Deaconu, T., & Georgiopoulos, M. (1999). Fingerprint identification using Delaunay triangulation. In Proceedings of the international conference information intelligence and systems (ICIIS’99) Maryland, USA (pp. 452-459). Bhanu, B., & Tan, X. (2003). Fingerprint indexing based on novel features of minutiae triplets. IEEE Transactions on Pattern Analysis and Machine Intelligence, 25(5), 616-622. Biswas, S., Ratha, N.K., Aggarwal, G., & Connell, J. (2008). Exploring ridge curvature for fingerprint indexing. In Proceedings of the 2nd IEEE international conference on biometrics: theory, applications and systems (BTAS’08) Arlington, USA, http://dx.doi.org/10.1109/BTAS.2008.4699384. Boer, J.d., Bazen, A.M., & Gerez, S.H. (2001). Indexing fingerprint databases based on multiple features. In Proceedings of the 12th annual workshop on circuits, systems and signal processing workshop Veldhoven, Netherlands (pp. 300-306). Cappelli, R. (2011). Fast and accurate fingerprint indexing based on ridge orientation and frequency. IEEE Transactions on Systems, Man, and Cybernetics, 41(6), 1511-1521. Cappelli, R., Ferrara, M., & Maltoni, D. (2010). Minutia cylindercode: a new representation and matching technique for fingerprint recognition. IEEE Transactions on Pattern Analysis and Machine Intelligence, 32(12), 2128-2141. Cappelli, R., Ferrara, M., & Maltoni, D. (2011a). Fingerprint indexing based on minutia cylinder-code. IEEE Transactions on Pattern Analysis and Machine Intelligence, 33(5), 1051-1057. Cappelli, R., Ferrara, M., & Maio D. (2011b). Candidate list reduction based on the analysis of fingerprint indexing scores. IEEE Transactions on Information Forensics and Security, 6(3), 1160-1164. Chikkerur, S., Cartwright, A.N., & Govindaraju, V. (2005). K-plet and coupled BFS: a graph based fingerprint representation and matching algorithm. In Proceedings international conference on biometrics (ICB 2006) Hong Kong, China (pp. 309-315). Choi, K., Lee, D., Lee, S., & Kim, J. (2003). An improved fingerprint indexing algorithm based on the triplet approach. In Proceedings of the 4th international conference audio and video based biometric person authentication (AVBPA’03) Guildford, UK (pp. 584-591). Deblonde, A., & Morpoho, S. (2014). Fingerprint indexing through sparse decomposition of ridge flow patches. In Proceedings

PT

1090

References

CE

1085

CR IP T

The authors would like to thank the anonymous reviewers for their valuable and helpful comments and suggestions to improve and clarify this paper.

1125

1130

of the IEEE symposium on computational intelligence in biometrics and identity management (CIBIM’14) Orlando, USA, http://dx.doi.org/10.1109/CIBIM.2014.7015464. Demˇsar, J. (2006). Statistical comparisons of classifiers over multiple data sets. Journal of Machine Learning Research, 7, 1-30. Deng, H., & Huo, Q. (2005). Minutiae matching based fingerprint verification using delaunay triangulation and aligned-edge-guided triangle matching. In Proceedings of the 5th international conference on audio- and video-based biometric person authentication (AVBPA’05) Hilton Rye Town, USA (pp. 270-278). Dremin, A., Khachay, M.Y., & Leshko, A. (2014). Fingerprint identification algorithm based on delaunay triangulation and cylinder codes. In Proceedings of the third international conference analysis of images, social networks and texts (AIST’14) Yekaterinburg, Russia (pp. 128-139). Elmouhtadi, M., Aboutajdine, D., & fkihi, S.E. (2015). Fingerprint indexing based barycenter triangulation. In Proceedings of the third world conference on complex systems (WCCS’15) Marrakech, Morocco, http://dx.doi.org/10.1109/ICoCS.2015.7483263. Fahmy, M.F., & Thabet, M.A. (2013). A fingerprint segmentation technique based on morphological processing. In Proceedings of the IEEE international symposium on signal processing and information technology (ISSPIT’13) Athens, Greece (pp. 000215000220). Feng, J. (2008). Combining minutiae descriptors for fingerprint matching. Pattern Recognition, 41(1), 342-352. Feng, J., & Cai, A. (2006). Fingerprint indexing using ridge invariants. In Proceedings of the 18th international conference on pattern recognition (ICPR’06) Hong Kong, china, http://dx.doi.org/10.1109/ICPR.2006.569. Friedman, M. (1937). The use of ranks to avoid the assumption of normality implicit in the analysis of variance. Journal of the American Statistical Association, 32, 675-701. Fronthaler, H., Kollreider, K., & Bigun, J. (2008). Local features for enhancement and minutiae extraction in fingerprints. IEEE Transactions on Image Processing, 17(3), 354-363. FVC2000: The first fingerprint verification competition. . Accessed 14 November 2016. FVC2002: The Second fingerprint verification competition. . Accessed 14 November 2016. FVC2004: The third international fingerprint verification competition, . Accessed 14 November 2016. FVC2006: The fourth international fingerprint verification competition, . Accessed 14 November 2016. Gago-Alonso, A., Hern´andez-Palancar, J., Rodr´ıguez-Reina, E., & Mu˜noz-Brise˜no, A. (2013). Indexing and retrieving in fingerprint databases under structural distortions. Expert Systems with Applications, 40(8), 2858-2871. Galar, M., Derrac, J., Peralta, D., Triguero, I., Paternain, D., LopezMolina, C., Garc´ıa, S., Ben´ıtez, J.M., Pagola, M., Barrenechea, E., Bustince, H., & Herrera, F. (2015). A survey of fingerprint classification Part I: Taxonomies on feature extraction methods and learning models. Knowledge-Based Systems, 81, 76-97. Garc´ıa, S., & Herrera, F. (2008). An extension on statistical comparisons of classifiers over multiple data sets for all pairwise comparisons. Journal of Machine Learning Research, 9, 2677-2694. Germain, R.S., Califano, A., & Colville, S. (1997). Fingerprint matching using transformation parameter clustering. IEEE Computational Science and Engineering, 4(4), 42-49. Giot, R., & Rosenberger, C. (2012). Genetic programming for multibiometrics. Expert Systems with Applications, 39(2), 1837-1847. Guti´errez, P.D., Lastra, M., Herrera, F., & Ben´ıtez, J.M. (2014). A

21

1135

1140

1145

1150

1155

1160

1165

1170

1175

1180

1185

1190

1195

ACCEPTED MANUSCRIPT

1225

1230

1235

1240

1245

CR IP T

AC

1250

1255

1260

Delaunay triangles. IEEE Transactions on Information Forensics and Security, 2(4), 721-733. Liu, E., & Cao, K. (2016). Minutiae extraction from level 1 features of fingerprint. IEEE Transactions on Information Forensics and Security, 11(9), 1893-1902. Liu, M., & Yap, P.T. (2012). Invariant representation of orientation fields for fingerprint indexing. Pattern Recognition, 45(7), 25322542. Liu, T., Zhu, G., Zhang, C., & Hao, P. (2005). Fingerprint indexing based on singular point correlation. In Proceedings of the IEEE international conference on image processing (ICIP’05) Genoa, Italy, http://dx.doi.org/10.1109/ICIP.2005.1530386. Maltoni, D., Maio, D., Jain, A., & Prabhakar, S. (2009). Handbook of Fingerprint Recognition, 2nd ed. Springer. Mansukhani, P., Tulyakov, S., & Govindaraju, V. (2010). A framework for efficient fingerprint identification using a minutiae tree. IEEE Systems Journal, 4(2), 126-137. Mngenge, N.A., Mthembu, L., Nelwamondo, F.V., & Ngejane, C.H. (2015). A fingerprint indexing approach using multiple similarity measures and spectral clustering. In Proceedings of the 12th conference on computer and robot vision (CRV’15) Victoria, Canada (pp. 208-213). Mu˜noz-Brise˜no, A., Gago-Alonso, A., & Hern´andez-Palancar, J. (2013). Fingerprint indexing with bad quality areas. Expert Systems with Applications, 40(5), 1839-1846. Mu˜noz-Brise˜no, A., Gago-Alonso, A., & Hern´andez-Palancar, J. (2014). Using reference point as feature for fingerprint indexing. In Proceedings of the 19th iberoamerican congress (CIARP’14) Puerto Vallarta, Mexico (pp. 367-374). Naldi, M.C., Campello, R.J.G.B., Hruschka, E.R., & Carvalho, A.C.P.L.F. (2011). Efficiency issues of evolutionary k-means. Applied Soft Computing, 11(2), 1938-1952. NIST Biometric Image Software (NBIS): https://www.nist.gov/services-resources/software/nist-biometricimage-software-nbis. Accessed 2 December 2016. NIST Special Database 4: NIST 8-Bit Gray Scale Images of Fingerprint Image Groups (FIGS), . Accessed 14 November 2016. NIST Special Database 14: NIST Mated Fingerprint Card Pairs 2 (MFCP2), . Accessed 14 November 2016. Oliveira, G.V., Coutinho, F.P., Campello, R.J.G.B., & Naldi M.C. (2017). Improving k-means through distributed scalable metaheuristics. Neurocomputing, http://dx.doi.org/10.1016/j.neucom.2016.07.074. OpenCV: http://opencv.org/. Accessed 25 December 2016. OpenMPI: https://www.open-mpi.org/software/ompi/v2.0/. Accessed 1 February 2017. Parmar, P.A., & Degadwala, S.D. (2016) A feature level fusion fingerprint indexing approach based on MV and MCC using SVM classifier. In Proceedings of the international conference on communication and signal processing (ICCSP’16) Chennai, India (pp. 1024-1028). Paulino, A.A., Liu, E., Cao, K., & Jain, A.K. (2013). Latent fingerprint indexing: fusion of level 1 and level 2 features. In Proceedings of the IEEE sixth international conference on biometrics: theory, applications and systems (BTAS’13) Washington DC, USA, http://dx.doi.org/10.1109/BTAS.2013.6712748. Peralta, D., Galar, M., Triguero, I., Miguel-Hurtado, O., Benitez, J. M., & Herrera, F. (2014a). Minutiae filtering to improve both efficacy and efficiency of fingerprint matching algorithms. Engineering Applications of Artificial Intelligence, 32, 37-53. Peralta, D., Galar, M., Triguero, I., Paternain, D., Garca, S., Barrenechea, E., Bentez, J.M., Bustince, H., & Herrera, F. (2015). A survey on fingerprint minutiae-based local matching for verifi-

AN US

1220

M

1215

ED

1210

PT

1205

high performance fingerprint matching system for large databases based on GPU. IEEE Transactions on Information Forensics and Security, 9(1), 62-71. Iloanusi, O.N. (2014). Fusion of finger types for fingerprint indexing using minutiae quadruplets. Pattern Recognition Letters, 38, 8-14. Iloanusi, O., Gyaourova, A., & Ross, A. (2011). Indexing fingerprints using minutiae quadruplets. In IEEE Computer Society Conference/Computer Vision and Pattern Recognition Workshops (CVPRW’11) (pp. 127-133). Jain, A., & Prasad, M.V.N.K. (2016). A novel fingerprint indexing scheme using dynamic clustering. Journal of Reliable Intelligent Environments, 2(3), 159-171. Jayaraman, U., Gupta, A.K., & Gupta, P. (2014). An efficient minutiae based geometric hashing for fingerprint database. Neurocomputing 137, 115-126. Jiang, R.M., & Crookes, D. (2008). FPGA-based minutia matching for biometric fingerprint image database retrieval. Journal of RealTime Image Processing, 3(3), 177-182. Jiang, X., & Yau, W.Y. (2000). Fingerprint minutiae matching based on the local and global structures. In Proceedings of the 15th international conference on pattern recognition (ICPR’00) Barcelona, Spain (pp. 1038-1041). Jin, Z., Teoh, A.B.J., Ong, T.S., & Tee, C. (2010). A revocable fingerprint template for security and privacy preserving. KSII Transactions on Internet and Information Systems, 4(6), 1327-1342. Khachai, M.Y., Leshko, A. S., & Dremin, A.V., (2014). The problem of fingerprint identification: a reference database indexing method based on delaunay triangulation. Pattern Recognition and Image Analysis, 24(2), 297-303. Khanmohammadi, S., Adibeig, N., & Shanehbandy, S. (2017) An improved overlapping k-means clustering method for medical applications. Expert Systems with Applications, 67, 12-18. Khodadoust. J., & Khodadoust, A.M. (2017). Fingerprint indexing based on minutiae pairs and convex core point. Pattern Recognition, 67, 110-126. Lawrence, J.D. (1972). A catalog of special plane curves. Dover. Lee, S., Choi, H., Choi, K., & Kim, J. (2008). Fingerprint-quality index using gradient components. IEEE Transactions on Information Forensics and Security, 3(4), 792-800. Li, G., Yang, B., & Busch, C. (2014). A score-level fusion fingerprint indexing approach based on minutiae vicinity and minutia cylinder-code. In Proceedings of the international workshop on biometrics and forensics (IWBF’14) Valletta, Malta, http://dx.doi.org/10.1109/IWBF.2014.6914238. Li, G. Yang, B., & Busch, C. (2015a). A fingerprint indexing scheme with robustness against sample translation and rotation. In Proceedings of the international conference of the biometrics special interest group (BIOSIG’15) Darmstadt, Germany, http://dx.doi.org/10.1109/BIOSIG.2015.7314593. Li, G., Yang, B., & Busch, C. (2015b). A novel fingerprint indexing approach focusing on minutia location and direction. In Proceedings of the IEEE international conference on identity, security and behavior analysis (ISBA’15) Hong Kong, China, http://dx.doi.org/10.1109/ISBA.2015.7126346. Li, J., Yau, W.Y., & Wang, H. (2006). Fingerprint indexing based On symmetrical measurement. In Proceedings of the 18th international conference on pattern recognition (ICPR’06) Hong Kong, china, http://dx.doi.org/10.1109/ICPR.2006.568. Liang, X., Asano, T., & Bishnu, A. (2006). Distorted fingerprint indexing using minutia detail and delaunay triangle. In Proceedings of the 3rd international symposium on voronoi diagrams in science and engineering (ISVD’06) Calgary, Canada, http://dx.doi.org/10.1109/ISVD.2006.42. Liang, X., Bishnu, A., & Asano, T. (2007). A robust fingerprint indexing scheme using minutia neighborhood structure and low-order

CE

1200

22

1265

1270

1275

1280

1285

1290

1295

1300

1305

1310

1315

1320

1325

ACCEPTED MANUSCRIPT

1355

1360

1365

1370

1375

CR IP T

AC

1380

AN US

1350

M

1345

ED

1340

969. Yang, J., Xiong, N., Member, & Vasilakos, A.V. (2013). Two-stage enhancement scheme for low-quality fingerprint images by learning from the images. IEEE Transactions on Human-Machine Systems, 43(2), 235-248. Zhao, F., & Tang, X. (2007). Preprocessing and postprocessing for skeleton-based fingerprint minutiae extraction. Pattern Recognition, 40(4) 1270-1281. Zhou, W., Hu, J., Wang, S., Petersen, I., & Bennamoun, M. (2014). Fingerprint indexing based on combination of novel minutiae triplet features. In Proceedings of the 8th international conference on network and system security (NSS’14) Xi’an, China (pp. 377388). Zhou, W., Hu, J., Wang, S., Petersen, I., & Bennamoun M. (2015). Partial fingerprint indexing: a combination of local and reconstructed global features. Concurrency and Computation: Practice and Experience., 28(10), 2940-2957. Zhou, R., Sin, S.W., Li, D., Isshiki, T., & Kunieda, H. (2011). Ultrafast fingerprint indexing for embedded systems. Optical Engineering, 50(10), 107203–1-107203–9.

PT

1335

cation and identification: Taxonomy and experimental evaluation. Information Sciences, 315, 67-87. Peralta, D., Triguero, I., Sanchez-Reillo, R., Herrera, F., & Benitez, J.M. (2014b). Fast fingerprint identification for large databases. Pattern Recognition, 47(2), 588-602. Reddy, A., Jayaraman, U., Kaushik, V.D., & Gupta, p. (2012). An efficient fingerprint indexing scheme. In Proceedings of the second international conference on soft computing for problem solving (SocProS’12) Jaipur, India (pp. 723-728). Ross, A., & Mukherjee, R. (2007). Augmenting ridge curves with minutiae triplets for fingerprint indexing. In Proceedings of the biometric technology for human identification iv Orlando, USA (pp. 65390C–1-65390C–12). Shuai, X., Zhang, C., & Hao, P. (2008). Fingerprint indexing based on composite set of reduced SIFT features. In Proceedings of the 19th international conference on pattern recognition (ICPR’08) Florida, USA, http://dx.doi.org/10.1109/ICPR.2008.4761873. Shuai, X., Zhang, C., & Hao, P. (2010). Clustering-based descriptors for fingerprint indexing and fast retrieval. In Proceedings of the 9th asian conference on computer vision (ACCV’09) Xi’an, China (pp. 354-363). Su, Y., Feng, J., & Zhou, J. (2016). Fingerprint indexing with pose constraint. Pattern Recognition, 54, 1-13. Sutter, H. (2005). The free lunch is over: a fundamental turn toward concurrency in software. Dr. Dobb’s Journal, 30(3), 202-210. Tiwari, K., & Gupta, P. (2015). Indexing fingerprint database with minutiae based coaxial Gaussian track code and quantized lookup table. In Proceedings of the IEEE international conference on image processing (ICIP’15) Quebec, Canada (pp. 4773-4777). Trivedi, K., & Trivedi, C. (2010). Business mathematics. Pearson. Uz, T., Bebis, G., Erol, A., & Prabhakar, S. (2009). Minutiae-based template synthesis and matching for fingerprint authentication. Computer Vision and Image Understanding, 113(9), 979-992. Vij, A., & Namboodiri, A. (2012). Fingerprint indexing based on local arrangements of minutiae neighborhoods. In Proceedings of the IEEE computer society conference on computer vision and pattern recognition workshops (CVPRW’12) Providence, USA (pp. 71-76). Wang, Y., & Hu, J. (2011). Global ridge orientation modeling for partial fingerprint identification. IEEE Transactions on Pattern Analysis and Machine Intelligence, 33(1), 72-87. Wang, S., & Hu, J. (2012). Alignment-free cancelable fingerprint template design: a densely infinite-to-one mapping (DITOM) approach. Pattern Recognition, 45(12), 4129-4137. Wang, Y., Hu, J., & Phillips, D. (2007). A fingerprint orientation model based on 2d fourier expansion (FOMFE) and its application to singular-point detection and fingerprint indexing. IEEE Transactions on Pattern Analysis and Machine Intelligence, 29(4), 573585. Wang, Y., Wang, L., Cheung, Y.M., & Yuen, P.C. (2014). Fingerprint geometric hashing based on binary minutiae cylinder codes. In Proceedings of the 22nd international conference on pattern recognition (ICPR’14) Stockholm, Sweden (pp. 690-695). Wang, Y., Wang, L., Cheung, Y.M., & Yuen, P.C. (2015). Learning compact binary codes for hash-based fingerprint indexing. IEEE Transactions on Information Forensics and Security, 10(8), 16031616. Xu, J., & Hu, J. (2015). Multi-constrained orientation field modeling and its application for fingerprint indexing. In Proceedings of the 9th international conference on network and system security (NSS’15) New York, USA (pp. 176-187). Xu, R., & Wunsch, D. (2005). Survey of clustering algorithms. IEEE Transactions on Neural Networks, 16(3), 645-678. Yang, X., Feng, J., & Zhou, J. (2014). Localized dictionaries based orientation field estimation for latent fingerprints. IEEE Transactions on Pattern Analysis and Machine Intelligence, 36(5), 955-

CE

1330

1385

1390

23

1395

1400

1405

1410