基于自适应Gabor 滤波与支持向量机的虹膜识别方法

2020-11-11 08:02马晓峰高玮玮
智能计算机与应用 2020年6期
关键词:虹膜滤波器特征提取

马晓峰, 高玮玮

(上海工程技术大学 机械与汽车工程学院, 上海201620)

0 引 言

近年来,个人的信息安全问题变得越来越重要,传统的识别方法已无法满足人们的需求,随之而来的生物识别技术引起了人们的重视。 在众多识别技术中,虹膜因高稳定性、唯一性、非侵犯性等[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 根据最优特征完成虹膜的分类与识别。

1 材料与方法

1.1 试验材料与设备

试验材料为中科院自动化研究所的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。

1.2 方法

虹膜图像的识别包括预处理、特征提取与识别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 的训练;最后针对虹膜库中剩余的虹膜,通过训练好的分类器计算出待识别虹膜的相应决策输出值,得出虹膜所属的类别。

2 结果与分析

2.1 滤波器个数与虹膜块数量的确定

影响特征编码的主要因素有:滤波器的个数、虹膜子块的大小。 为确定滤波器和虹膜块的数量,从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 列。

2.2 虹膜识别性能试验

在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 算法的识别率更佳,识别速度更快。 由此可见,本文所提方法比传统识别方法的性能更好。

3 结束语

虹膜特征提取及识别是虹膜识别系统中的关键环节[19],这直接关系着系统最终的性能。 传统的方法通过Gabor 滤波[20]和Hamming 距离[21]的方法进行特征提取与识别。 而本文通过粒子群优化算法优化Gabor 滤波器,运用优化后的滤波器进行特征提取,通过SVM 的方法进行虹膜识别。 试验结果显示,所提出的方法相对Hamming 距离及传统方法具有更高的识别率,等错率更低,ROC 曲线更贴近坐标轴,识别性能有明显的改善。

由于传统的方法无法进行自动调整滤波器[11],需要手动调整,这也导致了滤波器不能适应不同虹膜库,而本文所提方法可以根据虹膜图的特点进行优化滤波参数,能更好的表示虹膜特征,相对Hamming 距离以及SVM 算法[22]而言,识别率有明显提高。 在PSO 优化算法在对滤波器优化的过程中,粒子会根据寻优结果调整滤波器的参数,而调整后的滤波器更具有描述特征的能力[23],同时还能在一定程度上减小噪声的影响,虽然不能完全消除噪声,但也能对识别系统产生积极的影响。 另一方面,虹膜的噪声区域特征不稳定,而SVM 能根据稳定的特征进行识别,达到去冗余的作用[24],对识别系统产生积极的影响,而Hamming 距离的方法无法对噪声产生抑制作用。 本文所提方法能克服传统识别方法只能手动修改滤波参数、无法根据虹膜库自动调整参数的缺点,同时还具有减小噪声影响的优点。

传统的方法需人工调整滤波器,不能适应不同虹膜库。 本文将PSO 与SVM 算法相结合,通过PSO 算法根据虹膜图的特点进行自动优化滤波参数,并结合SVM 算法完成虹膜识别。 在实际应用中,不需要人工对不同的识别设备进行参数的修改,做到自动优化参数,并且拥有更高的识别率与降噪能力,同时能更快完成身份的识别,极大提高了系统的工作效率,具有很强的实用性。

猜你喜欢
虹膜滤波器特征提取
浅谈有源滤波器分析及仿真
基于多模谐振器的超宽带滤波器设计
双眼虹膜劈裂症一例
一款用于无线通信系统的小型滤波器天线
空间目标的ISAR成像及轮廓特征提取
“刷眼”如何开启孩子回家之门
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于特征提取的绘本阅读机器人设计方案
一种基于虹膜识别技术的车辆启动系统
“刷眼”如何开启孩子回家之门