蔡 凡
(閩南理工學(xué)院, 福建 泉州 362700)
近年來,指紋識(shí)別技術(shù)逐漸發(fā)展成熟,并得到廣泛應(yīng)用,如用于日常生活中的智能支付、手機(jī)解鎖、程序安裝確認(rèn)等[1]。但是,在享受其方便性的同時(shí),防止信息泄露、保障信息識(shí)別安全等問題也需引起更多關(guān)注[2]。本次研究將針對(duì)指紋細(xì)節(jié)特征點(diǎn)進(jìn)行提取,并進(jìn)行算法匹配。
指紋特征的提取和匹配是指紋識(shí)別系統(tǒng)的關(guān)鍵環(huán)節(jié)[3],其算法直接影響指紋識(shí)別的性能、速度和效率。指紋特征提取,是指針對(duì)指紋細(xì)節(jié)特征點(diǎn)信息進(jìn)行提取[4]。圖1所示為美國(guó)聯(lián)邦調(diào)查局提出的兩類指紋特征點(diǎn)模型,即紋線末梢點(diǎn)和紋線分叉點(diǎn)[5]。這兩類特征點(diǎn)對(duì)指紋的描述具有唯一性。
圖1 指紋特征點(diǎn)模型
通過搜索指紋圖像上的特征點(diǎn),將指紋圖像轉(zhuǎn)化為由若干末梢點(diǎn)和分叉點(diǎn)組成的點(diǎn)集,指紋提取和匹配問題也相應(yīng)地轉(zhuǎn)化為尋找點(diǎn)集間相似度(即點(diǎn)集匹配)的問題。記錄每一處細(xì)節(jié)點(diǎn)的相關(guān)信息,主要包括:(1) 指紋細(xì)節(jié)點(diǎn)坐標(biāo)和方向;(2) 所在紋線的切線方向角;(3) 細(xì)節(jié)點(diǎn)的類型。對(duì)于質(zhì)量較好的指紋圖像,通常能從中提取出40~100個(gè)細(xì)節(jié)點(diǎn)。通過細(xì)節(jié)點(diǎn)的表示,將指紋匹配問題轉(zhuǎn)化成為平面點(diǎn)模式匹配問題[6]。但照此方法處理低質(zhì)量或低分辨率指紋圖像時(shí),會(huì)產(chǎn)生一些偽特征點(diǎn)或丟失掉一些特征點(diǎn)信息。
為了得到指紋細(xì)化圖像,須先對(duì)獲取的指紋圖像進(jìn)行預(yù)處理,這一步是進(jìn)行指紋特征提取和匹配的關(guān)鍵環(huán)節(jié)。首先,對(duì)指紋圖像進(jìn)行灰度化處理得到黑白的標(biāo)準(zhǔn)化圖像;然后,基于Gabor濾波的指紋圖像增強(qiáng)技術(shù),進(jìn)行帶阻濾波二值化處理,并再次細(xì)化;最后,對(duì)細(xì)化后指紋圖像中的斷點(diǎn)指紋進(jìn)行去毛刺處理,即可得到細(xì)化的指紋圖像(見圖2),并從中提取出細(xì)節(jié)點(diǎn)(脊終、結(jié)點(diǎn)和脊分叉點(diǎn))。目前,在處理指紋細(xì)化方面,存在細(xì)化不夠完全、中心線偏離骨架、執(zhí)行速度降低等問題[7]。
圖像細(xì)化應(yīng)滿足以下要求:
(1) 保證指紋圖像上原本指紋紋路的連通性和斷點(diǎn)的完備性。
(2) 不改變指紋紋路。
(3) 刪除無關(guān)邊緣像素,使紋線僅保持一個(gè)像素的寬度,并將指紋圖像轉(zhuǎn)化為單像素連通圖。
圖2 指紋細(xì)化圖
指紋特征提取,是指從一幅含有大量信息的指紋圖像中,獲得一些有區(qū)別能力、穩(wěn)定且能表現(xiàn)出不同指紋差異的特征點(diǎn)。如果對(duì)指紋圖像的大量數(shù)據(jù)都進(jìn)行匹配,將會(huì)加大匹配耗時(shí),這顯然不現(xiàn)實(shí)。因此,只需從指紋圖像中獲取具有辨識(shí)度的特征信息,就有利于完成指紋的高效匹配。如圖3所示,指紋特征的提取流程如下:
(1) 獲取指紋灰度圖像。直接從該灰度圖像中提取紋線并進(jìn)行跟蹤。此方法雖節(jié)省時(shí)間,但算法過于復(fù)雜,且指特征的位置及方向也不準(zhǔn)確,存在很多噪聲影響。
(2) 從指紋灰度圖像中獲取指紋方向圖,包括方向場(chǎng)和頻率場(chǎng),以反映指紋圖像的紋理結(jié)構(gòu)。但有時(shí)候會(huì)因噪聲、裂紋、濕度等因素影響,導(dǎo)致指紋局部紋理不穩(wěn)定、分辨率低。因此,需對(duì)指紋圖像進(jìn)行濾波以增強(qiáng)圖像。
(3) 在增強(qiáng)圖像中,通過二值化操作和追蹤脊線獲得指紋二值圖,以滿足增強(qiáng)效果的實(shí)際需求。
(4) 從二值圖中提取獲得末梢點(diǎn)和分叉點(diǎn),作為待匹配的細(xì)節(jié)點(diǎn)。
圖3 指紋特征提取流程圖
在此,介紹一種細(xì)節(jié)點(diǎn)8鄰域模板特征提取算法。在指紋細(xì)化圖中脊線為單像素寬,在指紋細(xì)化圖中構(gòu)建像素3×3的模版,以每個(gè)值為1的像素點(diǎn)為中心形成3×3的窗口。按此模板特征來找出所有的正常脊線點(diǎn)、分叉點(diǎn)和端點(diǎn)周圍的鄰域結(jié)構(gòu)(見圖4)。
圖4 細(xì)節(jié)點(diǎn)8鄰域特征模板
根據(jù)上述特點(diǎn),在建立的特征模版中求得灰度值順序變化次數(shù)Cn(P),以此判斷中心像素點(diǎn)類型。判斷公式為:
(1)
(2 )
式中:P為待測(cè)像素點(diǎn);i為像素點(diǎn)個(gè)數(shù);Pi為P的鄰域;Sn(P)為8鄰域像素中為1的像素個(gè)數(shù);Cn(P)為這8個(gè)鄰域像素的相鄰像素的灰度值從0變?yōu)?,或者從1變?yōu)?的次數(shù)。
對(duì)于背脊上的像素,可根據(jù)Cn(P)和Sn(P)確定待測(cè)P像素的狀態(tài)。分析發(fā)現(xiàn),Cn(P)和Sn(P)的數(shù)值只有以下3種情況:
(1)P點(diǎn)為脊線上的一個(gè)點(diǎn),且Cn(P)=2,Sn(P)=1,則P為末梢點(diǎn)。
(2)P點(diǎn)為脊線上的一個(gè)點(diǎn),且Cn(P)=6,Sn(P)=3,則P為分叉點(diǎn)。
(3)P點(diǎn)為脊線上的一個(gè)點(diǎn),且Cn(P)=4,Sn(P)為2、3或者4,則P為脊線上的連續(xù)點(diǎn),即P不是特征點(diǎn)。
當(dāng)找到一個(gè)脊線連續(xù)點(diǎn)之后,將該點(diǎn)像素值標(biāo)記為0,并自該點(diǎn)開始,按從下到上、從左到右的順序繼續(xù)在其鄰域內(nèi)尋找脊線連續(xù)點(diǎn),直至碰到分叉點(diǎn)或終結(jié)點(diǎn)時(shí)停止,然后開始下一次掃描搜索。掃描完整幅圖像后,即可獲得到指紋全部的脊線點(diǎn)。細(xì)節(jié)點(diǎn)脊線追蹤過程如圖5所示。
圖5 細(xì)節(jié)點(diǎn)脊線追蹤過程
通過以上指紋特征提取算法,分別記錄末梢點(diǎn)和分叉點(diǎn),將偽特征點(diǎn)去除,從而提取出匹配過程中所需要的特征點(diǎn)。其中判斷末梢點(diǎn)和分叉點(diǎn)的描述語句如下:
if a==6 %分叉點(diǎn)判斷
tezheng(i,j,1)=i;
tezheng(i,j,2)=j;
tezheng(i,j,3)=1;
xxx=xxx+1;
I(i,j)=0;
I(i-1,j)=1;I(i-1,j+1)=1;I(i,j+1)=1;I(i+1,j+1)=1;
I(i+1,j)=1;I(i+1,j-1)=1;I(i,j-1)=1;I(i-1,j-1)=1; %1表示分叉點(diǎn) 0表示端點(diǎn)
end
if a==2 %末梢點(diǎn)判斷
tezheng(i,j,1)=i;
tezheng(i,j,2)=j;
tezheng(i,j,3)=2;
xxx=xxx+1;
I(i,j)=0;
I(i-1,j)=1;I(i-1,j+1)=1;I(i,j+1)=1;I(i+1,j+1)=1;
I(i+1,j)=1;I(i+1,j-1)=1;I(i,-1)=1;I(i-1,j-1)=1;
end
figure,imshow(I)
title(‘指紋特征提取’)
指紋匹配是確定指紋之間相似程度的過程,其目的是為了判斷兩幅指紋是否來自于相同或不同的手指,即真匹配和假匹配[9]。在自動(dòng)指紋識(shí)別系統(tǒng)中,匹配方法有模板匹配、圖像相關(guān)性匹配、細(xì)節(jié)點(diǎn)匹配和紋線匹配。在匹配的過程中,需建立輸入指紋特征與模板指紋特征之間相對(duì)應(yīng)的關(guān)系,而衡量?jī)煞讣y圖像相似或?qū)?yīng)的程度取決于提取特征計(jì)算出的兩者相似度匹配分?jǐn)?shù),即在重合面積范圍內(nèi)找到細(xì)節(jié)點(diǎn)數(shù)目設(shè)定的閾值。如果兩者的匹配分?jǐn)?shù)大于系統(tǒng)預(yù)置的閾值,則匹配;如果匹配分?jǐn)?shù)小于系統(tǒng)預(yù)置的閾值,則不匹配。
如圖6所示,通過細(xì)節(jié)點(diǎn)坐標(biāo)、方向及其鄰域內(nèi)采樣點(diǎn)的特征信息,尋找特征點(diǎn)集間的最優(yōu)匹配細(xì)節(jié)點(diǎn)對(duì)。以該點(diǎn)對(duì)為基準(zhǔn)點(diǎn),對(duì)其余點(diǎn)進(jìn)行剛性變換,根據(jù)變換后細(xì)節(jié)點(diǎn)的相對(duì)位置建立模板指紋和輸入指紋的全部細(xì)節(jié)點(diǎn)對(duì)應(yīng)關(guān)系,進(jìn)而得到兩幅指紋的匹配相似度。
圖6 兩幅指紋細(xì)節(jié)點(diǎn)對(duì)應(yīng)關(guān)系圖
(3)
(4)
即兩個(gè)細(xì)節(jié)點(diǎn)的位置間距和角度差異都在設(shè)定閾值的范圍內(nèi),則可將ai、bi作為配對(duì)的細(xì)節(jié)點(diǎn)。式中:r0和θ0為預(yù)先設(shè)定的閾值;|·|d為兩點(diǎn)的歐氏距離;|·|a為兩點(diǎn)的角度距離。最后,根據(jù)匹配的細(xì)節(jié)點(diǎn)對(duì),設(shè)計(jì)并計(jì)算一個(gè)相似度分?jǐn)?shù)來代表兩幅指紋圖像的匹配結(jié)果。
這種方法也適用于局部搜索指紋的特征匹配。當(dāng)全局層面匹配判斷困難或者指紋分辨率低時(shí),可以利用局部細(xì)節(jié)點(diǎn)結(jié)構(gòu)對(duì)兩幅指紋圖像進(jìn)行粗對(duì)準(zhǔn),進(jìn)而在全局層面完成整幅圖像的匹配。
選用FVC2000指紋庫中的85幅圖像(共含有285對(duì)相同指紋,2 750對(duì)不同指紋)作為特征提取實(shí)驗(yàn)測(cè)試對(duì)象。實(shí)驗(yàn)中,分別采用一般方法和利用脊線跟蹤去除偽細(xì)節(jié)特征點(diǎn)法(簡(jiǎn)稱去偽法)進(jìn)行性能對(duì)比。一般方法是指在細(xì)化后的指紋圖像上直接進(jìn)行細(xì)節(jié)特征的提取。
定義特征提取評(píng)價(jià)性能指標(biāo) —— 準(zhǔn)確率(η):
(5)
實(shí)驗(yàn)結(jié)果顯示,采用脊線跟蹤去除偽細(xì)節(jié)特征點(diǎn)的方法平均處理時(shí)間為0.15 s。與一般方法相比,其效率明顯,提高了70%,其中檢測(cè)特征點(diǎn)數(shù)減少了7個(gè)。這是由于從追蹤脊線二值圖中提取獲得末梢點(diǎn)和分叉點(diǎn),刪除了部分無關(guān)特征點(diǎn)信息,提高了指紋特征點(diǎn)的辨識(shí)度,再經(jīng)去除偽特征點(diǎn),丟失的特征點(diǎn)有所減少。準(zhǔn)確率達(dá)到了90.80%,明顯高于一般方法(見表1)。
本次匹配測(cè)試采用細(xì)節(jié)點(diǎn)的位置信息和方向信息,計(jì)算指紋中所有細(xì)節(jié)點(diǎn)算子間的相似度,分析匹配結(jié)果,通過誤識(shí)率(FAR)、拒識(shí)率(FRR)、正確率(CR)這3個(gè)指標(biāo)來衡量該匹配算法的達(dá)標(biāo)度。3個(gè)指標(biāo)相加的總和為1,其中誤識(shí)率為錯(cuò)誤拒絕次數(shù)占類內(nèi)測(cè)試總次數(shù)的比例,拒識(shí)率為錯(cuò)誤接受次數(shù)占類間測(cè)試總次數(shù)的比例。類內(nèi)測(cè)試的總次數(shù)為總的匹配成功次數(shù),類間測(cè)試的總次數(shù)為總的匹配失敗次數(shù)。
表1 特征提取實(shí)驗(yàn)測(cè)試統(tǒng)計(jì)結(jié)果
在上述去偽法提取指紋細(xì)節(jié)特征點(diǎn)實(shí)驗(yàn)的基礎(chǔ)上,對(duì)80幅指紋圖像進(jìn)行了6 320次匹配測(cè)試。如表2所示,實(shí)驗(yàn)一采用相鄰特征點(diǎn)局部結(jié)果匹配方法,實(shí)驗(yàn)二為本次采用的細(xì)節(jié)點(diǎn)位置信息和方向信息。根據(jù)細(xì)節(jié)點(diǎn)局部特征建立細(xì)節(jié)點(diǎn)結(jié)構(gòu)算子,用中心細(xì)節(jié)點(diǎn)所對(duì)應(yīng)算子間的相似度代表匹配結(jié)果,用局部細(xì)節(jié)點(diǎn)結(jié)構(gòu)進(jìn)而在全局層面完成整幅圖像的匹配。
表2 指紋匹配測(cè)試結(jié)果
當(dāng)測(cè)試總數(shù)達(dá)到一定數(shù)量時(shí),拒識(shí)率和誤識(shí)率均有所變化。在匹配測(cè)試條件相同的情況下,本次研究采用的方法(實(shí)驗(yàn)二)正確率與采用相鄰特征點(diǎn)局部結(jié)果匹配方法相比,正確率提高了0.5%,匹配算法達(dá)到了匹配指標(biāo)的要求。
利用脊線跟蹤去除偽細(xì)節(jié)特征點(diǎn),并對(duì)該細(xì)節(jié)點(diǎn)特征進(jìn)行位置和方向信息分析,建立配對(duì)關(guān)系,計(jì)算對(duì)比其相似度,據(jù)此得到匹配結(jié)果。按此方法提取指紋特征,其優(yōu)點(diǎn)是便于提取、易于存儲(chǔ),可以將提取的坐標(biāo)信息和角度信息儲(chǔ)存起來,當(dāng)需要再次匹配時(shí)直接調(diào)用即可。匹配算法速度快,只需對(duì)比點(diǎn)對(duì)的位置信息,就可以實(shí)現(xiàn)快速匹配。對(duì)指紋識(shí)別系統(tǒng)的算法進(jìn)行了改進(jìn),使得指紋識(shí)別的可靠性大大增強(qiáng)。