Fingerprint Minutiae Matching Algorithm using Distance Histogram of Neighborhood
Presented By: Neeraj Sharma
M.S. student, Dongseo University, Pusan South Korea
CGIV 19SEP07Presented by:[email protected]
Abstract
Paper proposes a novel approach for matching of minutiae point in fingerprint images.
The key concept used in the approach is the fact that the neighborhood properties for each of the minutiae points remains same in fingerprint images.
One of those characteristics is pair wise distance histogram that we have used in this algorithm.
CGIV 19SEP07Presented by:[email protected]
Introduction Fingerprints are most useful biometric
feature in our body. Due to their durability, stability and
uniqueness fingerprints are considered the best passwords.
In places of access security, higher degree authentication, and restricted entry places fingerprints suggests easy and cheap method.
CGIV 19SEP07Presented by:[email protected]
Previous Work Fingerprint Identification is quiet mature area of
research. Its almost impossible to describe all the previous approaches in a short time here.
The previous methods closely related to this approach are by Park et al.[2005] and Wamelen et al.[2000].
Park et al. from used pair wise distances first ever to match fingerprints in their approach before two years.
Wamelen et al. gave the concept of matching in two steps, Local match and Global match.
CGIV 19SEP07Presented by:[email protected]
Different Features in a FingerprintRidge Ending
Enclosure
Bifurcation
Island
Texture
Singular points
CGIV 19SEP07Presented by:[email protected]
Extraction of minutiae
Image skeleton
Gray scale image
Minutia features
Feature Extraction with CUBS-2005 algorithm
Developed by SHARAT et al
CGIV 19SEP07Presented by:[email protected]
Problem Simulation The input fingerprint of the
same finger seems to be different while taken on different times.
There may be some translational, rotational or scaling changes, depending upon situation.
Our aim is to calculate these changes as a composite transformation parameter “T”.
The verification is done after transforming the input with these parameters, new transformed pattern should satisfy desired degree closeness with template pattern.
Template Input Pattern
cos sin( )
sin cosq x p
q y p
x t xs sq T p
y t ys s
CGIV 19SEP07Presented by:[email protected]
Process Steps The algorithm runs in two main steps:- (i) Local matching (ii) Global matchingIn local matching three stepwise calculations are there:1. Calculate “k” nearest neighbors for each and every
point in both patterns.2. Calculate histogram of pair wise distances in the
neighborhood of every point.3. Find out the average histogram difference between
all the possible cases.4. Set the threshold level of average histogram
difference5. Compare the average histogram differences with the
threshold level.
CGIV 19SEP07Presented by:[email protected]
Flow Chart
No
No
Point pattern “P” stored in database pattern “Q” is taken that is to be matched with “P”
Select a local point and it’s “k” nearest neighbors in patterns P
Select a local point and it’s “k” nearest neighbors in patterns Q
Make pair wise distance Histogram
Average histogram difference < Threshold level
Calculate and store transformation parameter
Iteration algorithm to calculate final Transformation Parameter
Start
All point’s in pattern p is examined
End
CGIV 19SEP07Presented by:[email protected]
Calculation of “k” Nearest neighbors (Local match)
For the given input fingerprint pattern and the template pattern, calculate “k” nearest neighbors in order to distances.
Here k is a constant can be calculated with the formula given by wamelen et al.(2000)
CGIV 19SEP07Presented by:[email protected]
Histogram Calculation (Local Match) Histogram of pair wise distances in
their neighborhood for each and every point is calculated here. It describe the variety of distances of particular point in its neighborhood.
Here for one point “P1”; P1n1,P1n2,P1n3,P1n4,P1n5 are five nearest neighbors.
Note: step size is 0.04unit, here.
P1n2
P1
P1n1
P1n2
P1n3
P1n4
P1n5
P1n1P1n3
P1n4
P1n5
P1n2
P1n3
P1n4
P1n5
P1n3P1n4
P1n5
P1n4 P1n5
CGIV 19SEP07Presented by:[email protected]
Average Histogram Difference and Threshold Setting (Local Match)
To calculate average histogram differences for two points, first subtract the their histograms. It comes in a form of matrix. To calculate average, just normalize it on corresponding scale.
H1=[4 2 0 0 2 0 1 2 3 1] H2=[1 3 2 5 0 0 2 3 0 1]
H1 - H2 =[3 -1 -2 -5 2 0 -1 -1 3 0]
Average histogram diff.(ΔH avg)=(1/10)*Σ(| H1 - H2 |i)
Setting of threshold depends on the size of point pattern. Larger the number of points, smaller the threshold count.
CGIV 19SEP07Presented by:[email protected]
Transformation Parameter calculation
On the basis of histogram differences, we can make decision on their local matching. Then the transformation parameter is calculated in the following way. Here “r” represents the corresponding Transformation Parameter.
0
010
0
A xA yA xB
A yA xA yB
xA yA A B
yA xA A B
l
lr
l lD
l l
1i
k
xA ai
x
1
i
k
xB bi
x
1i
k
yA ai
y
1
i
k
yB bi
y
1
i i i i
k
A B a b a bi
l x x y y
1
i i i i
k
A B a b a bi
l x y y x
2 2
1i i
k
A a ai
l x y
2 2A xA yAD ll
cos sinT
x yr t t s s
CGIV 19SEP07Presented by:[email protected]
Axial Representation of all Transformation Parameters after Local match
Three axes represent the translational (in both x& y direction), rotaional and scale changes.
The most dense part in graph represents the correct transformation parameters only. We need to conclude our results to that part.
-100-50
050
100
1.5
2
2.5
32
2.5
3
3.5
4
trans
all iterations together 5
rotangle
scal
e
-100
-80
-60
-40
-20
0
20
40
60
80
100
1.5
2
2.5
3
2
2.2
2.4
2.6
2.8
3
3.2
3.4
3.6
3.8
4
trans
CGIV 19SEP07Presented by:[email protected]
Iteration Algorithm Iteration method is used to
converge the results towards dense part of the graph.
For applying this method we need to calculate mean and standard deviation of the distribution.
In graph all the transformation parameters are present, calculated after local matching step.
The mean for this distribution is presented by the “triangle” in centre.
CGIV 19SEP07Presented by:[email protected]
Result after first iteration In the graph, black
star is describing the mean for the distribution.
After one iteration step some of the false transformation due to false local match has removed.
CGIV 19SEP07Presented by:[email protected]
Result after second iteration After second
iteration, graph converges more towards the dense area.
Black star is the mean point for this distribution shown here.
CGIV 19SEP07Presented by:[email protected]
After third iteration
Performing iterations to converge the result, gives the distribution having least standard deviation.
Black star in this graph is the desired transformation parameter i.e. “r”
cos sinT
x yr t t s s
CGIV 19SEP07Presented by:[email protected]
Verification by transforming the template with calculated parameters
Template Pattern in Database Transformed version with Parameter ”r” Verification by Overlapping
Transformed With “r”
CGIV 19SEP07Presented by:[email protected]
Experimental Results (With random generated data)
s. no. Total no of point taken
No of missing points
No. of matched points when no error added
No. of matched points when 2% error added
No. of matched points when 3% error added
1 30 0 30 30 30
2 30 5 25 24 17
3 30 10 20 18 14
4 30 15 4 3 1
5 40 0 40 38 32
6 40 5 35 33 26
7 40 10 30 28 20
8 40 15 25 21 19
9 50 0 50 47 43
10 50 5 45 42 39
CGIV 19SEP07Presented by:[email protected]
Results contd…
s. no. Total no of point taken
No of missing points
No. of matched points when no error added
No. of matched points when 2% error added
No. of matched points when 3% error added
11 50 10 40 36 25
12 50 15 35 28 22
13 50 20 30 25 20
14 60 0 60 59 47
15 60 5 55 36 31
16 60 10 50 29 20
17 60 15 45 40 36
18 60 20 40 30 25
CGIV 19SEP07Presented by:[email protected]
Results with real and random fingerprints
The algorithm was tested on both randomly generated point pattern and real data base.
The results shows the correct identification in more than 98.87% cases with random data.
For real fingerprints we tested the method on some FVC 2004 samples. In most of cases performance was found satisfactory.
CGIV 19SEP07Presented by:[email protected]
Limitations This algorithm is very much
dependent on accuracy of feature extraction method used for minutiae determination.
If feature extraction is not done correct then, results can have errors or false acceptances. Which effects performances and accuracy a lot.
CGIV 19SEP07Presented by:[email protected]
Future work
This method is still dependent to some other algorithm for feature extraction.
First task is to develop a method for feature extraction from fingerprints.
Other thing to enhance is, its performance mainly on real fingerprint data.
CGIV 19SEP07Presented by:[email protected]
Advantages of the Method over others Proposed earlier This algorithm undergoes two steps, so accuracy is
good and false acceptance rate is low. Calculation is less complex with comparison to others,
as histogram is a basis to select the local matching. While in other Random algorithms a lot of calculation is done for local match coz lacking in any basic attribute.
Algorithm doesn’t need very complex system to be implemented for practical/commercial purpose. So compatible to most of systems in use already.
CGIV 19SEP07Presented by:[email protected]
Shortcomings Dependency on an efficient feature
extraction scheme. Histogram differences should be
calculated in a better way (Still to think over that…).
Top Related