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:
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.
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.
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%) |
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.