Beruflich Dokumente
Kultur Dokumente
Project Report
Computer Vision and Image Processing (CS676)
Guided By
Prof. Simant Dube
Date: 12/11/2009
Fingerprint Recognition
Rohit Singh (Y6400), Utkarsh Shah (Y6510), Vinay Gupta (Y6534)
Abstract
Our Term Project is to study and implement a fingerprint recognition system
based on Minutiae based matching quite frequently used in various
fingerprint algorithms and techniques. The approach mainly involves
extraction of minutiae points from the sample fingerprint images and then
performing fingerprint matching based on the number of minutiae pairings
among two fingerprints in question.
Acknowledgement
We would like to express our sincere thanks and gratitude to Prof. Simant
Dube for his suggestions, help and support. Also we take this opportunity to
thank Prof. Amitabha Mukerjee for his valuable comments and feedback
during our project presentations.
We would also like to appreciate our course TA’s Amit Kumar Gupta and
Rahul Gupta for the support.
Table of Contents
1 Introduction 5
1.1What is A Fingerprint 5
1.2What is Fingerprint Recognition 5
1.3Techniques for Fingerprint matching 6
2 Our Implementation 6
2.1Design Description 6
3 Minutiae Extraction 7
3.1Fingerprint Image Enhancement 7
3.2Fingerprint Image Segmentation 9
3.3Final Minutiae Extraction 10
4 Minutia matching 12
4.1Minutiae Alignment 12
4.2Minutiae Match 13
5 Experimentation Results 13
6 Conclusion 14
References 14
1 Introduction
Fingerprint recognition or fingerprint
authentication refers to the automated
method of verifying a match between two
human fingerprints. Fingerprints are one of
many forms of biometrics used to identify
an individual and verify their identity.
Because of their uniqueness and
consistency over time, fingerprints have Figure 1.1 Fingerprint image from a sensor
been used for over a century, more recently However, shown by intensive research on
becoming automated (i.e. a biometric) due fingerprint recognition, fingerprints are not
to advancement in computing capabilities. distinguished by their ridges and furrows,
Fingerprint identification is popular because but by features called Minutia, which are
of the inherent ease in acquisition, the some abnormal points on the ridges (Figure
numerous sources (ten fingers) available for 1.2). Among the variety of minutia types
collection, and their established use and reported in literatures, two are mostly
collections by law enforcement and significant and in heavy usage:
immigration. • Ridge ending - the abrupt end of a
ridge
What is a Fingerprint?
A fingerprint is the feature pattern of one • Ridge bifurcation - a single ridge that
finger (Figure 1.1). It is an impression of the divides into two ridges
friction ridges and furrows on all parts of a
finger. These ridges and furrows present
good similarities in each small local window,
like parallelism and average width.
Fingerprint matching
techniques
The large number of approaches to
fingerprint matching can be coarsely
classified into three families.
• Correlation-based matching: Two
(a) (b) fingerprint images are superimposed and
Figure 1.2(a) two important minutia features the correlation between corresponding
(b) Other minutiae features pixels is computed for different
alignments (e.g. various displacements
What is Fingerprint and rotations).
Recognition?
Fingerprint recognition (sometimes referred • Minutiae-based matching: This is
to as dactyloscopy) is the process of the most popular and widely used
comparing questioned and known technique, being the basis of the
fingerprint against another fingerprint to fingerprint comparison made by
determine if the impressions are from the fingerprint examiners. Minutiae are
same finger or palm. It includes two sub- extracted from the two fingerprints and
domains: one is fingerprint verification and
stored as sets of points in the two-
the other is fingerprint identification (Figure
1.3). In addition, different from the manual dimensional plane. Minutiae-based
approach for fingerprint recognition by matching essentially consists of finding
experts, the fingerprint recognition here is the alignment between the template and
referred as AFRS (Automatic Fingerprint the input minutiae sets that results in the
Recognition System), which is program- maximum number of minutiae pairings
based.
• Pattern-based (or image-based)
matching: Pattern based algorithms
compare the basic fingerprint patterns
(arch, whorl, and loop) between a
previously stored template and a
candidate fingerprint. This requires that
the images be aligned in the same
orientation. To do this, the algorithm
finds a central point in the fingerprint
image and centers on that. In a pattern-
based algorithm, the template contains
Figure 1.3 Verification vs. Identification the type, size, and orientation of patterns
However, in all fingerprint recognition within the aligned fingerprint image. The
problems, either verification(one to one candidate fingerprint image is
matching) or identification(one to many graphically compared with the template
matching), the underlining principles of well to determine the degree to which they
defined representation of a fingerprint and match.
matching remains the same. In Our project we have implemented a
minutiae based matching technique. This
(a) (b)
Figure 2.1(a) Ridge Ending, (b) Ridge Bifurcation
Minutiae Extraction
As described earlier the Minutiae extraction
process includes image enhancement,
image segmentation and final Minutiae
extraction.
tan2θ =
After finished with the estimation of each Figure 3.5 Original image area
block direction, those blocks without
significant information on ridges and furrows
are discarded based on the following
formulas:
E=
Figure 3.11
bwmorph(binaryImage, ’hbreak’,
k) There is one case where a general branch
may be triple counted (Figure 3.12).
bwmorph(binaryImage, ’clean', k)
Suppose both the uppermost pixel with
bwmorph(binaryImage, ’spur', k)
value 1 and the rightmost pixel with value 1
have another neighbor outside the 3x3
window due to some left over spikes, so the
two pixels will be marked as branches too,
but actually only one branch is located in
the small region. Thus this is taken care of.
Figure 3.14
Actually a bifurcation can be broken down to
three terminations each having their own x-
y coordinates (pixel adjacent to the
bifurcating pixel), orientation and an
associated ridge.
Figure 3.13
The orientation of each termination (tx, ty)
is estimated by following method. Track a
ridge segment whose starting point is the
Minutiae Matching
After successfully extracting the set of
minutia points of 2 fingerprint images to be
tested, we perform Minutiae Matching to
Figure 3.15 Thinned image
check whether they belong to the same
person or not.
We use an iterative ridge alignment
algorithm to first align one set of minutiae
w.r.t other set and then carry-out an elastic
match algorithm to count the number of
matched minutia pairs.
S= dd = ≤ Ѳ0
where (xi..xn) and (Xi..Xn) are the set of x- Let mm(.) be an indicator function that
coordinates for each of the 2 minutia returns 1 in the case where the minutiae
chosen. And m is minimal one of the n and N mi and mj match according to above
value. If the similarity score is larger than equations.
0.8, then go to step 2, otherwise continue to
match the next pair of ridges. mm(mi,mj)=
2. The approach is to transform each set
according to its own reference minutia and
then do match in a unified x-y coordinate.
Let M ( , , ) be reference minutia found Now the total number of matched minutiae
from step 1(say from I1). For each pair given by,
fingerprint, translate and rotate all other
minutiae ( , , ) with respect to the M num (matched minutiae) =
according to the following formula:
Conclusion
The above implementation was an effort to
understand how Fingerprint Recognition is
used as a form of biometric to recognize
identities of human beings. It includes all
the stages from minutiae extraction from
fingerprints to minutiae matching which
generates a match score. Various standard
techniques are used in the intermediate
stages of processing.
Figure 5.1 Distribution of Correct Scores and The relatively low percentage of verification
Incorrect Scores rate as compared to other forms of
(Red: Incorrect Scores, Green: Correct biometrics indicates that the algorithm used
Scores) is not very robust and is vulnerable to
In our experiments distribution curve gives effects like scaling and elastic deformations.
an average correct match score of about 30 Various new techniques and algorithm have
and average incorrect match score of 25 on been found out which give better results.
the database chosen. Also a major challenge in Fingerprint
The FAR and FRR curve as claimed by the recognition lies in the pre processing of the
algorithm is shown under (Figure 5.2) bad quality of fingerprint images which also
add to the low verification rate.
References
• Handbook of Fingerprint Recognition
by Davide Maltoni, Dario Maio, Anil K.
Jain & Salil Prabhakar
• Fingerprint Recognition, Paper by
WUZHILI (Department of Computer
Science & Engineering, Hong Kong
Baptist University) 2002
• Fingerprint Classification and
Matching by Anil Jain (Department of
Computer Science & Engineering,
Michigan State University) & Sharath
Pankanti (Exploratory Computer Vision
Group IBM T. J. Watson Research Centre)
2000
• Fingerprint database - FVC2002
(Fingerprint Verification Competition
2002)
• Wikipedia link -
http://en.wikipedia.org/wiki/Fingerprint_rec
ognition