一种基于单一图像采集设备的三维人脸活体检测方法与流程

文档序号:17187304发布日期:2019-03-22 21:28阅读:246来源:国知局
一种基于单一图像采集设备的三维人脸活体检测方法与流程

本发明涉及人脸识别技术领域,更具体地说,涉及一种基于单一图像采集设备的三维人脸活体检测方法。



背景技术:

近年来,由于深度学习技术的普及,使用二维彩色或红外图片进行人脸识别已经较为成熟,但随之而来的是人脸识别的安全问题:针对于门禁、登录等基于二维技术的人脸识别系统,用户往往可以使用照片等手段对识别进行系统欺骗。因此,针对于人脸识别的活体检测尤为重要。

目前针对于活体检测,在三维技术上,往往使用双相机或者多相机进行三维识别。在双目标定后,通过特征点或匹配算法,重建出人脸特征点或区域。

但目前的使用双目技术进行三维重建存在以下缺点:首先,双目(或多目)对于系统结构稳定性要求较高,若结构因长期振动或反复热胀冷缩发生微小变动,会直接影响三维人脸计算的输出;其次,双相机系统较单相机成本较高,结构设计上需要拉开一定的距离且系数上必须保证严格的同步采集。这些都大大制约了双目或多目技术在三维人脸识别技术上的发展。



技术实现要素:

有鉴于此,本发明提供一种基于单一图像采集设备的三维人脸活体检测方法以解决现有技术的不足。

为解决上述问题,本发明提供一种基于单一图像采集设备的三维人脸活体检测方法,应用于单一图像采集设备,包括:

采集待识别用户的人脸识别视频流,判断所述人脸识别视频流中的初始基准帧中是否有人脸;

若所述初始基准帧中有人脸,则提示所述待识别用户进行规定动作;

获取所述待识别用户在进行所述规定动作时所述人脸识别视频流的多个单帧图像;

定位每个所述单帧图像中的每个特征点,并获取所述特征点对应的特征点坐标;

对所述特征点坐标进行迭代求解,得到每个特征点对应的特征点三维坐标;

将所述待识别用户的所有所述特征点三维坐标组成空间三维信息,并利用所述空间三维信息对所述待识别用户进行活体检测,得到活体检测结果。

优选地,所述“采集待识别用户的人脸识别视频流”之前,还包括:

对图像采集设备进行标定,获得所述图像采集设备的内参矩阵。

优选地,所述“对所述特征点坐标进行迭代求解,得到每个特征点对应的特征点三维坐标”包括:

建立代价函数,利用所述内参矩阵,对所述特征点坐标进行迭代求解,得到每个特征点对应的特征点三维坐标;

所述代价函数为:

其中,k为所述内参矩阵,i为所述单帧图像的张数,j为特征点的数量;pi为第i张单帧图像与所述初始基准帧之间的帧间投影矩阵,xj为第j个特征点对应的特征点三维坐标(xj,yj,zj,1),为第j个特征点在第i张单帧图像中的特征点坐标

优选地,所述“若所述初始基准帧中有人脸,则提示所述待识别用户进行规定动作”包括:

若所述初始基准帧中有人脸,则获取所述待识别用户与所述图像采集设备之间的当前相对距离;

判断所述当前相对距离是否在预设识别距离范围内;

若所述当前相对距离在预设识别距离范围内,则提示所述待识别用户进行规定动作。

优选地,所述特征点的数量至少为6个;

所述单帧图像的张数至少为3张。

优选地,所述“对所述特征点坐标进行迭代求解,得到每个特征点对应的特征点三维坐标”之后,还包括:

通过预设参考特征值,对所述特征点三维坐标的缩放比例进行修正,得到修正后的所述特征点三维坐标。

优选地,所述预设参考特征值为瞳距。

此外,为解决上述问题,本发明还提供一种基于单一图像采集设备的三维人脸活体检测装置,包括:

采集模块,用于采集待识别用户的人脸识别视频流,判断所述人脸识别视频流中的初始基准帧中是否有人脸;

提示模块,用于若所述初始基准帧中有人脸,则提示所述待识别用户进行规定动作;

获取模块,用于获取所述待识别用户在进行所述规定动作时所述人脸识别视频流的多个单帧图像;

获取模块,还用于定位每个所述单帧图像中的每个特征点,并获取所述特征点对应的特征点坐标;

计算模块,用于对所述特征点坐标进行迭代求解,得到每个特征点对应的特征点三维坐标;

检测模块,用于将所述待识别用户的所有所述特征点三维坐标组成空间三维信息,并利用所述空间三维信息对所述待识别用户进行活体检测,得到活体检测结果。

此外,为解决上述问题,本发明还提供一种计算机设备,所述计算机设备包括存储器以及处理器;所述存储器用于存储基于单一图像采集设备的三维人脸活体检测程序,所述处理器运行所述基于单一图像采集设备的三维人脸活体检测程序以使所述计算机设备执行如上述所述基于单一图像采集设备的三维人脸活体检测方法。

此外,为解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于单一图像采集设备的三维人脸活体检测程序,所述基于单一图像采集设备的三维人脸活体检测程序被处理器执行时实现如上述所述基于单一图像采集设备的三维人脸活体检测方法。

本发明提供的一种基于单一图像采集设备的三维人脸活体检测方法。其中,所述方法通过对待识别用户进行视频采集,并判断视频流的初始基准帧中是否有人脸,如果具有人脸,则在用户进行规定动作后,获取视频流的单帧图像,并定位每一帧的单帧图像中的多个特征点,进而获得特征点对应的在图像中的特征点坐标,通过迭代求解,得到每个特征点的特征点三维坐标,通过利用三维特征点坐标组成的空间三维信息,对待识别用户进行活体检测。本发明实现了通过单一的图像采集设备,基于对待识别用户的多个特征点进行三维重建,得到空间三维信息,进而根据该空间三维信息进行活体检测,大大提高了图像识别中活体检测的稳定性,降低了设备成本,检测条件实现简单,避免了传统识别技术中利用多图像采集设备进行识别,双摄像头稳定性精度要求高、多摄像头成本高、架设摄像头要求距离的实现条件繁琐的缺陷。

附图说明

图1为本发明基于单一图像采集设备的三维人脸活体检测方法实施例方案涉及的硬件运行环境的结构示意图;

图2为本发明基于单一图像采集设备的三维人脸活体检测方法第一实施例的流程示意图;

图3为本发明基于单一图像采集设备的三维人脸活体检测方法第二实施例的原理示意图;

图4为本发明基于单一图像采集设备的三维人脸活体检测方法第二实施例中的流程示意图;

图5为本发明基于单一图像采集设备的三维人脸活体检测方法第三实施例的步骤s20细化的流程示意图;

图6为本发明基于单一图像采集设备的三维人脸活体检测方法第三实施例的包括步骤s70的流程示意图;

图7为本发明基于单一图像采集设备的三维人脸活体检测装置的功能模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

下面详细描述本发明的实施例,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,图1是本发明实施例方案涉及的终端的硬件运行环境的结构示意图。

本发明实施例计算机设备均可以是的pc,也可以是智能手机、平板电脑或者便携计算机等可移动式终端设备。如图1所示,该计算机设备可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏、输入单元比如键盘、遥控器,可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器,例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。可选地,计算机设备还可以包括rf(radiofrequency,射频)电路、音频电路、wifi模块等等。此外,计算机设备还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

本领域技术人员可以理解,图1中示出的计算机设备并不构成对其的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、数据接口控制程序、网络连接程序以及基于单一图像采集设备的三维人脸活体检测程序。

本发明提供的一种基于单一图像采集设备的三维人脸活体检测方法。其中,所述方法实现了通过单一的图像采集设备,基于对待识别用户的多个特征点进行三维重建,得到空间三维信息,进而根据该空间三维信息进行活体检测,大大提高了图像识别中活体检测的稳定性,降低了设备成本,检测条件实现简单。

实施例1:

参照图2,本发明第一实施例提供一种基于单一图像采集设备的三维人脸活体检测方法,包括:

步骤s10,采集待识别用户的人脸识别视频流,判断所述人脸识别视频流中的初始基准帧中是否有人脸;

上述,本实施例,应用于单一的图像采集设备,即单相机,通过单一的图像采集设备即实现对于待识别用户的三维重建,从而进一步对待识别用户进行活体检测的目的。

上述,人脸识别视频流,为由单一的图像采集设备所采集到的视频流。

上述,判断视频流中是否存在人脸,可获取视频流中的关键帧,对关键帧中进行面部特征定位,例如,对于眼睛、鼻子和嘴,根据图像特征进行定位,如果其中包含上述器官对应的图像特征,并且图像特征之间的距离在预设面部器官距离范围之内,则判定该帧视频流中存在人脸。

上述,初始基准帧,即为视频流中,进行识别的首帧图像。

步骤s20,若所述初始基准帧中有人脸,则提示所述待识别用户进行规定动作;

上述,所述规定动作,即为提示用户进行完成的动作,例如,摇头、点头、眨眼、转头、踮脚使头部上下移动等等使头部(面部)在图像采集设备的视野中发生变化的动作。

上述,提示,即为通过可实现基于单一图像采集设备的三维人脸活体检测方法的装置向待识别用户所发出进行摆出规定动作的提示信息,例如提示用户依据屏幕中的人物影响,做相同的动作。

此外,若所述初始基准帧中不存在人脸,则可返回所述步骤s10。

步骤s30,获取所述待识别用户在进行所述规定动作时所述人脸识别视频流的多个单帧图像;

步骤s40,定位每个所述单帧图像中的每个特征点,并获取所述特征点对应的特征点坐标;

步骤s50,对所述特征点坐标进行迭代求解,得到每个特征点对应的特征点三维坐标;

上述,单帧图像,为视频流中获取的多个单帧的图像,其数量越多,则对用户进行活体检测判断的越准确。

上述,每个单帧图像中,均包括待识别用户的人脸。其中,特征点,为预设的便于识别用户唯一性的,或者便于获取测量数据的特征部位或者特征位置,例如,嘴角、眼角,鼻尖,眉毛等等。进而对选定的特征点进行跟踪,从而进行进一步的活体检测。

上述,以初始检测帧为初始基准帧,用户根据规定动作进行移动,假设初始基准帧上,某个特征点的三维坐标(以相机坐标系为参考)为w,在初始基准帧上,该特征点的图像坐标为m,则后续的任意一帧里,由于人脸的运动,该特征点在图像上的位置变换至m′。变换参考坐标系,可视为是相机运动而人脸不动,导致特征点的位置发生了变化。而相机运动可由旋转矩阵r及平移矩阵t进行描述。则可根据上述变化,对待识别用户的基于特征点的三维重建。即,根据用户的移动,导致特征点在空间上发生变化,可视为图像采集设备在空间上发生变化,而用户面部的特征点在空间上不变,从而对单帧的特征点坐标,迭代计算求解得到特征点三维坐标。

步骤s60,将所述待识别用户的所有所述特征点三维坐标组成空间三维信息,并利用所述空间三维信息对所述待识别用户进行活体检测,得到活体检测结果。

上述,使用人脸的三维信息进行活体检测,可有效避免因照片等欺骗手段带来的风险。利用所述空间三维信息对所述待识别用户进行活体检测,得到活体检测结果,例如,可对特征点对应的特征点三维坐标进行平面拟合等处理手段来识别特征点是否来自于一个平面,或者根据眼角、嘴角、鼻尖等信息及彩色图像,对人脸进行建模,验证其五官分布的合理性等等来进行活体检测,从而进一步达到对于活体的确认目的。

本实施例提供的一种基于单一图像采集设备的三维人脸活体检测方法。通过对待识别用户进行视频采集,并判断视频流的初始基准帧中是否有人脸,如果具有人脸,则在用户进行规定动作后,获取视频流的单帧图像,并定位每一帧的单帧图像中的多个特征点,进而获得特征点对应的在图像中的特征点坐标,通过迭代求解,得到每个特征点的特征点三维坐标,通过利用三维特征点坐标组成的空间三维信息,对待识别用户进行活体检测。本实施例实现了通过单一的图像采集设备,基于对待识别用户的多个特征点进行三维重建,得到空间三维信息,进而根据该空间三维信息进行活体检测,大大提高了图像识别中活体检测的稳定性,降低了设备成本,检测条件实现简单,避免了传统识别技术中利用多图像采集设备进行识别,双摄像头稳定性精度要求高、多摄像头成本高、架设摄像头要求距离的实现条件繁琐的缺陷。

实施例2:

参照图3-4,本发明第二实施例提供一种基于单一图像采集设备的三维人脸活体检测方法,基于上述图2所示的第一实施例,所述步骤s10,“采集待识别用户的人脸识别视频流”之前,还包括:

步骤s60,对所述图像采集设备进行标定,获得所述图像采集设备的内参矩阵。

上述,图像采集设备,可以为相机,也可以为高清摄像头,在本实施例中,为单个设备。对单个相机进行标定,即为对设备的预处理,获得相机的内参矩阵k,该步骤通常在使用相机前完成预设。

所述步骤s50,“对所述特征点坐标进行迭代求解,得到每个特征点对应的特征点三维坐标”包括:

步骤s51,建立代价函数,利用所述内参矩阵,对所述特征点坐标进行迭代求解,得到每个特征点对应的特征点三维坐标;

所述代价函数为:

其中,k为所述内参矩阵,i为所述单帧图像的张数,j为特征点的数量;pi为第i张单帧图像与所述初始基准帧之间的帧间投影矩阵,xj为第j个特征点对应的特征点三维坐标(xj,yj,zj,1),为第j个特征点在第i张单帧图像中的特征点坐标

以初始检测帧为基准帧,假设基准帧上,某个特征点的三维坐标(以相机坐标系为参考)为w(x,y,z),在基准帧上,该特征点的图像坐标为m(u,v),则后续的任意一帧里,由于人脸的运动,该特征点在图像上的位置变换至m′(u′,v′)。变换参考坐标系,可看做是相机运动而人脸不动,导致特征点的位置发生了变化。而相机运动可由旋转矩阵r及平移矩阵t(tx,ty,tz)进行描述,如图3所示:

并且,基于原理,基准帧与任意帧上的特征点的图像坐标和三维坐标满足如下关系:

m′norm=(u′,v′,1);

其中:p=[t×tk-tt×rk-1,t],为帧间投影矩阵。

其中:称为t的斜对成矩阵。

未知数为特征点的三维坐标w,及帧间的r、t矩阵。由上述方程,下面如下步骤中的代价函数,求解该未知数。求得r、t及w使下式的e值最小即可解得关键点三维坐标w的值:

其中,i为图像张数,j为选取的人脸关键点的个数。pi为第i张图像与基准图像之间的帧间投影矩阵,xj为第j个关键点的三维坐标(xj,yj,zj,1),为第j个关键点在第i张图像上的坐标上式为非线性方程求解过程,使用迭代法,可更加快速准确的计算出结果如l-m迭代法、牛顿迭代法等等,提高了最终得到结果的准确性。通过迭代求解,即可得到人脸的每个特征点对应的特征点三维坐标。

实施例3:

参照图5-6,本发明第三实施例提供一种基于单一图像采集设备的三维人脸活体检测方法,基于上述图4所示的第二实施例,所述步骤s20,“若所述初始基准帧中有人脸,则提示所述待识别用户进行规定动作”包括:

步骤s21,若所述初始基准帧中有人脸,则获取所述待识别用户与所述图像采集设备之间的当前相对距离;

步骤s22,判断所述当前相对距离是否在预设识别距离范围内;

步骤s23,若所述当前相对距离在预设识别距离范围内,则提示所述待识别用户进行规定动作。

上述,在进行活体检测前,为保证获取视频流中人脸图像的位置便于快速识别,需要待识别用户与图像采集设备保持在预设识别距离范围之内,距离过远,则会导致人脸图像偏小、图像模糊、特征不清晰等问题,而距离过近,则可能会导致人脸图像显示不全、显示光线差等等问题,所以要预先设定一预设识别距离范围,以保证用户处于该范围内,或者改用户与图像采集设备之间的距离在该范围内。

具体的,距离或范围的判断,可通过图像识别,即通过视频流中的用户所在位置进行定标,从而将该定标数据与预设数据进行比较,从而得到一相对距离,再讲相对距离与预设识别距离范围进行比较,从而可判断该用户是否处于预设识别距离范围内。

此外,也可通过其他方式进行对于用户的所在位置进行判断,例如,通过红外传感器,当用户达到指定区域内后,触发红外传感器,从而系统接收到由用户触发传感器所生成的指令,根据指令判定用户已经就位,可进行进一步的视频流获取。本实施例中,通过在进行对用户活体检测之前,首先对用户是否处于预设识别距离范围进行判断,从而确保用户所处的位置处于可进行准确识别的范围内,从而提高了对于用户识别的准确度和识别效率。

此外,若所述当前相对距离不在预设识别距离范围内,则提示所述待识别用户进行位置调整,并返回所述步骤s22。

所述特征点的数量至少为6个;所述单帧图像的张数至少为3张。

上述,考虑到上述代价函数,方程数需大于未知数的数量,才能进行迭代求解,则所述特征点的数量至少为6个单帧图像的张数至少为3张。

此外,为了更准确的进行计算,建议特征点大于12个,单帧图像的张数大于20张。

所述步骤s50,“对所述特征点坐标进行迭代求解,得到每个特征点对应的特征点三维坐标”之后,还包括:

步骤s70,通过预设参考特征值,对所述特征点三维坐标的缩放比例进行修正,得到修正后的所述特征点三维坐标。

所述预设参考特征值为瞳距。

此外,也可以为其他代表面部距离特征的值,例如瞳孔距离嘴角距离、鼻梁长度、脸部最宽距离、左右最远端眼角之间距离等等。

在进行迭代求解后,得到用户人脸的特征点三维坐标。而获取的特征点的三维坐标w,通常与真实世界坐标系存在一定的缩放关系。

例如,预设参考特征值可使用固定瞳距(如假定两个眼角之间为固定值),对计算出的三维坐标w再次进行缩放,使之接近真实的三维世界坐标。

待识别用户的多个特征点三维坐标,作为一个整体,互相之间具有空间位置关系,但其缩放比例,与用户实际面部比例,可能存在一定差别,本实施例中,通过预设参考特征值对所获得的待识别用户的特征点三维坐标进行修正,调整缩放该特征点三维坐标之间的空间位置关系,从而使之更加接近用户实际的空间位置关系和比例的三维坐标,从而得到更加准确的三维重建结果,提高了识别的准确度。

此外,参考图7,本发明还提供一种基于单一图像采集设备的三维人脸活体检测装置,包括:

采集模块10,用于采集待识别用户的人脸识别视频流,判断所述人脸识别视频流中的初始基准帧中是否有人脸;

提示模块20,用于若所述初始基准帧中有人脸,则提示所述待识别用户进行规定动作;

获取模块30,用于获取所述待识别用户在进行所述规定动作时所述人脸识别视频流的多个单帧图像;

获取模块30,还用于定位每个所述单帧图像中的每个特征点,并获取所述特征点对应的特征点坐标;

计算模块40,用于对所述特征点坐标进行迭代求解,得到每个特征点对应的特征点三维坐标;

检测模块50,用于将所述待识别用户的所有所述特征点三维坐标组成空间三维信息,并利用所述空间三维信息对所述待识别用户进行活体检测,得到活体检测结果。

此外,本发明还提供一种计算机设备,所述计算机设备包括存储器以及处理器;所述存储器用于存储基于单一图像采集设备的三维人脸活体检测程序,所述处理器运行所述基于单一图像采集设备的三维人脸活体检测程序以使所述计算机设备执行如上述所述基于单一图像采集设备的三维人脸活体检测方法。

此外,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于单一图像采集设备的三维人脸活体检测程序,所述基于单一图像采集设备的三维人脸活体检测程序被处理器执行时实现如上述所述基于单一图像采集设备的三维人脸活体检测方法。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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