Fingerprint recognition is one of the oldest and most popular biometric technologies and it is used in criminal investigations, civilian, commercial applications, and so on. Fingerprint matching is the process used to determine whether the two sets of fingerprints details come from the same finger or not. This work focuses on feature extraction and minutiae matching stage. There are many matching techniques used for fingerprint recognition systems such as minutiae based matching, pattern based matching, Correlation based matching, and image based matching.
A new method based upon Principal Component Analysis (PCA) for fingerprint enhancement is proposed in this paper. PCA is a useful statistical technique that has found application in fields such as face recognition and image compression, and is a common technique for finding patterns in data of high dimension. In the proposed method image is first decomposed into directional images using decimation free Directional Filter bank DDFB. Then PCA is applied to these directional fingerprint images which gives the PCA filtered images. Which are basically directional images? Then these directional images are reconstructed into one image which is the enhanced one. Simulation results are included illustrating the capability of the proposed method.
3. MATLAB SOFTWARE
MATLAB is a high-performance language for technical
computing. It integrates computation, visualization, and
programming in an easy-to-use environment where problems
and solutions are expressed in familiar mathematical notation.
Math and computation
Algorithm development
Data acquisition Modeling, simulation, and prototyping
Data analysis, exploration, and visualization
Scientific and engineering graphic
Application development, including graphical user
interface building.
4. INTRODUCTION
WHAT IS FINGERPRINT?
•An impression or mark made on a surface by a
person's fingertip.
•Able to be used for identifying individuals
from the unique pattern of whorls and lines on
the fingertips.
•Fingerprints are the tiny ridges, whorls and
valley patterns on the tip of each finger.
•Totally unique.
5. FINGERPRINT RECOGINITION
•Fingerprint recognition refers to the automated method of identifying or
confirming the identity of an individual based on the comparison of two
fingerprints.
•Fingerprint recognition is one of the most well known biometrics, and it is by far
the most used biometric solution for authentication on computerized system.
6. Fingerprint patterns
(a) Basic patterns
The three basic patterns of fingerprint ridges are:
•An arch is a pattern where the ridge enters one side of
the finger, then rises in the center forming an arch, and
exits on the other side of the finger.
•With a loop the ridge enters one side of the finger, then
forms a curve, and exits on the same side of the finger
from which it entered. Loops are the most common
pattern in fingerprints.
• Finally a whorl is the pattern you have when ridges
form circularly around a central point.
7. (b)Minutiae features
•Minutiae refer to specific points in a fingerprint,
these are the small details in a fingerprint that
are most important for fingerprint recognition.
•There are three major types of minutiae
features:
• The ridge ending,
•The bifurcation,
•The dot (also called short ridge).
•The ridge ending is, as indicated by the name,
the spot where a ridge ends.
•A bifurcation is the spot where a ridge splits
into two ridges. Spots are those fingerprint
ridges that are significantly shorter than other
ridges.
8. FINGERPRINT RECOGINITION TECHNOLOGY
Enrollment phase : In the enrollment
phase:
Sensor scans the fingerprint of user and
then determine the minutiae point .
Feature extractor extracts the minutiae
points from image
Then the system stores the minutiae
information along with demographic
information of the person as a template in
the database.
Recognition phase: In the recognition
phase,
Sensor generates the fingerprint image of
user namely as a query image.
Minutiae extractor will extracts the
minutiae points from query image and then
the matcher module compares the minutiae
points of user’s image with the stored
minutiae template in database and then a
match score is generated by the system.
After that, System determines the person’s
identity by comparing the obtained match
score with the threshold value.
The basic function of the fingerprint
recognition system.
A fingerprint recognition technology mainly works in two phase :
9. Fingerprint Recognition Steps:
The fingerprint classification based on mainly two strategies.
Local features : Local features can be characterized as minutiae points.
Global features : Global characteristics of fingerprint can be easily seen
with our eyes like pattern type, orientation, position, spatial frequency,
line types- dot, island, core, curvature points.
The main ingredients of thumb impression are defined by its type,
position of minutiae, orientation etc.
It is true that global attributes of more than one person are similar but
their local features can never be same.
Discovery of local features needs to determine the ridge ends or
bifurcation.
In order to extract these minutiae various steps must be followed:
10. (1) Image acquisition
In this step raw image of fingerprint is taken from source.
Fingerprint impression can be easily received when ridges and valleys of a
finger touches a surface.
Fingerprint may be scanned through off line fingerprint acquisition through
ink technique.
And system captures the impression then in matching phase fingerprint are
matched with large number of stored database.
Fingerprint verification generally uses two schemes minutiae based (local
representatives) and image based (whole features of global representatives).
11. A fingerprint image may be contaminated
due to noise present in image, holes, blurred
image, and smeared mark on surface,
corrupted devices or scanner.
Enhancement is necessary step to increase
contrast between ridges and furrows, to get
rid of unrecoverable regions, to improve
clarity of ridges minutiae and bifurcation,
speedy extraction of minutiae ,increase
brightness of an image, normalization,
orientation estimation, filtering of an
image, binarization and thinning steps.
The very first step in enhancement is
Normalization may be performed to check
image quality and also for easily comparison
with different modalities. database.
(2) Image Enhancement
12. Features extraction mainly uses three
approaches such as:
feature based method (global),
image based,
minutiae based features (local).
The local and global feature describe the
whole structure and characteristics of
impression such as loop, arch, whorl etc
patterns like two ridge meets, ridges singular
point, ridges count, core point, lines type etc
made up all these features.
The extracted features from each fingerprint
contain the orientation details like position of
center point, bifurcation and ridge ending and
Euclidean distance between feature vector
points.
INPUT
IMAGE
ENHANCEMEN
T
FEATURE
ECTRACTION
(3)Fingerprint Extraction
13. Binarization is a procedure by which the
grayscale image is changed over into a black
and white image. Generally 1 is taken as
white and 0 as black.
0-value for ridges and 1-value for furrows.
After the operation, fingerprint is highlighted
ridges in the fingerprint are featured with
black color while furrows are white for
processing.
(4)Image Binarization
INPUT
BINARIZATI
ON
14. In the biometric process of finger scanning, minutiae are specific points in a finger
image.
There are two main types, known as ridge endings and bifurcations. Sometimes,
other details, such as the points at which scars begin or terminate, are considered
minutiae.
The number and locations of the minutiae vary from finger to finger .
When a set of finger images is obtained from an individual, the number of minutiae
is recorded for each finger.
The precise locations of the minutiae are also recorded, in the form of numerical
coordinates, for each finger.
(5) Minutiae Extraction
15. (5.1) Image thinning
Fingerprint ridge thinning process eliminating the
redundant pixels of ridges and this will carried
out till the ridges are just one pixel wide in
length.
Removes noise as well.
Fingerprint image passed for orientation,
alignment checking process for discovery of
direction of each point where ridges are
ending,edges.
Two ridges are splitting and so on in thumb
impression.
(5.2) Terminations and bifurcations
matching
Various data acquisition conditions such as
impression pressure can easily change a minutia
form into a different one.
we adopt the elastic match representation for both
termination and bifurcation.
So each minutia is wholely described by its
coordinates (x,y) and its orientation.
16. (6)Minutiae Matching
One image chosen dynamically and another chosen
by system from database; now segmented image of
each block will be matched based on ridges
associated with two reference minutiae points .
Now calculate the matching minutiae in each block
coordinates; i.e. where x-axis coincident with the
reference segmented image with direction of
minutiae points.
In matching stage we actually evaluate the
matched minutiae pairs from two images nearly
with same position and direction are same.
Also in matching algorithm for different alignment
of impression from each person is taken then each
minutia in the template either matched within
rectangle box and orientation is slightly deformed.
17. PRINCIPLE COMPONENT ANALYSIS
PCA finds the principal components of data.
It is often useful to measure data in terms of its principal components rather than on a normal
x-y axis.
The main idea of PCA is to reduce the dimensionality of a data set consisting of many
variables correlated with each other, either heavily or lightly, while retaining the variation
present in the dataset, up to the maximum extent.
The same is done by transforming the variables to a new set of variables, which are known as
the principal components (or simply, the PCs) and are orthogonal, ordered such that the
retention of variation present in the original variables decreases as we move down in the order.
The principal components are linear combinations of the original variables weighted by their
contribution to explaining the variance in a particular orthogonal dimension.
18. Implementation of PCA
Step 1: Normalize the data
First step is to normalize the data that we have so that PCA works properly.
This is done by subtracting the respective means from the numbers in the
respective column. So if we have two dimensions X and Y, all X become 𝔁-
and all Y become 𝒚-.
This produces a dataset whose mean is zero.
Step 2: Calculate the covariance matrix
Since the dataset we took is 2-dimensional, this will result in a 2x2
Covariance matrix.
Please note that Var[X1] = Cov[X1,X1] and Var[X2] = Cov[X2,X2].
19. Step 3: Calculate the eigenvalues and eigenvectors
Next step is to calculate the eigenvalues and eigenvectors for the covariance
matrix. The same is possible because it is a square matrix. ƛ is an eigenvalue
for a matrix A if it is a solution of the characteristic equation:
det( ƛI - A ) = 0
Where, I is the identity matrix of the same dimension as A which is a
required condition for the matrix subtraction as well in this case and ‘det’ is
the determinant of the matrix. For each eigenvalue ƛ, a corresponding
Eigen-vector v, can be found by solving:
( ƛI - A )v = 0
20. Step 4: Choosing components and forming a
feature vector:
We order the eigenvalues from largest to smallest so that it gives us the
components in order or significance. Here comes the dimensionality
reduction part. If we have a dataset with n variables, then we have the
corresponding n eigenvalues and eigenvectors. It turns out that the
eigenvector corresponding to the highest eigenvalue is the principal
component of the dataset and it is our call as to how many eigenvalues we
choose to proceed our analysis with. To reduce the dimensions, we choose
the first p eigenvalues and ignore the rest. We do lose out some information
in the process, but if the eigenvalues are small, we do not lose much.
Next we form a feature vector which is a matrix of vectors, in our case, the
eigenvectors. In fact, only those eigenvectors which we want to proceed
with. Since we just have 2 dimensions in the running example, we can either
choose the one corresponding to the greater eigenvalue or simply take
both.
Feature Vector = (eig1, eig2)
21. Step 5: Forming Principal Components:
This is the final step where we actually form the principal
components using all the math we did till here. For the same, we take
the transpose of the feature vector and left-multiply it with the
transpose of scaled version of original dataset.
NewData = FeatureVectorT x ScaledDataT
Here,
NewData is the Matrix consisting of the principal components,
FeatureVector is the matrix we formed using the eigenvectors we
chose to keep, and
ScaledData is the scaled version of original dataset
(‘T’ in the superscript denotes transpose of a matrix which is formed
by interchanging the rows to columns and vice versa. In particular, a
2x3 matrix has a transpose of size 3x2).
22. All the eigenvectors of a matrix are perpendicular to each other. So, in PCA,
what we do is represent or transform the original dataset using these
orthogonal (perpendicular) eigenvectors instead of representing on normal x
and y axes.
We have now classified our data points as a combination of contributions
from both x and y.
The difference lies when we actually disregard one or many eigenvectors,
hence, reducing the dimension of the dataset.
Otherwise, in case, we take all the eigenvectors in account, we are just
transforming the co-ordinates and hence, not serving the purpose.