Title: KPlet And CBFS: A Graph Based Fingerprint Representation And Matching Algorithm
1K-Plet And CBFS A Graph Based Fingerprint
Representation And Matching Algorithm
- Sharat Chikkerur
- Center for Unified Biometrics and Sensors
- University at Buffalo
- www.cubs.buffalo.edu
2Abstract
- Background
- Minutiae are the most widely used representation
for matching fingerprints - Matching is based on establishing correspondences
between point pairs - Recovering optimal transformation is a hard
problem - Challenges
- Global alignment is not robust to non-linear
distortion - Local features based matching are more resilient
to distortion - However, local evidence has to be validated based
on global consistency to avoid false positives
no formal mechanisms in literature - Contributions
- New graph based matching algorithm robust to non
linear distortion - K-Plet A graph based representation to capture
local geometry - CBFS A dual graph based technique for
propagating local matches - Result Performs better than NIST BOZORTH3
matcher (FVC DB1) database
3Outline
- Introduction
- Fingerprints 101
- Matching Algorithm
- Prior Related Work
- New Representation K-plet
- Local Matching Dynamic Programming
- Consolidation Coupled BFS
- Experimental Evaluation
- Conclusion
4Fingerprints 101 Fingerprint Classes
- A fingerprint is made up of system of oriented
friction ridges - A fingerprint can be classified based on type the
ridge flow pattern
- Classification helps in narrowing down possible
matches - In reality, the class distribution is skewed
(gt65 are loops) - Used only in law enforcement applications
5Fingerprints 101 Ridge Characteristics
- Fingerprints can be distinguished based on the
ridge characteristics - Ridge characteristics mark local discontinuities
in the ridge flow - No two individuals have the same pattern of
ridge characteristics at the same relative
locations
Global Features
Local Features
6Outline
- Introduction
- Fingerprints 101
- Matching Algorithm
- Prior Related Work
- New Representation K-plet
- Local Matching Dynamic Programming
- Consolidation Coupled BFS
- Experimental Evaluation
- Conclusion
7Prior Related Work Matching Paradigms
- Manual
- Human experts use a combination of visual,
textural, minutiae cues and experience for
verification - Still used in the final stages of law enforcement
applications - Image based
- Utilizes only visual appearance.
- Requires the complete image to be stored (large
template sizes) - Texture based
- Treats the fingerprint as an oriented texture
image - Less accurate than minutiae based matchers since
most regions in the fingerprints carry low
textural content - Minutiae based
- Uses the relative position of the minutiae points
- The most popular and accurate approach for
verification - Resembles manual approach very closely.
8Image Based Matching Optical Correlation
- Advantages
- Image itself is used as the template
- Requires only low resolution images
- Optical correlation makes it extremely fast
(Choudary and Awwal 99, Lee et al. 99, Roberge
et al. 99, Baze et al.00) - Disadvantages
- Image itself is used as the template (template
size about 30 KB) - Requires accurate alignment of the two prints
(unreliable in poor prints) - Not robust to changes in scale, orientation and
position.
9Texture Based Matching Filterbanks
- Advantages
- Uses texture information (lost in optical and
minutiae based schemes) - Performs well with poor quality prints
- Features are statistically independent from
minutiae and can be combined with minutiae
matchers for higher accuracy (Jain et al. 00,
Jain et al 01) - Disadvantages
- Requires accurate alignment of the two prints
(unreliable in poor prints) - Not invariant to translation, orientation and
non-linear distortion. - Less Accurate than minutiae based matchers
10Minutiae Based Matching
- Advantages
- Invariant to translation, rotation and scale
changes - Very accurate (Ratha et al 96, Jain et al. 97,
Jian Yau 00, Bazen and Garez 03) - Disadvantages
- Minutiae extraction is error prone is low quality
images - Not robust to non-linear distortion.
- Does not use visual and textural cues
11Outline
- Introduction
- Matching Algorithm
- Prior Related Work
- New Representation K-plet
- Local Matching Dynamic Programming
- Consolidation Coupled BFS
- Experimental Evaluation
- Conclusion
- Software Demos
12Minutiae Based Matching
- Challenges
- Minutiae extraction is error prone is low quality
images - Not robust to non-linear distortion.
- Intra-user variation
13Challenges Non-linear Distortion
14Challenges Quality and Intra-user variance
Variation in quality
Intra-user variation
15Prior Related Work Global Matching
- Global Matching
- Point correspondences not known combinatorial
problem - Relaxation approach (Ranade and Rosenfield 93)
- Likelihood of each match is either decreased or
increased at each iteration based on
compatibility of rest of the points - Iterative approach makes it too slow to be
practical - Generalized Hough Transform (Ratha et al. 96)
- All possible transformation represented as a
quantized search space - Searches for the most optimal transform in the
search space - Very fast
- Ridge Alignment (Jain et al. 97)
- Performs explicit alignment before matching
- Each minutiae is associated with its ridge
(represented by a curve) - The alignment is based on ridge correspondence
- Global matching is then performed using string
edit distance
16Prior Related Work Local Matching
- (Jiang and Yau 00)
- 11 dimensional local features derived from
reference minutiae and two closest neighbors - Best match is used only for explicit alignment
- (Jea and Govindaraju 04)
- 5 dimesional features Si (ri0, ri1, fi0, fi1, di)
derived from two closest neighbors - Alignment is still required
- (Ratha et al. 00)
- Star representation derived from all minutiae
within a particular radius - Consolidation by checking consistency
- (Garris et. al 03 BOZORTH3)
- Line features
- Consolidation by linking consisting matches
17Proposed Algorithm
- Representation
- K-Plet
- Features invariant to rotation and translation
- Local relationship formally represented by a
directed graph - Local Matching
- Posed as a string alignment problem and solved by
dynamic programming - Matches all neighbors simultaneously
- Consolidation
- Coupled Breadth First Search
- Breadth first search is used to propagate the
matches - Similar to human verification
- No explicit alignment required at any stage
18Neighborhood Representation K-plet
19K-plet
T
r
F
20The Graphical View
21Local Matching
- All local neighbors have to be matched
simultaneously. Greedy approach does not work
when conflicts occur - These can solved by finding the alignment through
optimization process such as by solving a string
alignment problem
- Example of alignment
- S (acbcdb) (ac__bcdb)
- T (cadbd) - (_cadb_d_)
- Trivial solution requires exponential time
- Each match is given a cost. Alignment solved
through recurrence relation
22Graphical Matching Coupled BFS
23Graphical Matching Coupled BFS
24Coupled BFS
25Graphical Matching Coupled BFS
26Graphical Matching Coupled BFS
27Graphical Matching Coupled BFS
28Overview of the BFS algorithm
29Important Differences w.r.t BFS
- Traditional Breadth First Search
- Traversal Defined only over a single graph
- All neighbors are considered for expanding the
path - Coupled Breadth First Search
- Traversal proceeds in two directed graphs
simultaneously - Only matched neighbors are considered for
expanding the path - Constant number of neighbors provides a bound for
the traversal complexity
30Complexity Analysis
- The algorithm can be divided into two stages
- Alignment T1
- Pair correspondence T2
- Singular points are not known
- All possible alignments are tried T1O(n2)
- T2
- Complexity of BFS over graph G(V,E) O(VE)
- At each vertex we perform a string alignment
O(K2)O(1) - Due to our specialized construction of the K-plet
E KV - O(T2)O(n)
- Total complexity O(n2). O(n) O(n3)
- Singular points are known (S.Chikkerur and Ratha,
AUTOID 05) - Only c nearest neighbors are tried, T1 O(c2)
O(1) - O(T2)O(n), as before
- Total complexity O(1). O(n) O(n)!
31Experimental Evaluation
- 800 prints from FVC2002(DB1)
- 2800 genuine tests,4950 impostor tests
- Compared with BOZORTH 3
Error Rates BOZORTH3 3.6 EER, 5.0
FMR100 Proposed 1.5 EER, 1.65 FMR100
32Software
- CUBS Truthing Tool
- CUBS Minutiae Truthing Tool
- CUBS Fingerprint Verification Demo
- Matlab code for Fingerprint Enhancement
- Matlab Toolbox for Fingerprint Verification
- Download available from
- http//www.mathworks.com/matlabcentral
- http//www.eng.buffalo.edu/ssc5
33Conclusion
- A new matching algorithm based on graph matching
principles. - We presented a new representation (K-plet) to
encode local neighborhood - We presented CBFS (Coupled BFS), a new dual graph
traversal algorithm - The unique advantages of the proposed algorithm
are as follows - The proposed algorithm is robust to non-linear
distortion - Ambiguities in minutiae pairings are solved by
employing an optimization approach. - The coupled BFS algorithm provides a very generic
way of consolidating local matches. - We also presented an experimental evaluation of
the proposed approach and showed that it exceeds
the performance of the NIST BOZORTH3
34Thank You
- http//www.cubs.buffalo.edu