Upload
nabila-mahjabin
View
90
Download
0
Embed Size (px)
Citation preview
Biometric Fingerprint Recognition based on Minutiae Matching
A project work
Submitted to the Department of Information & Communication Technology,
Comilla University in partial fulfillment of the requirement for the degree of
Bachelor of Science (Engg.) in Information & Communication Technology
Submitted By
Nabila Mahjabin
Exam Roll: 1009035
Registration No: SC-ICT-11-800065
Session: 2010-2011
Supervised By
Orvila Sarker
Lecturer
DEPARTMENT OF INFORMATION & COMMUNICATION TECHNOLOGY
COMILLA UNIVERSITY
KOATBARI-3506, BANGLADESH
December,2016
i
Acknowledgement
At first, I would like to give thanks to Almighty for offering such an opportunity to
perform my responsibilities as a B.Sc (Engg.) student and complete my project report
within the schedule time appropriately.
I would like to convey my gratitude to my supervisor, Orvila Sarker, Lecturer,
Department of Information & Communication Technology for her constant guidance,
advice and encouragement as well as her benign support for the completion of the
project. I greatly acknowledge her mastermind direction, constant supervision, optimistic
counseling and unremitting backup to carry out the project and prepare this report
successfully.
I am cordially grateful to Dulal Chakraborty, Assistant Professor and chairman,
Department of Information & Communication Technology, for his continuous support
and suggestions and guidelines from the beginning of my university life.
I also acknowledge to all of the teachers of the Department of Information &
Communication Technology for sharing their views about the project.
Finally it is with pleasure that I want to express my gratitude to my beloved family and
friends for offering their consistent support to me in many ways.
Author
ii
Certificate
This is to certify that the project report entitled “Biometric Fingerprint Recognition
based on Munitiae Matching” submitted by Nabila Mahjabin in partial fulfillment in the
requirements of the degree of B.Sc. in Engineering in Information & Communication
Technology, faculty of Engineering, Comilla University, is an authentic work carried out
by the author under my direct supervision and guidance. I approve the style and contents
of this project.
Orvila Sarker
Lecturer
Department of Information &
Communication Technology
Comilla University
DEPARTMENT OF
INFORMATION & COMMUNICATION TECHNOLOGY
COMILLA UNIVERSITY
iii
Abstract
In biometric system, the fingerprint recognition has been researched for the long period
of time and it has shown the most promising future in the real world application.
However, because of the complex distortions among the different impression of the same
finger in real life, fingerprint recognition is still a challenging problem. The study and
implementation of a Biometric fingerprint recognition system based on Minutiae
matching quite frequently used in various fingerprint algorithms and techniques.
Human fingerprints are rich in details called minutiae, which can be used as identification
marks for fingerprint verification. The goal of this project is to develop a complete
system for fingerprint recognition through extracting and matching minutiae. To achieve
good minutiae extraction in fingerprints with varying quality, preprocessing in form of
image enhancement and binarization is first applied on fingerprints before they are
evaluated. Many methods have been combined to build a minutiae extractor and a
minutiae matcher. Minutiae-marking with false minutiae removal methods are used in the
work. An alignment-based elastic matching algorithm has been developed for minutiae
matching. This algorithm is capable of finding the correspondences between input
minutiae pattern and the stored template minutiae pattern without resorting to exhaustive
search. Performance of the developed system is then evaluated on a database with
fingerprints from different people. One of the limitations of existing fingerprint
recognition techniques is that these systems tend to fall short when the available
fingerprint is of low quality.
iv
Table of Contents
Chapter Title Page
1.Introduction
1.1 Introduction
1.2 Fingerprint
1.3 Importance of Fingerprint
1.3.1 Live Scan Fingerprints
1.3.2 Latent Fingerprints
1.3.3 Patent Fingerprints
1.4 Fingerprint pattern types
1.4.1 Loop Patterns
1.4.2 Arch Pattern
1.4.3 Whorl Patterns
1.5. Fingerprint Recognition
1.5.1. One to One Matching
1.5.2. One to Many Matching
1.6. Fingerprint Matching Techniques
1.6.1 Minutiae-based matching
1.6.2 Pattern-based (or image-based) matching
1.6.3 Correlation Based Matching
1-8
2
2
3
3
3
3
3
3
4
5
6
6
6
7
7
7
7
2. Biometrics
2.1. Biometrics
2.2. Leading Biometric Technologies
2.2.1 Fingerprint Recognition
2.3. Fingerprints as a Biometric
2.3.1 Fingerprint Representation
2.3.2 Minutiae
9-13
10
10
10
12
12
13
3. Fingerprint Recognition
3.1. Fingerprint Recognition Technique
3.2. Block diagram of Fingerprint Recognition system
14-17
15
15
4.Implementation
4.1 Algorithm level design
4.2. Definitions
4.3. Image Acquisition
4.4 Fingerprint Image Enhancement Technique
4.4.1 Histogram Equalization
4.4.2 Fingerprint Enhancement by Fourier transform
4.4.3 Fingerprint Image Binarization
4.5 Fingerprint Image Segmentation
18-32
19
19
21
21
21
22
24
24
v
Chapter Title Page
4.5.1 Block direction estimation
4.5.2 ROI extraction by Morphological operations
4.6 Post processing stage
4.6.1 Minutiae Extraction
4.6.2 Minutiae Marking
4.6.3 False Minutiae Removal
4.6.4 Unify Terminations and Bifurcation
4.7 Minutiae Matching
4.7.1 Alignment Stage
4.7.2 Match Stage
25
25
27
27
27
27
30
30
31
32
5.Results & Discussion
5.1 Simulation Results
33-36
34
6: Conclusion 37-38
References 39-40
vi
List of Figures
Figure No. Title Page
Figure 1.1 A fingerprint image acquired by an optical sensor 2
Figure 1.2 (a)Ulnar Loop (b)Radial Loop 4
Figure 1.3 (a)Plain Arch (b)Tented Arch 5
Figure 1.4 (a)Plain Whorl (b) Central Pocket Whorl (c) Double
Whorl (d) Accidental Whorl
5
Figure 2.1 Verification vs. Identification 11
Figure 2.2 Fingerprint as a Biometric 12
Figure 2.3 Minutiae points 13
Figure 3.1 Fingerprint Recognition System 16
Figure 4.1 Steps involved in fingerprint Recognition 20
Figure 4.2 (a) Histogram of an image, (b) Histogram equalization of
an image
22
Figure 4.3 (a) Original image, (b) Enhanced Image after Equalization 22
Figure 4.4 (a) Original Image, (b) Image Enhancement by FFT 23
Figure 4.5 (a) Enhanced image, (b) Image after Binarization 24
Figure 4.6 (a) Binarization image, (b) Direction Map 26
Figure 4.7 (a) Original Image, (b) Close Operation, (c) Open
Operation, (d) ROI+Bound
26
Figure 4.8 (a)Bifurcation (b)Termination (c)Triple counting branch 28
Figure 4.9 (a) Thinned Image, (b) Figure after Minutiae Extraction 28
Figure 4.10 False Minutiae Points 29
Figure 4.11 A Bifurcation to Three Terminations 30
Figure 4.12 Effect of Translation and Rotation 32
Figure 5.1 Original image with its minutiae 34
Figure 5.2 Similarity between two fingerprints 35
Figure 5.3 Relation between FMR and FNMR 36
1
Chapter 1
Introduction
2
1.1 Introduction
Fingerprint recognition or fingerprint authentication refers to the automated method of
verifying a match between two human fingerprints [1]. 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 been used for over a
century, more recently becoming automated (i.e. a biometric) due to advancement in
computing capabilities.
1.2. Fingerprint
A fingerprint is the feature pattern of one finger. It is an imprints formed by the friction
ridges of the skin and thumbs. They have long been used for identification because of
their immutability and individuality. Immutability refers to the permanent and
unchanging character of the pattern on each finger. Individuality refers to the uniqueness
of ridge details across individuals; the uniqueness of a fingerprint can be determined by
the pattern of ridges and furrows as well as by features called minutiae, which are some
abnormal points on the ridges. Figure 1.1 shows a Fingerprint image acquired by an
optical sensor. However, shown by intensive research on fingerprint recognition,
fingerprints are not distinguished by their ridges, but by the minutiae points.
Figure 1.1: A fingerprint image acquired by an optical sensor
3
1.3 Importance of Fingerprint:
Fingerprint is a very interesting and unique feature of the human body, because the
Fingerprints can uniquely identify the person and it does not changes from birth to
death. Even twines‟ fingerprints do not match. Due to persistent and uniqueness property
of fingerprint it has been implementing in many areas such as UID Card, Passport,
Criminal Data, etc. Fingerprints are unique pattern of ridges (raised) and furrows
(recessed). That appears on the pads of fingers and thumbs. Fingerprints Acquisition
Techniques are categorized into three types [1].
1.3.1 Live Scan Fingerprints: Live Scan Fingerprints are Impressed Fingerprints
sometimes known as Plastic Prints. The quality of Fingerprint image received is better
than Patent Fingerprint. It can be retrieve using fingerprint scanner, Clay, Wax, and Paint.
1.3.2 Latent Fingerprints: Latent fingerprint is invisible to the eye directly and
requires enhancement technique and instruments to check. To extract the fingerprint from
the surface basic powder and chemical techniques are used.
1.3.3 Patent Fingerprints: Patent Fingerprint is also called as the Visible
Fingerprint. It is formed intentionally by person to proof their identity. At identification
stage, it is still use to record presence of person. Patent Fingerprints can be created by
blood, grease, ink, or dirt etc.
1.4 Fingerprint pattern types
Fingerprint patterns are divided into three main groups consisting of Arches,
Loops and Whorls. Approximately 5% of all fingerprints are Arches, 30% are
Whorls and 65% are Loops.
1.4.1 Loop Patterns:
In a Loop pattern, the ridges will flow in one side, re-curve, (loop around) touch or pass
through an imaginary line drawn from the delta to the core, and exit the pattern on
the same side from which it entered. The loop pattern consists of one or more re-curving
ridges and one delta. Figure 1.2 shows the two types of loop pattern in a fingerprint
image. They are:
a. Ulnar loop
b. Radial loop.
The loop is towards the right or Ulnar bone known as “Ulnar loop”.
4
The loop is towards the left or Radial bone is known as “Radial Loop”.
Difference between ulnar and radial loop are, if the ridges flow in from the little
finger side, this would be an ulnar loop and if the ridges flow in from the thumb side this
would be a radial loop.
Figure 1.2:(a)Ulnar Loop (b)Radial Loop
1.4.2 Arch Pattern:
In an arch pattern, ridges flow in one side and flow out the opposite side. There are no
deltas in an arch pattern. Figure 1.3 shows the two types of loop pattern in a fingerprint
image [1].They are:
a. Plain arch,
b. Tented arch.
Plain arches have a flow of ridges from one side to the other of the pattern, no
“significant up thrusts” and the ridges enter on one side of the impression, and flow
out the other with a rise or wave in the centre. Tented arches have an angle, an up
thrust, or two of the three basic characteristics of the loop.
5
Figure 1.3(a)Plain Arch (b)Tented Arch
1.4.3 Whorl Patterns:
Any fingerprint pattern which contains two or more deltas will be a whorl pattern. A
whorl pattern consists of a series of almost concentric circles. Figure 1.4 shows the four
types of loop pattern in a fingerprint image.They are:
a) Plain whorl
b) Central Pocket Loop whorl
c) Double Loop Whorl
d) Accidental Whorl
Figure 1.4: (a)Plain Whorl (b)Central Pocket Whorl (c)Double Whorl (d)Accidental
Whorl
6
Plain whorls consist of one or more ridges which make a complete circuit with
two deltas, between at least one re-curving ridges within the inner pattern area is cut
or touched.
Central pocket loop whorls consist of at least one re-curving ridge to the line of
flow, with two deltas, between which when an imaginary line is drawn, no re-curving
ridge within the pattern area is cut or touched.
Double loop whorls consist of two separate and distinct loop formations with two
separate and distinct shoulders for each core, two deltas and one or more ridges
which make, a complete circuit.
The accidental pattern will contain two points of delta. One delta will be related to a re-
curve and the other will be related to an up thrust.
1.5. Fingerprint Recognition
Fingerprint recognition is also called as fingerprint authentication. It is a most popular
biometric solution, refers to the automated method to confirmation the identity.
Fingerprint is one of the biometrics features that are unique to each human. Fingerprints
are rich with details, consisting of many ridges and furrows [2]. Many modern security
systems utilize this uniqueness for identity recognition and verification purposes. Both
systems work based on the same fundamentals but in different matching modes:
fingerprint identification or recognition is one-to many matching process, while
fingerprint verification or authentication is a one-to-one matching process.
1.5.1. One to One Matching:- It is applied where Input fingerprint is matched
directly with only one fingerprint, which produce result either matched or not matched.
Example: Secure Login using EmailID, Laptop & Desktop Device Protection, etc.
1.5.2. One to Many Matching:- It is applied to specified areas where number of
applicant store their fingerprint. The Input fingerprint is matched with number of
fingerprint stored to uniquely find person identity. Example: Attendance Management,
Secure Login without using Email ID, etc.
Most existing fingerprint recognition systems have no difficulty in matching high quality
fingerprint images. However, many falls short when the fingerprint images are low in
quality. Due to its cheapest biometric solution fingerprint recognition uses in different
areas such as Physical Access Control and Time & Attendance Management.
7
1.6. Fingerprint Matching Techniques
The large number of approaches to fingerprint matching can be coarsely classified
into three families. They are,
1. The minutiae-based (feature-based) matching,
2. The pattern-based (or image-based) matching, and
3. The correlation-based matching.
1.6.1 Minutiae-based matching: This is the most popular and widely used
technique, being the basis of the fingerprint comparison made by fingerprint
examiners. Minutiae are extracted from the two fingerprints and stored as sets of
points in the two- dimensional plane. Minutiae-based matching essentially consists
of finding the alignment between the template and the input minutiae sets that results
in the maximum number of minutiae pairings.[3]
1.6.2 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 [4]. 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 the type, size, and orientation of patterns within the aligned fingerprint
image. The candidate fingerprint image is graphically compared with the template to
determine the degree to which they match [5].
1.6.3 Correlation Based Matching: It is advanced Matching Technique
which involves advance image processing methods [6]. The Correlation-based
matching processes to correlate pixel values of fingerprint image instead of
Minutiae. The specific color properties and threshold values are store to correlate
with template stored in the database. It is very helpful when Minutiae information
from fingerprint image is not able to extract. [7]
There have been other techniques introduced for fingerprint matching outside of the core
three techniques, including the principal component analysis technique, which utilizes
statistics theory for computation operation, and the use of neural network.
A wide variety of systems require reliable personal authentication schemes to either
confirm or determine the identity of individuals requesting their services. The purpose of
such schemes is to ensure that the rendered services are accessed by a legitimate user, and
not anyone else. Examples of these systems include secure access to buildings, computer
systems, laptops, cellular phones and ATMs. In the absence of robust authentication
schemes, these systems are vulnerable to the wiles of an impostor.
8
Traditionally, passwords (knowledge-based security) and ID cards (token-based security)
have been used to restrict access to systems. The major advantages of this traditional
personal identification are that
(i) They are very simple
(ii) They can be easily integrated into different systems with a low cost.
However these approaches are not based on any inherent attributes of an individual to
make a personal identification thus having number of disadvantages like tokens may be
lost, stolen, forgotten, or misplaced; PIN may be forgotten or guessed by impostors.
Security can be easily breached in these systems when a password is divulged to an
unauthorized user or a card is stolen by an impostor; further, simple passwords are easy
to guess (by an impostor) and difficult passwords may be hard to recall (by a legitimate
user).Therefore they are unable to satisfy the security requirements of our electronically
interconnected information society. The emergence of biometrics has addressed the
problems that plague traditional verification. [8]
9
Chapter 2
Biometrics
10
2.1. Biometrics
In the world of computer security, biometrics refers to authentication techniques that rely
on measurable physiological and individual characteristics that can be automatically
verified. In other words, we all have unique personal attributes that can be used for
distinctive identification purposes, including a fingerprint, the pattern of a retina, and
voice characteristics. Strong or two-factor authentication— identifying oneself by two of
the three methods of something you know (for example, a password), have (for example,
a swipe card), or is (for example, a fingerprint)—is becoming more of a genuine standard
in secure computing environments. Some personal computers today can include a
fingerprint scanner where we place our index finger to provide authentication. The
computer analyzes our fingerprint to determine who am I, based on our identity followed
by a pass code or pass phrase, allows us different levels of access. Access levels can
include the ability to open sensitive files, to use credit card information to make
electronic purchases, and so on.
2.2. Leading Biometric Technologies
A growing number of biometric technologies have been proposed over the past several
years, but only in the past 5 years have the leading ones become more widely deployed.
Some technologies are better suited to specific applications than others, and some are
more acceptable to users. We describe seven leading biometric technologies:
Facial Recognition
Fingerprint Recognition
Hand Geometry
Iris Recognition
Signature Recognition
Speaker Recognition
2.2.1 Fingerprint Recognition
Fingerprint recognition is one of the best known and most widely used biometric
technologies. Automated systems have been commercially available since the early
1970s, and at the time of our study, we found there were more than 75 fingerprint
recognition technology companies. Until recently, fingerprint recognition was used
primarily in law enforcement applications.
Fingerprint recognition technology extracts features from impressions made by the
distinct ridges on the fingertips. The fingerprints can be either flat or rolled. A flat print
11
captures only an impression of the central area between the fingertip and the first
knuckle; a rolled print captures ridges on both sides of the finger. An image of the
fingerprint is captured by a scanner, enhanced, and converted into a template. Scanner
technologies can be optical, silicon, or ultrasound technologies. Ultrasound, while
potentially the most accurate, has not been demonstrated in widespread use. In 2002, we
found that optical scanners were the most commonly used. During enhancement, “noise”
caused by dirt, cuts, scars, and creases or dry, wet or worn fingerprints is reduced, and the
definition of the ridges is enhanced. Approximately 80 percent of vendors base their
algorithms on the extraction of minutiae points relating to breaks in the ridges of the
fingertips. Other algorithms are based on extracting ridge patterns. Fingerprint
recognition includes two sub-domains: one is fingerprint verification and the other is
fingerprint identification (figure 2.1).
Figure 2.1: Verification vs. Identification
12
2.3. Fingerprints as a Biometric
Among all biometric traits, fingerprints have one of the highest levels of reliability and
have been extensively used by forensic experts in criminal investigations. A fingerprint
refers to the flow of ridge patterns in the tip of the finger. The ridge flow exhibits
anomalies in local regions of the fingertip (Figure2.2), and it is the position and
orientation of these anomalies that are used to represent and match fingerprints.
Figure 2.2: Fingerprint as a Biometric
Although not scientifically established, fingerprints are believed to be unique across
individuals, and across fingers of the same individual. Even identical twins having similar
DNA, are believed to have different fingerprints. Traditionally, fingerprint patterns have
been extracted by creating an inked impression of the fingertip on paper.
2.3.1 Fingerprint Representation
The uniqueness of a fingerprint is determined by the topographic relief of its ridge
structure and the presence of certain ridge anomalies termed as minutiae points.
13
Typically, the global configuration defined by the ridge structure is used to determine the
class of the fingerprint, while the distribution of minutiae points is used to match and
establish the similarity between two fingerprints.
Automatic fingerprint identification systems, that match a query print against a large
database of prints (which can consist of millions of prints), rely on the pattern of ridges in
the query image to narrow their search in the database (fingerprint indexing), and on the
minutiae points to determine an exact match (fingerprint matching). The ridge flow
pattern itself is rarely used for matching fingerprints.
2.3.2 Minutiae
Minutiae, in fingerprinting terms, are the points of interest in a fingerprint, such as
bifurcations and ridge endings (figure 2.3). Examples are:
a.) ridge endings - a ridge that ends abruptly
b.) ridge bifurcation - a single ridge that divides into two ridges
c.) short ridges, island or independent ridge - a ridge that commences, travels a short
distance and then ends
d.) ridge enclosures - a single ridge that bifurcates and reunites shortly afterward to
continue as a single ridge
e.) spur - a bifurcation with a short ridge branching off a longer ridge
f.) crossover or bridge - a short ridge that runs between two parallel ridges
Fig 2.3: Minutiae points
14
Chapter 3
Fingerprint Recognition
15
3.1. Fingerprint Recognition Technique
Fingerprints have been widely used because of their high acceptability, immutability,
individuality and acceptability. A good fingerprint contains 25 to 80 minutiae points.
Minutiae based fingerprint recognition consists of Thinning, Minutiae extraction,
Minutiae matching and Computing matching score. The major steps involved in
automated fingerprint recognition include
a) Fingerprint Acquisition,
b) Fingerprint Segmentation,
c) Fingerprint Image Enhancement,
d) Feature Extraction,
e) Minutiae Matching,
f) Fingerprint Classification
3.2. Block diagram of Fingerprint Recognition system
Fingerprint recognition (also known as Dactyloscopy) is the process of comparing known
fingerprint against another or template fingerprint to determine if the impressions are
from the same finger or not. It includes two sub-domains: one is fingerprint verification
and the other is fingerprint identification [9].
Verification specify an individual fingerprint by comparing only one fingerprint template
stored in the database, while identification specify comparing all the fingerprints stored in
the database. Verification is one to one matching and identification is one to N (number
of fingerprint templates available in database) matching [10]. Verification is a fast
process as compared to identification.
Figure 3.1 shows the complete structure of fingerprint recognition system. First of all we
take a fingerprint image. After taking an input image we can apply fingerprint
segmentation technique. Segmentation is separation of the input data into foreground
(object of interest) and background (irrelevant information). Before extracting the feature
of a fingerprint it is important to separate the fingerprint regions (presence of ridges)
from the background. This is very useful for recovering false feature extraction. In some
cases, a correct segmentation is very difficult, especially in poor quality fingerprint image
or noisy images. Orientation field plays an important role in fingerprint recognition
system. Orientation field consist of four major steps:
(1) Pre-processing fingerprint image
(2) Determining the primary ridges of fingerprint block
(3) Estimating block direction by projective distance variance of such a ridge
(4) Correcting the estimated orientation field. Image enhancement is use to improve
significantly the image quality by applying some image enhancement technique.
16
Fig 3.1: Fingerprint Recognition System
17
The main purpose of such procedure is to enhance the image by improving the clarity of
ridge structure or increasing the consistency of the ridge orientation. Fingerprint
classification is used to check the fingerprint pattern type. After classification of
fingerprint we can apply fingerprint ridge thinning which is also called block filtering, it
is used to reduce the thickness of all ridges lines to a single pixel width. Thinning does
not change the location and orientation of minutiae points compared to original
fingerprint which ensures accurate estimation of minutiae points. Then we can extract
minutiae points and generate data matrix. Finally we can use minutiae matching to
compare the input fingerprint data with the template data and give the result.
18
Chapter 4
Implementation
19
4.1 Algorithm level design
In this section the definitions and FRMSM (Fingerprint recognition using minutiae score
matching) model are discussed. Figure (4.1) gives the algorithm level design flow chart
of FRMSM which is used to match the test fingerprint with the template database using
Minutia Matching Score.
4.2. Definitions:
Termination: The location where a ridge comes to an end.
Bifurcation: The location where a ridge divides into two separate ridges.
Binarization: The process of converting the original grayscale image to a black-and white
image.
Thinning:The process of reducing the width of each ridge to one pixel.
Termination Angle: The angle between the horizontal and the direction of the ridge.
Bifurcation Angle: The angle between the horizontal and the direction of the valley
ending between the bifurcations.
False Matching Ratio: It is the probability that the system will decide to allow
access to an (FMR) imposter is given in an equation
𝐹𝑀𝑅 =FalseMat ches
𝐼𝑚 𝑝𝑜𝑠𝑡𝑒𝑟 𝐴𝑡𝑡𝑒𝑚𝑝𝑡𝑠 …. (4.1)
The imposter attempts are implemented by matching each input image with all the
template images.
False match was recorded for each imposter attempt when the matching score was greater
than the established threshold.
False Non Matching Ratio (FNMR): It is the probability that the system denies
access to an approved user is given in an equation
𝐹𝑁𝑀𝑅 =FalseNonMatches
𝐸𝑛𝑟𝑜𝑙𝑙𝑒𝑒 𝐴𝑡𝑡𝑒𝑚𝑝𝑡𝑠 .… (4.2)
Enrollee attempts are implemented by matching each input image with corresponding
template image, hence it is one-to-one matching.
A False Non-match was recorded when the matching score between an enrollee and its
template was less than the established threshold.
20
Figure 4.1: Steps involved in fingerprint Recognition
Load Image
Histogram Equalization
Enhancement using FFT
Ridge detection
Binarization
ROI
Thinning
Minutia Marking
Alignment and Match Template
Matching Score
21
Matching Score: It is used to calculate the matching score between the input and
template data is given in an equation
𝑀𝑎𝑡𝑐𝑖𝑛𝑔𝑆𝑐𝑜𝑟𝑒 =MatchingMinutiae
𝑀𝑎𝑥 (𝑁𝑇 ,𝑁𝐼) .…(4.3)
Where, NT and NI represent the total number of minutiae in the template and input
matrices respectively. By this definition, the matching score takes on a value between 0
and 1. Matching score of 1 and 0 indicates that data matches perfectly and data is
completely mismatched respectively.
4.3. Image Acquisition
The fingerprint images are captured using the inkless fingerprint sensor (scanner). The
quality of the fingerprint images is very important since it affects directly the minutiae
extraction algorithm.
4.4 Fingerprint Image Enhancement Technique
The first step in the minutiae extraction stage is Fingerprint Image enhancement.
This is mainly done to improve the image quality and to make it clearer for further
operations. Often fingerprint images from various sources lack sufficient contrast and
clarity. Hence image enhancement is necessary and a major challenge in all fingerprint
techniques to improve the accuracy of matching. It increases the contrast between ridges
and furrows and connects the some of the false broken points of ridges due to insufficient
amount of ink or poor quality of sensor input.
4.4.1 Histogram Equalization Histogram equalization is a technique of improving the global contrast of an image by
adjusting the intensity distribution on a histogram [11]. This allows areas of lower
local contrast to gain a higher contrast without affecting the global contrast.
Histogram equalization accomplishes this by effectively spreading out the most
frequent intensity values.
The original histogram of a fingerprint image has the bimodal type (Figure 4.2(a), the
histogram after the histogram equalization occupies all the range from 0 to 255 and the
visualization effect is enhanced (Figure 4.2(b)).
22
Figure 4.2: (a) Histogram of an image, (b) Histogram equalization of an image
(a) (b)
Figure 4.3: (a) Original image, (b) Enhanced Image after Equalization
4.4.2 Fingerprint Enhancement by Fourier transform
The image was divided into small processing blocks (32 by 32 pixels) and the Fourier
transform was performed according to
𝑓 𝑢, 𝑣 = ∑∑𝑓 𝑥, 𝑦 × exp −j2π × ux
M+
vy
N .…(4.4)
for u = 0, 1, 2, ..., 31 and v = 0, 1, 2, ..., 31.
In order to enhance a specific block by its dominant frequencies, the FFT of the block
was multiplied by its magnitude a set of times [11] .Where the magnitude of the original
FFT = abs (F (u ,v)) = |F(u ,v)| ….(4.5)
23
The enhanced block is obtained according to:
g (x , y ) =𝐹−1 𝐹(𝑢, 𝑣) × |𝐹 𝑢, 𝑣 |^𝑘 ….(4.6)
Where 𝐹−1 (F(u,v)) is done by:
F(x,y)=1
𝑀𝑁 ∑ ∑ 𝐹(𝑢, 𝑣) × 𝑒𝑥𝑝 2𝜋𝑗 ×
𝑢𝑥
𝑀+
𝑣𝑦
𝑁 𝑁−1
𝑦=0𝑀−1𝑥=0 .…(4.7)
for x = 0, 1, 2, ..., 31 and y = 0, 1, 2, ..., 31.
The k in formula is an experimentally determined constant, which was k=0.45 to
calculate.
While having a higher "k" improves the appearance of the ridges, filling up small
holes in ridges, having too high a "k" can result in false joining of ridges. Thus a
termination might become a bifurcation.
Figure 4.4: (a) Original Image, (b) Image Enhancement by FFT
The enhanced image after FFT has the improvements to connect some falsely broken
points on ridges and to remove some spurious connections between ridges. The shown
24
image at the left side of Figure4.4(b) is also processed with histogram equalization
after the FFT transform.
4.4.3 Fingerprint Image Binarization
Fingerprint Image Binarization is to transform the 8-bit Gray fingerprint image to a 1-bit
image with 0-value for ridges and 1-value for furrows. After the operation, ridges in
the fingerprint are highlighted with black color while furrows are white. A locally
adaptive Binarization method is performed to binarized the fingerprint image. Such
a named method comes from the mechanism of transforming a pixel value to 1 if the
value is larger than the mean intensity value of the current block (16x16) to which
the pixel belongs [Figure 4.5(a) and Figure 4.5(b)].
Figure4.5: (a) Enhanced image, (b) Image after Binarization
4.5 Fingerprint Image Segmentation
In general, only a Region of Interest (ROI) is useful to be recognized for each
fingerprint image. The image area without effective ridges and furrows is first
discarded since it only holds background information. Then the bound of the remaining
effective area is sketched out since the minutiae in the bound region is confusing with
those spurious minutiae that are generated when the ridges are out of the sensor
[12]. To extract the ROI, a two-step method is used. The first step is block direction
estimation and direction variety check, while the second is intrigued from some
Morphological methods.
25
4.5.1 Block direction estimation
The direction for each block of the fingerprint image with WxW in size(W is 16
pixels by default)is estimated. The algorithm is:
I. The gradient values along x-direction (gx) and y-direction (gy) for each pixel of
the block is calculated. Two Sobel filters are used to fulfill the task.
II. For each block, following formula is used to get the Least Square approximation of the
block direction.
𝑇𝑎𝑛β=2∑∑ gx ×gy
∑∑ g x2 −g y
2 .…(4.8)
for all the pixels in each block.
The formula is easy to understand by regarding gradient values along x-direction and y
direction as cosine value and sine value. So the tangent value of the block direction is
estimated nearly the same as the way illustrated by the following formula.
𝑇𝑎𝑛2𝜃 =2sin θ .cos θ
cos 2 𝜃−sin 2 𝜃 ….(4.9)
After the estimation of each block direction, those blocks without significant information
on ridges and furrows are discarded based on the following formulas:
E= 2∑∑ 𝑔𝑥 × 𝑔𝑦 + ∑∑(𝑔 𝑥2 − 𝑔 𝑦
2 ) /𝑊 × 𝑊∑∑(𝑔 𝑥2 + 𝑔 𝑦
2 ) ….(4.10)
For each block, if its certainty level E is below a threshold, then the block is regarded as a
background block. The direction map is shown in figure 4.6 (b) (assuming there is only
one fingerprint in For each block, if its certainty level E is below a threshold, then the
block is regarded each image.)
4.5.2 ROI extraction by Morphological operations
Two Morphological operations called „OPEN‟ and „CLOSE‟ are adopted[12,13].The
„OPEN‟ operation can expand images and remove peaks introduced by background
noise [Figure 4.7(c)]. The „CLOSE‟ operation can shrink images and eliminate small
cavities [Figure 4.7(b)]. Fig 4.7(d) show the interest fingerprint image area and its bound.
The bound is the subtraction of the closed area from the opened area. Then the
algorithm throws away those leftmost, rightmost, uppermost and bottommost blocks
out of the bound so as to get the tightly bounded region just containing the bound
and inner area.
26
Figure 4.6: (a) Binarization image, (b) Direction Map
Figure 4.7: (a) Original Image, (b) Close Operation, (c) Open Operation, (d) ROI+Bound
27
4.6: Post processing stage
4.6.1 Minutiae Extraction
Ridge Thinning is to eliminate the redundant pixels of ridges till the ridges are
just one pixel wide. An iterative, parallel thinning algorithm is used. In each scan of the
full fingerprint image, the algorithm marks down redundant pixels in each small
image window(3x3). And finally removes all those marked pixels after several
scans. The thinned ridge map is then filtered by other three Morphological operations to
remove some H breaks, isolated points and spikes.
4.6.2 Minutiae Marking
After the fingerprint ridge thinning, marking minutiae points is relatively easy.
The concept of Crossing Number (CN) is widely used for extracting the minutiae [13]. In
general, for each 3x3 window, if the central pixel is 1 and has exactly 3 one-value
neighbors, then the central pixel is a ridge branch [Fig 4.8(a)]. If the central pixel is 1
and has only 1 one-value neighbour, then the central pixel is a ridge ending [Fig
4.8(b)],i.e., if Cn(P) = =1 it‟s a ridge end and if Cn(P) = = 3 it‟s a ridge bifurcation point,
for a pixel P.
Figure 4.8(c) illustrates a special case that a genuine branch is triple counted. Suppose
both the uppermost pixel with value 1 and the rightmost pixel with value 1 have
another neighbour outside the 3x3 window, so the two pixels will be marked as
branches too. But actuallyonly one branch is located in the small region. So a check
routine requiring that none of the neighbors of a branch are branches is added.
Also the average inter-ridge width D is estimated at this stage. The average inter ridge
width refers to the average distance between two neighbouring ridges.The way to
approximate the D value is to scan a row of the thinned ridge image and sum up all pixels
in the row whose value is one. Then divide the row length with the above summation to
get an inter ridge width. For more accuracy, such kind of row scan is performed upon
several other rows and column scans are also conducted, finally all the inter-ridge widths
are averaged to get the D.
Together with the minutiae marking, all thinned ridges in the fingerprint image
are labeled with a unique ID for further operation. The labeling operation is realized
by using the Morphological operation.Minutiae extraction from thinned image in
[Figure4.9 (b) and Figure 4.9(a).]
4.6.3 False Minutiae Removal
At this stage false ridge breaks due to insufficient amount of ink & ridge cross
connections due to over inking are not totally eliminated. Also some of the earlier
methods introduce some spurious minutiae points in the image. So to keep the
recognition system consistent these false minutiae need to be removed.
28
Figure 4.8: (a) Bifurcation, (b) Termination, (c) Triple Counting Branch
Figure 4.9: (a) Thinned Image, (b) Figure after Minutiae Extraction
29
Here first calculate the inter ridge distance D which is the average distance between two
neighbouring ridges. For this scan each row to calculate the inter ridge distance
using the formula:
Inter ridge distance =sum of all pixel with value 1
row length ….(4.11)
Finally an averaged value over all rows gives D.
All we label all thinned ridges in the fingerprint image with a unique ID for further
operation using a MATLAB morphological operation BWLABEL.
Now the following 7 types of false minutiae points are removed using these steps
(Figure 4.10).
Figure 4.10: False Minutiae Points
1. If d(bifurcation, termination) < D & the 2 minutia are in the same ridge then remove
both of them (case m1)
2. If d(bifurcation, bifurcation) < D & the 2 minutia are in the same ridge them remove
both of them (case m2, m3)
3. If d(termination, termination) ≈ D & the their directions are coincident with a small
angle variation & no any other termination is located between the two terminations
then remove both of them (case m4, m5, m6)
4. If d(termination, termination) < D & the 2 minutia are in the same ridge then remove
both of them (case m7)
30
4.6.4 Unify Terminations and Bifurcation Since various data acquisition conditions such as impression pressure can easily
change one type of minutia into the other, most researchers adopt the unification
representation for both termination and bifurcation. So each minutia is completely
characterized by the following parameters at last: 1) x-coordinate, 2) y-coordinate,
and 3) orientation.
The orientation calculation for a bifurcation needs to be specially considered. All
three ridges deriving from the bifurcation point have their own direction. The
bifurcation is broken into three terminations. The three new terminations are the three
neighbor pixels of the bifurcation and each of the three ridges connected to the
bifurcation before is now associated with a termination respectively [13,14][Figure
4.11].
Figure 4.11: A Bifurcation to Three Terminations
Three neighbors become termination (Left)
Each termination has their own orientation (right)
And the orientation of each termination (𝑡𝑥 , 𝑡𝑦 ) is estimated by following method:
A ridge segment is tracked whose starting point is the termination and length is D. All
coordinates of points in the ridge segment are summed up. The above summation is then
divided with D to get𝑠𝑥 . And 𝑠𝑦 can be obtained using the same way.
The direction is obtained from:
a𝑡𝑎𝑛 𝑠𝑦 − 𝑡𝑦 / 𝑠𝑥 − 𝑡𝑥 ….(4.12)
4.7 Minutia Matching
Given two set of minutiae of two fingerprint images, the minutiae match
algorithm determines whether the two minutiae sets are from the same finger or not. An
alignment-based match algorithm is used. It includes two consecutive stages: one is
alignment stage and the second is match stage [15].
1. Alignment stage: Given two fingerprint images to be matched, any one minutiae
from each image is chosen, and the similarity of the two ridges associated with
31
the two referenced minutiae points is calculated. If the similarity is larger than a
threshold, each set of minutiae is transformed to a new coordination system whose
origin is at the referenced point and whose x-axis is coincident with the direction of the
referenced point.
2. Match stage: After obtaining two set of transformed minutiae points, the elastic match
algorithm is used to count the matched minutiae pairs by assuming two minutiae having
nearly the same position and direction are identical.
4.7.1 Alignment Stage
The ridge associated with each minutiae is represented as a series of x-coordinates
(x1,x2…xn) of the points on the ridge. A point is sampled per ridge length L starting
from the minutiae point, where the L is the average inter-ridge length. And n is set to 10
unless the total ridge length is less than 10*L.
So the similarity of correlating the two ridges is derived from:
𝑠 =∑ xi X i
mi=0
∑ x2i
mi=0 X2
i 0.5
.… (4.13)
Where (xi~xn) and (Xi~XN) are the set of minutiae for each fingerprint image
respectively. And m is minimal one of the n and N value. If the similarity score is larger
than 0.8, then the next step is executed else the next pair of ridges are continued
to match. For each fingerprint, all other minutiae are translated and rotated with
respect to the reference minutiae according to the following formula:
𝑥𝑖_𝑛𝑒𝑤𝑦𝑖_𝑛𝑒𝑤𝜃𝑖_𝑛𝑒𝑤
= 𝑇𝑀 ∗ 𝑥𝑖_𝑥𝑦𝑖_𝑦𝜃𝑖_𝜃
….(4.14)
Where (x,y,𝜃)the parameters of the reference minutiae and TM are is
TM= cos𝜃 − sin 𝜃 0sin 𝜃 cos𝜃 0
0 0 1 ….(4.15)
The diagram 4.12 illustrates the effect of translation and rotation. The new coordinate
system is originated at minutia F and the new x-axis is coincident with the direction of
minutia F. No scaling effect is taken into account by assuming two fingerprints from the
same finger have nearly the same size.
32
Figure 4.12: Effect of Translation and Rotation
4.7.2 Match Stage
The matching algorithm for the aligned minutiae patterns needs to be elastic since the
strict match requiring that all parameters (x,y,𝜃)are the same for two identical minutiae
is impossible due to the slight deformations and inexact quantization of minutia [16]. The elastic matching of minutiae is achieved by placing a bounding box around
each template minutiae. If the minutiae to be matched is within the rectangle box
and the direction discrepancy between them is very small, then the two minutiae are
regarded as a matched minutia pair. Each minutia in the template image either has no
matched minutia or has only one corresponding minutia.
The final match ratio for two fingerprints is the number of total matched pair over the
number of minutiae of thetemplate fingerprint. The score is 100*ratio and ranges from 0
to 100. If the score is larger than a pre-specified threshold, the two fingerprints are
from the same finger.
However, the elastic match algorithm has large computation complexity and is
vulnerable to spurious minutiae.
𝑀𝑎𝑡𝑐 𝑆𝑐𝑜𝑟𝑒 =num (matched minutia )
𝑚𝑎𝑥 (𝑛𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝑚𝑢𝑛𝑖𝑡𝑖𝑎 𝑖𝑛 𝑖𝑚𝑎𝑔𝑒 1 𝑎𝑛𝑑 𝑖𝑚𝑎𝑔𝑒 2) (4.16)
33
Chapter 5
Results & Discussion
34
5.1 Simulation Results
A fingerprint image is taking as an input from FVC2002 (Fingerprint Verification
competition 2000) to test the experiment performance. This algorithm is used for
differentiating fingerprints by performing minutiae extraction. Figure 5.1 shows the
original image of a fingerprint from the database and its minutiae points. Figure 5.2
shows the similarities between two fingerprints. Figure 5.3 shows the relationship
between FMR and FNMR. A system‟s false match rate (FMR) and false nonmatch rate
(FNMR) depend on the operating threshold; a large threshold score leads to a small FMR
at the expense of a high FNMR.
Figure 5.1 Original image with its minutiae
35
Figure 5.2 Similarity between two fingerprints
36
Figure 5.3 Relations between FMR and FNMR
37
Chapter 6
Conclusion
38
Conclusion
The above implementation was an effort to understand how Biometric 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. This paper presents a fingerprint recognition system, which
measures the similarity between two fingerprints. For this purpose, several fingerprints
are compared. The algorithm presented in this paper, tests all the images without any
fine-tuning for the database.
The limitation of this system is that the poor quality image results in spurious and missed
minutiae, thus the degrading performance of overall system.
The reliability of any automatic fingerprint system strongly relies on the precision
obtained in the minutiae extraction process. A number of factors are detrimental to the
correct location of minutiae. Among them, poor image quality is the most serious one. In
this project, we have combined many methods to build a minutiae extractor and a
minutiae matcher. The following concepts have been used- segmentation using
Morphological operations, minutiae marking by specially considering the triple
branch counting, minutiae unification by decomposing a branch into three
terminations.
There is a scope of further improvement in terms of efficiency and accuracy
which can be achieved by improving the hardware to capture the image or by
improving the image enhancement techniques. So that the input image to the thinning
stage could be made better this could improve the future stages and the final outcome.
39
References
[1] Dr. Neeraj Bhargava, Dr. Ritu Bhargava, Prafull Naroka, Minaxi Cotia,
“Fingerprint Recognition Using Minutiae Matching” International Journal of Computer
Trends and Technology- Volume 3, 2012.
[2] V. Humble, S. S. Gornale, M. Ramesh and K. V. Kale, “Mathematical morphology
approach for genuine fingerprint feature extraction,” International Journal of Computer
Science and Security, vol. 1, 2007, pp. 45-51.
[3] J. Li, S. Tulyakov, F. Farooq, J. J. Corso and V. Govindaraju, “Integrating minutiae
based fingerprint matching with local mutual information,” Proc. 19th Intl. Conf. on
Pattern Recognition (ICPR 2008), Dec 2008, pp. 1-4, doi: 10.1109/ICPR.2008.4761888
[4] B. C. Seow, S. K. Yeoh, S. L. Lai and N. A. Abu, “Image based fingerprint
verification,” Proc. Student Conf. on Research and Development (SCOReD 2002), 2002,
pp. 58-61, doi: 10.1109/SCORED.2002.1033054.
[5] L. Nanni and A. Lumini, “Descriptors for image-based fingerprint matchers,” Expert
Systems with Applications, vol. 36, Dec 2009, pp. 12414-12422.
[6] Asker M. Bazen, Gerben T.B. Verwaaijen, Sabih H. Gerez,Leo P.J. Veelenturf
and Berend Jan van der Zwaag, "A Correlation-Based Fingerprint Verification
System"University of Twente, Department of Electrical Engineering.
[7] Asker M. Bazen, Gerben T.B. Verwaaijen, Sabih H. Gerez,Leo P.J. Veelenturf
and Berend Jan van der Zwaag, "A Correlation-Based Fingerprint Verification
System"University of Twente, Department of Electrical Engineering.
[8] Zain S. Barham, Dr. Allam Mousa, Fingerprint Recognition using MATLAB.
[9] Rohit Singh, Utkarsh Shah, Vinay Gupta, “Fingerprint Recognition”, Department of
Computer Science & engineering Indian Institute of technology, Kanpur. Computer
Vision and Image Processing .
[10] AK Jain, A. Ross, and S. Prabhakar, Fingerprint Matching Using Minutiae and
Texture Features , Proc. of International Conference on Image Processing, 2001.
[11] D. Maio, and D. Maltoni, “Direct gray-scale minutia detection in fingerprints”,
IEEE Transactions Pattern Analysis and Machine Intelligence, vol. 19(1), pp. 27-40,
1997.
40
[12] D. Maltoni, D. Maio, and A. Jain, S. Prabhakar, “4.3: Minutiae-based
Methods‟ (extract) from Handbook of Fingerprint Recognition”, Springer, New
York, pp. 141-144, 2003.
[13] E. Hastings, “A Survey of Thinning Methodologies”, Pattern analysis and
Machine Intelligence, IEEE Transactions, vol. 4, Issue 9, pp. 869-885, 1992.
[14] K. Nallaperumall, A. L. Fred, and S. Padmapriya, “A Novel Technique for
Fingerprint Feature Extraction Using Fixed Size Templates”, IEEE 2005
Conference, pp. 371-374, 2005.
[15] P. Komarinski, P. T. Higgins, and K. M. Higgins, K. Fox Lisa, “Automated
Fingerprint Identification Systems (AFIS)”, Elsevier Academic Press, pp. 1-118, 2005.
[16] P. Komarinski, P. T. Higgins, and K. M. Higgins, K. Fox Lisa, “Automated
Fingerprint Identification Systems (AFIS)”, Elsevier Academic Press, pp. 1-118, 2005.
41