Fingerprint Indexing - Computer Science & Engineering

Download Report

Transcript Fingerprint Indexing - Computer Science & Engineering

Fingerprint Classification
sections 5.3 - 5.5
Fingerprint matching using transformation parameter
clustering
R. Germain et al ,IEEE
And
Fingerprint Identification Using Delaunay Triangulation
G. Bebis et al ,IEEE
1
Performance of fingerprint
Classification
2
Performance of Classification Techniques (cont..)
• Confusion Matrix
3
Accuracy Vs Rejection rate
4
• Two Databases
• NIST DB4 - contains 2000 fingerprint pairs
• NIST DB14 – contains 27000 fingerprint pairs
– Consist of 8-bit grey level images
– Two different fingerprint instances
– Classified into 5 classes
5
Results on NIST DB4
6
Results on NIST DB14
7
Accuracy Vs Rejection rate
8
Fingerprint Indexing and Retrieval
• Problems with classification schemes
–
–
–
–
Number of classes is small
Fingerprints are unevenly distributed
More than 90% of fingerprints belong to only 3 classes
Difficult to search a single fingerprint form the large database
9
These problems can be handled with 2 different
approaches
– Fingerprint sub classification
– Continuous Classification
10
Fingerprint Sub Classification
11
Continuous Classification and Other
Indexing Techniques
• Uses vectors summarizing their main features
• Feature vectors are created through a similarity
preserving transformation
• Avoids ambiguous fingerprints
• System efficiency and accuracy will be balanced by
adjusting the size of the neighborhood.
12
Indexing Techniques
• Using Minutae points
• Identifies all the minutae triplets in the fingerprints
• Uses geometric hashing to retrieve a similar
fingerprints from the database
• This is built by quantizing all the possible triplets
• If the same fingerprint is hit by more triplets, then a
voting technique is applied to get the final rank
13
Other Indexing techniques
• Based on matching scores between the fingerprints
• In some papers, different Indexing techniques are
combined to improve the performance
• Continuous classification with MKL –based approaches
• Finger code feature vectors are combined with a simplified version
of the minutae triplet approach
14
Retrieval Strategies
• If exclusive classification is used for
indexing then,
• Hypothesized class only
• Fixed search order
• Variable search order
15
• If continuous classification is used for
indexing then,
• Fixed radius
• Incremental search order
16
17
Performance of fingerprint Retrieval
18
Performance of retrieval strategies
19
Performance of retrieval strategies
20
Fingerprint matching using transformation
parameter clustering
Fingerprint Identification Using
Delaunay Triangulation
21
Flash Method
• Flash algorithm uses a higher a dimensional indexing scheme than
geometric hashing by adding invariant properties of the feature
subset to the index
• Second stage uses, transformation parameter clustering to
accumulate evidence
22
Flash Method
• When adding a model to the database, invariant information
computed from each subset of feature points forms a key or index
• Key labels an entry that is added to a multimap,
• This entry contains the identifier of the model that generated the key
and information concerning the feature subset
23
24
• When servicing a query, each key generated by the query object is
used to retrieve any items in the multimap that are stored under the
same index.
• Each item retrieved represents hypothesized match between
subsets of features in the query object and the reference model
• This hypothesized match is labeled by the reference model by
parameters characterizing the geometric transformation bringing the
two subsets of features into closest correspondence
• Votes for these hypothesized matches accumulate in another
associative memory structure
25
26
How it applies to fingerprint matching
• In the fingerprint application, class of transformations that connects
different object instances is assumed to be of two-dimensional
distance preserving transformations
• A least squares estimation methodology is used to solve the over
constrained pose estimation problem for each hypothesized local
correspondence generated by the index lookup process
27
Data abstraction and index generation
• Minutae provides a natural choice for feature points
• A triplet of numbers (X, Y, Ө ) represent each feature
point
28
• Flash matcher uses skeletonized
version of the ridge pattern on the
finger
• If a line is drawn between each
pair of minutae, the number of
ridges crossed by this line can be
computed
• Ridge counting procedure
repeats for each pair of minutae
in the fingerprint, and the results
become part of the flash index
29
• The flash algorithm uses redundant combination of three
feature points when forming indices
• This gives some immunity against noise
• To keep the number of indices generated within bounds,
the algorithm restricts the acceptable combinations of
feature points used to form an index
30
• The search engine requires the generation of indices used for table
lookup
• These indices are descriptive of the objects stored in the database.
• Each component of the index is invariant under rotations and
translations
• The full index consists of nine components:
– Length of each side
– Ridge count between each pair
– Angles measures with respect to the sides
31
Accumulating evidence
• During the query phase, each index generated by the
query fingerprint
• This is used to retrieve all the objects in the database
that are labeled with same index
• Each retrieved model objects represents a hypothesized
correspondence between 3 points in the query print and
three in the model
32
Algorithm that computes the co-ordinate transformation
33
Accumulating evidence
• If a large number of feature points can be
brought into correspondence by rigid
transformation of the coordinate system,
all of the indices generated by the
combinations of three feature points
belonging to this set generate the same
coordinate transformation parameters
34
Accuracy Issues
•
Four scenarios are possible
H0 is true, and test says H0 is true
H0 is false, and test says H0 is true
H1 is true, and test says H1 is true
H1 is true, and test says H1 is true
Two distinct types of errors can be made
False Negative: incorrectly assigned mated to non mated
False Positive: incorrectly assigned non mated to mated
The number of matching triangles that generate a consistent rigid
transformation serves as the basis for assigning pairs to the mated or nonmated pair population
35
•
With the decision criteria, it is straightforward to determine the two error rates
from the conditional probability densities computed from the test populations
•
The error rate for incorrectly assigning a mated pair to the nonmated population
is given by
•
The error rate for incorrectly assigning a nonmated pair to the mated population
is given by
36
Consider one to many identification query
• The candidate list of hypothesized matches is formed by taking all
prints from the reference database
• Assuming the presence of one mate to the query, the FPR and
FNR for and identification search against a database N is shown
below
• The FPR increases drastically with database size because each
additional entry in the database provides another opportunity to
randomly achieve a high score
37
38
Results
• Data set
• 97492 inked dab images
• 657 queries, against this database
• Query set of prints was a subset of the models
• They made 657 X 97492 comparisons of pairs
These pairs divided into 3 groups
identical fingerprints(657 pairs)
diff. impressions of the same finger( 768 pairs)
impressions of different fingers( 64,050,819 pairs)
39
40
Fingerprint identification using
Delaunay triangulation
41
Advantages of using this technique
• Preserves index selectivity
• Reduces memory requirements
• Improves recognition time
• Considers only O(N) minutae triangles
42
Important issues to be consider when using
Indexing
• memory requirements :
• In the case of fingerprints, memory requirements can become much higher
since fingerprints contain more features on the average than typical objects
• Index selectivity:
• relates to the discrimination power of the groups considered for indexing
• groups with low discrimination power give rise to very similar indices
• large number of hypothetical matches are generated during recognition
43
• To deal with this problems
• Increasing index dimensionality using large size
groups
• Additional information can be computed from each
group and added to index
44
• Indexing based methods have two phases of
operation
• Preprocessing
– features which remain unchanged under geometric transformations are
extracted from groups of model points and used to form indices
– Indexed locations are filled with entries containing references to the
models
• Recognition
– Features from groups of image points are extracted and used to form
indices again
– The models listed in the indexed entries are collected into a list of
candidate models and the most often indexed models are selected for
further verification
45
Background on Delaunay Triangulation
46
• Delaunay triangulation has certain properties
• Non degenerate set of points is unique
• A circle through the three points of a Delaunay triangle
contains no other points
• The minimum angle across all the angles in all the triangles
in a delaunay triangulation is greater than the minimum angle
in any other triangulation of the same points
47
Indexing using Delaunay Triangulation
• Minutae triangulation
48
Building the Index Table
• The index table is built by considering the minutae
triangles formed by the Delaunay triangulation
• From each minutae triangle, information invariant to
similarity transformations is computed.
• Then, an index is formed using the invariants and
appropriate information is stored in the indexed table
location
• the Delaunay triangulation, yields O(N).
49
•
Given a minutae triangle,
•
Compute 3 invariants
•
These based on sides and angles of the triangle
First sort the sides of the triangle to avoid considering all possible
orders of three points
50
•
Following invariants are computed
51
• After the invariants have been computed followed by quantization
yields an integer index
• The entries stored in the table have the following format
52
• Identification step
• Each index generated by a query fingerprint is used to
retrieve all model fingerprints
• To account for noise, we also retrieve entries stored in a
small neighborhood
53
• Verification step
• Performed by aligning the two fingerprints using the
transformation computed and by computing the amount of
overlap
• A list of candidate fingerprints which possibly match query
fingerprints is generated
• If a large number of minutae from the candidate fingerprint
are close, then it is very likely that the two fingerprints come
from the same fingerprint
54
•
Although we use similarity
transformations, differences in the
pressure of the finger on the
sensor or skin elasticity produce
deformations which are not
modeled very well by similarity
transformations
•
alignment is improved by
computing the similarity
transformation using affine
transformations
55
Experimental results
• Data set
• 300 fingerprints, captured from 30 individuals (10
images per finger for each individual)
• Size is 400 X 400 pixels
• No restriction on the position and the orientation of
fingers
56
Experiments
• First set of experiment
• Vary the number of imprints stored in the database
for each person
• Experimented with storing 3, 5 ,and 7 images per
person
• In each case, 6 experiments were conducted
• In the first five experiments, images stored in the
database are chosen randomly and in the last one,
best one is chosen
57
• Classify results into 4 categories
• Correct – query correctly matched to one or more fingerprints from the
same person
• False positive - query matched to one or more fingerprints from the
an incorrect person
• False negative - query has not been matched to any fingerprints
from the database
• Mixed – there is not enough evidence to assign the query fingerprint to
one of the previous categories
58
Results
59
Conclusions from the results
• Recognition accuracy depends on the number of imprints stored in
the database for each person
• Last row of each table shows that if the imprints stored in the
database are of good quality, recognition accuracy improved
significantly
• Number of false negatives are relatively high compared to number of
false positives
60
• Second experiment
• How false positives increase with the database size
• Tested how the system performs on fingerprints from people not
represented in the database
• Five experiments were conducted
61