The FX3 approach to fingerprint recognition

FX3 SDK is a collection of innovative algorithms for the processing, feature extraction and matching of fingerprints which provides great security and efficiency. FX3 implements different matching stages (multi-modal matching) and performs feature extraction, and more in general the extraction of fingerprint features, directly on the gray-scale images.

  • Multi-modal matching: The most discriminant fingerprint features are the so called minutiae, and as several matching algorithms do, FX3 performs a minutiae matching for determining the degree of similarity of two fingerprints. Unfortunately, sometimes minutiae cannot be reliably extracted due to the poor quality of the fingerprints (elderly people, manual workers, or other subjects whose ridge-line thickness is very low). The figure shows some fingerprints where minutiae extraction is critical and which also a human expert cannot easily process.



    In such cases, a matching algorithm, which relies on minutiae only, is not able to decide with enough reliability whether two fingerprints belong to the same individual or not, and often produces a false rejection (thus increasing FRR).

    Besides minutiae, FX3 uses further 4 types of features which encode the ridge-line flow and density, and the ridge-line shape in some interesting regions, etc. The experimentation performed proved that these features can significantly help the "matcher", increasing its decision confidence especially when:

    1. fingerprints are of low quality
    2. the fingerprint pattern is characterized by several scratches or damaged regions
    3. the overlapping area between two samples of the same finger (common area) is small and the number of common minutiae is small as well.

    In spite of the large amount of extracted information, the average fingerprint templates size is about 6 Kbytes (max. 8 Kbytes). This size can be reduced to 50% (max. about 4 Kbytes) by setting FX3 in fast mode; this can be useful when the template has to be stored on a smart card or into another small space storage support.


  • Direct gray-scale feature extraction: FX3 extracts the minutiae and the other features used for the matching directly from the gray-scale image (without binarization and thinning). In the paper "Direct Gray-Scale Minutiae Extraction in Fingerprints", IEEE transaction on Pattern Analysis Machine Intelligence, 1997, it is shown that a direct extraction causes a smaller loss of information (and consequently gives a better accuracy) and, at the same time, decreases the computation time. FX3 feature extraction algorithms represent an evolution and robust variant of those proposed in the above mentioned paper.

Performance

In biometric systems, quoting absolute performance is meaningless since each measure strongly depends on the database and on the testing protocol used. The performance here included refers to a test on a database collected by using the FX 2000 scanner. The database contains the fingerprint of 105 users (most of whom are inexpert) and also contains low quality fingerprints (the fingerprints shown in the above figure are included in the database).
FX3 can operate in DEFAULT mode (max. accuracy) or in FAST mode (in spite of a very small loss of accuracy, computation times are reduced to about 50%). The following tables report the performance measured on the test database for each of the two operating modes.

Accuracy

threshold t SPEED_DEFAULT SPEED_FAST
FAR FRR FAR FRR
0.3500 0.0049 (0.49%) 0.0005 (0.05%) 0.0032 (0.32%) 0.0009 (0.09%)
0.3750 0.0025 (0.25%) 0.0010 (0.10%) 0.0014 (0.14%) 0.0014 (0.14%)
0.4000 0.0011 (0.11%) 0.0014 (0.14%) 0.0005 (0.05%) 0.0020 (0.20%)
0.4250 0.0006 (0.06%) 0.0019 (0.19%) 0.0002 (0.02%) 0.0034 (0.34%)
0.4500 0.0004 (0.04%) 0.0026 (0.26%) 0.0000 (0.00%) 0.0049 (0.49%)
0.4750 0.0000 (0.00%) 0.0036 (0.36%) 0.0000 (0.00%) 0.0063 (0.63%)


SPEED_DEFAULT
  • EqualErrorRate FAR(t)=FRR(t): 0.00119 (0.12%) for t = 0.393
  • ZeroFAR: 0.00340 (0.34%) for t = 0.4705
  • ZeroFRR: 0.03049 (3.05%) for t = 0.2659
SPEED_FAST
  • EqualErrorRate FAR(t)=FRR(t): 0.00137 (0.14%) for t = 0.376
  • ZeroFAR: 0.00442 (0.44%) for t = 0.4425
  • ZeroFRR: 0.01987 (1.99%) for t = 0.2655

Efficiency

Time reported is referred to a PC Pentium IV - 2.66 GHz MHz.

TASK SPEED_DEFAULT SPEED_FAST
Feature extraction 86 ms 56 ms
Matching 28 ms 13 ms
Identity verification (1:1) 114 ms 69 ms
Identification (1:50) 0.79 sec 0.38 sec

Identity verification time (1:1) is the average time necessary to verify the identity of an individual and includes 1 feature extraction + 1 matching.

Identification time (1:50) is the average time necessary to identify an individual in a database of 50 individuals (assuming that on average the right match is found at the 25th position); therefore, the 1:50 identification time includes 1 feature extraction + 25 matching.