馬曉峰, 高瑋瑋
(上海工程技術大學 機械與汽車工程學院, 上海201620)
近年來,個人的信息安全問題變得越來越重要,傳統的識別方法已無法滿足人們的需求,隨之而來的生物識別技術引起了人們的重視。 在眾多識別技術中,虹膜因高穩定性、唯一性、非侵犯性等[1-2]特點成為該領域內的研究熱點。
在虹膜識別研究方面,Daugman 博士提出了基于Gabor 變換的識別算法[3-4],并通過Gabor 濾波器對虹膜紋理特征提取,建立了一個能夠實際應用的虹膜識別系統,使虹膜識別技術取得了里程碑式的成就。 但該技術仍存在一些不足,如:使用單一Gabor 濾波器提取的虹膜信息不完整。 為此許多研究者也做出了改進,張祥德等提出了基于多方向Gabor 濾波器和Adaboost 的虹膜識別方法,有效地減少了噪聲的影響[5];苑瑋琦等提出了將支持向量機(support vector machine,SVM)與形態學相結合的虹膜坑洞紋理檢測算法,較好地克服了光斑的影響[6];Liu 等提出了基于Gabor 濾波和神經網絡的二次虹膜識別算法,有效抑制了圖像噪聲與冗余的干擾[7];Minaee 等提出利用散射變換和紋理特征進行虹膜識別,結合了虹膜的整體和局部紋理信息,有效提高了系統的識別率[8];Vyas 等提出了二維Gabor濾波的虹膜識別算法[9]。 這些方法分別在虹膜特征提取或虹膜識別部分進行了改進,并取得了良好的結果,但仍存在一些不足,如:不能針對不同的虹膜庫進行自適應調整。
由于傳統方法需要根據經驗手動修改參數,對不同的虹膜庫需設置不同的參數,即在實際應用中需對不同的識別設備進行一一調整濾波參數,人工成本與時間成本較大。 自適應優化Gabor 濾波與SVM 的虹膜識別方法能夠在不同虹膜庫進行自適應優化,不需要人工進行調整,更具有實用性。
本文提出自適應優化Gabor 濾波與SVM 的虹膜識別方法, 通過粒子群算法(particle swarm optimization, PSO)根據不同虹膜庫選取最優Gabor濾波參數,提高系統的特征提取能力,利用SVM 根據最優特征完成虹膜的分類與識別。
試驗材料為中科院自動化研究所的CASIA1.0虹膜庫和CASIA-Iris-Lamp 虹膜庫[10]。 CASIA1.0樣本庫共包含了108 只不同的眼睛,每只眼睛有7幅虹膜圖像,共756 幅虹膜圖像,分辨率為320×280;CASIA-Iris-Lamp 虹膜庫共包含了100 只不同的眼睛,每只眼睛有20 幅虹膜圖像,共2000 幅虹膜圖像,分辨率為640×480。
試驗環境如下:CPU 為Intel(R)Core(TM)i7-6700HQ,內存8GB,操作系統為win10,軟件為Matlab R2014a。
虹膜圖像的識別包括預處理、特征提取與識別3 個步驟[11]。 首先,根據虹膜圖像的灰度特性進行內外邊緣的定位,并將環形的虹膜圖歸一化為統一的模板區域;其次,通過多尺度Gabor 濾波器并結合取粒子群算法提取最優特征;最后,通過SVM 實現虹膜圖像的識別。 具體過程如圖1 所示。

圖1 虹膜識別流程Fig. 1 Process of iris recognition
1.2.1 虹膜預處理
虹膜的預處理過程主要包括虹膜內邊界與外邊界的定位、虹膜區域的歸一化和虹膜增強三部分[12]。
對虹膜圖像進行直方圖統計,根據直方圖選取合適的閾值進行二值化操作,使用canny 算子識別瞳孔邊緣,并采用最小二乘法擬合虹膜圖像的內圓。虹膜的外圓通過微積分圓模板[13]的方法進行定位。為便于對虹膜進行特征提取,需將虹膜轉化為固定的矩形區域。 通過彈性模型[14],將虹膜展開成120×480 像素的矩形,然后通過直方圖均衡化的方法進行圖像增強,并從右上角截取紋理最強的區域,形成60×240 像素大小的虹膜紋理圖,過程如圖2 所示。

圖2 虹膜定位過程Fig. 2 Process of iris localization
1.2.2 虹膜特征提取與編碼
對歸一化后的虹膜圖通過Gabor 濾波器進行特征提取,Gabor 濾波器的表達形式,公式(1):

特征提取時,將60×240 像素大小的虹膜紋理圖分成r 行、c 列大小的子塊;應用fn個濾波器對每個虹膜子塊完成濾波操作,并分別求出各濾波器處理后的響應幅度,將響應最大的濾波器所對應的編號作為該子塊的特征編碼;最后將所有子塊對應的濾波器序號作為一副虹膜圖像的特征編碼。
1.2.3 自適應優化Gabor 濾波器
由于不同頻率和方向的Gabor 濾波器對虹膜紋理的描述能力是有區別的,因此需要對fn個濾波器的參數進行優化,建立識別能力強的濾波器。 為解決Gabor 濾波器無法自適應調整參數的缺陷,采用粒子群算法[15]對濾波器進行優化,使Gabor 濾波器能夠自動適應各種不同的虹膜數據庫,并自動修改參數,使其得到最優效果。
對參數進行優化時, 粒子群中的每個粒子{fs,θs,fq,θq} 代表了一組Gabor 濾波參數,并將起始的個體最優pbest 設為其自己本身,而群整體最優gbest 則為所有pbest 中的最優值。 參數優化時,先在該虹膜數據庫中,選取一部分虹膜圖像,通過粒子所對應的濾波參數進行特征提取,然后計算虹膜之間的Hamming 距離,進而計算適應度,適應度的公式(2)如下:

其中, Hi為第i 次不同類別虹膜匹配時的Hamming 距離;Hj為第j 次相同類別的虹膜匹配時的Hamming 距離;m、n 分別為異類別與同類別匹配次數;T 為適應度值,T 越小說明同類別虹膜間相似度越高,而異類別虹膜間的相似度越低。
根據公式(2)求出所有粒子的T,每個粒子分別先與自己的pbest 進行比較,若此時的T 更小,則將該粒子置為新的pbest。 待所有的pbest 更新完后,找出當前粒子群中適應度值最小的粒子,將其與gbest 進行比較,若小于全局最優的T,則將該粒子的位置設為新的gbest,否則不變。 待pbest 與gbest 更新完成后,對每個粒子的速度與位置按公式(3)和(4)進行進化。

公式(3)和(4)中,Xk和Xk+1分別為第k 次和第k+1 次迭代過程中粒子的值;Vk+1為第k+ 1 次迭代過程中粒子的速度;ω 為慣量權重;c1和c2是加速系數;r1和r2取[0,1]之間的隨機數; pbest 為個體最優; gbest 為群體最優。 如此往復迭代,直至達到最大迭代次數或滿足終止條件,并將粒子群的整體最優所對應的fn個Gabor 濾波參數作為最終特征提取時的參數值。 運用優化后的濾波器對每個虹膜子塊完成濾波操作,進而分別求出各濾波器處理后的響應幅度,將響應最大的濾波器所對應的編號作為該子塊的特征編碼,成虹膜圖像最終的特征編碼。
1.2.4 虹膜匹配與識別
提取虹膜圖像特征之后,設計一個好的分類器就比較重要了。 SVM 以結構風險最小化準則為理論基礎,其結構簡單,學習性能出色,是一種具有最優分類能力和推廣學習能力的方法,且在處理非線性、小樣本的分類問題中表現出良好的性能。 常用的核函數有:多項式核函數、徑向基核函數(radial basis function, RBF)、Sigmoid 核函數等,其中RBF由于具有結構簡單、學習速度快、收斂速度快等優點,因此將其作為核函數。
對虹膜進行識別時,首先從虹膜庫中選取一定數量的虹膜作為虹膜訓練樣本庫,并將樣本庫中每個虹膜的特征編碼及其類別編號作為SVM 的訓練集;通過網格尋優的方法完成RBF 的訓練;最后針對虹膜庫中剩余的虹膜,通過訓練好的分類器計算出待識別虹膜的相應決策輸出值,得出虹膜所屬的類別。
影響特征編碼的主要因素有:濾波器的個數、虹膜子塊的大小。 為確定濾波器和虹膜塊的數量,從CASIA1.0 虹膜庫中每只眼睛選取4 幅的圖像,通過正交試驗分析的方法確定最優方案。 正交試驗的因素有濾波器頻率數、濾波器方向數、子塊的行數與子塊的列數,4 個因素分別以A、B、C、D 表示,其中因素A、B、C 取4 個水平數,因素D 取5 個水平數,具體如表1 所示。

表1 正交試驗因素水平Tab. 1 Level of factors in orthogonal experiment
通過正交試驗篩選最優方案,需要定義評價指標,因此對所選虹膜通過所提方法進行訓練識別,并將識別率作為評價指標。 本次試驗是一個4 因素混合水平的試驗,故選擇正交表L25 通過擬水平法安排試驗,具體試驗結果如表2 所示。
正交試驗的分析方法有兩種,分別是方差分析法和極差分析法[16],其中極差分析法是通過計算極差來確定因素的影響程度,具有簡單易行、直觀易懂的優點,因此采用極差分析法進行分析比較。 上述試驗的極差計算結果如表3 所示,其中,ki為相關因素和水平試驗結果的平均值,i 代表水平,取1~5;R為極差,且R =kimax-kimin,kimax為因素各個水平試驗結果的最大平均值,kimin為因素各個水平試驗結果的最小平均值。

表2 正交試驗結果Tab. 2 Orthogonal experimental results

表3 極差分析表Tab. 3 Table of range analysis %
由表3 可見,各因素根據極差由大到小的排列順序為:因素D>因素C>因素B>因素A,則各因素的主次程度為:因素D>因素C>因素B>因素A。 根據評價指標可知:識別率越高,系統性能越好。 因此,ki的最大值對應的因素水平就是正交試驗篩選出的最優方案,即:A4、B3、C3、D4,但是該方案在正交試驗中是沒有的,所以根據因素主次程度,從表3中找到兩組方案,分別為第7 組的A2、B2、C3、D4方案和第20 組的A4、B3、C3、D1方案,其中第7 組方案是按照因素主次程度以及最優水平選出的,但該方案中有兩個因素的水平與原最優方案中的不同;第20 組方案是按照最貼近原最優方案選出的,該方案中只有一個因素的水平與原最優方案不同。從試驗結果看,效果最好的是第20 號試驗,且該方案與最優方案最接近,因此最后確定方案為A4、B3、C3、D1,即:濾波器頻率數為6 個、濾波器方向數為5個、子塊的行數為15 行、子塊的列數為10 列。
在CASIA1.0 虹膜庫中提取36 只眼睛共252 幅虹膜圖像,在Lamp 虹膜庫中提取34 只眼睛共680幅虹膜圖像。 對兩個虹膜庫分別運用自適應Gabor濾波進行特征提取并優化,將優化后的濾波參數對剩余的虹膜圖像進行特征提取,將特征集分成兩部分,分別用于SVM 的訓練與測試。
為了驗證算法的有效性,從CASIA1.0 虹膜特征集選取360 幅虹膜圖像,從Lamp 虹膜特征集選取858 幅虹膜圖像,分別作為訓練樣本,并將剩余圖像分別作為測試樣本,采用未優化的方法進行特征提取,并用Hamming 距離和SVM 的方法分別進行虹膜識別。 不同算法對應的檢測結果如表4 所示。 從表4 中可見,經PSO 優化后,虹膜的識別率有所提高,而通過SVM 進行匹配識別后,虹膜的識別率進一步提高,在CASIA1.0 虹膜庫上識別率共提高了0.59%,等錯率下降了0.48%,在Lamp 虹膜庫上提高了0.3%,識別系統在兩個虹膜庫上的識別性能均得到了明顯的改善。

表4 測試結果Tab. 4 Detection results
圖3 和圖4 分別為4 種算法在兩個虹膜庫上的ROC 曲線圖,曲線越接近坐標軸代表識別性能越好,由圖3 可見未經改進系統的ROC 曲線位于最上方,經過PSO 處理后,系統的識別性能有所提高,而使用了PSO 與SVM 的改進算法后,ROC 曲線相比原來更接近坐標軸,說明識別系統的性能得到明顯改善。
為驗證算法的識別性能,將本文所提出的方法與傳統的Daugman 算法[17]和Boles 的小波變換算法[18]在CASIA1.0 和CASIA-Iris-Lamp 虹膜庫中進行對比。 為確保實驗環境相同,將兩個傳統方法與所提方法在相同的設備上運行,具體運行結果如表5 所示。

圖3 CASIA1.0 虹膜庫ROC 曲線比較圖Fig. 3 Comparison of ROC of CASIA 1.0 Iris Library

圖4 CASIA-Iris-Lamp 虹膜庫ROC 曲線比較圖Fig. 4 Comparison of ROC of CASIA-Iris-Lamp Iris Library

表5 測試結果Tab. 5 Detection results
由表5 可見,在兩個虹膜庫上,本算法相對Boles 算法,系統的等錯率更低;而相比Daugman 算法的識別率更佳,識別速度更快。 由此可見,本文所提方法比傳統識別方法的性能更好。
虹膜特征提取及識別是虹膜識別系統中的關鍵環節[19],這直接關系著系統最終的性能。 傳統的方法通過Gabor 濾波[20]和Hamming 距離[21]的方法進行特征提取與識別。 而本文通過粒子群優化算法優化Gabor 濾波器,運用優化后的濾波器進行特征提取,通過SVM 的方法進行虹膜識別。 試驗結果顯示,所提出的方法相對Hamming 距離及傳統方法具有更高的識別率,等錯率更低,ROC 曲線更貼近坐標軸,識別性能有明顯的改善。
由于傳統的方法無法進行自動調整濾波器[11],需要手動調整,這也導致了濾波器不能適應不同虹膜庫,而本文所提方法可以根據虹膜圖的特點進行優化濾波參數,能更好的表示虹膜特征,相對Hamming 距離以及SVM 算法[22]而言,識別率有明顯提高。 在PSO 優化算法在對濾波器優化的過程中,粒子會根據尋優結果調整濾波器的參數,而調整后的濾波器更具有描述特征的能力[23],同時還能在一定程度上減小噪聲的影響,雖然不能完全消除噪聲,但也能對識別系統產生積極的影響。 另一方面,虹膜的噪聲區域特征不穩定,而SVM 能根據穩定的特征進行識別,達到去冗余的作用[24],對識別系統產生積極的影響,而Hamming 距離的方法無法對噪聲產生抑制作用。 本文所提方法能克服傳統識別方法只能手動修改濾波參數、無法根據虹膜庫自動調整參數的缺點,同時還具有減小噪聲影響的優點。
傳統的方法需人工調整濾波器,不能適應不同虹膜庫。 本文將PSO 與SVM 算法相結合,通過PSO 算法根據虹膜圖的特點進行自動優化濾波參數,并結合SVM 算法完成虹膜識別。 在實際應用中,不需要人工對不同的識別設備進行參數的修改,做到自動優化參數,并且擁有更高的識別率與降噪能力,同時能更快完成身份的識別,極大提高了系統的工作效率,具有很強的實用性。