You are on page 1of 24

Fingerprint recognition

using Image processing


INTRODUCTION
*Fingerprints are imprints formed by 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 probability that two fingerprints are alike is about 1 in
1.9x1015.
Two approaches will be described for
fingerprint recognition:-

• Approach 1: Based on minutiae


located in a fingerprint

• Approach 2: Based on frequency


content and ridge orientation of a
fingerprint
First Approach :
*Most automatic systems for fingerprint comparison are
based on minutiae matching

*Minutiae are local discontinuities in the fingerprint pattern.


A total of 150 different minutiae types have been identified.
In practice only ridge ending and ridge bifurcation

*minutiae types are used in fingerprint recognition.


Examples of minutiae are shown in figures
(a) (b)
Figure 1. (a) Different minutiae types, (b) Ridge ending & Bifurcation
The building blocks of a fingerprint recognition
system are:-

Classification
Decision
Image Edge Feature
Thinning Classifier
Acquisition Detection Extractor
Physical
Fingerprint Figure 2. Fingerprint recognition system
a) Image Acquisition

*A number of methods are used to acquire fingerprints. Among them, the inked
impression method remains the most popular one. Inkless fingerprint scanners are
also present eliminating the intermediate digitization process.

*Fingerprint quality is very important since it affects directly the minutiae extraction
algorithm. Two types of degradation usually affect fingerprint images:

1) the ridge lines are


not strictly continuous since they sometimes include small breaks (gaps);

2) parallel ridge
lines are not always well separated due to the presence of cluttering noise. The
resolution of the scanned fingerprints must be 500 dpi while the size is 300x300
b) Edge Detection

*An edge is the boundary between two regions with relatively distinct gray level
properties.

*In practice, the set of pixels obtained from the edge detection algorithm seldom
characterizes a boundary completely because of noise, breaks in the boundary
and other effects that introduce spurious intensity discontinuities.

*Thus, edge detection algorithms typically are followed by linking and other
boundary detection procedures designed to assemble edge pixels into
meaningful boundaries.

c) Thinning

*An important approach to representing the structural shape of a plane region is to


reduce it to a graph. This reduction may be accomplished by obtaining the skeleton of the
region via thinning (also called skeletonising) algorithm.
The thinning algorithm while deleting unwanted edge points should not:
• Remove end points.
• Break connectedness
• Cause excessive erosion of the region
d) Feature Extraction

Extraction of appropriate features is one of the most important tasks for a


recognition system. The feature extraction method used in [1] will be explained below.

*A multilayer perceptron (MLP) of three layers is trained to detect the minutiae in the
thinned fingerprint image of size 300x300. The first layer of the network has nine neurons
associated with the components of the input vector.

*The hidden layer has five neurons and the output layer has one neuron. The network is
trained to output a “1” when the input window in centered on a minutiae and a “0” when it
is not. Figure 3 shows the initial

*training patterns which are composed of 16 samples of bifurcations in eight different


orientations and 36 samples of non-bifurcations. The networking will be trained using:
• The back propagation algorithm with momentum and learning rate of 0.3.
• The Al-Alaoui back propagation algorithm.
The fingerprint image is scanned using a 3x3 window given
Figure 3. Training set
e) Classifier

*After scanning the entire fingerprint image, the resulting output is a binary image
revealing the location of minutiae. In order to prevent any falsely reported output and
select
“significant” minutiae, two more rules are added to enhance the robustness of the
algorithm:

1) At those potential minutiae detected points, we re-examine them by increasing the


window size by 5x5 and scanning the output image.

2) If two or more minutiae are to close together (few pixels away) we ignore all of
them.
*The human fingerprint is comprised of various types of ridge patterns,
traditionally classified according to the decades-old Henry system:
left loop, right loop, arch, whorl, and tented arch.

*Loops make up nearly 2/3 of all fingerprints, whorls are nearly 1/3, and
perhaps 5-10% are arches. Figure 4 shows some fingerprint patterns with the core
point is marked.

(a) (b) (c) (d)


Figure 4. Core points on different fingerprint patterns. (a) tented arch, (b)
right loop, (c) left loop, (d) whorl
*After extracting the location of the minutiae for the prototype fingerprint images,
the calculated distances will be stored in the database along with the ID or name
of the person
to whom each fingerprint belongs.
The last phase is the verification phase where testing fingerprint image:

1) is inputted to the system

2) minutiae are extracted

3) Minutiae matching: comparing the distances extracted minutiae to the one


stored in the database

4) Identify the person


State the results obtained (i.e.: recognition rate).
Second Approach
*Most methods for fingerprint identification use minutiae as the fingerprint
features.
*For small scale fingerprint recognition system, it would not be efficient to undergo
all the pre-processing steps (edge detection, smoothing, thinning ..etc), instead
Gabor filters will be used to extract features directly from the gray level fingerprint
as shown figure 5.
No pre-processing stage is needed before extracting the features

Classification
Image Feature Classifier Decision
Acquisition Extractor
Physical
Fingerprint
Figure 5. Building blocks for the 2nd approach
a) Image Acquisition

The procedure is the same explained in the 1st approach.

b) Feature Extractor

*Gabor filter based features have been successfully and widely applied to face
recognition, pattern recognition and fingerprint enhancement. The family of 2-D
Gabor filters was originally presented by Daugman (1980) as a framework for
understanding the orientation and spatial frequency selectivity properties of the
filter.

*Daugman mathematically elaborated further his work in [8].


In a local neighbourhood the gray levels along the parallel ridges and valleys
exhibit some ideal sinusoidal shaped plane waves associated with some noise as
shown in figure 6 [3].
Figure 6. Sinusoidal plane wave
The general formula of the Gabor filter is defined by:

*The next step is to specify the values of the filter’s parameters; the frequency is
calculated
*as the inverse of the distance between two successive ridges. The number of
orientation is specified by “m” where

k m k θ =π ( −1) / , k = 1, 2, …., m.

The standard deviations σx and σy are determined empirically. In [7] σx = σy = 2 was


used, it is advisable to try other value also.
Figure 7 shows the filter response in spatial and frequency domain for a zero
orientation.

Figure 7. Gabor filter response


Table 1 extracted from [8] described the filter properties in space and
spectral domains
2D Space Domain 2D Frequency Domain

Table 1. Filter properties


The fingerprint print image will be scanned by a 8x8 window; for each block the
magnitude
of the Gabor filter is extracted with different values of m (m = 4 and m = 8). The
features
extracted (new reduced size image) will be used as the input to the classifier.
b) Classifier
*The classifier is based on the k-nearest neighbourhood algorithm KNN.

*“Training” of the KNN consists simply of collecting k images per individual as the
training set.

* The remaining images consists the testing set.

*The classifier finds the k points in the training set that are the closest to x
(relative to the Euclidean distance) and assigns x the label shared by the majority
of these k nearest neighbours.

*Note that k is a parameter of the classifier; it is typically set to an odd value in


order to prevent ties.

*Figure 8 shows how the KNN algorithm works for a two class problem. The KNN
query
starts at the test point x and grows a spherical region until it encloses k training
samples,
and it labels the test point by a majority vote of these samples. In this k = 5 case,
the test
point x would be labeled in the category of the red points
Figure 8. The KNN algorithm
The last phase is the verification phase where the testing fingerprint image:
1) is inputted to the system
2) magnitude features are extracted
3) perform the KNN algorithm
4) Identify the person
State the recognition rate obtained.
c) Suggested enhancement

*In order to enhance the performance of the 2nd approach below is a list of
proposed ideas:

• Instead of using only the magnitude Gabor filter features, try to use also the phase
of the filter [10].
• Try to use the Mahalanobis distance given by: D = (x − m)T C−1 (x − m) where m is
the mean and C is the covariance matrix. Appendix A provides an example of
Mahalanobis distance.
• Try to other classifiers such as back propagation and ALBP. Indicate the number of
layers used as well as the number of neurons.
• The Gabor filter assumes a sinusoidal plane wave which is not always the case as
depicted in figure 9. Try to use the modified Gabor filter described in [11].
Figure 9. A fingerprint with corresponding ridges and valleys.
Thank you

You might also like