人脸活体检测方法、系统、设备及可读存储介质与流程

文档序号:20919934发布日期:2020-05-29 14:01阅读:147来源:国知局
人脸活体检测方法、系统、设备及可读存储介质与流程

本发明涉及图像识别技术领域,特别涉及一种人脸活体检测方法、系统、设备及可读存储介质。



背景技术:

近年来,随着深度学习算法的发展,人脸识别技术得到了广泛的应用,“刷脸”的场景也越来越多,比如门禁,刷脸支付,刷脸考勤等。然而,前主流的人脸识别技术只能区分不同人脸之间的区别,而无法辨别是否用户本人在使用人脸识别。当用户的人脸信息泄露,不法分子就可以通过用户的人脸信息制作照片、视频、三维人脸模型来欺骗人脸识别系统,造成用户的财产和信息损失。而活体检测是用于防止这些欺骗的有效方法。

传统的活体检测方案主要包括交互式活体检测、单目静默式活体检测,双目静默式活体检测等等。交互式活体检测主要通过用户交互的方式来实现活体检测功能,存在用户体验差,且无法应对视频回放攻击。单目静默式活体检测法通过提取图像中人脸的纹理、摩尔纹、边框等特征来区分真人和攻击,然而纹理特征与相机的类型有很大关系,不同类型的相机下真人和攻击纹理的区别很大,这会导致该项特征的泛化性较差,而摩尔纹和边框特征则可以通过特殊角度的摆拍来避免该类特征的出现,因此单目活体检测的安全等级和泛化性都不高,无法应用于安防、金融等需要极高准确率的应用场景上;双目活体检测则采用额外的红外相机来得到红外人脸图像,通过提取红外图和rgb图中真实人脸和攻击人脸之间的区分性特征来实现活体检测功能,精度相比于单目活体有所提升,但是仍未提取真人人脸和攻击人脸的区分性特征,即人脸的深度信息,因此比较难以抵抗3d攻击。



技术实现要素:

本发明要解决的技术问题是如何提供安全等级高、鲁棒性好的人脸活体检测方法、系统、设备及可读存储介质。

为了解决上述技术问题,第一方面,本发明的技术方案为:一种人脸活体检测方法,其特征在于,包括步骤:

人脸关键点及人脸框检测,并进行人脸对齐;

使用人脸追踪技术关联连续视频帧中相同的人脸id;

采集深度图像,对图片中的人脸区域进行归一化处理,获得处理后的人脸深度图;

将一人脸id预设帧数的rgb人脸图像和所述人脸深度图输入深度学习网络进行检测,获得每一帧图片的活体判断结果;

将该人脸id的所有活体判断结果进行投票,当判断为活体的帧数多时,则认定对象为活体,判断为攻击的帧数多时,则认定对象为非活体。

优选地,对图片进行活体判断的深度学习网络使用resnet作为基础网络,所述深度学习网络采用人脸图像和所述人脸深度图的双输入通道,两个输入分支在分别进行特征提取后,通过se-module对两个分支提取出的特征进行选择性激发融合,再经过数层卷积对融合后的特征进行特征提取,获得活体判断结果。

优选地,所述深度学习网络的目标函数为focal损失函数。

优选地,人脸关键点中眼睛和嘴角所有点的实际深度,计算这些点的实际深度的均值,取归一化上限为均值加上固定值,下限为均值减去所述固定值,将人脸区域深度归一化为像素值在0~255区间的灰度图。

优选地,对于实际深度大于上限和小于下限位置的灰度值置为0。

优选地,归一化公式为:

其中,v为深度归一化后的灰度值,范围为0~255,dreal为人脸区域的实际深度,dmax为人脸实际深度的上限,dmin为人脸实际深度的下限。

优选地,在进行人脸对齐之后还包括步骤:过滤劣质的人脸图片。

另一方面,本发明还提出一种人脸活体检测系统,包括:

人脸检测模块,人脸关键点及人脸框检测,并进行人脸对齐;

人脸追踪模块,使用人脸追踪技术关联连续视频帧中相同的人脸id;

深度图像模块,采集深度图像,对图片中的人脸区域进行归一化处理,获得处理后的人脸深度图;

活体检测模块,将一人脸id预设帧数的rgb人脸图像和所述人脸深度图输入深度学习网络进行检测,获得每一帧图片的活体判断结果;

投票模块,将该人脸id的所有活体判断结果进行投票,当判断为活体的帧数多时,则认定对象为活体,判断为攻击的帧数多时,则认定对象为非活体。

再一方面,本发明还提出一种人脸活体检测设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的人脸活体检测方法的步骤。

又一方面,本发明还提出了一种人脸活体检测的可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时间实现上述的人脸活体检测方法的步骤。

采用上述技术方案,检测人脸关键点及人脸框检测,使用人脸追踪技术关联连续视频帧中相同的人脸id;采集深度图像,对图片中的人脸区域进行归一化处理,获得处理后的人脸深度图;将一人脸id预设帧数的rgb人脸图像和所述人脸深度图输入深度学习网络进行检测,获得每一帧图片的活体判断结果;进而判定将该人脸id是否为活体。

本专利通过深度相机快速取得了真人和攻击之间的具有很高区分性的特征——人脸深度,之后通过深度学习网络进行特征学习,能有效的区分各种类型的攻击和真人,性能优于常见的交互式活体检测、单目、双目活体检测。此外,本技术方案的整个活体判断过程无需用户配合,且速度较快,能给用户带来较好的体验感;相比于其他3d活体算法,同时改进了网络结构,同时考虑了rgb和深度的特征,模型鲁棒性更高。

附图说明

图1为本发明人脸活体检测方法一实施例的步骤流程图;

图2为本发明人脸活体检测方法一实施例中人脸106个关键点示意图;

图3为本发明人脸活体检测方法一实施例中未添加mask的人脸图;

图4为本发明人脸活体检测方法一实施例中添加mask后的人脸图;

图5为本发明人脸活体检测方法一实施例中的深度学习网络结构示意。

具体实施方式

下面结合附图对本发明的具体实施方式作进一步说明。在此需要说明的是,对于这些实施方式的说明用于帮助理解本发明,但并不构成对本发明的限定。此外,下面所描述的本发明各个实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互组合。

参照图1,为了解决上述技术问题,第一方面,本发明的技术方案为:一种人脸活体检测方法,其特征在于,包括步骤:

s10:人脸关键点及人脸框检测,并进行人脸对齐,过滤劣质的人脸图片;

s20:使用人脸追踪技术关联连续视频帧中相同的人脸id;

s30:采集深度图像,对图片中的人脸区域进行归一化处理,获得处理后的人脸深度图;

s40:将一人脸id预设帧数的rgb人脸图像和人脸深度图输入深度学习网络进行检测,获得每一帧图片的活体判断结果;

具体地,对图片进行活体判断的深度学习网络使用resnet(残差网络)作为基础网络,深度学习网络采用人脸图像和人脸深度图的双输入通道,两个输入分支在分别进行特征提取后,通过se-module对两个分支提取出的特征进行选择性激发融合,再经过数层卷积对融合后的特征进行特征提取,获得活体判断结果。深度学习网络的目标函数为focal损失函数。

需要说明的是,resnet(残差网络)是由来自microsoftresearch的4位学者提出的卷积神经网络,在2015年的imagenet大规模视觉识别竞赛中获得了图像分类和物体识别的优胜。残差网络的特点是容易优化,并且能够通过增加相当的深度来提高准确率。其内部的残差块使用了跳跃连接,缓解了在深度神经网络中增加深度带来的梯度消失问题。

具体地,人脸关键点中眼睛和嘴角所有点的实际深度,计算这些点的实际深度的均值,取归一化上限为均值加上固定值,下限为均值减去固定值,将人脸区域深度归一化为像素值在0~255区间的灰度图。

对于实际深度大于上限和小于下限位置的灰度值置为0。

归一化公式为:

其中,v为深度归一化后的灰度值,范围为0~255,dreal为人脸区域的实际深度,dmax为人脸实际深度的上限,dmin为人脸实际深度的下限。

s50:将该人脸id的所有活体判断结果进行投票,当判断为活体的帧数多时,则认定对象为活体,判断为攻击的帧数多时,则认定对象为非活体。

采用上述技术方案,检测人脸关键点及人脸框检测,使用人脸追踪技术关联连续视频帧中相同的人脸id;采集深度图像,对图片中的人脸区域进行归一化处理,获得处理后的人脸深度图;将一人脸id预设帧数的rgb人脸图像和人脸深度图输入深度学习网络进行检测,获得每一帧图片的活体判断结果;进而判定将该人脸id是否为活体。

本专利通过深度相机快速取得了真人和攻击之间的具有很高区分性的特征——人脸深度,之后通过深度学习网络进行特征学习,能有效的区分各种类型的攻击和真人,性能优于常见的交互式活体检测、单目、双目活体检测。此外,本技术方案的整个活体判断过程无需用户配合,且速度较快,能给用户带来较好的体验感;相比于其他3d活体算法,加入了质量优选模块,同时改进了网络结构,同时考虑了rgb和深度的特征,模型鲁棒性更高。

本发明的另一实施例中,包括如下步骤:

s1:人脸框检测

参照图2、图3、图4。s11:本发明使用mtcnn进行人脸检测得到106个人脸关键点来构建人脸区域mask分离人脸和背景信息,之后两用人脸对齐技术将人脸对齐到固定的模板上得到对齐人脸图像,示意图如下所示。

s2:人脸图像优选

本步骤采用人脸优选算法过滤极端情况,例如过曝、人脸角度过大下的人脸,并使用人脸追踪技术关联连续视频帧中相同的人脸id,保证每个视频中单独的人脸id只进行一定最优帧的活体判断。

s3:活体检测方法

s31:本发明中,对于深度相机采集到的深度图像我们采用人脸区域归一化代替常规的全图归一化,实现人脸部分深度的精细化成像。归一化具体步骤如下:取s1步骤得到的人脸106个关键点中眼睛和嘴角共20点的实际深度dlocal,计算这些点的均值dmean,取归一化上限为dmean+60,下限为dmean-60,采用如下公式,将人脸区域深度归一化为像素值在0~255区间的灰度图,对于实际深度大于上限和小于下限位置的灰度值置为0。

归一化公式为:

其中v为深度归一化后的灰度值,范围为0~255,dreal为人脸区域的实际深度,dmax为人脸实际深度的上限,dmin为人脸实际深度的下限。

s32:对于通过上述步骤处理完后得到的rgb人脸图像和深度人脸图像,输入改进后的深度学习网络进行特征学习。本专利里使用resnet作为基础网络,将原本网络的单输入通道改为rgb和归一化深度图的双输入,两个输入分支在分别进行一定的特征提取后,通过se-module对两个分支提取出的特征进行选择性激发融合,之后再经过数层卷积对融合后的特征进行特征提取,得到判断结果,同时使用focalloss替代传统的softmax来克服数据中存在的正负样本不平衡的问题。网络结构如图5所示。

s33:将经过步骤s2优选到的图像输入通过步骤s31学习好的深度学习网络进行活体判断,多帧的判断结果通进行投票,本专利采用最近邻的5帧,当判断为活体的帧数多时,则认定对象为活体;判断为攻击的帧数多时,则认定对象为非活体。

另一方面,本发明还提出一种人脸活体检测系统,包括:

人脸检测模块,人脸关键点及人脸框检测,并进行人脸对齐;

人脸追踪模块,使用人脸追踪技术关联连续视频帧中相同的人脸id;

深度图像模块,采集深度图像,对图片中的人脸区域进行归一化处理,获得处理后的人脸深度图;

活体检测模块,将一人脸id预设帧数的rgb人脸图像和人脸深度图输入深度学习网络进行检测,获得每一帧图片的活体判断结果;

投票模块,将该人脸id的所有活体判断结果进行投票,当判断为活体的帧数多时,则认定对象为活体,判断为攻击的帧数多时,则认定对象为非活体。

再一方面,本发明还提出一种人脸活体检测设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述的人脸活体检测方法的步骤。该方法包括步骤:

s10:人脸关键点及人脸框检测,并进行人脸对齐;

s20:使用人脸追踪技术关联连续视频帧中相同的人脸id;

s30:采集深度图像,对图片中的人脸区域进行归一化处理,获得处理后的人脸深度图;

s40:将一人脸id预设帧数的rgb人脸图像和所述人脸深度图输入深度学习网络进行检测,获得每一帧图片的活体判断结果;

s50:将该人脸id的所有活体判断结果进行投票,当判断为活体的帧数多时,则认定对象为活体,判断为攻击的帧数多时,则认定对象为非活体。

又一方面,本发明还提出了一种人脸活体检测的可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时间实现上述的人脸活体检测方法的步骤。该方法包括步骤:

s10:人脸关键点及人脸框检测,并进行人脸对齐;

s20:使用人脸追踪技术关联连续视频帧中相同的人脸id;

s30:采集深度图像,对图片中的人脸区域进行归一化处理,获得处理后的人脸深度图;

s40:将一人脸id预设帧数的rgb人脸图像和所述人脸深度图输入深度学习网络进行检测,获得每一帧图片的活体判断结果;

s50:将该人脸id的所有活体判断结果进行投票,当判断为活体的帧数多时,则认定对象为活体,判断为攻击的帧数多时,则认定对象为非活体。

本系统首先通过人脸检测与图像优选模块,过滤一些质量例如遮挡,头部姿态角度过大的差质量人脸,之后通过深度相机获取人脸的深度图像,经过特殊的归一化方式处理后输入改进的双流resnet网络进行学习,配合大量数据得到高鲁棒性的特征,从而达到能在无需用户配合的情况下有效的抵抗常见的攻击手段的效果。相对于其他的活体检测方法,本系统提出的方法使用深度学习算法所提取的特征具有更好的通用性,也具有更好的泛化能力,从而对各种场景的攻击都具有更好的鲁棒性。

以上结合附图对本发明的实施方式作了详细说明,但本发明不限于所描述的实施方式。对于本领域的技术人员而言,在不脱离本发明原理和精神的情况下,对这些实施方式进行多种变化、修改、替换和变型,仍落入本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1