關(guān)鍵詞: 維納濾波; 連續(xù)方向圖; 二值化
隨著社會(huì)和經(jīng)濟(jì)的發(fā)展,人們對(duì)身份鑒別的準(zhǔn)確性、安全性與實(shí)用性提出了更高的要求。而指紋具有唯一性、不變性、穩(wěn)定性,以及易采集等優(yōu)點(diǎn),使得指紋識(shí)別成為當(dāng)前生物識(shí)別技術(shù)中最受青睞的技術(shù)之一,在電子商務(wù)、犯罪鑒別、信息安全等領(lǐng)域都有廣泛的應(yīng)用。在指紋識(shí)別算法中,由于現(xiàn)有指紋采集設(shè)備的不完善性,均需對(duì)采集的圖像進(jìn)行二值化處理,這個(gè)過程是相對(duì)最難突破的一個(gè)不可或缺的重要環(huán)節(jié)。二值化是將含有噪聲的灰度圖像處理成適于特征提取的二值圖像,其處理結(jié)果的好壞直接影響著整個(gè)識(shí)別系統(tǒng)的性能。
二值化指紋圖像就是將圖像上的點(diǎn)的灰度值置成0或255,即通過閾值使白色的谷線區(qū)域灰度都達(dá)到255,黑色的脊線區(qū)域灰度都達(dá)到0,由此使指紋紋線對(duì)象成為黑白兩色圖像。二值化主要有全局閾值法、局部閾值自適應(yīng)算法和基于方向信息的二值化方法。全局閾值是在整幅圖像內(nèi)采用固定的閾值分割圖像,經(jīng)典的方法是以灰度直方圖為處理對(duì)象,但由于單一的閾值會(huì)造成特征點(diǎn)的丟失,因此該方法一般不會(huì)單獨(dú)使用,局部閾值自適應(yīng)算法是將原始圖像分成幾個(gè)小的子圖像,再對(duì)每個(gè)小圖像分別求出最優(yōu)分割閾值,如參考文獻(xiàn)[1]采用的改進(jìn)的自適應(yīng)指紋圖像二值化方法,雖然對(duì)于一些質(zhì)量差的指紋圖像能夠很好地保留重要的特征信息,但是該方法得到的二值化圖像有很多噪聲,不利于后面細(xì)節(jié)點(diǎn)的提取,需要進(jìn)一步處理。上述方法對(duì)閾值的選取有很高的依賴性,而且沒有考慮指紋圖像本身的紋理特征,處理結(jié)果不理想?;诜较蛐畔⒌亩祷椒壳笆褂煤軓V,它利用指紋方向信息對(duì)指紋斷裂和粘連有連接和隔離效果,但是由于有干擾的存在和中心點(diǎn)處方向判斷困難,局部區(qū)域二值化效果出現(xiàn)偏差,還會(huì)出現(xiàn)孔洞,為后期處理增加了困難,參考文獻(xiàn)[2]的算法還會(huì)在特征點(diǎn)處出現(xiàn)嚴(yán)重的干擾,這樣會(huì)對(duì)特征提取造成一定影響。楚亞蘊(yùn)[3]等提出了一種結(jié)合指紋方向信息的自適應(yīng)動(dòng)態(tài)閾值二值化算法,該方法能有效提高二值化精度,并對(duì)斷線具有一定的連接效果,但始終沒有解決二值化的孔洞及粘線問題。本文針對(duì)上述情況,提出了一套指紋圖像二值化處理方法。該算法充分考慮到指紋圖像是一種紋理性的圖像,先進(jìn)行維納濾波,防止后期產(chǎn)生孔洞,然后采用連續(xù)塊方向圖計(jì)算指紋的方向,最后以方向圖為基礎(chǔ),采用方向?yàn)V波模板對(duì)指紋圖像進(jìn)行濾波增強(qiáng),實(shí)現(xiàn)二值化。實(shí)驗(yàn)結(jié)果表明,此方法對(duì)于不同質(zhì)量的指紋圖像都有令人滿意的處理效果,在指紋圖像預(yù)處理中有良好的應(yīng)用前景。
1 指紋圖像二值化處理方法
在指紋圖像進(jìn)行二值化之前先要對(duì)它進(jìn)行圖像分割,這里采用最大類間方差圖像分割[4]。為了獲得沒有噪聲或者噪聲強(qiáng)度相當(dāng)?shù)偷膱D像,本文選用維納濾波進(jìn)行圖像預(yù)處理。
1.1維納濾波
維納濾波器根據(jù)各像素局部領(lǐng)域的統(tǒng)計(jì)估計(jì)進(jìn)行自適應(yīng)濾波。它將圖像信號(hào)和噪聲都看成隨機(jī)信號(hào),在對(duì)隨機(jī)信號(hào)進(jìn)行分析統(tǒng)計(jì)的基礎(chǔ)上設(shè)計(jì)出符合最優(yōu)準(zhǔn)則的濾波器。假設(shè)圖像信號(hào)g(x,y)是由真實(shí)圖像f(x,y)和噪聲信號(hào)n(x,y)構(gòu)成,設(shè)計(jì)圖像濾波器的目的就是使輸出的圖像 I(x,y)盡可能地降低噪聲信號(hào)n(x,y),同時(shí)恢復(fù)真實(shí)圖像 f(x,y)。定義誤差信號(hào)為:
然后對(duì)濾波之后的指紋圖像利用方向圖進(jìn)行二值化。
1.2 方向圖的計(jì)算
方向圖是描述指紋圖像上各點(diǎn)的紋線走向指示圖。將紋線的走向分為8個(gè)方向,基準(zhǔn)點(diǎn)位于方向模板的中心, 從水平位置開始, 按逆時(shí)針方向,每隔π/8 確定一個(gè)方向, 分別用i=1,2, …,8來表示, 此方法計(jì)算的方向角范圍是[0,π]。本文選用計(jì)算方向圖[6],具體計(jì)算步驟如下:
(1)采用7×7窗口,設(shè)其為矩陣A,A44為基準(zhǔn)點(diǎn)P(i,j),其中有4個(gè)方格是3個(gè)方向共用的, 如圖1所示,A33、A55是方向6、7、8共用的方向, A35、A53是方向2、3、4共用的方向。采用此窗口設(shè)置方向充分考慮了基準(zhǔn)點(diǎn)附近較近點(diǎn)的灰度值,共用點(diǎn)的權(quán)值比較大。
(2)對(duì)指紋圖像中的每一點(diǎn)P(i,j),分別計(jì)算8個(gè)方向上的灰度平均值,即對(duì)圖1中標(biāo)有i(i=1,2,…,8;分別代表 8 個(gè)方向)的位置上的像素灰度值求算術(shù)平均值,得到Gi;
(3)把這8個(gè)平均值按兩兩垂直的方向分成4組:1和5為一組,2和6為一組,3和7為一組,4和8為一組,分別計(jì)算每組中兩個(gè)平均值的差的絕對(duì)值 。
(4)根據(jù)上一步求出的方向組的差值,取絕對(duì)值最大的方向組中的兩個(gè)方向作為可能的脊線方向。
(5)確定方向組中的兩個(gè)方向:將這兩個(gè)方向上的像素灰度的平均值與像素P(i,j)的灰度值G進(jìn)行比較,取灰度平均值與P(i,j)的灰度值G接近的方向作為該像素點(diǎn)P(i,j)的脊線方向,這樣得到的是指紋圖像的點(diǎn)方向圖。
(6)用連續(xù)滑動(dòng)的 w×w大小的窗口對(duì)點(diǎn)方向圖中的每一點(diǎn)P(x,y)進(jìn)行平滑處理, 分別統(tǒng)計(jì)每個(gè)窗口內(nèi)方向直方圖,這里w的取值需要考慮,如果取得太大,對(duì)紋線方向變化比較快的區(qū)域得到的方向不精確,w取值小時(shí)又會(huì)引起噪聲誤差,二值化時(shí)會(huì)產(chǎn)生氣泡,通常w取值要比一個(gè)紋線間距略小;
(7)將直方圖的峰值所對(duì)應(yīng)的方向作為點(diǎn) P(x,y)的方向,根據(jù)此方法對(duì)點(diǎn)方向圖中的每個(gè)點(diǎn)進(jìn)行平滑處理, 便可得到連續(xù)方向圖O(i,j)。
圖2(b)所示為對(duì)圖2(a)分別用8個(gè)顏色代表紋線的8個(gè)方向的示意圖。
1.3 指紋圖像增強(qiáng)濾波及二值化
利用上面計(jì)算出的連續(xù)方向圖, 就能根據(jù)其方向設(shè)計(jì)出相應(yīng)的方向自適應(yīng)濾波模板。其設(shè)計(jì)思想是使指紋紋線在切線方向平滑, 在法線方向銳化, 以消除指紋圖像中紋線的斷裂和叉連。方向自適應(yīng)濾波器是由多個(gè)方向的濾波模板組成的, 本文選用O’Gorman提出的方法構(gòu)造濾波模板[8]。
取水平方向的濾波器為:
其他方向(2~8)的濾波器可由其旋轉(zhuǎn)相應(yīng)的角度得到。Matlab中利用函數(shù)imrotate( )實(shí)現(xiàn)。
在指紋圖像上,從上到下、從左至右逐點(diǎn)移動(dòng), 根據(jù)每個(gè)像素的方向值, 選用相應(yīng)的濾波器模板進(jìn)行卷積濾波運(yùn)算。經(jīng)過上述濾波處理后, 消除了一些斷點(diǎn)和叉連現(xiàn)象。在本算法中,對(duì)8個(gè)方向進(jìn)行濾波增強(qiáng),脊線圖像提取之后對(duì)它們進(jìn)行組合、二值化。
圖3所示為8個(gè)方向提供的有線圖像、脊線組合后的圖像以及二值化后的圖像。
這時(shí),只需要一個(gè)全局閾值就可以將灰度圖像二值化了。直接使用 Matlab中的im2bw函數(shù)對(duì)灰度圖像進(jìn)行二值化圖像的轉(zhuǎn)化。調(diào)用格式如下:
level=graythresh(I);
BW=im2bw(I,level);
2 實(shí)驗(yàn)結(jié)果及性能分析
為了驗(yàn)證上述算法的有效性,在CPU為Pen-tium 42.66 GHz、內(nèi)存為1 GB的計(jì)算機(jī)上, 運(yùn)用 Matlab 7.1 編程工具實(shí)現(xiàn)了上述算法,實(shí)驗(yàn)結(jié)果如圖4所示。從處理實(shí)例中可以看出,圖4(b)采用局部閾值二值化,受到采集儀器和一些不可抗拒的噪聲的影響,處理的結(jié)果不理想,有斷紋和粘線。參考文獻(xiàn)[2]介紹的方法利用了紋線方向信息,比較某點(diǎn)切線和法線方向上的灰度值,從而判斷該點(diǎn)是在脊線還是在谷線上,雖然這種方法考慮了紋線方向,但是在方向變化劇烈的中心點(diǎn)區(qū)域附近,處理的紋線會(huì)出現(xiàn)錯(cuò)位現(xiàn)象。參考文獻(xiàn)[7]的方法是利用方向模板濾波得到的二值化圖像,可以看到二值化后的圖像比較平滑,但是有很明顯的孔洞現(xiàn)象,還需要進(jìn)行后期處理。相比于上述算法,本文的方法首先進(jìn)行維納濾波,較好地保持了原始指紋圖像信息,又最大限度地消除了噪聲影響,避免了二值化處理后期產(chǎn)生孔洞現(xiàn)象。然后,利用指紋方向信息設(shè)計(jì)方向?yàn)V波模板,對(duì)圖像濾波增強(qiáng),實(shí)現(xiàn)二值化??梢钥吹讲捎帽疚姆椒ǖ玫降亩祷瘓D像基本保持了原有指紋圖像的細(xì)節(jié),二值化后的線條平滑,對(duì)斷裂的指紋有一定的連接作用,消除了孔洞、連線,細(xì)化的結(jié)果令人滿意。
本文詳細(xì)介紹了一種指紋圖像的二值化處理方法,對(duì)于一般的利用方向信息得到的二值化圖像中產(chǎn)生的如孔洞、在脊線方向變化劇烈的區(qū)域提取信息不準(zhǔn)確等問題,進(jìn)行了解決。兩次濾波后實(shí)現(xiàn)的二值化圖像的線條平滑飽滿,消除了孔洞、連線,并且對(duì)斷裂的紋線起到一定的連接作用,特征點(diǎn)處的處理圖像也很清晰準(zhǔn)確,效果明顯,為后面的準(zhǔn)確提取細(xì)節(jié)點(diǎn)做準(zhǔn)備。本文算法簡(jiǎn)單,易于工程實(shí)現(xiàn),通用性和實(shí)用性強(qiáng),能夠直接或者在稍作改造后用于諸如身份辨認(rèn)、身份識(shí)別等場(chǎng)合?;谠撝讣y識(shí)別預(yù)處理方法的指紋識(shí)別系統(tǒng)能夠在提高經(jīng)濟(jì)效益、降低工作人員勞動(dòng)強(qiáng)度方面起到較大的作用,具有一定的社會(huì)和經(jīng)濟(jì)意義。
參考文獻(xiàn)
[1] JOSEF S B, NILSSON M, NORDBERG J, et al. Improved adaptive fingerprint binarization[J]. Congress on image and signal processing,2008:756-760.
[2] 孫以雷,陳紅衛(wèi).指紋圖像二值化方法研究[J].艦船電子工程,2006,151(1):110-112.
[3] 楚亞蘊(yùn),詹小四,孫兆才,等.一種結(jié)合方向信息的指紋圖像二值化算法[J].中國(guó)圖象圖形學(xué)報(bào),2006,11(6):854-860.
[4] 賈則,戴榮濤,張芬,等.基于連續(xù)分布方向圖的指紋圖 像分割算法研究[J].微電子學(xué)與計(jì)算機(jī),2007,24(12):141-143.
[5] 周光,羅元,張毅,等.基于維納濾波的自適應(yīng)二值化技術(shù)的研究[J].軟件時(shí)空, 2008,24(7): 231-233.
[6] 聶桂軍,吳陳.自動(dòng)指紋識(shí)別系統(tǒng)中連續(xù)分布方向圖的研究[J].中國(guó)圖象圖形學(xué)報(bào),2005,10(3):315-319.
[7] 張正言, 聶桂軍, 徐榮青.基于連續(xù)方向圖的指紋圖像增強(qiáng)算法[J].微電子學(xué)與計(jì)算機(jī),2007, 24(3):56-58.
[8] O’GORMAN L, LINDEBERG, NICKERSON J V.An approach to fingerprint filter design[J].Pattern Recognition, 1989,22(1):29-38.