22
Minor Project report Submitted by Vikash Kumar Sudipta Sarkar Ram Pratap Sharma Pushkar Kumar Under The Guidance of Dr. H.A.Ansari & Md. Azizar Rahaman. Stream: Computer Science and Engineering. Future Institute Of Engineering And Management. Sonarpur,Kolkata-700150. 1

Fingerprint Recognition(Main Submission)

  • Upload
    vikfiem

  • View
    2.056

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Fingerprint Recognition(Main Submission)

Minor Project report

Submitted by

Vikash KumarSudipta Sarkar

Ram Pratap SharmaPushkar Kumar

Under The Guidance of

Dr. H.A.Ansari & Md. Azizar Rahaman.

Stream: Computer Science and Engineering.Future Institute Of Engineering And

Management.Sonarpur,Kolkata-700150.

Content Page Number

Chapter 1:Introduction………………………….3

1

Page 2: Fingerprint Recognition(Main Submission)

1.1 What is A Fingerprint 1.2 What is Fingerprint Recognition

Chapter 2:Objective…………………………......5

Chapter 3:Description…………………………..6 3.1Histogram equalization 3.2Fourier transformation 3.3Thining technique 3.4Region of Interest

Chapter 4:Coding………………………………10

Chapter 5:Hardware And Software Requirements……….13

Chapter 6:Solution Of Problem………………14

Chapter 7:Program Flow……………………..15

Chapter 8:Applications Of The Project………16

Chapter 9:Conclusion And Future Scope……17

Chapter 10:Bibliography……………………..18

Chapter 1: Introduction

1.1 What is A Fingerprint ?

A fingerprint is the feature pattern of one finger. It is believed with strong evidences that each fingerprint is unique. Each person has his own fingerprints with the permanent uniqueness. So

2

Page 3: Fingerprint Recognition(Main Submission)

fingerprints have being used for identification and forensic investigation for a long time. Fingerprint recognition is one of the most reliable identification techniques. Fingerprint technology is the most widely used for security purposes. The Technology is being frequently used in criminal investigation purpose.

1.1 A fingerprint image acquired by an Optical Sensor.

Fingerprint Image can be classified into following six category.

1.2 (a)Arch (b)tented arch (c)right loop

(d)Left loop (e)Whorl (f)twin

loop

There are many characteristics in a fingerprint .

3

Page 4: Fingerprint Recognition(Main Submission)

Fig1.3

Among all these characteristics we take two characteristics for our Project.One is bifurcation and another one is ridge ending.

1.2 What is Fingerprint Recognition? The fingerprint recognition problem can be grouped into two sub-domains: one is fingerprint verification and the other is fingerprint identification. Fingerprint verification is to verify the authenticity of one person by his fingerprint. The user provides his fingerprint together with his identity information like his ID number. The fingerprint verification system retrieves the fingerprint template according to the ID number and matches the template with the real-time acquired fingerprint from the user. Usually it is the underlying design principle of AFAS (Automatic Fingerprint Authentication System).Fingerprint identification is to specify one person’s identity by his fingerprint(s). Without knowledge of the person’s identity, the fingerprint identification system tries to match his fingerprint(s) with those in the whole fingerprint database. It is especially useful for criminal investigation cases. And it is the design principle of AFIS (Automatic Fingerprint Identification System). However, all fingerprint recognition problems, either verification or identification, are ultimately based on a well-defined representation of a fingerprint. As long as the representation of fingerprints remains the uniqueness and keeps simple, the fingerprint matching, either for the 1-to-1 verification case or 1-to-m identification case, is straightforward and easy.

4

Page 5: Fingerprint Recognition(Main Submission)

Chapter 2: ObjectiveThe principle objective of our project is to recognize an

image.

Here we take an image as input and then we apply Histogram equalization

and Fourier transforms which is Enhancement technique .Then we thin that

image. After that we match that input image with the stored image and find

how much it is matched with the stored image.

Strategy of the project is divided into following steps.

1. Loading the Fingerprint Image.2. Increase the perceptional information of the image by

Histogram Equalization Method.

Fast Fourier Transform.

3. Region of Interest.

4. Direction Estimation of each contour of block of Fingerprint.

5. Thinning Technique.

6. Verification.

In present course we attempt some of the steps of our strategy.

5

Page 6: Fingerprint Recognition(Main Submission)

Chapter 3: Description

Our fingerprint recognition system is ultimately based on a well-defined representation of a fingerprint recognition Technique.Taking a Fingerprint at first we enhanced the quality of that image to make the image clearer for easy further operations. Since the fingerprint images acquired from sensors or other medias are not assured with perfect quality, those enhancement methods, for increasing the contrast between ridges and furrows and for connecting the false broken points of ridges due to insufficient amount of ink, are very useful for keep a higher accuracy to fingerprint recognition. various methods that are adopted in our fingerprint recognition system to enhance the image quality are Fingerprint Enhancement by Histogram Equalization and Fingerprint Enhancement by Fourier Transform.

3.1 Loading the Fingerprint Image

3.2 Increase the perceptional information of the image by

Histogram Equalization. Fast Fourier Transform.

(i)Histogram Equalization :

6

Page 7: Fingerprint Recognition(Main Submission)

Histogram equalization is to expand the pixel value distribution of an image so as to increase the perceptional information. The original histogram of a fingerprint image has the bimodal type [Figure 3.1.], the histogram after the histogram equalization occupies all the range from 0 to 255 and the visualization effect is enhanced [Figure 3. 2].

Figure 3. 1 The Original histogram of a fingerprint image.

Figure 3. 2 Histogram after the Histogram Equalization.

The right side of the following figure [Figure 3.1] is the output after the histogram equalization.

Figure 3.3 Histogram Enhancement. Original Image (Left) Enhanced image (Right)

7

Page 8: Fingerprint Recognition(Main Submission)

(ii)Fourier Transformation :

In Fingerprint Enhancement by Fourier Transform, We divide the image into small processing blocks (32 by 32 pixels) and perform the Fourier transform according to:

     (1)

for u = 0, 1, 2, ..., 31 and v = 0, 1, 2, ..., 31.

In order to enhance a specific block by its dominant frequencies, we multiply the FFT of the block by its magnitude a set of times. Where the magnitude of the original FFT = abs(F(u,v)) = |F(u,v)|.

Get the enhanced block according to

  (2) ,

where F-1(F(u,v)) is done by:

for x = 0, 1, 2, ..., 31 and y = 0, 1, 2, ..., 31.The k in formula (2) is an experimentally determined constant, which we choose 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 3.4 presents the image after FFT enhancement.

Figure 3.4 Fingerprint enhancement by FFT Enhanced image (left), Original image (right)

8

Page 9: Fingerprint Recognition(Main Submission)

The enhanced image after FFT has the improvements to connect some falsely broken points on ridges and to remove some spurious connections between ridges.

3.3 Region of Interest :

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 minutia in the bound region are confusing with those spurious minutia that are generated when the ridges are out of the sensor.

3.4 Thinning Technique :

Thinning is a Technique to eliminate the redundant pixels of ridges till the ridges are just one pixel wide. It uses an iterative, parallel thinning algorithm. In each scan of the full fingerprint image, the algorithm marks down redundant pixels in each small image window. And finally removes all those marked pixels after several scans. Here we count that, from the edge, after how many black pixels there is one or more white pixel .Then we store the first and last pixel positions. Then we make the color of all those black pixels white except a particular pixel which is situated at the location ((first pixel position + last pixel position)/2).

The result of a good thinning algorithm are ---a) The thinned image obtained should be of single pixel width with no discontinuities.b) Each ridge should be thinned to its centre pixel.c) Noise and singular pixels should be eliminated.d) No further removal of pixels should be possible after completion of thining process.

9

Page 10: Fingerprint Recognition(Main Submission)

CHAPTER 4 : CODING

clearfigwin = figure('Position',[300,400,600,500],... 'Name','vikash testing figure',... 'NumberTitle','off',...'Color',[0.7,0.7,0.7]); AxesHandle1 = axes('position',[0.2,0.2,0.35,0.58]);AxesHandle2 = axes('position',[0.6,0.2,0.35,0.58]);

% Loading the Fingerprint Image

textLoad='fingerprint image';uicontrol(figwin,'position',[0,350,70,40],... 'string','LOAD IMAGE',... 'Callback',... ['image1=vloadimage;'... 'subplot(AxesHandle1);'... 'imagesc(image1);'... 'title(textLoad);'...

'colormap(gray);' ]);

%IMAGE ENHANCEMENT %Enhancement by histogram Equalization text_eq='Enhancement by histogram Equalization';

uicontrol(figwin,'position',[0,300,70,40],... 'string','HIST EQ.',... 'Callback',... ['subplot(AxesHandle2);'... 'image1=histeq(uint8(image1));'... 'imagesc(image1); title(text_eq);']);

% Enhancement by fast fourier transform

text='Please input the FFT factor(0~1)';

10

Page 11: Fingerprint Recognition(Main Submission)

text_fft='Enhancement by FFT';

uicontrol(figwin,'position',[0,250,70,40],... 'string','FFT',... 'Callback',... ['W=inputdlg(text);'... 'W=str2double(char(W));'... 'subplot(AxesHandle1);image1=vfftenhance(image1,W);'... 'imagesc(image1);title(text_fft);']);

% Region Of Interest(ROI)

text_ROI='Region Of Interest(ROI)';

uicontrol(figwin,'position',[0,200,70,40],... 'string','ROI',... %Thinning

text31='Thinned-ridge map';uicontrol(figwin,'position',[0,150,70,40],... 'string','THINNING',...

%Saving the features

uicontrol(figwin,'position',[0,100,70,40],... 'string','SAVE');

%Verification

uicontrol(figwin,'position',[260,25,150,40],... 'string','VERIFY');

For Loading Image

function image1=loadimage% dialog for opening fingerprint files

[imagefile1 , pathname]= uigetfile('*.bmp;*.BMP;*.tif;*.TIF;*.jpg','Open An Fingerprint image');

if imagefile1 ~= 0 cd(pathname);

image1=imread(char(imagefile1));image1=255-double(image1);

11

Page 12: Fingerprint Recognition(Main Submission)

end;

For Fast Fourier Transform

function [final]=fftenhance(image,f)

I = 255-double(image);

[w,h] = size(I);%out = I;

w1=floor(w/32)*32;h1=floor(h/32)*32;

inner = zeros(w1,h1);

for i=1:32:w1 for j=1:32:h1 a=i+31; b=j+31; F=fft2( I(i:a,j:b) ); factor=abs(F).^f; block = abs(ifft2(F.*factor)); larv=max(block(:)); if larv==0 larv=1; end; block= block./larv; inner(i:a,j:b) = block; end;end;

final=inner*255;

final=histeq(uint8(final));

12

Page 13: Fingerprint Recognition(Main Submission)

Chapter 5: Hardware And Software Requirements

Various Software And Hardware that are required to do this project is discussed here.

1. Software :

a. MATLAB version 7

2. Hardware:

a. Ram: 256 Mb.b. Hard Disk: 40 Gb.c. Input device: Keyboard.d. Output device: Computer Monitor.

13

Page 14: Fingerprint Recognition(Main Submission)

Chapter 6: Solution of Problem

1. In the thinning technique we count the pixel width horizontally .And then we convert that image into another image whose pixel width is uniformly one. If any characteristic is present horizontally, then after the use of thinning algorithm it becomes a point.

2. The value of the constant in Fast Fourier Transform should be close to one.

14

Page 15: Fingerprint Recognition(Main Submission)

Chapter 7: Program Flow

The Program follows this particular path - - -

15

Select an Image Histogram Equalization Fourier Transform

Thinning VerificationRegion Of Interest

Page 16: Fingerprint Recognition(Main Submission)

Chapter 8: Applications Of The Project

Fingerprint recognition is a rapidly evolving Technology that has been widely used in forensics such as criminal recognition and prison security and has a very strong potential to be widely adapted in a broad range of civilian applications. Most of the Fingerprint Recognition applications are divided into following three categories.

1. Forensic:

a. Corpse Identification.b. Criminal Investigation.c. Terrorist Identification.d. Parenthood Determination.e. Missing Children.etc

2. Government:

a. National ID Card.b. Corretional Facility.c. Driver’s license.d. Social Security.e. Welfare Disbursement.f. Border Control.g. Passport Control.etc

3. Commercial:a. Computer Network Logon.b. Electronic Data Security.c. E-Commerce.d. Internet Access.e. ATM,Credit card.f. Physical access control.

16

Page 17: Fingerprint Recognition(Main Submission)

g. Cellular Phones.h. Personal Digital Assistance.i. Mdical Records Management.j. Distance Learning .etc.

Chapter 9: Conclusion And Future Scope

Fingerprint Image enhancement is to make the image clearer for easy further operations. Since the fingerprint images acquired from sensors or other media are not assured with perfect quality, enhancement methods, for increasing the contrast between ridges and furrows and for connecting the false broken points of ridges due to insufficient amount of ink, are very useful to keep a higher accuracy to fingerprint recognition. Two methods are adopted in the work: the first one is Histogram Equalization; the second one is Fourier Transform.

1. Region Of Interest tells us which region of the fingerprint is very useful for various features matching.

2. Improved thinning in the present work contributes to: The image becomes perfectly thinned to single pixel width. More number of bifurcations can be detected.

3. Also a program coding with MATLAB going through all the stages of the fingerprint recognition is built. It is helpful to understand the procedures of fingerprint recognition. And demonstrate the key issues of fingerprint recognition.

Overall, a set of reliable techniques have implemented for fingerprint recognition. These techniques can then be used to facilitate the further study of the statistics of fingerprints. The future scope of the work is to do Binarization of the image, to find the direction of the

17

Page 18: Fingerprint Recognition(Main Submission)

bifurcation and ridges of the image,to extract features, to find actual minutiae .So that the fingerprint recognition could be made better which can improve the future stages and the final outcome.

Chapter 10: Bibliography

[1] T. Chang. Texture analysis of digitized _ngerprints for singularity detection. In Proc.5th ICPR, pages 478{480, 1980.[2] P. E. Danielsson and Q. Z. Ye. Rotation-invariant operators applied to enhancement of_ngerprints. In Proc. 9th ICPR, pages 329{333, Rome, 1988.[3] J. G. Daugman. Uncertainty relation for resolution in space, spatial-frequency, and ori-entation optimized by two-dimensional visual cortical _lters. J. Opt. Soc. Am., 2:1160{1169, 1985.[4] L. Hong, A. K. Jain, S. Pankanti, and R. Bolle. Fingerprint enhancement. In Proc. 1stIEEE WACV, pages 202{207, Sarasota, FL, 1996.[5] D. C. Huang. Enhancement and feature puri_cation of _ngerprint images. PatternRecognition, 26(11):1661{1671, 1993.[6] A. Jain, L. Hong, and R. Bolle. On-line _ngerprint veri_cation. IEEE Trans. PatternAnal. and Machine Intell., 19(4):302{314, 1997.

18

Page 19: Fingerprint Recognition(Main Submission)

[7] A. K. Jain and F. Farrokhnia. Unsupervised texture segmentation using Gabor _lters.Pattern Recognition, 24(12):1167{1186, 1991.

19