发明内容
(一)要解决的技术问题
本发明的目的是针对上述现有技术中存在的问题,提供一种快速有效的虹膜活体检测方法。
(二)技术方案
为了实现上述目的,本发明基于局部二元模式特征和自适应增强学习算法的虹膜活体检测方法包括步骤:
步骤S1:收集和构建含有虹膜图像的训练图像库,对训练图像库中的虹膜图像进行预处理,得到训练图像库中的虹膜图像的感兴趣区域;利用多尺度的局部二元模式算子对训练图像库中的虹膜图像的感兴趣区域进行特征抽取;利用自适应增强学习算法优选得到分类能力最强的局部二元模式特征,同时构建用于虹膜活体检测的分类器;
步骤S2:对任意输入的测试虹膜图像进行预处理,得到测试虹膜图像的感兴趣区域,在该测试虹膜图像的感兴趣区域上抽取优选得到的局部二值模式特征,并利用训练得到的虹膜活体检测分类器判断该输入的测试虹膜图像是否来自活体虹膜。
优选地,所述步骤S1,即虹膜活体检测分类器的构建包括如下步骤:
步骤S11:收集和构建包含活体虹膜图像和人工伪造物虹膜图像的训练图像库,将活体虹膜图像作为正训练样本,将人工伪造物虹膜图像作为负训练样本,并对训练图像库中的活体虹膜图像和人工伪造物虹膜图像进行预处理,得到训练图像库中的活体虹膜图像和人工伪造物虹膜图像的感兴趣区域;
步骤S12:对所述训练图像库中的活体虹膜图像和人工伪造物虹膜图像的感兴趣区域进行归一化,将训练图像库中的活体虹膜图像和人工伪造物虹膜图像的感兴趣区域从直角坐标系转换到极坐标系,得到训练图像库中的活体虹膜图像和人工伪造物虹膜图像在极坐标系下的虹膜图像;沿着训练图像库中的活体虹膜图像和人工伪造物虹膜图像在极坐标系下的虹膜图像的水平和竖直方向将极坐标系下的虹膜图像划分成多个子区域;
步骤S13:用多尺度的局部二元模式算子在所述子区域上进行滤波,计算子区域上每个像素的局部二元模式算子特征码,并统计该子区域上每个局部二元模式算子特征码的出现概率,该概率值作为一个候选的局部二元模式特征用于虹膜活体检测;
步骤S14:利用自适应增强学习算法从所述局部二元模式特征候选集合中优选出分类能力最强的局部二元模式特征,并根据该局部二元模式特征在训练集上的分布情况构建虹膜活体检测分类器。
优选地,所述预处理是对任意输入的三类虹膜图像进行预处理,三类虹膜图像包括测试虹膜图像、活体虹膜图像和人工伪造物虹膜图像,首先使用圆模型定位所述的三类虹膜图像中虹膜内外圆边界的圆心和半径;以瞳孔圆心为原点将所述的三类虹膜图像从直角坐标系变换到极坐标系;在极坐标系下将所述的三类虹膜图像缩放到统一的大小,实现所述的三类虹膜图像的归一化;然后截取虹膜圆环中排除了上面90度和下面90度范围的区域作为感兴趣区域。
优选地,所述的自适应增强学习算法在统计每个候选局部二元模式特征φ在正负训练集上的分布密度Pφ +(sj)和Pφ -(sj)时,使用高斯核密度估计算法对所得密度分布进行平滑和优化,其中,高斯核密度估计的计算公式如下:
其中σ表示所选的高斯核的方差,N1,N2表示训练数据库中正负训练图像的数目,s表示候选局部二元模式特征φ的特征值,sn表示第n个正样本或负样本在特征φ的取值。
优选地,所述步骤S2,即测试虹膜图像的活体检测步骤包括:
步骤S21:对任意输入的测试虹膜图像进行预处理,得到该测试虹膜图像的感兴趣区域;
步骤S22:对所述测试虹膜图像的感兴趣区域进行归一化,将测试虹膜图像的感兴趣区域从直角坐标系转换到极坐标系,得到极坐标系下的测试虹膜图像;沿着极坐标系下的测试虹膜图像的水平和竖直方向将极坐标系下的测试虹膜图像划分成多个子区域;
步骤S23:计算优选出的局部二元模式特征在输入的测试虹膜图像对应子区域上的特征值;
步骤S24:将特征值输入到训练学习到的分类器中,根据分类器输出结果判断该测试虹膜图像是否是活体虹膜图像,并在不是活体虹膜图像时,给出报警信号。
优选地,所述特征值的计算包括:在优选得到的子区域中的每个像素上计算优选得到的局部二元模式算子的特征码,并统计该二元模式算子特征码在该子区域上的出现概率作为该局部二元模式特征的特征值。
(三)有益效果
本发明提出一种基于局部二元模式特征和自适应增强学习算法的虹膜活体检测方法。本发明所述方法对于提高虹膜识别系统的精确性和安全性具有重要的意义,其主要优点如下:
1.本发明充分利用了活体虹膜图像和伪造虹膜图像在纹理表象上的差异,可以广泛的适用于多种伪造虹膜的检测和报警,极大地提高了虹膜识别系统的安全性。
2.本发明充分利用虹膜图像的纹理分布特征,如角度方向上的自相似性、半径方向的延展性等,将虹膜感兴趣区域沿着虹膜的半径和角度方向划分成不同的子区域,并在每个子区域上抽取不同尺度的局部二元模式特征,同时利用自适应增强学习算法选择那些最具分类能力的候选特征用于虹膜活体检测分类器的设计,大大提高了虹膜活体检测算法的精确性。
3.本发明采用的局部二元模式特征计算速度快,可以实时地对虹膜图像进行活体检测。
4.本发明提出的基于局部二元模式特征和自适应增强学习算法的分类方法还可以扩展到其他需要纹理表达和特征选择的领域中,如人脸活体检测、虹膜识别等,具有很强的可扩张性和实用性。
得益于上述优点,本发明使快速有效的虹膜活体检测成为可能,极大地提高了现有虹膜识别系统的可靠性和安全性,可广泛应用于使用虹膜识别进行身份认证或者识别的系统中,比如虹膜出入境身份认证系统、虹膜ATM机、虹膜门禁系统、虹膜手机、虹膜PC登录系统等等。
具体实施方式
下面结合附图说明本发明技术方案中所涉及的技术问题。应指出的是,所描述的实施例仅旨在便于对本发明的理解,而对其不起任何限定作用。
现有的虹膜识别技术面临着各种人工伪造虹膜纹理的威胁和攻击。常见的人工伪造虹膜技术包括:纸质打印虹膜、带有虹膜花纹的玻璃或塑料眼球、虹膜采集视频回放以及印有彩色花纹的隐形眼镜等。如果虹膜识别系统不能准确地对这些伪造虹膜数据进行检测和报警,将对授权用户造成巨大的潜在损失。
大量的实验研究表明,人工伪造物形成的虹膜图像与活体虹膜图像在纹理上存在比较明显的差异。如图2a所示,活体虹膜图像的纹理分布比较细腻润滑;如图2b所示,人工伪造物形成的虹膜图像的纹理则比较粗糙。因此,本发明通过纹理分析的方法,对这种差异进行表达和描述,达到虹膜活体检测的目的。
本发明提出采用局部二元模式特征对虹膜纹理进行描述和表达。局部二元模式特征通过二进制编码定性地描述某像素与其领域像素的灰度差值,从而可以对图像局部纹理微结构进行准确描述。进一步地,局部二元模式特征在某个图像区域上的统计分布又可以描述图像在该区域的结构信息。局部二元模式特征具有计算速度快、鲁棒性强等优点,特别适合用于虹膜的纹理描述和表达。
同时,如图2a和图2b中虹膜图像所示,虹膜纹理具有角度的自相似性和半径方向的延展性等优良的纹理分布特性。这些分布特性表明虹膜图像中不同区域的纹理尺度各不相同,因此本发明沿虹膜的半径和角度方向将虹膜感兴趣区域划分成R1-R6六个子区域(如图3a所示),并采用多尺度分析的方法对子区域虹膜纹理进行局部二元模式特征的抽取,从而达到对虹膜纹理进行个性化描述的目的。
最后,本发明采用自适应增强学习算法对抽取得到的候选局部二元模式特征进行学习和训练,优选那些分类能力最强的局部二元模式特征用于构建虹膜活体检测分类器。
根据上述分析,本发明提出一种基于局部二元模式算子特征和自适应增强学习算法的虹膜活体检测方法,其流程框图如图1所示,包括两个步骤:
虹膜活体检测分类器的构建步骤S1:构建包含活体虹膜图像和人工伪造物虹膜图像的训练图像库,对训练图像库中的活体虹膜图像和人工伪造物虹膜图像进行预处理,得到训练图像库中的活体虹膜图像和人工伪造物虹膜图像的感兴趣区域并在感兴趣区域上进行多尺度局部二元模式特征的抽取,并利用自适应增强学习算法优选得到分类能力最强的局部二元模式特征,同时构建用于虹膜活体检测的分类器;
虹膜图像的活体检测步骤S2:对任意输入的测试虹膜图像进行预处理,得到测试虹膜图像的感兴趣区域并在感兴趣区域上抽取步骤S1中优选得到的局部二值模式特征,并利用步骤S1中学习得到的虹膜活体检测分类器判断该输入的测试虹膜图像是否来自活体虹膜。
下面对本发明涉及的关键步骤进行逐一说明。本发明所述方法中各个基本步骤的具体形式如下所述:
首先,虹膜活体检测分类器的构建步骤S1是基于局部二元模式特征的虹膜纹理表达以及基于自适应增强学习算法的特征选择和分类器构建。
为了准确描述人工伪造物虹膜图像与活体虹膜图像之间的纹理差异,我们沿人工伪造物虹膜图像或活体虹膜图像中的虹膜的半径和角度方向将人工伪造物虹膜图像或活体虹膜图像中的虹膜感兴趣区域分成很多小块,然后使用多尺度的局部二元模式算子对每个小块进行特征抽取和编码,并统计每个局部二元模式算子特征码在该小块上的出现概率作为候选的虹膜纹理特征;最后,使用自适应增强学习算法对所有候选特征在训练集上进行评估,挑选出那些对虹膜活体检测最有效的特征并构建分类器用于虹膜活体检测。具体过程如下:
步骤S11、收集和构建包含活体虹膜图像和人工伪造物虹膜图像的训练图像库,将活体虹膜图像作为正训练样本,将人工伪造物虹膜图像作为负训练样本,并对训练图像库中的活体虹膜图像和人工伪造物虹膜图像进行预处理,得到训练图像库中的活体虹膜图像和人工伪造物虹膜图像的感兴趣区域。具体地,首先使用圆模型对训练图像库中的活体虹膜图像和人工伪造物虹膜图像的内外圆边界进行定位,得到训练图像库中的活体虹膜图像和人工伪造物虹膜图像中虹膜的内外边界参数,即瞳孔的圆心和半径以及虹膜的圆心和半径。图3a示出了训练图像库中的活体虹膜图像和人工伪造物虹膜图像的定位结果示意图。最后在训练图像库中的活体虹膜图像和人工伪造物虹膜图像上截取受上眼皮、下眼皮、睫毛、眼镜框等遮挡物遮挡影响小的区域作为感兴趣区域。具体地,感兴趣区域是指虹膜圆环中排除了上面90度和下面90度范围的区域。图3a和图3b中未被黑块遮挡的部分示出了选取的感兴趣区域。
步骤S12、对所述训练图像库中的活体虹膜图像和人工伪造物虹膜图像的感兴趣区域进行归一化,以瞳孔圆心为原点将训练图像库中的活体虹膜图像和人工伪造物虹膜图像的感兴趣区域从直角坐标系转换到极坐标系,在极坐标系下将所有的训练图像库中的活体虹膜图像和人工伪造物虹膜图像缩放到统一的大小,实现训练图像库中的活体虹膜图像和人工伪造物虹膜图像的归一化,得到训练图像库中的活体虹膜图像和人工伪造物虹膜图像在极坐标系下的虹膜图像。图3b示出了图3a的归一化结果。沿着训练图像库中的活体虹膜图像和人工伪造物虹膜图像在极坐标系下的虹膜图像的水平和竖直方向将训练图像库中的活体虹膜图像和人工伪造物虹膜图像在极坐标系下的虹膜图像划分成六个子区域,每个子区域上纹理的分布特性是不同的。图3a示出了训练图像库中的活体虹膜图像和人工伪造物虹膜图像在直角坐标系下的子区域分割示意图;图3b示出了训练图像库中的活体虹膜图像和人工伪造物虹膜图像在极坐标下的子区域分割示意图,其中R1-R6是分割得到的六个子区域。
步骤S13、用多尺度的局部二元模式算子在步骤S12得到的子区域上滤波,计算子区域上每个像素的局部二元模式算子特征码,得到候选的局部二元模式特征集合,并统计不同子区域上每个局部二元模式特征码的出现概率,该概率值作为一个候选的局部纹理特征用于虹膜活体检测。对训练图像库中的活体虹膜图像和人工伪造物虹膜图像子区域上的每一个像素点,局部二元模式算子LBPP,R首先在该像素周围半径为R的圆周上均匀采样P个点,并比较这P个点与中心像素点的灰度高低,然后将比较结果用二进制的比特编码后组成一个P位的二进制特征码字。同时,为了增加局部二元模式算子的鲁棒性,本发明只选取那些二进制比特串中比特变化(即从0变为1,从1变为0)数目小于等于2的局部二元模式特征码用于纹理特征的表达和描述,图4a和图4b示出了局部二元模式算子的纹理特征抽取示意图,其中,图4a示出一个3×3的图像子区域,其中的数值是该3×3图像区域上像素点的灰度值,图4b示出了LBP8,1(即P=8,R=1时)局部二元模式算子在图4a上的编码结果。每一个局部二元模式特征码都对应一个图像微结构,而该码字在一个区域上的分布概率则可以表达和描述该区域的图像纹理结构。
本发明采用多尺度的局部二元模式算子对步骤S12中得到的训练图像库中的活体虹膜图像和人工伪造物虹膜图像的子区域进行特征抽取和编码。具体地,本发明采用了LBP8,1,LBP8,2,LBP8,5,LBP8,7,LBP12,2,LBP12,3,LBP12,5,LBP16,3,LBP16,5,LBP16,7等10个局部二元模式算子对虹膜子区域进行特征抽取,并统计每个局部二元模式算子特征码在对应子区域上的分布概率作为该子区域的一个候选的虹膜局部纹理特征。
在步骤S12中训练图像库中的活体虹膜图像和人工伪造物虹膜图像的感兴趣区域被划分成了6块,在本步骤S13中又采用了10个不同的局部二元模式算子,而每个局部二元模式算子又可以生成几十个不等的局部二元模式算子特征码,因此我们一共可以得到了8220个局部二元模式特征码在对应子区域上的概率分布值作为候选特征。
步骤S14、步骤S13产生的8220个候选的局部二元模式特征之间存在着高度冗余,本发明采用自适应增强算法从这些冗余特征中优选出那些对虹膜活体检测最有效的特征用于虹膜活体检测。自适应增强学习算法能够从候选特征中挑选那些在当前加权训练样本上分类能力最强的特征,并基于所选特征构建弱分类器组合后获得强分类器。图5示出了自适应增强学习算法的流程图。自适应增强学习算法主要包括如下几个步骤:
步骤S141、组织训练样本并对每个训练样本的权重进行初始化。假设有N1个正样本和N2个负样本,那么正负样本的初始权重分别为1/2N1和1/2N2。
步骤S 142、在当前加权的正负样本集上选取使得下式最小化的候选局部二元模式特征作为当前加权样本集上的最优特征:
其中Φ表示所有候选局部二元模式特征的集合,Pφ +(sj)为候选特征φ在正样本集合上特征值等于sj的概率,Pφ -(sj)为特征φ在负样本集合上特征值等于sj的概率。特别地,我们对Pφ +(sj)和Pφ -(sj)进行高斯核密度估计,以降低训练样本不足时的过学习问题,提高学习算法的鲁棒性和可移植性。即Pφ +(sj)和Pφ -(sj)由下式得到:
其中σ表示所选的高斯核的方差,N1,N2表示训练数据库中正负训练图像的数目,s表示候选局部二元模式特征φ的特征值,sn表示第n个正样本或负样本在特征φ的取值。
步骤S143、根据当前优选特征φt在正负样本上的分布概率建立单元分类器ht(φt):
并添加到组合分类器Ht(x)中。
步骤S144、根据步骤S143中所建立单元分类器在正负样本的分类结果更新训练样本的权重,并归一化。
其中wt(xi)是训练样本xi的当前权重,wt+1(xi)是经过权重更新后的样本权重,yi∈{+1,-1}表示训练样本xi的类别标号,正样本取值为1,负样本取值为-1,ht(φt(xi))是训练样本xi在步骤S143所建分类器上的分类结果,Zt是一个归一化系数,使得wt+1(xi)在所有训练样本上组成一个概率密度函数。
通过迭代地调用步骤S142至步骤S144,可以优选出一组(T个)分类能力最强的局部二元模式特征,分别建立单元分类器后构建虹膜活体检测组合分类器,直到组合分类器的检测结果达到了我们预先设定的性能指标。其中,组合分类器构建方法如下式所示:
其中,sign(x)是一个示性函数,当x>0时输出为1,否则为0;φt表示第t次迭代得到的优选特征,而ht(φt)是基于φt构建的单元分类器。
经过步骤S1的学习和训练后,如果某个样本的组合分类器的输出值为1,那么表明该样本为人工伪造物虹膜图像,否则为活体虹膜图像。
其次,虹膜图像的活体检测步骤S2是基于学习步骤S1学习到的优选特征及对应组合分类器对任意一幅测试虹膜图像进行检测,判断该测试虹膜图像是否是来自人工伪造物的虹膜图像。
对任意输入的测试虹膜图像,首先进行预处理,得到该测试虹膜图像的感兴趣区域,在感兴趣区域上抽取步骤S1中优选得到的局部二值模式特征,并利用步骤S1训练得到的虹膜活体检测分类器判断该测试虹膜图像是否来自活体虹膜,具体过程如下:
步骤S21、利用虹膜成像装置获取一幅清晰的测试虹膜图像,对输入的测试虹膜图像进行预处理,得到测试虹膜图像的感兴趣区域。具体地,首先使用圆模型对测试虹膜图像的内外边界进行定位,得到测试虹膜图像中虹膜的内外边界参数,即瞳孔的圆心和半径以及虹膜的圆心和半径。然后在测试虹膜图像上截取受上眼皮、下眼皮、睫毛、眼镜框等遮挡物遮挡影响小的区域作为测试虹膜图像感兴趣区域。具体地,测试虹膜图像的感兴趣区域是指测试虹膜图像的虹膜圆环中排除了上面90度和下面90度范围的区域。图3a和图3b中未被黑块遮挡的部分示出了选取的测试虹膜图像感兴趣区域。
步骤S22、对所述测试虹膜图像的感兴趣区域进行归一化,以瞳孔圆心为原点将测试虹膜图像的感兴趣区域从直角坐标系转换到极坐标系,在极坐标系下将测试虹膜图像缩放到统一的大小,实现测试虹膜图像的归一化,得到在极坐标系下的测试虹膜图像。沿着极坐标系下的测试虹膜图像的水平和竖直方向将极坐标系下的测试虹膜图像划分成六个子区域。图3b示出了极坐标系下的测试虹膜图像的子区域分割示意图,其中R1-R6是分割得到的六个子区域。
步骤S23、计算步骤S1中优选出的局部二元模式特征φt,t=1,2,...,T在该输入的测试虹膜图像对应子区域上的特征值。首先根据φt对应的局部二元模式算子在φt对应的子区域上进行滤波,然后统计该局部二元模式特征码φt在该子区域上的出现概率作为该测试虹膜图像上特征φt的特征值。
步骤S24、将步骤S23中计算得到的各个优选局部二元模式特征φt,t=1,2,...,T的特征值输入到步骤S1训练学习到的组合分类器中,根据分类器输出结果判断该测试虹膜图像是否是活体虹膜图像:
其中,sign(x)是一个示性函数,当x>0时输出为1,否则为0;φt表示步骤S1中的优选特征,而ht(φt)是基于φt构建的单元分类器。如果该测试虹膜图像在组合分类器上的输出值大于0,那么就认为该测试虹膜图像是伪造物虹膜图像,并发出警报信号,否则认为该测试虹膜图像为活体虹膜图像,不必发出警报信号。
实施例1:本发明基于局部二元模式特征和自适应增强学习算法的虹膜活体检测方法在基于虹膜识别的ATM自动取款机中的应用。
本发明可广泛应用于使用虹膜进行身份认证和识别的场景。一个典型的应用是银行ATM自动取款机的身份认证。假设某银行在VIP用户中推出了一项基于虹膜识别的身份认证系统替代传统的基于银行卡和密码的身份认证系统。银行首先需要将VIP用户的虹膜注册录入到其用户数据库中。注册之后,VIP用户就可以通过自己的眼睛来登录银行系统进行各项业务操作了。银行ATM机中的虹膜识别系统安装了基于本发明开发的虹膜活体检测系统,当银行为佩戴隐形眼镜的VIP用户何先生进行注册时,银行ATM机上的虹膜识别系统就可把采集到的测试虹膜图像输入到基于本发明开发的虹膜活体检测算法系统中。该算法系统首先根据本发明步骤S2所述的方法对采集到的测试虹膜图像进行预处理,得到感兴趣区域并进行子区域分割。然后虹膜活体检测系统根据本发明步骤S2所述步骤对感兴趣区域进行特征抽取和计算,并输入到利用本发明步骤S1训练学习到的虹膜活体检测分类器中。很快,该虹膜活体检测系统判断出当前测试虹膜图像是来自人工伪造物(此处为隐形眼镜)的虹膜图像,并及时发出警告。接到警告后,银行工作人员及时提醒何先生摘掉隐形眼镜后重新注册,并提醒他以后使用时也需要摘掉隐形眼镜。从而有效防止了用户在不知情的情况下佩戴隐形眼镜进行注册,而让其他佩戴同型号隐形眼镜的非法用户冒充合法用户的危险。
实施例2:本发明基于局部二元模式特征和自适应增强学习算法的虹膜活体检测方法在基于虹膜识别的出入境人员核查系统中的应用。
本发明可广泛应用于使用虹膜进行身份认证和识别的场景。一个典型的应用是对机场(或海关)出入境人员进行身份认证。假设在某国际机场出入境检查处安装了一套虹膜识别系统,该虹膜识别系统配备了基于本发明开发的虹膜活体检测系统。恐怖分子张某企图假冒合法旅客何某的身份入境作案。在入境之前,张某窃取了何某的虹膜纹理图像并将其打印在了玻璃眼球上,企图骗过入境处的虹膜识别系统。当张某试图通过出入境口岸时,入境处需要对张某的身份做一个认证。此时,虹膜识别摄像头采集到了张某人工伪造的玻璃眼球的虹膜图像,然后将采集到的虹膜图像输入到基于本发明开发的虹膜活体检测算法系统中。该算法系统首先根据本发明的步骤S2所述步骤对采集到的虹膜图像进行预处理,得到感兴趣区域并进行子区域分割。然后虹膜活体检测系统根据本发明步骤S2所述步骤对感兴趣区域进行特征抽取和计算,并输入到利用本发明步骤S1训练学习到的虹膜活体检测分类器中。很快,该虹膜活体检测系统判断出当前虹膜图像是来自人工伪造的虹膜纹理(此处为带有虹膜花纹的玻璃眼球),并及时报警。接到报警后,机场工作人员检查后发现了张某试图通过玻璃假眼冒充何某身份的企图,并对张某重新进行身份识别。随后虹膜识别系统识别出张某的真实身份,并移交公安机关。从而有效地防止了危险分子通过假冒身份进入我国作案的危险。
以上所述,仅为本发明中的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可理解想到的变换或替换,都应涵盖在本发明的包含范围之内,因此,本发明的保护范围应该以权利要求书的保护范围为准。