【正文】
、伸縮變換,可以把兩個點集中的對應(yīng)點匹配起來。 點模式匹配 [20]將注冊指紋和待識指紋的特征點定義為兩個點集和 P 和 Q 通過平移和旋轉(zhuǎn)使得兩個點集重合點數(shù)最多。目前的指紋識別系統(tǒng)主要采用基于節(jié)點的匹配方法,即點模式匹配。很多情況下選用圖片的中心點。 (2)圖片 A 中有圖片 B 中不存在的點,集合 B 中也有圖片 A 中不存在的點,匹配的時候如何處理這些點。設(shè)計算法的時候,必須要有一定的容錯能力。 另外,計算匹配的時間即效率性也很重要。能獲得參考點表明從被識別圖像中獲得的任意比特流與登記圖像中獲得的比特流相近,則有可能得出兩圖像相同的結(jié)果;沒有參考點表明被識別圖像完全是另一不同圖像。 本論文中,首先采用了在原圖基礎(chǔ)上修改參數(shù)值來驗證的方法。在找到核心點后,比較它們相對距離的差異,對于滿足一定值的點視為可積點。當(dāng)它們個數(shù)滿足一定條件時即為匹配成功,不滿足視為不匹配。返回 1 說明匹配成功,返回 0 則匹配失敗。然后錄用需要辨別的指紋圖像,濾波增強去噪后,找到它們的中心點,依次與數(shù)據(jù)庫圖像進行二維 FFT 卷積,然后判斷出數(shù)據(jù)庫中哪幅圖片與錄用圖片最相似,并返回它們的差異長度值。為了驗證這種匹配方法的可用性,這里特地選取了 30 張圖片做指紋圖片數(shù)據(jù)庫,目標(biāo)圖片為數(shù)據(jù)庫某圖片稍加修改后的圖片。以下為部分?jǐn)?shù)據(jù)庫圖片: 圖 51 數(shù)據(jù)庫中其中 6 張圖 指紋識別中若干關(guān)鍵問題研究 18 圖 a 庫中第 13 號原圖 圖 b 庫中第 13 號修改圖 圖 52 數(shù)據(jù)庫中理想會配對的圖 圖 53 指紋匹配程序模塊 圖 54 指紋匹配結(jié)果 以上結(jié)果論證了該指紋匹配的實用性。 這兩種方法都很好地解決了 找到基準(zhǔn)點,容錯性和相似度的問題。第一種方法的點判斷條件本身就是一個人為的容錯估計值,很小的出錯不會影響最終的匹配結(jié)果;第二種方法中的卷積值也存在一定限定值,具有容錯性。方法一處理信息少,雖然要一定的預(yù)處理,但快捷高效,出錯小,適合一對一匹配。 指紋識別中若干關(guān)鍵問題研究 20 第 6章 總結(jié)和展望 作為一種可靠的生物識別技術(shù),指紋識別技術(shù)受到了廣泛關(guān)注,開發(fā)高效可靠的指紋圖像識別算法不但具有重要的理論意義,而且具有很高的實用價值。主要研究內(nèi)容如下: ( 1)綜合分析了指紋分割目前主流的三種趨勢,選擇了基于區(qū)域特征的均值方差法并用 matlab 語言來對指紋圖像進行分割。 ( 2)對分割好的圖像進行了二值化處理,使得細(xì)化的信息量大大減少。 ( 3)對細(xì)化后的圖像進行特征提取,其中分叉點和端點視為特征點,小橋、邊界、毛刺視為偽特征點,對他們進行加以區(qū)分和提取以進行匹配。此外,還介紹了一種濾波卷積的 FFT 卷積匹配,適合檢索匹配。如何有效的對指紋圖像的分割細(xì)化的不足之處進行彌補,對 匹配算法 改進 效率 以及將指紋 識別技術(shù)與在實踐中結(jié)合起來應(yīng)該是今后開展工作的方向。 在論文完成 前后 ,我的心情 波動較大 。 在這個寫作過程中 ,才發(fā)現(xiàn)要感謝的人真的很多 。我 在選題及研究過程中 , 得到 周老師的悉心指導(dǎo)。對 論文中出現(xiàn)的許多問題及時當(dāng)面溝通,悉心地指導(dǎo)我在論文 問題的解決思路 ,經(jīng)過反復(fù)修改,論文終于得以定稿。 四 年寒窗,所收獲的不僅僅是愈加豐厚的知識,更重要的是在閱讀、實踐中所培養(yǎng)的思維方式、表達(dá)能力和廣闊視野。在此,衷心的感謝他們。 感謝對我論文進行評審的各位 老師 ,感謝對論文的指導(dǎo)和提出的寶貴意見 。 最后, 再次 感謝所有關(guān)心我、幫助過我的老師、同學(xué) 、 朋友 和親人。 浙江理工大學(xué)信息電子學(xué)院本科畢業(yè)論文 (設(shè)計 ) 23 附錄 主掃描程序 clc clear all close all originI=imread(39。)。 I=originI。 end I=double(I)。var=0。 end end M1=M/(m*n)。 end end var1=var/(m*n)。 for x=1:m for y=1:n if I(x,y)=M1 I(x,y)=150+sqrt(100*(I(x,y)M1)*(I(x,y)M1)/var1)。 end end end figure, imshow(uint8(I)) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 分割 M = 10。 L= n/M。 指紋識別中若干關(guān)鍵問題研究 24 var1=zeros(H,L)。 for y=1:L。var=0。 for j=1:M。 end end aveg1(x,y)=aveg/(M*M)。 for j=1:M。 end end var1(x,y)=var/(M*M)。Vmean=0。 Vmean=Vmean+var1(x,y)。 Vmean1=Vmean/(H*L)。gtotle=0。vtemp=0。 gtotle=gtotle+aveg1(x,y)。 vtotle=vtotle+var1(x,y)。V1=vtotle/vtemp。gtotle1=0。vtemp1=0。 gtotle1=gtotle1+aveg1(x,y)。 vtotle1=vtotle1+var1(x,y)。V2=vtotle1/vtemp1。 T1=G2。 T3=G1100。 for x=1:H for y=1:L if aveg1(x,y)T1 amp。 var1(x,y)T2 moban(x,y)=1。amp。 end end end for x=2:H1 for y=2:L1 if moban(x,y)==1 if moban(x1,y) + moban(x1,y+1) +moban(x,y+1) + moban(x+1,y+1) + moban(x+1,y) + moban(x+1,y1) + moban(x,y1) + moban(x1,y1) =4 moban(x,y)=0。 for x=1:H for y=1:L if moban(x,y)==1 for i=1:M for j=1:M I(i+(x1)*M,j+(y1)*M)=G1。 end end end end end figure, imshow(uint8(I)) %%%%%%%%%%%%%%%%%%%%%%二值化 temp=(1/9)*[1 1 1。1 1 1]。 In=zeros(m,n)。 for b=2:n1。 end end I=In。 for x=5:m5。 sum1=I(x,y4)+I(x,y2)+I(x,y+2)+I(x,y+4)。 sum3=I(x2,y+2)+I(x4,y+4)+I(x+2,y2)+I(x+4,y4)。 sum5=I(x2,y)+I(x4,y)+I(x+2,y)+I(x+4,y)。 sum7=I(x4,y4)+I(x2,y2)+I(x+2,y+2)+I(x+4,y+4)。 sumi=[sum1,sum2,sum3,sum4,sum5,sum6,sum7,sum8]。 summin=min(sumi)。 浙江理工大學(xué)信息電子學(xué)院本科畢業(yè)論文 (設(shè)計 ) 27 b=summ/8。 else sumf = summax。 else Im(x,y)=255。 end end for i=1:m for j =1:n if (Icc(i,j)==128) Icc(i,j)=0。 end。 In=Im。 end 指紋識別中若干關(guān)鍵問題研究 28 end if Im(i,j)==0 if Im(i1,j) + Im(i1,j+1) +Im(i,j+1) + Im(i+1,j+1) + Im(i+1,j) + Im(i+1,j1) + Im(i,j1) + Im(i1,j1) =7 In(i,j)=1。 end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %細(xì)化 figure,imshow(In)。 figure,imshow(I)。 Im=I。 for i=2:m1 for j=2:n1 if Im(i,j)==1 a = 0。 end if Im(i1,j+1) ~= Im(i,j+1) a = a + 1。 end if Im(i+1,j+1) ~= Im(i+1,j) a = a + 1。 end if Im(i+1,j1) ~= Im(i,j1) a = a + 1。 浙江理工大學(xué)信息電子學(xué)院本科畢業(yè)論文 (設(shè)計 ) 29 end if Im(i1,j1) ~= Im(i1,j) a = a + 1。 tezheng(i,j,2)=j。 xxx=xxx+1。 I(i1,j)=1。I(i,j+1)=1。I(i+1,j)=1。I(i,j1)=1。 %%%%%%%%%%%%%%1 表示分叉點 0 表示端點 end if a==2 %%%% 端點判斷 tezheng(i,j,1)=i。 tezheng(i,j,3)=2。 I(i,j)=0。I(i1,j+1)=1。I(i+1,j+1)=1。I(i+1,j1)=1。I(i1,j1)=1。 for i=1:m %%%%%%%%%%%%%%%%%%%%%%%%去除邊界點 for j=1:n if tezheng(i,j,3)~=0 if i170||i+17m|| j170||j+17n tezheng(i,j,3)=0。 %%%消除端點 Izz(i1,j)=0。Izz(i,j+1)=0。Izz(i+1,j)=0。Izz(i,j1)=0。 else a=0。c=0。 a=I(i+1,j)+I(i+2,j)+I(i+3,j)+I(i+4,j)+I(i+5,j)+I(i+6,j)+I(i+7,j)+I(i+8,j)+I(i+9,j)+I(i+10,j)+I(i+11,j)+I(i+12,j)。 c=I(i,j+1)+I(i,j+2)+I(i,j+3)+I(i,j+4)+I(i,j+5)+I(i,j+6)+I(i,j+7)+I(i,j+8)+I(i,j+9)+I(i,j+10)+I(i,j+11)+I(i,j+12)。 if ( a=1 amp。 b=1 amp。 c=1 amp。 d=1) tezheng(i,j,3)=0。 Izz(i1,j)=0。Izz(i,j+1)=0。Izz(i+1,j)=0