马晓峰 高玮玮
摘 要: 为提高虹膜识别系统的性能,提出了基于Gabor滤波的改进虹膜识别方法。首先根据虹膜图像的灰度特性进行虹膜定位与归一化,然后利用多尺度Gabor滤波器进行特征提取,然后通过主成分分析法降维,并进行识别,根据识别能力的差异,计算滤波器的输出权值,最后利用加权后的距离进行虹膜识别。利用该方法对CASIA虹膜库进行识别,得到系统识别率为99.78%,等错率为0.19%。结果表明,利用改进的方法能充分发挥滤波器的识别性能,并增强系统的鲁棒性。
关键词: 虹膜识别;虹膜定位;特征提取;主成分分析
中图分类号: TP391.41 文献标识码: A DOI:10.3969/j.issn.1003-6970.2019.07.010
【Abstract】: In order to improve the performance of the iris recognition system, an improved iris recognition method based on Gabor filtering was proposed. Firstly, the iris was localized and normalized according to the gray-scale characteristics of the iris image. Secondly, the iris features were extracted by multi-scale Gabor filter and reduced by the principal component analysis method. Thirdly, the iris was identified, and the output weight of the filter was calculated according to the difference of discrimination ability. Finally, the weighted Gabor filtering was used to iris identification. The approach was tested on the CASIA iris library. With the Gabor filter, the system recognition rate reaches 99.78%, and the equal error rate is reduced to 0.19%. The improved algorithm based on Gabor filter can fully utilize the recognition performance of the filter and enhance the robustness of the system.
【Key words】: Iris recognition; Iris localization; Feature extraction; PCA
0 引言
随着网络与信息时代的到来,个人身份认证变得越来越重要,生物识别技术也逐渐发展起来,如:人脸识别[1-2]、虹膜识别[3-4]、指纹识别[5]、语音识 别[6]等。其中,虹膜识别技术因高准确性、高稳定性、唯一性等优点,被认为是生物特征识别领域最具有研究意义的识别技术。
目前典型的虹膜识别算法有:Daugman[7-8]提出的利用伽柏(Gabor)滤波提取虹膜特征的相位分析法;Wildes等[9]提出的拉普拉斯金字塔分解算法;Boles等[10]提出的小波变换过零点检测算法;王蕴红等[11]提出的Gabor滤波和Daubechies-4小波相结合的识别方法;Pillai等[12]提出的基于随机投影和稀疏表示的识别方法;Minaee等[13]提出利用散射变换和纹理特征进行虹膜识别等。这些方法均取得了很好的识别效果,在这些方法中,Daugman的Gabor滤波方法以优越的识别性能,成为国内外虹膜识别设备中的主流算法。許多研究者也对Gabor滤波方法做出了改进,如:苑玮琦等[14]针对虹膜纹理细节,提出2D-Gabor滤波器提取纹理方向特征的虹膜识别方法;冯薪桦等[15]提出了加权Hamming距离的方法;何威等[16]提出了2DPCA和多通道Gabor的方法,改善了虹膜识别的速度;陈芋文、张旭和方强等[17-19]分别提出了一维Log-Gabor滤波器和二维正交Log-Gabor滤波器,更全面地描述了虹膜的纹理特征空间;Hamouchene等[20]提出基于局部和方向纹理信息的特征提取方法,兼顾了虹膜的局部特征与全局特征,增强了识别效果。这些识别算法均取得了良好的识别性能,但是以往的方法对滤波器的输出赋予相同的权值,实际上各滤波器具有不同的纹理描述能力,有着不同的识别性能,所以应该对其区别对待。
针对不同滤波器的鉴别能力差异,在Daugman算法的基础上,提出了改进的Gabor滤波的虹膜识别方法。
1 材料与方法
1.1 实验材料及设备
虹膜图像为中科院公共数据库CASIA1.0[21],数据库中共有108只不同的眼睛,每只眼睛有7幅灰度图,其分辨率为320像素×280像素。为确定Gabor滤波器的权值,将其中36只眼睛图像作为训练样本,其余作为测试样本。
实验环境如下:CPU为Intel(R)Core(TM)i7- 6700HQ,内存8 GB,操作系统为win10,使用的软件为Matlab R2014a。
1.2 方法
虹膜图像的识别过程主要包括虹膜预处理、虹膜特征提取与匹配3个步骤[22],具体过程如图1所示。
1.2.1 虹膜预处理
通常拍摄到的虹膜图像中还存在一部分噪声,如:瞳孔、眼睑、睫毛等,因此就要通过预处理来消除上述各种因素的影响,预处理主要包括虹膜定位、归一化与增强。
1.2.1.1 虹膜定位
虹膜图像的定位就是确定瞳孔与虹膜边缘的圆心及半径。具体的定位过程如下:
(1)建立虹膜图像的灰度直方图,如图2b所示,将第一个峰值处的灰度值设为阈值,并进行二值化操作,如图2c所示。应用形态学操作中的闭运算对二值化图像进行处理,去除睫毛等噪声,结果如图2d所示。通过canny算子检测瞳孔边缘,并运用最小二乘法拟合瞳孔边缘,完成瞳孔的定位,定位结果如图2e所示。
(2)根据虹膜边缘与巩膜间的灰度差值较大的特征,以及虹膜边缘的环形特征,利用公式(1)所示的Daugman微积分算子在瞳孔圆心周围的10个
像素区间内进行运算,并完成虹膜的定位,定位结果如图2f所示。
公式(1)中 表示虹膜图像,r为圆积分半径,其积分路径为给定圆心 和半径r的圆周。由于各个相邻圆周像素的灰度均值会发生异常变化,所以使用了函数 ,该函数是一个尺度为 的高斯平滑函数,其作用是消除异常变化引起的虚假边缘。由于积分微分算子需要在整幅虹膜图上搜索,计算量极大,并考虑到眼睑与睫毛的遮挡,将积分范围限制在圆心左右两侧±30°的范围内。
1.2.1.2 虹膜归一化与增强
采用弹性模型,如图3所示,按照公式(2) 将直角坐标下近似环形的虹膜图像,映射到极坐标中去。
通过弹性模型,将虹膜图像归一化为120×480像素的区域,以消除在图像采集时带来的平移、缩放和旋转等影响,并且有利于特征抽取和模式比对,归一化的结果如图4(a)所示。由于归一化后虹膜图像的对比度比较低,因此对图像进行直方图均衡化,以减少光照不均的影响,均衡化结果如图4(b)所示。通常拍摄的虹膜图像中,上下眼睑与睫毛会遮挡局部的虹膜信息,所以只保留了归一化后右上方大小为60×240像素的区域,如图4(c)所示。
1.2.2 虹膜特征提取与匹配
1.2.2.1 虹膜特征提取與编码
对归一化后的虹膜图通过Gabor滤波器进行特征提取,Gabor滤波器的表达形式如下:
Gabor滤波器可以看作一个高斯调制的正弦函数,其中, 为滤波器的中心, 、 表示高斯窗的宽度与长度, 代表了滤波器频率为 ,方向为 。Gabor滤波器可以分解为实部偶对称和虚部奇对称的两个滤波器,文献[23]指出奇对称Gabor滤波器比偶对称滤波器更适于提取虹膜特征,只通过虚部奇对称滤波器滤波会得到更优的效果。
为了分析不同滤波器参数对虹膜识别结果的影响,选取了5个尺度4个方向的Gabor滤波参数,其中方向 选取为0、45、90、135°,频率 取0.125 00、0.083 30、0.062 50、0.050 00、0.041 67,根据滤波参数对虹膜图像进行滤波,形成60×240大小的特征码,并使用主成分分析法[24](principal component analysis,PCA)降噪,去冗余,最终形成1×240大小的特征编码。
1.2.2.2 改进的虹膜匹配算法
对虹膜特征编码后,需要对其进行匹配识别,具体是使用Hamming距离来表征两幅图像的相似性,且Hamming距离越小,两幅虹膜图像的相似程度越大,即识别为同类虹膜,反之,就认为不是同类的。Daugman采用的常规Hamming距离的计算式如下:
式中XOR表示异或运算,A、B是两个虹膜编码。由于不同的Gabor滤波器对虹膜的识别能力是有区别的,因此提出了基于加权Gabor滤波的方法进行相似度的计算。其计算式如下:
其中N为子滤波器的个数, 为各滤波器的输出权重, 、 为滤波器对应的特征编码。其中权重的大小根据各滤波器识别的等错率来确定,并遵循原则:滤波器的等错误率越小,权值越大。具体的加权方式如下:
其中: 为第i个子滤波器单独作用时对应的等错率,k为所有滤波器作用时等错率的平均值。
2 结果与分析
为确定Gabor滤波器输出端的权值,对36只眼睛的图像,利用Daugman[7]算法,进行两两匹配,计算每个Gabor滤波器单独对虹膜进行识别时的等错率,表1展示了取不同参数时各个Gabor滤波器的等错率。根据滤波器的等错率,运用公式(6)计算每个滤波器的权值,从而对剩余的72只眼睛图像进行算法测试。
为验证算法性能,将本文算法与另外三种算法进行比较,分别为:Daugman算法、经过PCA处理的Daugman算法和加权Daugman算法。改进Gabor滤波的方法与另外三种方法对72只眼睛图像的检测结果如表2所示。由表2可见,Daugman算法的等错率为0.41%,经过PCA处理后,等错率有所下降,而经过PCA与加权处理后,系统的等错率有明显的下降,下降了0.22%,大约在原来的基础上下降了一半左右。在图5中分别为4种算法的ROC曲线图,曲线越接近坐标轴代表识别性能越好,由图5可见未经改进的系统的ROC曲线位于最上方,识别性能最次,经过PCA处理后,系统的识别性能有所提高,而使用了PCA与加权的改进算法后,ROC曲线相比原来更接近坐标轴,识别系统的性能得到明显改善。
由以上实验结果可见,本文算法相对Daugman算法[3]的识别性能有明显的改善。这是因为一方面:虹膜图像中存在着光照等一系列噪声[25],通过PCA算法能在一定程度上消除噪声,去除虹膜特征中一些无用的信息,所以能增强系统的抗噪性,同时能达到降维、去冗余的作用,而Daugman算法[3]不能对噪声产生抑制作用,相反可能将其当作虹膜的特征,并影响识别效果。另一方面,在匹配部分通过加权的方式进行识别,研究发现各滤波器具有不同的纹理描述能力,通过加权的方式能充分发挥滤波器的识别能力,能大大降低系统的等错率,并提高识别能力。这两方面分别从图5中Daugman与PCA算法以及Daugman与加权算法的ROC曲线的位置关系得到了证实。所以结合PCA与加权这两种算法,使系统的识别性能得到了明显的改善。
虹膜特征提取及匹配是虹膜识别系统中的重点,这两部分直接关系着系统最终的性能。针对特征提取,通过PCA算法对虹膜进行降噪、去冗余,以消除虹膜图像特征中的不利因素,同时PCA算法可以很好将原始数据被投射到低维的空间[26],并使数据减少,这也能在一定程度上提高匹配速度,提高识别效率,能够对系统的识别性能产生积极的影响。而在匹配阶段,充分考虑了滤波器提取纹理特征的能力,针对描述能力强区分力高的纹理特征,对滤波器赋予更大的权重,这能大大提高系统的识别能力。所以本文将PCA与加权算法相结合,能进一步提高系统的识别性能,且算法易于实现,具有很强的鲁棒性。
3 结论
为提高虹膜识别系统的性能,分析了Gabor滤波器不同参数下的识别性能,针对滤波器识别率的不同,分别对各滤波器输出赋予不同的权重。该方法简单实用,使虹膜特征的可鉴别能力得到较大的提高,充分发挥了各个子滤波器的识别能力,并提高了虹膜识别系统的识别性能。由于Gabor滤波器的参数是人为选定的,所以进一步的工作是针对不同的虹膜库进行自适应参数的选取,以此来进一步提高识别的正确率和系统的鲁棒性。
参考文献
[1] 全雪峰. 基于奇异熵和随机森林的人脸识别[J]. 软件, 2016, 37(02): 35-38.
[2] 安大海, 蒋砚军. 基于BP神经网络的人脸识别系统[J]. 软件, 2015, 36(12): 76-79.
[3] Daugman J. Probing the uniqueness and randomness of iris codes: results from 200 billion iris pair comparisons[J]. Proceedings of the IEEE, 2006, 94(11): 1927-1935.
[4] 王海顺, 吴华. 虹膜在身份识别中的应用研究[J]. 计算机仿真, 2011, 28(11): 210-213.
[5] 朱静, 闵芳, 陈腊梅, 等. 基于指纹识别的支付系统的设计与实现[J]. 软件, 2015, 36(05): 129-132.
[6] 王愛芸. 语音识别技术在智能家居中的应用[J]. 软件, 2015, 36(07): 104-107.
[7] Daugman J G. High confidence visual recognition of persons by a test of statistical independence[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1993, 15(11): 1148-1161.
[8] Daugman J. How iris recognition works[J]. IEEE Transa-ctions on Circuits and Systems for Video Technology, 2004, 14(1): 21-30.
[9] Wildes R P, Asmuth J C, Green G L, et al. A machine-vision system for iris recognition[J]. Machine Vision & Appli?ca?tions, 1996, 9(1): 1-8.
[10] Boles W W, Boashash B. A human identification technique using images of the iris and wavelet transform[J]. IEEE Transactions on Signal Processing, 2002, 46(4): 1185-1188.
[11] 王蕴红, 朱勇, 谭铁牛. 基于虹膜识别的身份鉴别[J]. 自动化学报, 2002, 28(1): 1-10.
[12] Pillai J K, Patel V M, Chellappa R, et al. Secure and robust iris recognition using random projections and sparse representations[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2011, 33(9): 1877-1893.
[13] Minaee S, Abdolrashidi A A, Yao W. Iris recognition using scattering transform and textural features[C]. Salt Lake City: Signal Processing & Signal Processing Education Workshop, 2015.
[14] 苑玮琦, 冯琪, 柯丽. 利用2D-Gabor滤波器提取纹理方向特征的虹膜识别方法[J]. 计算机应用研究, 2009, 26(8): 3166-3168.
[15] 冯薪桦, 丁晓青, 吴佑寿. 基于加权Hamming距离的虹膜匹配算法[J]. 清华大学学报(自然科学版), 2009, 49(04): 514-517.
[16] 何威, 周克. 基于多通道Gabor滤波和2DPCA的虹膜识别算法[J]. 实验室研究与探索, 2013, 32(06): 21-24.
[17] 陈芋文, 向林泓, 张昱琳. 基于Log-Gabor滤波的虹膜识别系统[J]. 计算机与现代化, 2012, 203(7): 100-103.
[18] 张旭. 一种改进Log-Gabor滤波的虹膜识别算法[J]. 计算机仿真, 2012, 29(5): 283-286.
[19] 方强, 姚鹏. 基于二维正交滤波的虹膜识别算法[J]. 计算机科学, 2015, 42(5): 281-285.
[20] Hamouchene I, Aouat S. Efficient approach for iris reco-gnition[J]. Signal Image & Video Processing, 2016, 10(7): 1-7.
[21] 中国科学院自动化研究所. CASIA虹膜图像数据库[DB]. http: //biometrics.idealtest.org/dbDetailForUser.do?id=1.
[22] Liu S, Liu Y N, Zhu X D, et al. Iris double recognition based on modified evolutionary neural network[J]. Journal of Ele?ctronic Imaging, 2017, 26(6): 1.
[23] 程宇奇. 用于身份鑒别的虹膜识别算法研究[D]. 长春: 中国科学院研究生院(长春光学精密机械与物理研究所), 2010.
[24] 邓高登, 王晓晔, 袁闻, 等. 基于PCA与MLP感知器的人脸图像辨识技术[J]. 软件, 2016, 37(06): 11-15.
[25] Ghodrati H, Dehghani M J, Danyali H. A new accurate noise-removing approach for non-cooperative iris recogni-tion[J]. Signal Image & Video Processing, 2014, 8(1): 1-10.
[26] Shi J X, Gu X F. The comparison of iris recognition using principal component analysis, independent component ana-lysis and Gabor wavelets[C]. Chengdu: IEEE International Conference on Computer Science & Information Technology, 2010.