本发明涉及活体检测技术领域,特别涉及一种基于红外灯闪烁的虹膜活体检测方法。
背景技术:
由于虹膜识别中是对图像数据进行处理,从而造成虹膜识别系统容易被照片、刻有虹膜纹理的隐形眼镜、3d眼球模型等手段伪造的虹膜欺骗,于是虹膜防伪应运而生,但是现有的虹膜防伪方法存在以下缺陷:
1、频谱分析的方法,对于高清打印的虹膜图像或存在运动模糊的虹膜图像,该方法无法准确判断;2、反光信息分析的方法,对于佩戴隐形眼镜的打印虹膜图像,该方法将失效;3、纹理分析的方法,在虹膜图像处于模糊与清晰的分界区域附近,该方法无法准确判断是否为活体;4、检测瞳孔收缩的方法,该方法需要强光刺激瞳孔,从而引起瞳孔收缩达到活体检测的目的,用户体验差,难以被用户接受。由此亟待提出一种更安全可靠的虹膜活体检测方法。
技术实现要素:
为了解决上述技术问题,本发明提出了一种基于红外灯闪烁的虹膜活体检测方法,通过虹膜识别设备的红外灯和摄像头进行活体检测,其包括以下步骤:
s1建立闪烁规则库;
s2依据闪烁规则库中的闪烁规则采集正样本的第一活性特征向量和负样本的第二活性特征向量,所述第一活性特征向量和所述第二活性特征向量作为该闪烁规则的训练样本,该训练样本通过机器学习算法训练得到分类模型;
s3在闪烁规则库中选择闪烁规则,采集红外灯依据该闪烁规则闪烁时当前虹膜识别对象的第三活性特征向量;
s4分类模型根据所述第三活性特征向量预测虹膜识别对象是否为活体。
本发明基于红外灯闪烁的虹膜活体检测方法的改进在于,所述闪烁规则库包括至少一组闪烁规则,该闪烁规则为红外灯闪烁的规则。
本发明基于红外灯闪烁的虹膜活体检测方法的进一步改进在于,所述正样本指活体,所述负样本指假体。
本发明基于红外灯闪烁的虹膜活体检测方法的进一步改进在于,则步骤s2进一步包括:
s21在闪烁规则库中选择一组闪烁规则;
s22红外灯依照该闪烁规则进行闪烁,同时摄像头录制正样本或负样本的视频,并截取n帧图像;
s23计算分析n帧图像的活性特征向量,形成正样本的第一活性特征向量或负样本的第二活性特征向量,并存入数据库;
s24重复上述步骤,直至采集完闪烁数据库中所有闪烁规则对应的第一活性特征向量和第二活性特征向量。
本发明基于红外灯闪烁的虹膜活体检测方法的进一步改进在于,步骤s23进一步包括:
计算n帧图像中每一帧图像的活性特征,得到n个活性特征,该n个活性特征构成n帧图像的活性特征向量;
对所述活性特征向量进行归一化,得到正样本的第一活性特征向量或负样本的第二活性特征向量。
本发明基于红外灯闪烁的虹膜活体检测方法的进一步改进在于,所述活性特征指每一帧图像的平均灰度值、每一帧图像中瞳孔和虹膜区域的反光点个数、反光点的平均灰度值三者相乘得到的乘积。
本发明基于红外灯闪烁的虹膜活体检测方法的进一步改进在于,采用l2-norm对所述活性特征向量进行归一化。
本发明基于红外灯闪烁的虹膜活体检测方法的进一步改进在于,所述红外灯的数量为至少两个。
本发明基于红外灯闪烁的虹膜活体检测方法的进一步改进在于,所述闪烁规则包括闪烁状态和闪烁时长。
本发明基于红外灯闪烁的虹膜活体检测方法可以基于虹膜识别设备原有的红外灯和摄像头实现活体检测,无需添加硬件设备,成本低,对虹膜识别设备的通用性好,本发明无需用户主动配合,对于用户也没有异常刺激,能够有效抵挡照片攻击、视频攻击、3d眼球模型攻击,活体检测准确率高,在未提升硬件成本的前提下达到了较好的技术效果。
附图说明
图1为基于红外灯闪烁的虹膜活体检测方法的流程示意图。
图2为第一活性特征向量采集的流程示意图。
具体实施方式
下面结合附图对本发明进行进一步详细描述。
红外灯闪烁时,活体虹膜会随着红外灯闪烁状态的不同发生变化,而假体虹膜随红外灯闪烁状态的不同产生的变化与活体虹膜产生的变化存在差异,故可利用红外灯的闪烁进行虹膜活体的检测。
本发明提出了一种基于红外灯闪烁的虹膜活体检测方法,通过虹膜识别设备的红外灯和摄像头进行活体检测,用户在虹膜识别设备上进行虹膜识别时,虹膜识别设备首先对用户进行活体检测,如图1所示,虹膜活体检测方法包括以下步骤:
s1建立闪烁规则库;
所述闪烁规则库包括至少一组闪烁规则,该闪烁规则是指红外灯闪烁的规则,在本实施例中,所述闪烁规则库包括5组闪烁规则,在其他实施例中可根据需求设置闪烁规则的数量。所述闪烁规则包括闪烁状态、闪烁时长,其中,闪烁状态指红外灯的点亮、熄灭,闪烁时长指红外灯点亮或熄灭的时长,红外灯点亮、熄灭的状态切换,以及不同状态的持续时长组合构成闪烁规则。红外灯在执行一组闪烁规则时,即按照此组闪烁规则规定的闪烁状态和闪烁时长进行闪烁。在本实施例中,红外灯的数量设置为2个,从而闪烁规则包含每个红外灯的闪烁状态和闪烁时长,在其他实施例中,可根据实际需求进行红外灯数量的设定。
s2依据闪烁规则库中的闪烁规则采集正样本的第一活性特征向量和负样本的第二活性特征向量,所述第一活性特征向量和所述第二活性特征向量作为该闪烁规则的训练样本,该训练样本通过机器学习算法训练得到分类模型;所述正样本指活体虹膜,所述负样本指假体虹膜,如照片、虹膜等。
结合图2,具体地,
s21在闪烁规则库中选择一组闪烁规则;
s22红外灯依照该闪烁规则进行闪烁,在所述红外灯闪烁的同时摄像头录制正样本或负样本的视频,即摄像头录制在此红外灯依照前述闪烁规则闪烁时活体虹膜或假体虹膜的视频,并截取录制视频的n帧图像;
s23计算n帧图像中每一帧图像的活性特征,较佳地,所述活性特征指每一帧图像整个图像的平均灰度值、每一帧图像中瞳孔和虹膜区域的反光点个数、反光点的平均灰度值三者的乘积,即需计算n帧图像中每一帧图像中整个图像的平均灰度值、每一帧图像中瞳孔和虹膜区域的反光点个数、瞳孔和虹膜区域反光点的平均灰度值,并将该三者相乘得到每一帧图像的活性特征,n帧图像即可得到n个活性特征,该n个活性特征构成n帧图像的活性特征向量;
采用l2-norm对所述活性特征向量进行归一化,在其他实施例中也可采用其他合适的方法对所述活性特征向量进行归一化,得到归一化后的活性特征向量,形成正样本的第一活性特征向量或负样本的第二活性特征向量,并存入数据库;
s24重复上述步骤,直至采集完闪烁规则库中所有闪烁规则对应的第一活性特征向量和第二活性特征向量,所述第一活性特征向量和所述第二活性特征向量即作为训练样本,之后将该训练样本输入到svm算法中训练,通过机器学习的方式得到分类模型。
s3在闪烁规则库中随机选择一组闪烁规则,采集红外灯依据该闪烁规则闪烁时当前用户虹膜识别对象的第三活性特征向量,该第三活性特征向量的采集和计算与前述第二活性特征向量和第一活性特征向量相似,即:
s31在闪烁规则库中选择一组闪烁规则;
s32红外灯依照该闪烁规则进行闪烁,在所述红外灯闪烁的同时摄像头录制当前虹膜识别对象的视频,并截取录制视频的n帧图像;
s23计算n帧图像中每一帧图像的活性特征,较佳地,所述活性特征指每一帧图像整个图像的平均灰度值、每一帧图像中瞳孔和虹膜区域的反光点个数、反光点的平均灰度值三者的乘积,即需计算n帧图像中每一帧图像中整个图像的平均灰度值、每一帧图像中瞳孔和虹膜区域的反光点个数、瞳孔和虹膜区域反光点的平均灰度值,并将该三者相乘得到每一帧图像的活性特征,n帧图像即可得到n个活性特征,该n个活性特征构成n帧图像的活性特征向量;
采用l2-norm对所述活性特征向量进行归一化,在其他实施例中也可采用其他合适的方法对所述活性特征向量进行归一化,得到归一化后的活性特征向量,形成当前虹膜识别对象的第三活性特征向量,并存入数据库;
s4分类模型根据所述第三活性特征向量预测虹膜识别对象是否为活体;
具体地,将s3得到的第三活性特征向量输入到svm算法,并用s2得到的分类模型对该第三活性特征向量进行预测,得到预测结果。
进一步地,针对每个闪烁规则,在该闪烁规则下采集的正样本、负样本以及虹膜识别对象的视频,需截取相同的n帧图像,如,闪烁规则对应一个闪烁周期,需截取红外灯闪烁周期中同一时间段的n帧图像,在其他实施例中,可能存在红外灯闪烁几个闪烁周期的情况,此时,可截取红外灯闪烁状态相同的某一时间段的n帧图像,保证数据的准确性,该n帧图像为连续的n帧图像。较佳地,在本实施例中,红外灯依照闪烁规则闪烁时,会同步触发摄像头开始录制视频,即在同一闪烁规则中,录制视频开始时对应的红外灯状态是相同的,故为了节省时间和保证n帧图像截取的准确度,本实施例中,统一截取视频的前n帧图像。
进一步地,在本实施例中,摄像头的数量为一个,在其他实施例中,摄像头的数量可以为多个,当摄像头数量为多个时,需预先采集每个摄像头对应的第一活性特征向量和第二活性特征向量,并得到每个摄像头的分类模型,在虹膜识别对象进行虹膜识别时,每个摄像头采集该虹膜识别对象的第三活性特征向量,并将每个摄像头的第三活性特征向量通过其相应的分类模型预测,得到是否为活体的预测结果,并综合分析每个摄像头的预测结果,得出最终结果。
本发明基于红外灯闪烁的虹膜活体检测方法,建立闪烁规则,依据不同闪烁规则下,活体虹膜和假体虹膜活性特征不同的特性进行活体检测,并利用机器学习的方法建立分类模型对虹膜识别对象进行活体检测,简便快速,且无需在虹膜识别设备上增加其他部件。
显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
1.一种基于红外灯闪烁的虹膜活体检测方法,通过虹膜识别设备的红外灯和摄像头进行活体检测,其特征在于包括以下步骤:
s1建立闪烁规则库;
s2依据闪烁规则库中的闪烁规则采集正样本的第一活性特征向量和负样本的第二活性特征向量,所述第一活性特征向量和所述第二活性特征向量作为该闪烁规则的训练样本,该训练样本通过机器学习算法训练得到分类模型;
s3在闪烁规则库中选择闪烁规则,采集红外灯依据该闪烁规则闪烁时当前虹膜识别对象的第三活性特征向量;
s4分类模型根据所述第三活性特征向量预测虹膜识别对象是否为活体。
2.根据权利要求1所述的基于红外灯闪烁的虹膜活体检测方法,其特征在于:所述闪烁规则库包括至少一组闪烁规则,该闪烁规则为红外灯闪烁的规则。
3.根据权利要求1所述的基于红外灯闪烁的虹膜活体检测方法,其特征在于:所述正样本指活体,所述负样本指假体。
4.根据权利要求1所述的基于红外灯闪烁的虹膜活体检测方法,其特征在于,步骤s2进一步包括:
s21在闪烁规则库中选择一组闪烁规则;
s22红外灯依照该闪烁规则进行闪烁,同时摄像头录制正样本或负样本的视频,并截取n帧图像;
s23计算分析n帧图像的活性特征向量,形成正样本的第一活性特征向量或负样本的第二活性特征向量,并存入数据库;
s24重复上述步骤,直至采集完闪烁数据库中所有闪烁规则对应的第一活性特征向量和第二活性特征向量。
5.根据权利要求4所述的基于红外灯闪烁的虹膜活体检测方法,其特征在于,步骤s23进一步包括:
计算n帧图像中每一帧图像的活性特征,得到n个活性特征,该n个活性特征构成n帧图像的活性特征向量;
对所述活性特征向量进行归一化,得到正样本的第一活性特征向量或负样本的第二活性特征向量。
6.根据权利要求5所述的基于红外灯闪烁的虹膜活体检测方法,其特征在于:所述活性特征指每一帧图像的平均灰度值、每一帧图像中瞳孔和虹膜区域的反光点个数、反光点的平均灰度值三者相乘得到的乘积。
7.根据权利要求5所述的基于红外灯闪烁的虹膜活体检测方法,其特征在于:采用l2-norm对所述活性特征向量进行归一化。
8.根据权利要求1所述的基于红外灯闪烁的虹膜活体检测方法,其特征在于:所述红外灯的数量为至少两个。
9.根据权利要求1所述的基于红外灯闪烁的虹膜活体检测方法,其特征在于:所述闪烁规则包括闪烁状态和闪烁时长。
技术总结