fingerprintrecognition
所属分类:模式识别(视觉/语音等)
开发工具:matlab
文件大小:7054KB
下载次数:294
上传日期:2009-02-12 04:58:16
上 传 者:
canhelp2001
说明: 指纹识别的一个应用实例.利用database来存储指纹的特征值与输入的指纹特征值比较找出近似的.
(The basic idea is to combine both global and local information of fingerprint. Given a threshold to detect the given fingerprint with the fingerprint in database)
文件列表:
myfinger\addtodatabase.m (2906, 2004-11-29)
myfinger\crop.m (1093, 2004-11-27)
myfinger\feature_extract.m (1629, 2004-11-27)
myfinger\Findcenter.m (2000, 2004-11-29)
myfinger\fingerprint.m (7807, 2004-12-06)
myfinger\fp_database.dat (226384, 2004-12-02)
myfinger\gaborfft.m (892, 2004-12-01)
myfinger\gabor_filter.m (812, 2004-11-27)
myfinger\matching.m (5485, 2004-11-29)
myfinger\normalize.m (1729, 2004-11-27)
myfinger\pic\10_1.bmp (196664, 2002-02-20)
myfinger\pic\10_2.bmp (196664, 2002-02-20)
myfinger\pic\10_3.bmp (196664, 2002-02-20)
myfinger\pic\10_4.bmp (196664, 2002-02-20)
myfinger\pic\10_5.bmp (196664, 2002-02-20)
myfinger\pic\10_6.bmp (196664, 2002-02-20)
myfinger\pic\10_7.bmp (196664, 2002-02-20)
myfinger\pic\10_8.bmp (196664, 2002-02-20)
myfinger\pic\11_1.bmp (196664, 2002-02-20)
myfinger\pic\11_2.bmp (196664, 2002-02-20)
myfinger\pic\11_3.bmp (196664, 2002-02-20)
myfinger\pic\11_4.bmp (196664, 2002-02-20)
myfinger\pic\11_5.bmp (196664, 2002-02-20)
myfinger\pic\11_6.bmp (196664, 2002-02-20)
myfinger\pic\11_7.bmp (196664, 2002-02-20)
myfinger\pic\11_8.bmp (196664, 2002-02-20)
myfinger\pic\12_1.bmp (196664, 2002-02-20)
myfinger\pic\12_2.bmp (196664, 2002-02-20)
myfinger\pic\12_3.bmp (196664, 2002-02-20)
myfinger\pic\12_4.bmp (196664, 2002-02-20)
myfinger\pic\12_5.bmp (196664, 2002-02-20)
myfinger\pic\12_6.bmp (196664, 2002-02-20)
myfinger\pic\12_7.bmp (196664, 2002-02-20)
myfinger\pic\12_8.bmp (196664, 2002-02-20)
myfinger\pic\13_1.bmp (196664, 2002-02-20)
myfinger\pic\13_2.bmp (196664, 2002-02-20)
myfinger\pic\13_3.bmp (196664, 2002-02-20)
myfinger\pic\13_4.bmp (196664, 2002-02-20)
myfinger\pic\13_5.bmp (196664, 2002-02-20)
myfinger\pic\13_6.bmp (196664, 2002-02-20)
... ...
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Project Name:Filterbank-Based Fingerprint Matching %
% %
% Programmer: Ming Zhang %
% User Number: 3716 %
% Email: Mingzhang@cc.usu.edu %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Running step: Run fingerprint.m. Load fingerprint image in '.../pic/' directory.
% The input fingerprint will show on the left part of windows. Find center
% of this fingerprint by mouse. Click 'Add to Batabase' button to add this
% fingerprint to database(fp_database.dat). If this pic is already exist in
% the database, you will get instruction from instruction box. You can also
% click 'Matching' button to do the matching, If there is a matching in
% database, the matching fingerprint will display on the right part of the windows.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% The processing step is following:
%%%%%
% 1.Add fingerprint feature into database
% Input Image (Findcenter.m) ---> preprocessing (convert input image into
% 256 gray-level, Findcenter.m) ---> Find the Center by mouse(Findcenter.m)
% ---> Crop (Crop.m) ---> Sectorization ( sectorization.m) --->
% Normalize ( normalize.m) ---> Build 8-directions gabor filter (gabor.m)
% ---> Apply gabor filter on frequency domain (gaborfft.m) ---> Get
% Feature vector of variances (feature_extract.m) ---> save feature
% vector into database (addtodatabase.m)
%%%%%
% 2.Give an input fingerprint, find matching fingerprint in database
% Input Image (Findcenter.m) ---> preprocessing (convert input image into
% 256 gray-level, Findcenter.m) ---> Find the Center by mouse(Findcenter.m)
% ---> Crop (Crop.m) ---> Sectorization ( sectorization.m) --->
% Normalize ( normalize.m) ---> Build 8-directions gabor filter (gabor.m)
% ---> Apply gabor filter on frequency domain (gaborfft.m) ---> Get
% Feature vector of variances (feature_extract.m) ---> Calculate
% Euclidean distance between input feature vector with featurn vector
% in database (matching.m) ---> Match or Reject (threshold is 710)
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% There are two main improvements I made (different with paper)
%%%%%
% 1.Apply Gabor filter on frequency domain insteal of spatial domain.
% The paper apply Gabor filter on spatial domain, it is very slow.
% Although the author take some skill to speed up it, it is still slow.
% Because it will use Gabor filter 16 times for one fingerprint. We can
% improve the speed a lot if we can speed up the Gabor filterization
%%%%%
% 2.For every fingerprint, I just save two templates in my database.
% The paper save 10 templates because the input fingerprint maybe rotate
% a certain angle. But I just save two templates in my database. When we
% do the matching, we can rotate the templates in 5 angles. So the size
% of my database is only 1/5 of the paper's.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% This software made two changes on my origianl proposal.
%%%%%
% 1.Dr.Qi suggest me that the center finding part is so complex. So I jump
% it. I will use mouse to select the center of the fingerprint
%%%%%
% 2.In my proposal, I suggest to use 2-D Gaussian lowpass Wiener filter to
% the fingerprint. But I found that it does not improve the result. Because
% the Gabor filter and normalization can remove the noise. So I change this
% step to preprocessing. Because we request the input fingerprint image
% should be 256 gray-level. We need convert the input image into 256
% gray-level in this step.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% The name of database is fp_database.dat. It includes 3 fields.
% One is fp_number (index of the data), one is img_name (file name of the
% fingerprint), one is data (two templates of FingerCode)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Running time:
% 1.Add a fingerprint to a database need around 2 second
% 2.Matching fingerprint in database need around 4 second (will increase with
% the number of fingers in database)
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% My result compare with the paper:
%%%%%
% I use 14 fingerprints and each one I scan 8 times (total is 14*8=112) to test my software.
% I find that when my threhold= 715, paper's threshold= 40,
% my False Acceptance Rate is better than paper (mine is 2%, papers is 4.59%).
% My False Reject Rate is a higher than paper's (mine is 5%, paper is
% 2.83%). If the input fingerprint is at the center of image, my result can
% improve a lot (can improve to 3% for False Reject Rate). So my result is better than
%paper's (combine False Acceptance Rate and False Reject Rate).
近期下载者:
相关文件:
收藏者: