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).

近期下载者

相关文件


收藏者