dzkarh r:.k eaMG dzkarh r:.k eaMG dzkarh r:.k eaMG eaMGkph LFkki.kk 1981.
Convolution: R= K*I
Transcript of Convolution: R= K*I
1
CSE190, Winter 2010
Finger Print Recognition (RANSAC)
Biometrics CSE 190
Lecture 17
© Jain, 2004
Fingerprint Representation • Local ridge characteristics (minutiae): ridge ending
and ridge bifurcation • Singular points: Discontinuity in ridge orientation
Core
Delta
Ridge Ending Ridge Bifurcation
© Jain, 2004
Minutiae Correspondences
© Jain, 2004
Minutiae Matching
• Point pattern matching problem
• Let
€
P = x1P ,y1
P ,θ1P( ),..., xMP ,yMP ,θM
P( ){ }be the set of M minutiae in the template image
• Let
€
Q = x1Q,y1
Q ,θ1Q( ),..., xNQ ,yNQ,θN
Q( ){ }be the set of N minutiae in the input image
• Find the number of corresponding minutia pairs between P and Q and compare it against a threshold
© Jain, 2004
Stages of Minutiae-based Verification
• Extract Minutiae using corner detection • Characterize (label) Minutiae • Transformations between fingerprint images • RANSAC
CSE152, Spr 05 Intro Computer Vision
Convolution: R= K*I
I R
Kernel size is m+1 by m+1
m=2
2
CSE152, Spr 05 Intro Computer Vision
An Isotropic Gaussian • The picture shows a
smoothing kernel proportional to
(which is a reasonable model of a circularly symmetric fuzzy blob)
CSE152, Spr 05 Intro Computer Vision
On numerical derivatives
Convolve with First Derivative: [-1 0 1] Second Derivative: [-1 2 -1]
First Derivative in Y Direction:[-1 0 1]T
CSE152, Spr 05 Intro Computer Vision
Smoothing and Differentiation • Need two derivatives, in x and y direction. • Filter with Gaussian and then compute
gradient, or • Use a derivative of Gaussian filter
• because differentiation is convolution, and convolution is associative
© Jain, 2004
Formula for Finding Corners
Sum over a small region, the hypothetical corner
Gradient with respect to x, times gradient with respect to y
Matrix is symmetric WHY THIS?
Let
© Jain, 2004
First, consider case where:
This means all gradients in neighborhood are:
(k,0) or (0, c) or (0, 0) (or off-diagonals cancel).
What is region like if:
1. λ1 = 0?
2. λ2 = 0?
3. λ1 = 0 and λ2 = 0?
4. λ1 > 0 and λ2 > 0? © Jain, 2004
General Case:
From Linear Algebra, it follows that
since C is symmetric. So every case is like the one on the last slide.
3
© Jain, 2004
So, to detect corners
• Filter image. • Compute the gradient everywhere. • We construct C in a window of some size.
• Find eigenvalus λ1 and λ2. • If λ1 and λ2 are both big, we have a corner.
1. Let e(u,v) = min(λ1(u,v), λ2(u,v)) 2. (u,v) is a corner local maximum of e(u,v)
and e(u,v) > τ
© Jain, 2004
Labeling Minutiae
• The corners found by above procedure include Minutiae, but also other “spurious” points.
• Label each corner as: – Core – Delta – Ridge bifurcations – Ridge endings – Other
• Build 5-class classifier given training data
© Jain, 2004
Minutiae Matching Result
(a) (c)
(b) (d) © Jain, 2004
Allowable transformations
• Translation • Rigid Transformations • Affine Transformations • Warps (e.g., thin plate splines)
€
y1y2
⎡
⎣ ⎢
⎤
⎦ ⎥ =
A11 A12A21 A22
⎡
⎣ ⎢
⎤
⎦ ⎥ x1x2
⎡
⎣ ⎢
⎤
⎦ ⎥ +
t1t2
⎡
⎣ ⎢ ⎤
⎦ ⎥
RANSAC
Slides shamelessly taken from Frank Dellaert and Marc Pollefeys and modified
Motivation
Estimating motion models Typically: points in two images Candidates: Translation Affine Homography
4
Mosaicking: Homography
www.cs.cmu.edu/~dellaert/mosaicking
Fundamental Matrix
Simpler Example
Fitting a straight line
• Inliers • Outliers
Discard Outliers
No point with d>t RANSAC: RANdom SAmple Consensus Fischler & Bolles 1981 Copes with a large proportion of outliers
Main Idea
Select 2 points at random Fit a line “Support” = number of inliers Line with most inliers wins
Why will this work ?
5
Best Line has most support
More support -> better fit
RANSAC Objective
Robust fit of model to data set S which contains outliers Algorithm (i) Randomly select a sample of s data points from S and
instantiate the model from this subset. (ii) Determine the set of data points Si which are within a
distance threshold t of the model. The set Si is the consensus set of samples and defines the inliers of S.
(iii) If the subset of Si is greater than some threshold T, re-estimate the model using all the points in Si and terminate
(iv) If the size of Si is less than T, select a new subset and repeat the above.
(v) After N trials the largest consensus set Si is selected, and the model is re-estimated using all the points in the subset Si
Distance threshold
Choose t (distance threshold of the model) so probability for inlier is α (e.g. 0.95)
• Often empirically • Zero-mean Gaussian noise σ then follows
distribution with m=codimension of model (dimension+codimension=dimension space)
Codimension Model t 2 1 l,F 3.84σ2
2 H,P 5.99σ2
3 T 7.81σ2
How many samples?
Choose N so that, with probability p, at least one random sample is free from outliers. e.g. p=0.99
€
N = log 1− p( ) /log 1− 1− e( )s( )
€
1− 1− e( )s( )N
=1− p
proportion of outliers e s 5% 10% 20% 25% 30% 40% 50% 2 2 3 5 6 7 11 17 3 3 4 7 9 11 19 35 4 3 5 9 13 17 34 72 5 4 6 12 17 26 57 146 6 4 7 16 24 37 97 293 7 4 8 20 33 54 163 588 8 5 9 26 44 78 272 1177
Acceptable consensus set?
• Typically, terminate when inlier ratio reaches expected ratio of inliers
€
T = 1− e( )n
© Jain, 2004
Minutiae Matching Result
(a) (c)
(b) (d)
6
© Jain, 2004
Minutiae Extraction Failure
True Minutiae Matches: A1→B3, A18→B9, A19→B7 A1, B9 and B7 were detected, but the associated ridges were not detected because they are close to the boundary
A B
© Jain, 2004
Alignment Failure
A B
True Minutiae Matches: A7→B9, A8→B8, A4→B1 A7→B9 and A8→B8 pairs have ridge points; however, there exists a false alignment that results in more than three matches
© Jain, 2004
Matching Failure
A B
No. of matching minutiae identified by the matcher = 10 No. of minutiae in A = 38; No. of minutiae in B = 34 Spurious minutiae and large deformation leads to small score