,
(上海東海職業(yè)技術(shù)學(xué)院,上海 200241)
網(wǎng)絡(luò)化日益發(fā)展的今天,信息安全和身份識別在日常生活中變得越來越重要[1-2]。
無論是在司法,軍事或者商務(wù)領(lǐng)域,身份驗(yàn)證都具有廣泛的應(yīng)用。生物識別技術(shù)技術(shù)基于個(gè)人的生理特征,具有不可復(fù)制性和穩(wěn)定性等諸多優(yōu)勢。用生物特征識別技術(shù)進(jìn)行身份驗(yàn)證,安全性將大大提高。其中虹膜識別技術(shù)具有優(yōu)于其他生物識別技術(shù)的可靠性和安全性。虹膜具有很細(xì)微的條紋特征,這些特征在出生前就已經(jīng)確定好,并且終生不再改變[3-4]。因此虹膜對每個(gè)人來說是獨(dú)一無二的,鑒于虹膜的獨(dú)特性和不變性,用虹膜識別來進(jìn)行身份驗(yàn)證具有其他方法無可比擬的可靠性。
近年來,國內(nèi)外諸多學(xué)者對虹膜識別進(jìn)行了廣泛和深入的研究。國外一些發(fā)達(dá)國家已經(jīng)在公共場合采取虹膜識別,例如美國Iriscan公司研發(fā)的虹膜識別系統(tǒng)已經(jīng)在德克薩斯州一些銀行營業(yè)廳內(nèi)運(yùn)營。我國起步較晚,但是越來越多的學(xué)者正積極投入該領(lǐng)域。中科院自動(dòng)化所是國內(nèi)最早進(jìn)行虹膜識別研究的機(jī)構(gòu)之一,已經(jīng)開發(fā)出多代虹膜識別系統(tǒng),實(shí)現(xiàn)完全自主研發(fā)[5-6]。
虹膜識別主要分為虹膜定位技術(shù),濾波,圖像歸一化,特征提取和特征檢測。目前的虹膜定位技術(shù)主要有Daugman虹膜定位法[7],Wildes定位法和基于活動(dòng)輪廓的定位算法等。虹膜區(qū)域中為了去除上下眼瞼的影響,很多學(xué)者經(jīng)常采用Hough變換,微積分操作等進(jìn)行圓弧檢測定位。
傳統(tǒng)虹膜定位算法一般有3種,即基于圓周檢測算子的Daugman活動(dòng)模板匹配算法[8],基于Hough變換的定位算法和基于活動(dòng)輪廓的定位算法。
Daugman虹膜定位算法是由劍橋大學(xué)Daugman教授提出,改算法在虹膜圖像中通過搜索虹膜的中心和半徑來確定虹膜的內(nèi)外邊緣。該方法能夠精確定位虹膜,但是過于依賴光源和圖像亮度影響,計(jì)算量比較大。
基于Hough變換[9]的虹膜定位算法是由Wildes提出的,對虹膜圖像進(jìn)行邊緣檢測后用Hough變換分割出有效虹膜區(qū)域,能夠有效消除噪聲和邊界的影響,其缺點(diǎn)是計(jì)算量復(fù)雜度高,占用資源過多。
基于活動(dòng)輪廓模型[10-11]的定位算法通過不斷極小化自身能量函數(shù)來檢測圖像邊緣信息,該方法具有很強(qiáng)的魯棒性,但是很容易受到局部極值點(diǎn)的影響。
本文對虹膜定位算法進(jìn)行改進(jìn),彌補(bǔ)典型定位算法的不足,以提高虹膜定位精度,提升定位速度。在瞳孔二值化圖像中存在眼睫毛或者眼瞼與瞳孔粘連,此時(shí)需要對瞳孔邊緣進(jìn)行修正處理。然后對其進(jìn)行擬合處理,使其更加準(zhǔn)確平滑。其具體流程如圖1所示。
圖1 虹膜定位流程圖
瞳孔的灰度值遠(yuǎn)遠(yuǎn)小于其他部分,而且相對而言比較集中,圖2為原始圖像,圖3位灰度直方圖。
圖2 原始圖像
圖3 原始圖像的灰度直方圖
在灰度直方圖中,灰度值自最小的峰值區(qū)域即為瞳孔的灰度分布。第二個(gè)峰值為虹膜區(qū)域的灰度值范圍,我們可以選擇適當(dāng)?shù)拈撝祵υ紙D像進(jìn)行二值化處理。若出現(xiàn)大量黏連現(xiàn)象時(shí),對虹膜二值化圖像進(jìn)行邊緣修正處理,然后采用最小二乘法對瞳孔邊界進(jìn)行擬合處理。一般二次曲線可以由二次多項(xiàng)式表示:
F(x,y)=F(a,x)=aTx=ax2+bxy+cy2+
dx+ey+f=0
(1)
其中:a,b,c,d,e,f是多項(xiàng)式的系數(shù),[x,y]是數(shù)據(jù)坐標(biāo)。所有數(shù)據(jù)點(diǎn)的代數(shù)距離平方和為:
(2)
再根據(jù)如下公式對所有數(shù)據(jù)點(diǎn)進(jìn)行擬合:
(3)
為了處理方便,用線性閾值法將原始圖像進(jìn)行二值化,將最小像素值作為圖像的處理閾值,處理結(jié)果如圖4所示。
圖4 原始圖像二值化處理
由圖4可知,經(jīng)二值化處理的圖像受睫毛干擾較大,瞳孔內(nèi)部的光點(diǎn)的也對結(jié)果有較大影響,因此對二值化后的圖像再進(jìn)行頻域和一系列形態(tài)學(xué)操作,頻域?yàn)V波采用高斯濾波方法,效果較好,高斯濾波得到的投影圖像如圖5所示。最終通過上述操作能完整的識別出瞳孔區(qū)域。具體的識別過程如圖5所示。
圖5 二值化圖像處理及內(nèi)邊界檢測
最后,如圖6所示,將識別出的瞳孔區(qū)域用圓圈圈出,可以從圖中看出,經(jīng)過濾波和形態(tài)學(xué)操作,能夠完整兒準(zhǔn)確的進(jìn)行內(nèi)邊界定位,即找出瞳孔。
圖6 內(nèi)邊界定位
目前主要的邊緣檢測算法有Prewitt算法,Sobel算法,Log算法等,其實(shí)現(xiàn)方式簡單,實(shí)用性強(qiáng),但是對噪聲特別敏感,抗干擾能力較差。因此Jonh Canny提出一種最優(yōu)化算法的邊緣檢測算子[12-13],結(jié)合了上述幾種方法的優(yōu)點(diǎn),效果明顯強(qiáng)于之前的算法。一般情況下,虹膜與外面的眼白區(qū)域在灰度圖中差異較小,特別是當(dāng)采樣環(huán)境中光照條件欠佳的情況,因此二值化方法不再適合于虹膜的外邊界定位。這里采用Canny算子進(jìn)行邊緣檢測。Canny算子進(jìn)行邊緣檢測的時(shí)候,首先進(jìn)行高斯濾波,對圖像進(jìn)行平滑處理,再用一階微分算子計(jì)算圖像梯度的幅值和方向,最后進(jìn)行雙閾值分割,確定邊緣點(diǎn)。Canny算子在邊緣檢測中具有諸多優(yōu)點(diǎn),例如不會(huì)丟失重要邊緣,實(shí)際邊緣與檢測到的邊緣之間誤差相對較小等,具有很高的實(shí)用意義。幾種算法的邊緣檢測結(jié)果如圖7所示。
圖7 不同邊緣檢測算法結(jié)果
如圖7所示,Canny算子在邊緣檢測中具有更好的穩(wěn)定性和可靠性,但是其邊緣會(huì)出現(xiàn)斷裂的情況,因此需要采取形態(tài)學(xué)措施,通過一系列膨脹,開運(yùn)算等方法,使其效果更佳。
在光照條件改變時(shí),虹膜中紋理最豐富,辨識度最高的部分在虹膜貼近瞳孔的內(nèi)部,外部的辨識信息較少,因此我們直接將虹膜外邊緣近似成圓,然后利用最小二乘法對圓進(jìn)行擬合,達(dá)到最優(yōu)識別效果。Canny算子由于在收到噪聲干擾后會(huì)產(chǎn)生許多邊緣斷裂現(xiàn)象,必須進(jìn)行形態(tài)學(xué)連接處理。利用直線元素對圖像進(jìn)行膨脹運(yùn)算消除邊緣間斷。最后利用帶約束的最小二乘法進(jìn)行擬合處理,對虹膜外邊界進(jìn)行定位。最小二乘法具有很高的擬合精度,能滿足大量實(shí)際應(yīng)用場合的需要,虹膜外邊界定位結(jié)果如圖8所示。
圖8 虹膜內(nèi)外邊界定位結(jié)果
由上圖可以看出,內(nèi)外邊界都已經(jīng)被很清晰的標(biāo)注出,外邊界雖然與眼白差異很小,但是通過處理也可以完整的識別出,表明該算法的可行性。
在采集虹膜圖像時(shí),由于采樣時(shí)光線強(qiáng)度,采樣角度,虹膜大小均存在不可改變的差異,若采用之前的算法直接進(jìn)行處理,會(huì)遇到很多問題,因此我們需要先對圖像進(jìn)行歸一化處理,即將虹膜環(huán)形圖像區(qū)域進(jìn)行縮放,放置在一個(gè)固定的矩形區(qū)域內(nèi),對圖像平移和縮放所造成的影響進(jìn)行消除。
本文采用的是基于Daugman提出的“Rubber-Sheet”模型,將之前定位識別出來的環(huán)狀虹膜區(qū)域展開,放置于固定分辨率的矩形區(qū)域。具體模型如圖9所示。
圖9 “Rubber-Sheet”模型
虹膜區(qū)域由笛卡爾坐標(biāo)系中(x,y)映射到歸一化的非同心極性表示,具體模型如下述公式所示。
I(x(r,θ),y(r,θ))→I(r,θ)
(4)
其中:
x(r,θ)=(1-r)xp(θ)+rx1(θ)
(5)
y(r,θ)=(1-r)yp(θ)+ry1(θ)
(6)
式中,I(x,y)是虹膜區(qū)域圖像,(x,y)是原始的笛卡爾坐標(biāo)系中點(diǎn)的坐標(biāo),(r,θ)是極坐標(biāo)系中對應(yīng)的坐標(biāo),其量化程度直接決定了矩形區(qū)域的分辨率。該模型考慮到瞳孔的擴(kuò)張和尺寸不一致問題,能夠處理不同條件下的虹膜圖像,能得到相對滿意的結(jié)果。
由于很多情況下,采集圖像時(shí)并不能完全采集到個(gè)體的完整圓弧,而只是采集到虹膜圓弧的一部分,這時(shí)我們需要對圖像進(jìn)行抗干擾處理,準(zhǔn)確選取出虹膜部分,再進(jìn)行正確的歸一化處理,否則歸一化處理后干擾過多,不利于之后的圖像分析操作。對圖像的干擾濾除以及歸一化如圖10所示。
圖10 歸一化邊緣處理
如圖10所示,將眼部其他部位進(jìn)行濾除,只剩下單純的虹膜部分,為后續(xù)處理帶來便利。
將虹膜區(qū)域確定好后,我們需要講其進(jìn)行歸一化處理。歸一化后的圖像如圖11所示。
圖11 歸一化處理結(jié)果
我們只取虹膜圖像中距離瞳孔最近的區(qū)域,也就是最有識別度的代表性區(qū)域進(jìn)行分析,由于原圖中虹膜和鞏膜部分本來就差異不大,因此歸一化后的圖像區(qū)域較小。對圖片進(jìn)行均衡化處理,得到結(jié)果如圖12所示。
圖12 歸一化圖像均衡處理
如上圖所示,均衡化處理后的圖像明顯比直接歸一化的圖像清晰明了,圖像增強(qiáng)效果明顯。
虹膜圖像中包含了諸多信息,其中的紋理內(nèi)容豐富,包括方向和頻率等信息。每個(gè)個(gè)體之間的差異明顯,具有不同的紋理結(jié)構(gòu),利用這個(gè)原理,我們就可以使用這些信息進(jìn)行個(gè)人身份的驗(yàn)證。不同的虹膜圖像中,幅度信息相差不大,易受各種干擾,最主要的差異在相位。
經(jīng)過之前處理過的虹膜圖像可以看成紋理圖像,我們可以用紋理分析方法來對虹膜圖像進(jìn)行特征提取。目前典型的方法主要有Gabor濾波和小波變換方法。但是由于小波變換提取的特征點(diǎn)較少,識別率一般,因此本文使用Gabor濾波器。Gabor濾波器可以同時(shí)在時(shí)域和頻域獲得最佳的圖像分辨率,方向性好,已經(jīng)作為一種成熟的技術(shù)在圖像紋理分析鄰域獲得很大的應(yīng)用,效果顯著,在虹膜紋理特征提取中,Gabor濾波器可以有效進(jìn)行圖像的分解濾波,將圖像中的高頻分類消除,得到可靠穩(wěn)定的虹膜紋理圖像并進(jìn)行分析。
Gabor濾波器的數(shù)學(xué)特性在Daugman[14-15]的文章中已經(jīng)詳細(xì)論述,指出該濾波器適用于圖像紋理分析的原因是由于其在空間和頻域具有很好的聯(lián)合定位能力。
二維Gabor函數(shù)由高斯函數(shù)構(gòu)成,其二維表達(dá)式如下所示:
Gω,θ,α,β(x,y)=
exp{-π[(x-x0)2α2+(y-y0)2β2]}·
exp{-2πjf[(x-x0)cosθ+(y-y0)sinθ]}
(7)
式中,f表示正弦曲面的頻率,可見Gabor函數(shù)具有頻率選擇性。Gabor濾波器有多個(gè)參數(shù)輸入,通過調(diào)整參數(shù),可以獲取局部圖像信息,用特定的濾波器組隊(duì)圖像進(jìn)行濾波處理。
通過Gabor濾波器進(jìn)行處理,可以得到圖像在紋理和特定頻率方向上的信息,二維Gabor濾波器的高斯窗口如圖13所示。
圖13 二維Gabor濾波器的高斯窗
虹膜圖像經(jīng)過前期預(yù)處理和歸一化后,具有很明顯的分布特征。設(shè)預(yù)處理后虹膜圖像為I(x,y),對每個(gè)帶進(jìn)行分塊編碼,然后用式(8)獲取不同子塊的頻率和方向,具體實(shí)現(xiàn)公式如下:
G(x,y,f,θ)
(8)
Gabor濾波器在這里選用的尺寸為M*N,(i,j)為虹膜圖像中每塊的中心點(diǎn),然后選取一個(gè)閾值來具體量化虹膜信息的實(shí)部和虛部,在4個(gè)象限分別編碼。虹膜圖像的分塊不同,其特征編碼的長度也不同。
在進(jìn)行虹膜圖像的編碼以后,需要對其與其他圖像進(jìn)行匹配驗(yàn)證,以達(dá)到身份識別的功能。在進(jìn)行對比時(shí),需要計(jì)算虹膜時(shí)間的相似程度。本文采用Hamming距離來衡量虹膜特征編碼之間是否相似。這個(gè)過程中,我們需要選取合適的閾值直接判斷兩個(gè)虹膜是否來自于同一個(gè)人。
本文使用的Hamming距離的原始計(jì)算公式如下:
⊕BCMj
(9)
式中,兩個(gè)虹膜圖像特征編碼為N維特征向量,分別是ACM和BCM。我們選取的閾值T若大于HD,則表明兩個(gè)虹膜來自于同一個(gè)人。Hamming距離表征兩個(gè)虹膜編碼之間的相似度,若HD=1,表示兩個(gè)虹膜特征編碼完全相反。在實(shí)驗(yàn)中,應(yīng)當(dāng)選取合適的閾值,使識別效果達(dá)到最佳。
本文將兩個(gè)不同的瞳孔進(jìn)行預(yù)處理,然后采用Gabor進(jìn)行特征提取,最后用Hamming距離衡量兩個(gè)特征圖片直接的相似程度。實(shí)驗(yàn)結(jié)果如圖14所示。圖14中最上面兩個(gè)圖表示不同的瞳孔,中間的第二行表示瞳孔和虹膜定位后的圖,第三行表示的是虹膜進(jìn)行歸一化的結(jié)果,第四行表示兩個(gè)圖片采用均衡化處理來進(jìn)行增強(qiáng)的結(jié)果,第五行表示利用Gabor濾波器對虹膜歸一化圖像進(jìn)行特征提取并且編碼,最后一行顯示最終結(jié)果,即兩個(gè)特征圖像之間的Hamming距離,并指出是否來自于同一雙眼睛。
圖14 系統(tǒng)實(shí)驗(yàn)
接下來對系統(tǒng)進(jìn)行一系列測試,分別用不同的眼睛來作為系統(tǒng)輸入,看系統(tǒng)的輸出結(jié)果,運(yùn)行結(jié)果如表1所示。
表1 系統(tǒng)運(yùn)行結(jié)果
從表1可以看出,系統(tǒng)對輸入圖像的判斷相對較為準(zhǔn)確,準(zhǔn)確率達(dá)到了94%,能夠較為有效地識別出虹膜,也表明了本系統(tǒng)提出的改進(jìn)算法具有一定的現(xiàn)實(shí)意義。
本文深入了解了國內(nèi)外虹膜識別的研究現(xiàn)狀,在虹膜定位和特征提取方面完成自己的研究工作。首先分析圖像處理中形態(tài)學(xué)處理方法,去除睫毛對虹膜定位的影響。在虹膜內(nèi)邊界的確定過程中,修正二值化圖像的形態(tài)學(xué)處理,得到真實(shí)的瞳孔邊界,用帶約束的最小二乘法進(jìn)行擬合。在外邊界確定過程中,通過使用最小二乘法對邊緣進(jìn)行擬合處理,有效避免了Canny算子在邊緣檢測中容易產(chǎn)生的邊緣間斷問題。完成了虹膜識別系統(tǒng)的構(gòu)建,從虹膜的邊緣定位到特征提取,再到最后的虹膜特征匹配,最后通過200張圖片的實(shí)驗(yàn),對本系統(tǒng)進(jìn)行最終效果驗(yàn)證,得到了令人滿意的實(shí)驗(yàn)結(jié)果。
本文設(shè)計(jì)的虹膜識別系統(tǒng)忽略了虹膜特征匹配的分類機(jī)制,接下來準(zhǔn)備使用基于神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)進(jìn)行分類研究,以進(jìn)一步提高識別準(zhǔn)確率。