1 / 38

Fingerprint Matching

Chapter 4.1- 4.3 On-Line Fingerprint Verification Anil Jain, Fellow, IEEE, Lin Hong, and Ruud Bolle, Fellow, IEEE Presented by Chris Miles. Fingerprint Matching. Fingerprint Matching. Compare two given fingerprints T,I Return degree of similarity (0->1) Binary Yes/No

mahon
Télécharger la présentation

Fingerprint Matching

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 4.1- 4.3 On-Line Fingerprint Verification Anil Jain, Fellow, IEEE, Lin Hong, and Ruud Bolle, Fellow, IEEE Presented by Chris Miles Fingerprint Matching

  2. Fingerprint Matching • Compare two given fingerprints T,I • Return degree of similarity (0->1) • Binary Yes/No • T -> template, acquired during enrollment • I -> Input • Either input images, or feature vectors (minutiae) extracted from them

  3. Issues involved with matching • “extremely difficult problem” • Displacement • Rotation • Partial Overlap • Not completely in image • Distortion (Non-Linear) • Stretches when pushed down

  4. More issues • Pressure and Skin condition • Pressure, dryness, disease, sweat, dirt, grease, humidity • Noise • Dirt on the sensor • Feature Extraction Errors

  5. State of the Art • Many algorithms match high quality images • Challenge is in low-quality and partial matches • 20% of the problems (low quality) at FVC2000 caused 80% of the false non-matches • Many were correctly identified at FVC2002 though

  6. Approaches • Correlation-based matching • Superimpose images – compare pixels • Minutiae-based matching • Classical Technique – Most popular • Compare extracted minutiae • Ridge Feature-based matching • Compare the structures of the ridges • Everything else

  7. FVC2002

  8. Correlation-based Techniques • T and I are images • Sum of squared Differences • SSD(T,I) = ||T-I||2 = (T-I)T(T-I) = ||T||2 + ||I||2 – 2TTI • Difference between pixels • ||T||2 + ||I||2 are constant under transformation • Try to maximize correlation – Minimizes difference • CC(T,I) = TTI • Can't be used because of displacement / rotation

  9. Maximizing Correlation • I(x,y,) • Transformation of I • Rotation around the origin by  • Translation by x,y • S(T,I) = max CC(T,I(x,y,)) • Try them all – take max

  10. Correlation Results

  11. Doesn't Work • Non-Linear distortion is significant and not accounted for • Skin Condition / Pressure cause brightness / contrast and thickness to vary significantly • Difference correlation • Check max/min correlation values • Matches show greater range • Computationally Expensive (try them all)

  12. Divide and Conquer • Identify local regions in the image • Pieces of the whole • Interesting regions • Match them • Sum correlations to find global correlation • Check difference of transforms for each region • Consolidation

  13. Computation Improvements • Correlation Theorem • Spatial Correlation = point wise mutation in fourier domain • TI = F-1(F *(T) x F(I)) • Resultant image has values = correlation for translating to those points • No rotation • Very large computation improvement

  14. Computational Improvements • Multi resolution hierarchical approaches • Fourier-Mellin • Gives rotational invariance • Other steps reduce accuracy • Divide and Fourier • Partition into local regions • Match them against each other • Border overlap • Much faster

  15. Optical Fingerprint Matching • Lenses to derive the Fourier transform of the images • Joint transform correlator for matching • Very expensive • Complex • Immature

  16. Minutiae-based Methods • Classical Technique • T, I are feature vectors of minutiae • Minutiae = (x,y,) • Two minutiae match if • Euclidean distance < r0 • Difference between angles <  • Tolerance Boxes • r0 • 

  17. Alignment • Displacement • Rotation • Scale • Distortion-tolerant transformations • More transformations • higher degree of freedom for matcher • More false matches

  18. Formulation • M''j = map(m'j) • Map applies a geometrical transformation • mm(m''j, mi) returns 1 if they match • Matching can be formulated as • maximize mm(mapx, y, )(m'P(i)), mi) • P is an unknown function which pairs the minutiae • Which minutiae in I corresponds to which in T m i=1 • x, y, , P

  19. P • Pairs the minutiae • If P(i) = j • j is i's mate • Most likely pair • If P(i) = null • i, from T has no mate in I • If no i matches a j, that j has no mate • Each minutiae has a maximum of one mate • Trivial if alignment is known

  20. Point Pattern Matching • Alignment is rarely known • Cast as point pattern matching • Angular component is only a small difference • Techniques • Relaxation • Algebraic and operational research solutions • Tree search (pruning) • Search (Energy Minimization) • Hough Transform

  21. Matching

  22. Relaxation • Maintain confidence levels between all possible matchings • How likely we think Ia matches Tb • Iteratively • Calculate the consistencies the transformations required for those matches • Adjust the confidence levels of points that agree with other points • Decrease others • Iterative -> slow

  23. Algebraic and Operational Research Solutions • Use algebraic methods • Requires very restrictive assumptions • Exactly aligns under affine transformation • N = M • All minutiae perfectly identified • Assignment problems • Bipartite graph matching

  24. Tree Search (Pruning) • Search the tree of possible matches • If A matches B, then C matches F, then D matches K • More assumptions • M=N • No outliers -> All minutiae must match

  25. Search (Energy Minimization) • Cast as a general search problem • Search towards the optimal set of matches • Fitness is a function of consistency • Can use any general search technique • GA • Simulated Annealing

  26. Hough Transform • Brute force search over possible Pairings / rotations / scalings • Foreach mi in I • Foreach mj in T • Foreach  in discretized 's • If I – J < threshold • Foreach scale in discretized scales • dx,dy = mi – map ,scale (mj) • A[dx,dy,theta,scale]++ • Whichever A is highest is the closest transformation • Can then find pairings easily

  27. Hough Transform

  28. Improvements • Vote on neighboring bins / smooth the bins, to get more robust answers • Parallelize on custom hardware • Hierarchical discretization • Chang et al 1997 • Find the principle pair and a course transformation with respect to it that matches the most points • Calculate pairing • Use the pairing to calculate exact alignment

  29. Principle Pair • Brute force for the segment, 2 pts, which can be best mapped to a corresponding segment in T • Foreach mi in I • Foreach mj in T • Reset A • Foreach mi2 in I • Foreach mj2 in T • ,S = Transformation required to turn mi1,mi2 into mj1,mj2 • A[,S]++ • Remember the mi1and mj1 and Swith the highest A value • mi1,mj1 are the principle pair and S is the course transformation

  30. Segment Matching • Udupa, Garg, Sharma 2001 • Looking for matching segments of similar lengths • Foreach, determine transforms to match them • Try to match remaining minutiae • Check consistencies of best matches • Final score is a combination of the number of mated pairs, the fraction of consistent alignments, and the topological correspondence

  31. Minutiae match with pre-alignment • Idea – pre-align T before storage in database • Align each I just once against the global orientation • Reduces computation in identification systems • Absolute pre-alignment • Orient everything in a common direction • No reliable system to do this • Difficult to detect core, or even basic orientation • Relative pre-alignent • Align I to for each T seperately • No computation savings

  32. M82 – Fbi • Do course absolute pre-alignment • Center the image around the core location • Orient it with ridges to the left/right averaged facing up • Find principal pairs • Look at minutiae around the center • Find the best matching pair -> Principle • Calculate course transformation, deformation tensor

  33. Avoiding Alignment • Ordinary Person - “You should go to work” • Philosopher - “Why?” • Intrinsic coordinate system • Instead of using global coordinate system orient them with respect to the ridge patterns • Minutiae are defined with respect to this • Transformation / rotation does not change their relative location • Problems partitioning the image into the local coordinate systems

  34. Ridge Relative Pre-alignment • Jain, Hong, Bolle 1997 • Store minutiae along with information about the ridge attached to it • Oriented along minutiae orientation • Normalized to ridge frequency • Compare with other ridges until you find a good match • Take as principle pair

  35. Comparing ridges • Convert minutiae in T,I to polar coordinates with respect to the reference minutiae • Reference minutiae = the one with the ridge • Order them into a list • Check how many insertions / deletions / transformations are necessary to match the lists • Variant • Match distances and relative angles of sampled points

  36. Results

  37. Results

More Related