You are on page 1of 12

Finger Print Recognition Progress Report 1

CHAPTER -I INTRODUCTION
General Statement of the Problem

In order to aid forensics in criminal identification, authentication


in civilian
applications and for preventing unauthorized there is a need to
develop a finger print
recognition and analysis system.

Background

Fingerprint verification is an important biometric technique for


personal identification. Biometrics are automated methods of
recognizing an individual based on their physiological (e.g.,
fingerprints, face, retina, iris) or behavioral characteristics (e.g., gait,
signature). Biometric-based solutions are able to provide for
confidential financial transactions and personal data privacy.

Importance of problem

Each biometric has its strengths and weaknesses and the choice
typically depends on the application. No single biometric is expected to
effectively meet the requirements of all the applications. The match
between a biometric and an application is determined depending upon
the characteristics of the application and the properties of the
biometric.

Information

Fingerprints are graphical flow-like ridges present on human


fingers. They are fully formed at about seven months of fetus
development and finger ridge configurations do not change throughout
the life of an individual except due to accidents such as bruises and
cuts on the fingertips. This property makes fingerprints a very
attractive biometric identifier. Fingerprint system can be separated into
two categories Verification and identification.
Identification system recognizes an individual by searching the
entire template database for a match. It conducts one-to-many
comparisons to establish the identity of the individual. In an
identification system, the system establishes a subject’s identity (or
fails if the subject is not enrolled in the system database) without the
subject having to claim an identity.

Created by Blue Lions


Finger Print Recognition Progress Report 2

Detailed Description of Fingerprint System

The various steps involved in a typical fingerprint recognition


system are shown
Below

Figure 1: Various steps in a Fingerprint system

A finger print system works in two modes they are Enrollment


mode and Authentication mode. Enrollment mode: fingerprint system
is used to identify and collect the related information about the person
and his/her fingerprint image. Authentication mode: fingerprint system
is used to identify the person who is declared to be him/her.

Figure 2: Enrollment and Authentication stages of a fingerprint system

Created by Blue Lions


Finger Print Recognition Progress Report 3

CHAPTER -II OBJECTIVES


The overall objective of the project is to develop a finger print
system based on directional filter bank technique which works on
minutiae. A point in the fingerprint image is designated as a minutia if
it belongs to an ending, beginning or bifurcation of a ridge. The
extraction of minutiae relies heavily on the quality of the input images.

• Simple smoothing and sharpening


• Contrast stretching
• Dry and wet area detection

Steps In The Design Process

Created by Blue Lions


Finger Print Recognition Progress Report 4

.
Figure 3: Image Preprocessing and Feature Extraction

CHAPTER -III PHASES


Image Preprocessing
To eliminate extraction of erroneous minutiae &
consequently mining the mismatch as much as possible, image
preprocessing is a necessary step before any feature extraction is
preformed.

 Histogram Equalization
 Extraction and Modification of Ridge Direction
 Dynamic Threshold
 Ridgeline Thinning

Histogram Equalization

Created by Blue Lions


Finger Print Recognition Progress Report 5

The method used for the unwanted part of the image is made lighter so as to
emphasize the desired parts. Then the accumulation of histogram from 0 to I is given by

Extraction and Modification of Ridge Direction

The introduction of unnecessary false minutiae in the feature extraction process.


To prevent this directional information of ridges is obtained & modified.

Figure 4: Ridges Direction

The effect of modifying the directional codes is shown in fig.

Figure 5: Before Enhancement Figure 6: After Modification Directional

Dynamic Threshold

Mapping of all data points having gray level more than the average gray level in a
16 x 16 sampling square 255 ( white ) and all other to zero (black). The result of it shown
in fig.

Created by Blue Lions


Finger Print Recognition Progress Report 6

Figure 7: After Dynamic Threading

Ridgeline Thinning

Before the features can be extracted, the fingerprints have to be thinned or


skeletons so that all the ridges are one pixel thick. Applying the thinning functions the
following shows the result as under.

Figure 8: Before Thinning Figure9: After Thinning

The basic features extracted from a fingerprint image are ridge


ending and ridge bifurcation. Mask used for features extraction is

Figure 10: 3x 3 Windows for Feature Extraction

Created by Blue Lions


Finger Print Recognition Progress Report 7

Features Extraction

The two basic features extracted from a fingerprint image are


ridge endings & bifurcations.

Response of the result for ridge ending is

Response of the result for ridge bifurcation is

CHAPTER –V DELIVERABLES
• MATLAB source code.
Function to enhance the fingerprint and then applying basic global
threshold image is differentiated from background

function image = enhanced(img)


img = double(img);
img1 = histeq(img);
T = graythresh(img1)
% T = 200 ;
% global C1 C2 G1 G2
% C1 = 0 ;
% C2 = 0 ;

Created by Blue Lions


Finger Print Recognition Progress Report 8

% G1 = 0 ;
% G2 = 0 ;
% img = thresholding(img1,T) ;
% u1 = G1/C1 ;
% u2 = G2/C2 ;
% T = (u1+u2)/2 ;
% C1 = 0 ;
% C2 = 0 ;
% G1 = 0 ;
% G2 = 0 ;
% img1 = thresholding(img,T) ;
% u1 = G1/C1 ;
% u2 = G2/C2 ;
% T = (u1+u2)/2 ;
% C1 = 0 ;
% C2 = 0 ;
% G1 = 0 ;
% G2 = 0 ;
image = thresholding(img1,T) ;
image

%%%%Helper Function Starts%%%%%%

function imag2 = thresholding(img,T)


[M,N] = size (img);
for i=1:M
for j=1:N
if ( img(i,j) > T )
img(i,j) = 1 ;
imag2 = img(i,j);
% G1 = G1 + img(i,j) ;
% C1 = C1 + 1 ;
else
img(i,j) = 0 ;
imag2 = img(i,j);
% G2 = G2 + img(i,j) ;
% C2 = C2 + 1 ;
end

end
end
imag2

Created by Blue Lions


Finger Print Recognition Progress Report 9

%%%%%Helper Function Ends%%%%%%%%

Function "Preprocessing" is used to preprocess the image for features


extraction. The main objective of the function is to change the finger ridges into 1
pixel thick line which is mandatory for the extraction of bifurcation & minutiae.
%Syntax:
%I = imread('fingerprint.tif');
%
%then pass the image matrix 'I' as an argument and the function will
%return the 'image' in which ridges are 1 pixel thickl
%
%image = preprocessing(img);

function image = preprocessing(img)


img = histeq(img);
%T = threshold value
T = graythresh(img) ;
%bwimage is image got from thresholding using 'im2bw' function
bwimage = im2bw(img,T);
bw1 = bwmorph(bwimage,'thin',inf);
%bw1 is 1 pixel thick ridge line which was the main objective of the
whole
%process. This is necessary for the extraction of the features from the
%finger print images.
comp = imcomplement(bw1);
image = comp

Function "Features" extracts the minutiae points, ridge endings &


bifurcations , and write them to a file. This will use the function preprocessing as
auxiliary function to preprocess the image for features extraction. Implementing
the following 3x3 window for features extraction.

% X1 X2 X3
% X8 M X4
% X7 X6 X5
%
% M is the center pixel and it will decide whether the center pixel
% is a ridge ending ( M = 2 ), or it is ridge bifurcation ( M = 6 )
%
% Syntax:
% fingerprint = imread('fingerprint.tif');
% Features_extract(fingerprint);

Created by Blue Lions


Finger Print Recognition Progress Report
10

function Features_extract(image)

image1 = preprocessing( image );


image = imcomplement( image1 );
[M,N] = size( image ) ;
imview( image ) ;

K = M -2 ;
L = N -2 ;
x=1;
y=1;
m=1;
n=1;

global C

for i=2: K
for j=2: L
C=0;

C = abs( image(i,j+1) - image(i,j) ) ;


C = C + abs( image(i,j+2) - image(i,j+1) ) ;
C = C + abs( image(i+1,j+2) - image(i,j+2) ) ;
C = C + abs( image(i+2,j+2) - image(i+1,j+2) ) ;
C = C + abs( image(i+2,j+1) - image(i+2,j+2) ) ;
C = C + abs( image(i+2,j) - image(i+2,j+1) ) ;
C = C + abs( image(i+1,j) - image(i+2,j) ) ;
C = C + abs( image(i,j) - image(i+1,j) ) ;

if ( C == 2 )
ending1(x) = i ;
ending2(y)= j ;
x=x+1;
y=y+1;
end
if ( C == 6 )
bif1(m) = i ;
bif2(n) = j ;
m=m+1;
n=n+1;
end

Created by Blue Lions


Finger Print Recognition Progress Report
11

end
end
save minut

GANTT CHART
Stages

Figure 11: Gantt chart Time

REFERENCES
Journal Articles

1) K. Jain, L. Hong, S. Pankanti, and R. Bolle, “An identity authentication system


using fingerprints,” Proc. IEEE, vol. 85, pp. 1365-388, Sept. 1997

2) K. Jain, L. Hong, and R. Bolle, “On-line fingerprint verification,” IEEE Trans.


Pattern Anal. Machine Intell., vol. 19, pp. 302–314, Apr. 1997

3) Aho, A. V., Hopcroft, J.E., and Ullman J. D., 1983, “Data Structures and
Algorithms”, Addison-Wesley Publishing Company, Massachusetts, USA

Books

Created by Blue Lions


Finger Print Recognition Progress Report
12

• Rafeel C. Gonzalez, Richard E. Woods, Digital Image Processing, 2nd Edition,


Prentice Hall, New York, 2002

• Rafeel C. Gonzalez, Richard E. Woods, Digital Image Processing using MATLAB,


2nd Edition, Prentice Hall, New York, 2002

Web Pages

1) http://www.atvs.diac.upm.es/publicaciones/publicaciones_en.htm
2) http://fpserver.cse.cuhk.edu.hk/paper/fingertechpart2.pdf
3) http://www.research.ibm.com/ecvg/pubs/sharat-minver.pdf
4) http://www.cordis.lu/infosec/src/stud5fr.htm

Created by Blue Lions