王敏 楊永躍 洪占勇
摘要: 該文利用專門(mén)的指紋采集設(shè)備獲取指紋基本圖像,基于MATLAB 對(duì)指紋圖像進(jìn)行預(yù)處理,包括圖像增強(qiáng)、圖像二值化、分割和歸一化。對(duì)指紋特征提取指紋類型、坐標(biāo)和方向參數(shù)后,利用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練識(shí)別。識(shí)別實(shí)驗(yàn)效果明顯,識(shí)別率高。
關(guān)鍵詞: 指紋識(shí)別系統(tǒng);圖像預(yù)處理;特征提??;BP神經(jīng)網(wǎng)絡(luò)
中圖分類號(hào):TP18 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)10-2359-04
Abstract: In this paper, special fingerprint acquisition device is used to obtain the basic fingerprints, fingerprint preprocessing base on MATLAB , including fingerprint enhancement, binary the fingerprint, segment as well as normalization. Extracting fingerprint types, coordinates and direction parameters, then the BP nerve network is used to train and identify fingerprint. The result of recognition is obvious, it has high recognition rate.
Key words: Fingerprint identification system; Fingerprint preprocessing; Fingerprint feature extraction; BP nerve network
由于每個(gè)人指紋紋線的起點(diǎn)、終點(diǎn)、結(jié)合點(diǎn)和分叉點(diǎn)的不同,指紋具有唯一性、終身不變性、方便性,被當(dāng)作生物密碼應(yīng)用于生活中。隨著計(jì)算機(jī)相關(guān)技術(shù)的發(fā)展,傳統(tǒng)的證件驗(yàn)證身份存在證件偽造等問(wèn)題,它已經(jīng)給高速發(fā)展的社會(huì)帶來(lái)不便,而且指紋掃描速度快,同時(shí)增加了可靠性。所以,指紋識(shí)別技術(shù)應(yīng)用越來(lái)越廣泛,你可以在指紋門(mén)禁、考勤機(jī)、銀行柜員指紋身份認(rèn)證系統(tǒng)、指紋汽車行駛記錄儀、指紋電子印章等領(lǐng)域看到指紋識(shí)別系統(tǒng)的身影。隨著社會(huì)的發(fā)展,指紋識(shí)別將會(huì)應(yīng)用于各個(gè)領(lǐng)域。
1 指紋識(shí)別系統(tǒng)的構(gòu)成
指紋識(shí)別系統(tǒng)是典型的模式識(shí)別系統(tǒng),它包括指紋圖像采集,指紋圖像預(yù)處理,特征提取和比對(duì)。一般系統(tǒng)包括認(rèn)證系統(tǒng)和識(shí)別系統(tǒng)兩部分。該文首先采用指紋專用設(shè)備采集指紋圖像,MATLAB進(jìn)行圖像預(yù)處理,然后特征提取,接下來(lái)是BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練,最后用訓(xùn)練好的參數(shù)作為神經(jīng)網(wǎng)絡(luò)的輸入,對(duì)指紋樣本進(jìn)行識(shí)別和匹配,輸出識(shí)別結(jié)果。本系統(tǒng)主要包括以下五個(gè)部分組成,如下圖所示[[1]]:
圖像預(yù)處理是關(guān)鍵部分,目的是得到清晰的指紋圖像,方面后續(xù)的指紋識(shí)別。該文主要采用MATLAB軟件實(shí)現(xiàn)對(duì)指紋圖像預(yù)處理,只需將選好的圖像輸入到已經(jīng)完成的程序中即可。
1.1 指紋圖像的獲取
指紋圖像的獲取是通過(guò)一定的指紋采集設(shè)備采集樣本。該文采集指紋主要利用光學(xué)式,根據(jù)光的反射原理(FTIR)。光線照到壓有指紋的玻璃表面、反射光線有CCD相機(jī)獲取,光線經(jīng)玻璃射到谷的地方后在玻璃與空氣的界面發(fā)生全反射,光線被反射到CCD,射向脊的光線不發(fā)生全反射,而是被脊與玻璃的接觸面吸收或者漫反射到別的地方,這樣在CCD上形成了指紋的圖像。
1.2 指紋圖像的預(yù)處理
系統(tǒng)采集到的原始圖像由于未經(jīng)過(guò)處理,存在噪聲干擾,惡化了圖像質(zhì)量,給特征提取帶來(lái)不便,所以在圖像特征提取前要進(jìn)行圖像預(yù)處理。該文主要利用MATLAB編程實(shí)現(xiàn)指紋的一系列預(yù)處理[[2]]。MATLAB作為指紋圖像的仿真平臺(tái),既減小了仿真難度,又提高識(shí)別的準(zhǔn)確性。一般圖像預(yù)處理包括圖像增強(qiáng)、圖像分割細(xì)化、二值化、歸一化等。
① 圖像增強(qiáng)
圖像增強(qiáng)提高圖像的清晰程度,改善圖像質(zhì)量,增大處理前后圖像的對(duì)比度。該文采用的是中值濾波。將采集到的原圖像輸入到MATLAB中,如圖2所示。
對(duì)圖像的增強(qiáng)主要采用亮度變換函數(shù)imadjust,然后將0.5至0.75之間灰度級(jí)擴(kuò)展到[0,1]范圍之內(nèi),這種處理
突出的指紋脊線和谷線對(duì)比度。以下是對(duì)指紋原圖像的MATLAB編程,如圖3所示。
②指紋圖像分割
分割處理指紋是將指紋前景區(qū)域與背景區(qū)域分割出來(lái),分割后,系統(tǒng)會(huì)只對(duì)前景區(qū)域進(jìn)行處理,這樣可以減少預(yù)處理的復(fù)雜度。該文采用方差分割法的演變方法(即模塊分割法):
(a)首先選定一個(gè)門(mén)限閾值M(通常根據(jù)經(jīng)驗(yàn)選擇)。
(b)然后將高300,寬350的指紋圖像劃分為20×20塊,計(jì)算出每一塊的平均值N。
[N=1202x=x0x=x0-20y=y0y=y0-20fx0,y0] (1)
其中,[fx,y]為圖像中點(diǎn)的灰度值,[x0,y0]為小模塊的右上方的點(diǎn)。
(c)若均值N小于閾值M,則將該模塊選作前景區(qū)域,否則,為背景區(qū)域。然后用MATLAB實(shí)現(xiàn)上述算法。
③指紋圖像二值化
由于指紋識(shí)別是是對(duì)前景的處理,所以要對(duì)分割后的指紋圖像進(jìn)行二值化,二值化后的結(jié)果直接影響后續(xù)指紋的識(shí)別。圖5為二值化后的圖。
④歸一化
實(shí)際用指紋采集設(shè)備采集到的指紋,大小是不同的,如果對(duì)大小不同的指紋進(jìn)行識(shí)別,就必須修正圖像的尺寸,這就增加了識(shí)別的工作量。歸一化是必不可少的步驟,它分為兩種:外輪廓的歸一化和中心的歸一化。由于特征點(diǎn)基本集中在指紋中心,所以,該文主要采用中心歸一化。
1.3 特征值提取
從二值化和細(xì)化后的指紋圖像中提取細(xì)節(jié)特征點(diǎn),細(xì)節(jié)點(diǎn)有以下四個(gè)特征:類型[[1]]有(1)端點(diǎn)(2)分叉點(diǎn)(3)孤立點(diǎn)(4)環(huán)點(diǎn)(5)短紋;方向;曲率;位置。該文主要提取的是指紋坐標(biāo)和方向?;贛ATLAB特征提取,方便且準(zhǔn)確率高。端點(diǎn)和分叉點(diǎn)是指紋提取的主要特征。定義個(gè)八鄰域模型,以P點(diǎn)為交叉點(diǎn),相鄰點(diǎn)組成3×3模塊[[3]]。
提取方法如下:[mp]為交叉點(diǎn)數(shù),[np]為8鄰域紋線數(shù)
[mp=12i=18pi-pi-12],其中[p1=p9]
[np=i=18pi] (2)
當(dāng)[mp=1],[np=3]時(shí)為端點(diǎn);
當(dāng)[mp=3],[np=3]時(shí)為分叉點(diǎn)。得到一系列的特征點(diǎn)坐標(biāo)[pi=xi,yi,ti,θi],其中[xi,yi]為特征點(diǎn)的橫縱坐標(biāo),[ti]為特征點(diǎn)的類型,[θi]為特征點(diǎn)的角度。
1.4 指紋的分類
指紋的分類信息基本包含在中心部分和三角部分,根據(jù)指紋的三角點(diǎn)和中心點(diǎn)分類。根據(jù)指紋中心點(diǎn)下方的紋線走向分[[1]]:(1)左環(huán)型指紋;(2)右環(huán)型指紋;(3)漩渦型指紋;(4)拱形指紋。由于指紋的紋理性和方向性都很強(qiáng),求出其方向圖,方向圖描繪了指紋圖像中像素點(diǎn)所在的脊線在該點(diǎn)的切線方向。在指紋分類時(shí),必須考慮分類算法和分類器的設(shè)計(jì),傳統(tǒng)的分類器,如通信信號(hào)指紋識(shí)別分類器,主要缺點(diǎn)是識(shí)別率低、穩(wěn)健性差。該文采用神經(jīng)網(wǎng)絡(luò)分類器,它作為一種先進(jìn)的自適應(yīng)、非線性分類器,并且具有強(qiáng)大的模式識(shí)別分類和泛函逼近能力。實(shí)驗(yàn)時(shí)首先將指紋分成以上四類,存在指紋庫(kù)中,將指紋的四個(gè)類型作為輸入矢量,送人神經(jīng)網(wǎng)絡(luò),對(duì)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。實(shí)驗(yàn)證明,神經(jīng)網(wǎng)絡(luò)分類器能夠用分類算法正確地對(duì)指紋進(jìn)行分類,分類速度也較快,并達(dá)到一定的分類精度。但同樣此算法也存在一定的缺陷,就是對(duì)指紋圖像的質(zhì)量要求較高。
1.5 指紋的識(shí)別
指紋識(shí)別就是確定采集的指紋樣本的身份,若將指紋分類存庫(kù),會(huì)提高后序識(shí)別的效率,基于人工神經(jīng)網(wǎng)絡(luò)的指紋識(shí)別的應(yīng)用,減小了識(shí)別的復(fù)雜性。前面已經(jīng)將指紋分類,只需在同類中識(shí)別。
2 BP神經(jīng)網(wǎng)絡(luò)的指紋識(shí)別
2.1 BP神經(jīng)網(wǎng)絡(luò)的介紹
人工神經(jīng)網(wǎng)絡(luò)在當(dāng)前的指紋識(shí)別領(lǐng)域應(yīng)用最為廣泛,該文主要介紹反向傳播神經(jīng)網(wǎng)絡(luò)(BP神經(jīng)網(wǎng)絡(luò)),它通常由輸入層、若干隱含層和輸出層組成,BP神經(jīng)網(wǎng)絡(luò)是一種多層前饋網(wǎng)絡(luò),采用的誤差后向傳播學(xué)習(xí)算法,一般結(jié)構(gòu)包括輸入層,輸出層,隱層,每層又由多個(gè)節(jié)點(diǎn)組成,表示神經(jīng)元,同一層節(jié)點(diǎn)之間無(wú)耦合關(guān)系,輸入信息從輸入層傳遞至隱層,再由隱含層傳遞至輸出層,傳遞時(shí)是單向向前傳播的。通過(guò)輸入層、隱層、輸出層。這三層的劃分也把BP分成正向和反向,首先通過(guò)輸入層神經(jīng)元輸入至神經(jīng)網(wǎng)絡(luò)系統(tǒng)中,經(jīng)過(guò)隱含層神經(jīng)元處理,將結(jié)果傳輸至輸出層,當(dāng)樣本的輸出結(jié)果與預(yù)期結(jié)果存在較大差異時(shí),那么求出的實(shí)際輸出與預(yù)期輸出的誤差并反饋給隱層神經(jīng)元,重新調(diào)整并訓(xùn)練網(wǎng)絡(luò)的權(quán)值和參數(shù),不斷地?cái)M合,減小誤差,然后重新傳至輸出層,不斷反復(fù),直到滿足輸出條件為止。網(wǎng)絡(luò)結(jié)構(gòu)的設(shè)計(jì)是首要任務(wù),包括輸入、輸出神經(jīng)元個(gè)數(shù),隱層個(gè)數(shù)。
2.2 BP神經(jīng)網(wǎng)絡(luò)指紋識(shí)別技術(shù)
本文把指紋特征點(diǎn)選擇在指紋中心點(diǎn)周圍的區(qū)域,特征點(diǎn)記為[(x,y,α)],其中[x]和[y]分別是特征點(diǎn)的橫縱坐標(biāo),[α]是特征點(diǎn)的方向,它是特征點(diǎn)紋線的切線方向。在指紋的匹配過(guò)程中,存在旋轉(zhuǎn)、形變和平移的問(wèn)題。由于指紋圖像是呈放射狀的非線性形變,而且非線性是向外擴(kuò)張的,因而本文采取極坐標(biāo)系,它能很好的描述指紋的非線性形變。為了抵消平移和抗旋轉(zhuǎn)性,選取參照點(diǎn)(即中心點(diǎn)),轉(zhuǎn)化為極坐標(biāo)下的坐標(biāo),如下關(guān)系式:
[riθiαi=xi-x02+yi-y02arctanyi-y0xi-x0αi-α0] (3)
其中,[x0],[y0]為中心點(diǎn)的坐標(biāo),[α0]為中心點(diǎn)的方向,[xi],[yi]為指紋特征點(diǎn)的坐標(biāo),[αi]為指紋特征點(diǎn)的方向。
現(xiàn)將以上指紋分類得到的四種類型和指紋特征點(diǎn)的極坐標(biāo)作為神經(jīng)網(wǎng)絡(luò)識(shí)別的特征值輸入,它們分別是:細(xì)節(jié)特征點(diǎn)與參考點(diǎn)的距離,參考點(diǎn)與特征點(diǎn)之間的夾角,特征點(diǎn)的方向與參考點(diǎn)方向的差值。此訓(xùn)練得到的四個(gè)參數(shù)可以較準(zhǔn)確的識(shí)別指紋。
3 實(shí)驗(yàn)結(jié)果和結(jié)論
將分類后四個(gè)數(shù)據(jù)庫(kù)中100個(gè)指紋圖像分成兩部分,一部分作為測(cè)試,一部分作為訓(xùn)練。提取指紋特征點(diǎn),以特征點(diǎn)的橫坐標(biāo)[x],縱坐標(biāo)[y],方向場(chǎng)作為參數(shù),對(duì)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,步驟如下:
① 提取指紋特征點(diǎn),求出特征點(diǎn)個(gè)數(shù);
② 提取到的特征點(diǎn)經(jīng)極坐標(biāo)轉(zhuǎn)換后[Q=Q1γ1,θ1,α1....Qnγn,θn,αn]將指紋所屬個(gè)體作為神經(jīng)網(wǎng)絡(luò)的輸出,選擇四個(gè)輸入節(jié)點(diǎn)(指紋類型,細(xì)節(jié)特征點(diǎn)與參考點(diǎn)的距離,參考點(diǎn)與特征點(diǎn)之間的夾角,特征點(diǎn)的方向與參考點(diǎn)方向的差值),按照隱含層神經(jīng)元的選取公式,選擇隱含層神經(jīng)元個(gè)數(shù)3;
③ 得到訓(xùn)練完成的BP神經(jīng)網(wǎng)絡(luò),輸入分類器得到識(shí)別結(jié)果。
實(shí)驗(yàn)時(shí),對(duì)指紋提取10個(gè)特征點(diǎn),每個(gè)特征點(diǎn)包括四個(gè)數(shù)據(jù),下圖是對(duì)其中一個(gè)指紋提取特征值。
將特征值坐標(biāo),方向,指紋類型作為神經(jīng)網(wǎng)絡(luò)的輸入,對(duì)四個(gè)庫(kù)中的指紋進(jìn)行訓(xùn)練識(shí)別,得到識(shí)別結(jié)果統(tǒng)計(jì)表如下表所示。
通過(guò)實(shí)驗(yàn)結(jié)果可以看出,該文對(duì)指紋特征點(diǎn)進(jìn)行神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,基本能將不同類型的指紋進(jìn)行識(shí)別,而且識(shí)別迅速,識(shí)別率較高,有效提高了指紋識(shí)別系統(tǒng)的效率。由于識(shí)別結(jié)果對(duì)采集的指紋的完整性,指紋圖像的預(yù)處理和特征提取要求較高,而且本樣本容量較小,在一定程度上會(huì)影響識(shí)別準(zhǔn)確性,識(shí)別精度還有待進(jìn)一步提高。
參考文獻(xiàn):
[1] 楊靜.基于神經(jīng)網(wǎng)絡(luò)的指紋識(shí)別[D].北京工業(yè)大學(xué),2003.
[2] 岡薩雷斯.數(shù)字圖像處理[M].北京:電子工業(yè)出版社,2005.
[3] 郭晶瑩,吳晴,商慶瑞.基于MATLAB的指紋圖像細(xì)節(jié)特征提取[J].計(jì)算機(jī)仿真,2007,24(1):182-184.
[4] 孫航.基于BP神經(jīng)網(wǎng)絡(luò)的指紋識(shí)別[J].信息與電腦,2011(5):32-33.
[5] 胡小璐.基于神經(jīng)網(wǎng)絡(luò)的指紋識(shí)別系統(tǒng)[D].電子科技大學(xué),2003.
[6] 劉興龍.自動(dòng)指紋識(shí)別系統(tǒng)的研究與實(shí)現(xiàn)[D].貴州大學(xué),2006.
[7] 薛亞許,李寧.基于MATLAB的指紋圖像的二值化及細(xì)化[J].平頂上學(xué)院學(xué)報(bào),2012,27(2):74-76
[8] Mehtre B M, Chatterjee B. Segmentation of Fingerprint Imagine Composite Method[J].Pattern Recognition.1989,22(4):381-385.
[9] Xu-dong Jiang, Wei-Yun Yau. Fingerprint Minutiae Matching Based on the Local and Global Strutures. IEEE. 2000:1038-1041.