1 Introduction

Fingerprint matching algorithms are at the core of fingerprint verification and latent fingerprint identification. Fingerprint verification performs a one-to-one comparison to verify a claimed identity with a previously captured fingerprint [19, 24]. Contrarily, latent fingerprint identification performs a one-to-many comparison searching for the most similar fingerprints, enrolled in a reference database, to a latent fingerprint [17, 24]. Most of the fingerprint matching algorithms have been developed for fingerprint verification [36]. As a consequence, fingerprint verification algorithms have reported a high accuracy (see the results in the Fingerprint Verification Competition FVC-onGoing [7]), while latent fingerprint identification algorithms have considerable room for improvement.

Latent fingerprint identification has essential applications for forensic investigations. For example, missing persons can be traced through their last fingerprints found at some places as latent fingerprints, police departments conduct criminal investigations using latent fingerprints, and latent fingerprints are pieces of evidence during a trial. Due to the sensitivity of its applications, latent fingerprint identification requires high identification rates. Nevertheless, the results in Table 1 indicate that the identification rates reported in the literature are insufficient for meeting this requirement.

Table 1 Recent Rank-1 identification rates reported in the literature. These results were reported using reference databases with different sizes. Usually, forensic investigations use large reference databases. However, the higher the background database is, the lower the identification rate for any latent fingerprint identification algorithm

One infrequently explored approach for improving the identification rates of latent fingerprint identification algorithms involves ensembles of fingerprint matching algorithms using supervised learning. An ensemble in machine learning is a general method that combines lower-level algorithms using a high-level algorithm to achieve higher accuracy than the lower-level algorithms [35]. In fingerprint matching research, this approach can be classified as a fusion scheme.

Although supervised classifiers have been used as fusion algorithms for fingerprint verification  [4, 8, 13, 24], they are less frequent for latent fingerprint identification [30]. In the latent fingerprint identification problem, an algorithm must determine a list of references (fingerprints previously enrolled in a background database) with the highest match score (continuous value) to the sample (latent fingerprint) but supervised classifiers determine a class (nominal value) for each example [20]. However, there exist supervised classifiers that compute the probability of belonging to each class. In our proposal, we use the probability of belonging to the matching class as the fused match score.

In this work, we propose an ensemble of two fingerprint matching algorithms with the aim of improving the Rank-1 identification rate for latent fingerprint identification. We start by combining two different minutia descriptors, which have shown to be suitable for latent fingerprint identification [36]: Minutia cylinder codes (MCC) [5] and mtriplet [25]. We have substituted the global matchers of these algorithms with the algorithm deformable minutiae clustering (DMC) [26] to improve their performances. Moreover, we have tuned the parameters of both minutia descriptors for latent fingerprint identification because they were proposed for fingerprint verification. For fusing the match scores, we propose a multilayer perceptron, although we explored other fusion approaches in our experimentations. In summary, the contributions of this work are as follows:

  1. 1.

    We propose a novel match-score fusion scheme for latent fingerprint identification, which outperforms the Rank-1 identification rates output by the methods reported in the literature that match only minutiae. Such fusion scheme is based on an ensemble of two state-of-the-art fingerprint matching algorithms via a multilayer perceptron (MLP). We obtained the best fusion algorithm from the comparison between several supervised classifiers, various deep learning models, and two traditional fusion algorithms (a weighted sum and a product rule). This work explores 30 traditional supervised classifiers and 30 deep learning models as fusion algorithms for latent fingerprint identification.

  2. 2.

    We describe a subset of four attributes constructed from the comparison results between fingerprint pairs using the matching algorithms. These attributes characterize the similarities between each sample and reference.

  3. 3.

    We provide an experimental study comparing our results against those reached by the lower-level algorithms, other fusion algorithms, and the previous methods reported in the literature using three latent fingerprint databases: NIST SD27 [9], GCDB [18], and MOLF DB4 [32], and different references databases: NIST SD27 [9], NIST SD4 [38], NIST SD14 [37], GCDB [18], and MOLF DB1 [32]. Our proposal improves the identification rate of the lower-level algorithms for most of the rank values. Moreover, our fusion algorithm obtains \(74.03\%\) of Rank-1 identification rate matching 258 samples (NIST SD27 [9]) against 29,257 references (27,000 NIST SD14 [37], 2000 NIST SD4 [38], and 257 NIST SD27 [9]), and \(71.32\%\) against 100,000 references (27,000 NIST SD14 [37], 2000 NIST SD4 [38], 257 NIST SD27 [9], and a non-public database).

We organize the remainder of this paper as follows. We discuss some related work with fusion algorithms for latent fingerprint identification in Sect. 2. We continue describing our proposal and parameter tuning of the minutia descriptors for latent fingerprint identification in Sect. 3. Next, we analyze our experimental results and the computation time required to identify a latent fingerprint in Sect. 4. Finally, we state our conclusions and future work in Sect. 5.

2 Related work

Some authors [28, 31] have classified the fusion schemes for fingerprint matching [1, 11, 14, 27, 31] as feature level, match-score level, rank level, or data level. When fusing the match scores for latent fingerprint identification, every lower-level algorithm fused deals with the complexities of latent fingerprints, such as the partial information of latent fingerprints, background noise, nonlinear distortion, and brightness variations. As a consequence, match-score level fusion has gained popularity for latent fingerprint identification [31].

An early work published by Jain et al. [12] proposed a latent fingerprint identification algorithm combining the match scores computed using minutiae and orientation fields. The authors employed a weighted sum with weights empirically determined: 0.8 for the match score between minutiae and 0.2 for the match score between orientation fields. Their fusion algorithm reached a Rank-1 identification rate of \(79.5\%\) matching the samples in the database NIST SD27 [9] against the references in databases NIST SD27 [9] and NIST SD4 [38].

Another paper presented by Jain and Feng [11] combined several fingerprint features using successive weighted sums. The authors computed match scores between the minutiae, skeleton images, singular points, ridge quality maps, ridge frequency maps, and ridge wavelength maps. Successively, they fused the new match score with the accumulated match score using a weighted sum with weights empirically determined. Their proposal achieved a Rank-1 identification rate of \(74\%\) comparing the samples in the database NIST SD27 [9] against the references in the databases NIST SD27 [9], NIST SD4 [38], and NIST SD14 [37].

Sankaran et al. [31] developed a two-level fusion algorithm for simultaneous latent fingerprint identification. In the first level, they combined the match scores computed for each latent fingerprint extracted from the simultaneous image using a weighted sum and a product of the likelihood ratio. The weighted sum fusion surpassed the product of the likelihood ratio for all cases. In the second level, the authors fused the ranks output by each fusion algorithm using weighted Borda count. Although the rank-level fusion improved the Rank-10 identification rate, the match-score level fusion still reported the highest Rank-1 identification rate using a weighted sum.

Paulino et al. [27] proposed a fusion of the match scores computed between the minutiae and the orientation fields. The fusion approach was a weighted sum with weights empirically determined (0.6 for minutiae and 0.4 for orientation fields). The authors reported a \(53.5\%\) of Rank-1 identification rate comparing the samples in NIST SD27 [9] against 31,998 references in the databases NIST SD27 [9], WVU, and NIST SD14 [37].

Similarly, Jeyanti et al. [14] fused the match scores computed between minutiae and pores from the sample and the references. They used a weighted sum with weights empirically determined. Differently to the previous works, the authors assigned higher weights to the pores than the minutiae.

Krish et al. [18] combined some conventional fingerprint matching algorithms with a fitting error at the match-score level. The fitting error was computed using extended minutiae types. An extended minutia is a minutia different from the ridge ending and bifurcation, such as deviation, bridge, or fragment [18]. They fused the match scores with a weighted sum with weights equal to 0.5.

Cao and Jain [1] combined two minutia templates and a texture template at the match-score level. They used a weighted sum with weights empirically determined. Their proposal achieved a Rank-1 identification rate of \(64.7\%\) matching the samples in the database NIST SD27 [9] against 100,000 references in the NIST SD27 [9], NIST SD14 [37], and a forensic agency. Later, Cao et al. [3] improved that identification rate up to \(65.7\%\) using the same databases by including a third minutia template in the fusion. Additionally, the author explored a fusion at rank levels using Borda count. They found that the results using a weighted sum exceed the results of the fusion using Borda count.

These works corroborate that the match-score level has excellent popularity as a fusion scheme for latent fingerprint identification. Moreover, these papers show two conventional approaches for fusing match scores, the weighted sum [1, 3, 11, 12, 14, 18, 27, 31] and the product rule [31]. The weighted sum has reported the highest identification rates. However, both approaches lack of adaptability to changes in the reference database because their fusion formula remains the same. Moreover, some of them depend on fixed weights empirically determined. Conversely, match-score fusion using supervised classifiers can compute more complex functions than weighted sums or product rules. Besides, if the references database changes, the supervised classifiers can be retrained to update the fusion relation.

3 A fusion of fingerprint matching algorithms at match-score level

Latent fingerprint identification algorithms usually identify latent fingerprints via a hybrid approach [24], starting with a local matcher and following a global matcher. Global algorithms match fingerprints using features that describe the full fingerprint. Global matchers are also known as consolidation steps and they can follow different strategies, such as single or multiple transformations, a consensus of transformations, or an incremental consolidation [24]. Local algorithms match small regions of fingerprints, such as two minutia descriptors [24]. A minutia descriptor is a fingerprint feature representation with additional information to the minutia standard representation (ISO/IEC 19794-2:2005). This additional information can be, for example, the ridge orientations, the number of ridges between minutiae, or the relationships a minutia holds with others, either in a neighborhood or with a predefined number of minutiae.

Our proposal starts with two local matching algorithms MCC [5] and mtriplet [25], which has shown to be suitable for latent fingerprint identification [36]. These local algorithms match the minutiae in the sample against those in the reference and output the match scores between minutiae, which are input to the global matching algorithm (see step 1 in Fig. 1). A global matcher consolidates the output of each local matcher. Each hybridization between the global matching algorithm and each local matching algorithm is a lower-level algorithm in our ensemble. We will describe our selection for the lower-level algorithms in Sect. 3.1

We include a third step in our latent fingerprint identification algorithm. In this step, we fuse the output of the lower-level algorithms by configuring a vector of attributes (v) with their output. Then, a supervised classifier computes the fused match score with the vector of attributes as input. This supervised classifier is the high-level algorithm of our ensemble (see step 3 in Fig. 1 and Algorithm 1).

figure a
Fig. 1
figure 1

Diagram of the match-score computation between a sample and a reference using our ensemble of fingerprint matching algorithms

3.1 Selection of lower-level algorithms

The salient decisions in an ensemble are the lower-level algorithms and the fusion algorithm. Latent fingerprint identification algorithms proposed in the literature tend to apply fingerprint matching algorithms developed for fingerprint verification [36]. However, algorithms with high performance for fingerprint verification do not necessarily do just as well on latent fingerprint identification [36]. Thus, we have avoided a straightforward fusion of fingerprint matching algorithms without knowing their worthiness for latent fingerprint identification. Instead, we have selected local and global matching algorithms with a higher performance identifying latent fingerprints.

Valdes-Ramirez et al. [36] compared the performance of various local matching algorithms of existing minutia descriptors for latent fingerprint identification. They found four local matching algorithms that outperform others: MCC [5], mtriplet [25], a combination of the orientations of ridges and minutiae in a spiral scheme [33], and the local structure proposed by Jiang and Yau [15]. Different performances of these matching algorithms on various subsets of latent fingerprints motivate the idea of ensembling such matching algorithms. Thus, we have evaluated the performance of these four local matching algorithms using their particular global matching algorithms and comparing subsets of the samples and references in the NIST SD27 [9] database. This latent fingerprint database has samples classified by latent examiners into good, bad, or ugly, depending on the quality of the fingerprint features.

Figure 2 depicts the performance measure used to compare identification algorithms: cumulative match characteristic curves (CMC) (ISO/IEC 19795-1). A CMC curve plots an identification rate for each rank number, i.e., the fraction of genuine matching fingerprints with a computed match score higher than the match score in the i-th rank. According to the CMC curves, MCC [5] and mtriplet [25] always surpassed the other two. Besides, both output the highest identification rates for different rank values on diverse fingerprint qualities. Hence, we selected MCC [5] and mtriplet [25] for local matching.

Fig. 2
figure 2

Curves CMC Rank-20 output by lower-level algorithms with their global matchers for good, bad, and ugly subsets of latent fingerprints in the NIST SD27 [9] database. We can notice that MCC [5] and mtriplet [25] outperform the other two in all cases, but there is not an absolute winner between both. These results favor the idea of fusing these two local matching algorithms

To be sure about the prediction power of the selected lower-level matching algorithms, we had to validate that it does not degrade regardless of what global matching algorithm we choose to use. Therefore, we have compared the performance of the global matchers proposed within each local matching algorithm (mtriplet and MCC) against versions substituting their global matchers with the algorithm deformable minutiae clustering (DMC) [26]. The global matching algorithm proposed for mtriplet is M3gl [25], and for MCC [5], we have used the global matching algorithm provided by the authors in MCC SDK 1.4 [5].

DMC is a global matcher independent of the local matching algorithm, which has shown an improvement in the identification rates using different local matching algorithms [26]. Additionally, a new parallel version of DMC [26] increased its previous matching speed by 44.7x [29]. Figure 3 shows that in our experiments, DMC [26] surpasses the identification rates of the particular global matcher MCC SDK 1.4 [5] and M3gl [25] for all rank values comparing the fingerprint pairs in the database NIST SD27 [9]. As a consequence, we have selected the algorithm DMC [26] for global matching. Besides, we have modified DMC [26] for computing the matching minutia count in addition to the match score (see step 2 in Fig. 1).

Fig. 3
figure 3

CMC curves comparing the performance of the global matchers MCC SDK 1.4 [5] and M3gl [25] against the algorithm deformable minutiae clustering (DMC) [26]. The algorithm DMC [26] as the global matcher reaches higher identification rates than MCC SDK 1.4 and M3gl for both local matching algorithms MCC and mtriplet

3.2 Selection of the attributes and the fusion algorithm

To select the attributes and the fusion algorithm of our proposal, we have experimented with different setups. We explored three sets of attributes: using only the matching minutia count, using only the match score, and using both. Each set of attributes stores tuples of attributes with different sizes (two or four) that describe the matching relationship between a sample and a reference.

With these tuples of attributes, we set up three training datasets using the samples and references in a non-public database with 283 latent fingerprints matched with 243 impressions. The fingerprint pairs were acquired and manually marked by latent examiners from criminal investigations. Hence, they pose the same difficulty for successful matching as those in the database NIST SD27 [9]. Next, we associate with each tuple the class attribute: 1 for fingerprint pairs that are matched and 0 for fingerprint pairs that are not. As a result, the three datasets add 283 examples to the matched class (1) and 68,486 \((283*243 - 283)\) examples to the not matched class (0). Such difference guides to class-imbalance datasets with an \(imbalance~ratio=\frac{68,486}{243}\).

Methods that tackle class imbalance problems are often divided into three categories: data level, algorithm level, and cost-sensitive [20,21,22,23]. In this work, we have used a data-level approach to address class imbalance. We have undersampled data using \(0.01\%\) of not matched fingerprints and \(100\%\) of the matched fingerprints, hence yielding a new imbalance ratio of \(\frac{684}{243}\).

We compare five candidate algorithms (three supervised classifiers, a weighted sum, and a product rule) to select the fusion algorithm. The weighted sum and the product rule are fusion algorithms commonly found in the literature [1, 3, 11, 12, 14, 18, 27, 31]. We empirically set the weights for the weighted sum as follows: 0.4 and 0.1 for the match score and the matching minutia count computed with the local matcher MCC [5], respectively, and similar for those attributes computed with mtriplet [25]. The supervised classifiers are determined with two automatic tools, one for traditional machine learning algorithms and other for deep learning algorithms. For all supervised classifiers, we adopt the probability of each tuple belonging to the class 1 computed by the supervised classifier as the fused match score.

We employed Auto-WEKA [34] developed for WEKA 3.8.2 to determine the traditional machine learning algorithms with the best performances. Auto-WEKA evaluates 30 supervised classifiers with different parameter configurations optimizing a user-defined measure with a tenfold cross-validation test. We executed Auto-WEKA on a server with 48 cores, 1 TB of RAM, and a 1-TB hard drive for 48 hours.

Similarly, we employed Auto-KERAS [16] to determine the deep learning model with the best performance. Auto-KERAS is an automatic tool for deep learning based on KERAS, which tests the number of models predefined by the user. Also, Auto-KERAS outputs the best model according to the loss function defined by the user. We tested 30 different deep learning models for structured data with Auto-KERAS, optimizing the balanced accuracy.

From our experiment, we obtained three different supervised classifiers as candidates for the fusion algorithm. Auto-WEKA found with the undersampled training datasets that a Bayesian network maximized the balanced accuracy, and a multilayer perceptron (MLP) maximized the AUC-ROC. All nodes in the Bayesian network have only one parent, and the MLP has three layers: the input layer with four units, the hidden layer with two units, and the output layer with one unit. By contrast, Auto-KERAS outputs a deep learning model for structured data with two hidden layers with 32 and 16 units, respectively, using the full training datasets.

The CMC curves in Fig. 4 show that the fusion using the match scores and the matching minutia count with an MLP achieved the highest Rank-1 identification rate \((87.98\%)\), slightly higher than the fusion algorithm with the weighted sum \((87.60\%)\).

Fig. 4
figure 4

Curves CMC Rank-20 of the five fusion algorithms computed with three different sets of attributes matching the samples and references in the database NIST SD27 [9]. Note: The MLP algorithm fusing the matching minutia count and the match score, computed by each lower-level algorithm, obtained the highest identification rates

The results in Figs. 2 and 4 lead us to develop an ensemble for latent fingerprint identification. Our proposal uses the local matching algorithms MCC [5] and mtriplet [25] with the global matching algorithm DMC [26] as the lower-level algorithms. Furthermore, we fuse both attributes computed by each lower-level matching algorithm with an MLP (as we described in Fig. 1 and Algorithm 1). Nonetheless, we can still improve the lower-level matching algorithms tuning the parameters of the local matching algorithms for latent fingerprint identification.

3.3 Parameter tuning of the local matching algorithms for latent fingerprints

The local matching algorithms selected for our stacking were proposed for fingerprint verification. Hence, the authors determined their parameters using databases with impressions, which are fingerprints with higher quality than the latent fingerprints. Since we are developing a latent fingerprint identification algorithm, we have tuned the parameters of both local matching algorithms MCC [5] and mtriplet [25] using a non-public database with 283 samples and their mated references.

Often, parameter tuning is a time-consuming task because it is necessary to explore a search space with as many dimensions as the number of parameters. To address this issue, we search the best parameter values only in a range around the value proposed by the authors. When we find the best parameter value at the extremes of an interval, we restart the search with a new interval around the found value.

For a finer parameter tuning, we could compute the CMC curve for each set of parameters. However, computing the CMC curve is time-consuming. Alternatively, we tuned the parameters using the metric ZeroFMR of the DET curve, which can be computed faster than the CMC curve.

3.3.1 Parameter tuning of the local matching algorithm Minutia cylinder code

We tuned the following parameters of the local matching algorithm MCC [5] for latent fingerprint identification by an exhaustive search:

  • The length and width of the cuboid (Ns) with values in the range [14, 23], increasing the search with a step = 1.

  • The height of the cuboid (Nd) with values in the range [4, 7], increasing the search with a step = 1.

  • The radio of the cylinder (R) with values in the range [50, 76], increasing the search with a step = 2.

  • The distance threshold with values in the range [2, 11], increasing the search with a step = 1.

  • The angle threshold with values in the range [0.02, 0.74], increasing the search with a step = 0.1.

The best parameter values found regarding the ZeroFMR of the DET curve computed with the non-public database were (Ns = 21, Nd = 6, R = 60, distance threshold = 5, angle threshold = 0.12). The size of the cells increases from Ns = 16 and Nd = 5 to Ns = 21 and Nd = 6, due to the less presence of features in latent fingerprints. However, the radio and the thresholds diminish due to the nonlinear distortions in the latent fingerprints. Such distortions are higher for larger areas of the fingerprint. In particular, the radio goes from R = 70 to R = 60; the distance threshold goes from 7 to 5, and the angle threshold goes from 0.52 to 0.12. The CMC Rank-20 curve with these parameters exceeds the CMC curve with the original parameters for all rank values matching the minutiae of the fingerprints in the database NIST SD27 [9] (see Fig. 5 MCC).

3.3.2 Parameter tuning of the local matching algorithm mtriplet

Similarly, we tuned the following parameters of the local matching algorithm mtriplet [25] for latent fingerprint identification through an exhaustive search:

  • The threshold for the distance between minutiae (dThr) with values in the range [10, 50] increasing the search with a step = 1.

  • The angle threshold (aThr) with values in the range [10, 25] increasing the search with a step = 0.25.

  • The number of neighboring minutiae revised to form the triplets (neighborCount) with values in the range [3, 11] increasing the search with a step = 1.

The best parameter values found regarding the ZeroFMR of the DET curve computed with the non-public database were (dThr = 13, aThr = 15, neighborCount = 10). The neighboring minutiae revised to create the triplets increases from neighborCount = 7 to neighborCount = 10 due to the higher presence of low quality and spurious minutiae in latent fingerprints. The thresholds decrease from dThr = 15 to dThr = 13, and aThr = 21.25 to aThr = 15 due to the nonlinear distortions in the latent fingerprints, which are higher for larger areas of the fingerprint. The CMC Rank-20 curve with these parameters is higher or equal to the CMC curve with the original parameters for all rank values matching the minutiae of the fingerprints in the database NIST SD27 [9] (see Fig. 5 mtriplet).

Fig. 5
figure 5

Curves CMC Rank-20 output by the local matching algorithms MCC [5] and mtriplet [25] with the original parameters and the parameters tuned for latent fingerprint identification comparing the fingerprints pair in the database NIST SD27 [9]. We tuned the parameters with a non-public database regarding the zero false matching rate (ZeroFMR) of the DET curve. We have magnified the y-axis for visualization purposes

4 Results and discussion

Intending to compare the ensemble of fingerprint matching algorithms against the previous algorithms reported in the literature, we have configured seven testing datasets. Table 2 describes such datasets in terms of the input fingerprint databases, the number of samples, the number of references, and the minutia extraction method.

Table 2 Description of the datasets employed to test our proposal. To provide comparisons with previous work, we have included DS_2 with a subset of the references in DS_3, and DS_6 with the subset of samples and references with extended minutiae in the database GCDB [18]

Testing for latent fingerprint identification in a closed scenario involves computing the CMC curve with the testing datasets, which have not been previously “seen” by the algorithm. A closed scenario indicates that each sample has a mated reference in the reference database [24], which is our case.

Figure 6 depicts the curves CMC Rank-20 for the lower-level matching algorithms, their fusion using a weighted sum, their fusion using an MLP with the original parameters of the local matching algorithms, and their fusion using an MLP with the parameters tuned for latent fingerprint identification. The curves corroborate that the fusion using an MLP improves the identification rates of the lower-level algorithms using all datasets and for most of the rank values. Additionally, we can observe that the fusion using an MLP exceeds the fusion using the weighted sum for larger databases (see the differences in datasets DS_3, DS_4, and DS_5). We can see that the parameter tuning using the ZeroFMR improves the Rank-1 identification rate for DS_1, DS_3, and DS_4, but it worsens for the DS_5. Unlike the other datasets, DS_5 stores minutiae automatically extracted from latent fingerprints. Although we used the minutiae extractor NIST-NBIS suggested by the authors of the database MOLF [32], this automatic extractor detects more spurious minutiae than the latent examiners. Considering that we tuned the parameters using a database with manually marked minutiae, we conclude that the set of parameters proposed is inefficient for samples with minutiae automatically extracted. Nevertheless, the fusion using an MLP but with the original parameters outperforms the lower-level matching algorithms and the fusion using a weighted sum for most of the rank values also using DS_5.

Fig. 6
figure 6

Curves CMC Rank-20 output by each evaluated algorithm using datasets DS_1, DS_3, DS_4, and DS_5. The evaluated algorithms are the lower-level matching algorithms, their fusion using a weighted sum, their fusion using an MLP, and their fusion using an MLP with the parameters of the local matching algorithms tuned for latent fingerprint identification. We have pointed out the Rank-1 identification rates. We have adjusted the y-axis for each graph to improve the visualization

Table 3 compares the identification rates achieved by the ensemble of fingerprint matching algorithms against those reported in the literature. Our algorithm with the parameters of the local matching algorithms tuned for latent fingerprint identification reached a higher Rank-1 identification rate than other methods, except when comparing the samples and references in the dataset DS_2. Nevertheless, our proposed mechanism outperforms the work of Cao and Jain 2018 [2] using only minutiae. Identifying latent fingerprints using only minutiae reduces the size of the reference databases and the computational time.

Table 3 Comparison between the ensemble of fingerprint matching algorithms and previous works regarding the Rank-1 identification rate

The average computational time of our proposal was six milliseconds matching a sample against a reference. Although we performed our training and validation experiments on a high-performance server, we measured the computational time on a device with mobility considering remote crime scenes. Thus, we used a laptop with a Core i7 processor, 16 GB of RAM, and a solid-state hard drive. We measured the average computational time to identify the samples against the references in the NIST SD27 [9] database. Since this database is considered representative of latent fingerprints, we measured the average computational time as a more reliable measure than the computational time of identifying a randomly selected latent fingerprint.

5 Conclusions

In this research, we have studied the latent fingerprint identification problem as a machine learning problem, fusing two lower-level algorithms for fingerprint matching. We have selected as attributes the matching score and the matching minutia count computed by each lower-level matching algorithm. We have chosen two local matching algorithms from those suitable for latent fingerprint identification, tuning their parameters for latent fingerprint identification. Moreover, we have substituted their global matching algorithms by the algorithm DMC, which has shown to improve their performance. Finally, we have computed the fused match score between a sample and a reference using a function learned with a multilayer perceptron.

From our experiments, we found that the fusion of lower-level matching algorithms using a supervised classifier improves the identification rate of the lower-level matching algorithms. We also observed that a supervised classifier reaches higher identification rates than a weighted sum as the fusion algorithm because a supervised classifier can find more complex functions than the weighted sum. Moreover, we noticed that the minutia extraction method affects the parameters for the local matching algorithms.

Other attributes extracted from the local matching algorithms will be analyzed as future work to determine a new set of attributes that describes better the matching relationship between a latent fingerprint and an impression. Furthermore, ongoing work also involves exploring the use of other supervised classifiers that are known to be robust to class imbalance [23].