活体检测方法、装置、电子设备及存储介质与流程

文档序号:14715068发布日期:2018-06-16 01:10阅读:165来源:国知局
活体检测方法、装置、电子设备及存储介质与流程

本发明涉及图像检测技术领域,尤其是涉及一种活体检测方法、装置、电子设备及存储介质。



背景技术:

目前的活体检测是用户按照系统指示做出相应的动作,防止用户在一些重要环境下用照片骗过系统完成验证。在用户按照系统提示完成相应动作后,后台对用户完成的动作进行识别,并提示用户活体检测是否通过。

活体检测在社保、网上开户等重要场合都有其应用。通过验证确定老年人身份真实且健在后才能进行养老金的领取。网上开户时需要用户验证,证明并非用户用照片完成验证,以保证用户信息的真实、有效和安全。活体检测中,用户按照网页提示完成指定动作,通过后系统返回检测通过的提示。

但是,目前活体检测过程中所使用的活体分类器的运算量或模型体积较大,从而导致活体检测速度减慢,降低活体检测的检测效率。



技术实现要素:

有鉴于此,本发明的目的在于提供一种活体检测方法、活体分类器系统以及电子设备,以解决现有技术中存在的活体检测过程中所使用的活体分类器的运算量或模型体积较大,从而导致活体检测速度减慢,降低活体检测的检测效率的技术问题。

第一方面,本发明实施例提供了一种活体检测方法,包括:

获取待检测的人脸图像;

对所述人脸图像进行第一级活体检测,得到第一活体检测结果;

当所述第一活体检测结果为通过时,将所述第一活体检测结果作为最终检测结果;

当所述第一活体检测结果为无法通过时,对所述人脸图像进行至少一级后置活体检测,分别得到至少一个后置检测结果;

如果当前的后置检测结果为无法通过,则进行下一级后置活体检测,直至最后一级后置活体检测,获得最终检测结果;

如果当前的后置检测结果为通过,则将当前的后置活体检测结果作为最终检测结果。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述对所述人脸图像进行第一级活体检测,得到第一活体检测结果,具体包括:

通过第一活体分类器对所述人脸图像进行第一级活体检测,得到第一检测数值;

判断所述第一检测数值是否大于第一预设值;

如果是,则确定所述人脸图像的第一活体检测结果为通过;

如果否,则确定所述人脸图像的第一活体检测结果为无法通过。

结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,当所述第一活体检测结果为无法通过时,对所述人脸图像进行至少一级后置活体检测,分别得到至少一个后置检测结果,具体包括:

当所述第一活体检测结果为无法通过时,通过至少一个后置活体分类器对所述人脸图像进行至少一级后置活体检测,得到至少一个后置检测数值;

将所述第一检测数值与至少一个所述后置检测数值进行相加,得到至少一个后置检测总数值;

根据所述后置检测总数值与后置预设值,确定至少一个后置活体检测结果。

结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述根据所述后置检测总数值与后置预设值,确定至少一个后置活体检测结果,具体包括:

如果当前的所述后置检测总数值大于当前的后置预设值,则确定所述人脸图像的当前的后置活体检测结果为活体;

如果当前的所述后置检测总数值小于或等于当前的后置预设值,则确定所述人脸图像的当前的后置活体检测结果为无法通过。

结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述第一活体分类器为神经网络。

结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,至少一个所述后置活体分类器均为神经网络。

结合第一方面,本发明实施例提供了第一方面的第六种可能的实施方式,其中,所述第一活体分类器的神经网络模型与至少一个后置活体分类器的神经网络模型相同。

第二方面,本发明实施例还提供一种活体检测装置,包括:第一活体分类器与至少一个后置活体分类器;

所述第一活体分类器用于获取待检测的人脸图像;

所述第一活体分类器还用于对所述人脸图像进行第一级活体检测,得到第一活体检测结果;

所述后置活体分类器用于当所述第一活体检测结果为无法通过时,对所述人脸图像进行至少一级后置活体检测,分别得到至少一个后置检测结果;

所述后置活体分类器用于在当前的后置检测结果为无法通过时,进行下一级后置活体检测,直至最后一级后置活体检测,获得最终检测结果;

所述后置活体分类器还用于在当前的后置检测结果为通过时,将当前的后置活体检测结果作为最终检测结果。

第三方面,本发明实施例还提供一种电子设备,包括存储器和处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时用于执行上述第一方面所述的方法步骤。

第四方面,本发明实施例还提供一种计算机存储介质,在所述存储介质上存储了程序指令,所述程序指令在被计算机运行时用于执行上述第一方面所述的方法步骤。

本发明实施例提供的技术方案带来了以下有益效果:本发明实施例提供的活体检测方法、活体分类器系统以及电子设备中,活体检测方法包括:首先,获取待检测的人脸图像,然后,对该人脸图像进行第一级活体检测从而得到第一活体检测结果,一方面,当第一活体检测结果为通过时,将第一活体检测结果作为最终检测结果,另一方面,当第一活体检测结果为无法通过时,对人脸图像进行至少一级后置活体检测,因此分别得到至少一个后置检测结果,如果当前的后置检测结果为无法通过,则进行下一级后置活体检测,直至最后一级后置活体检测,获得最终检测结果,然而,如果当前的后置检测结果为通过,则将当前的后置活体检测结果作为最终检测结果,通过先对人脸图像进行第一级活体检测,在第一级的活体检测结果为无法通过时,再继续进行至少一级后置活体检测,从而将现有技术中运算量或模型体积较大的一个活体分类器分开,分成运算量或模型体积相对较小的两个或两个以上的活体分类器,然而在实际应用中,大多数人脸图像都为正常人脸图像,均可以仅经过第一级活体检测便可使活体检测结果通过,从而获得最终检测结果,故对大多数人脸图像的检测耗时相当于仅进行第一级活体检测的时间,即只运行一个运算量较小的活体分类器的时间,而对于很少部分非正常的人脸图像,才需进行后置活体检测,因此,实现了通过第一级活体检测或更多级活体检测对各种人脸图像分不同情况的进行活体检测,所以对于大多数人脸图像便能够减少不必要的运算过程与时间,使活体检测速度得以提升,从而解决了现有技术中存在的活体检测过程中所使用的活体分类器的运算量或模型体积较大,从而导致活体检测速度减慢,降低活体检测的检测效率的技术问题。

本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出了本发明实施例一所提供的活体检测方法的流程图;

图2示出了本发明实施例二所提供的活体检测方法的流程图;

图3示出了本发明实施例三所提供的一种活体分类器系统的结构示意图;

图4示出了本发明实施例四所提供的一种电子设备的结构示意图。

图标:3-活体分类器装置;31-第一活体分类器;32-第二活体分类器;4-电子设备;41-存储器;42-处理器;43-总线;44-通信接口。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前活体检测过程中所使用的活体分类器的运算量或模型体积较大,从而导致活体检测速度减慢,降低活体检测的检测效率,基于此,本发明实施例提供的一种活体检测方法、活体分类器系统以及电子设备,可以解决现有技术中存在的活体检测过程中所使用的活体分类器的运算量或模型体积较大,从而导致活体检测速度减慢,降低活体检测的检测效率的技术问题。

为便于对本实施例进行理解,首先对本发明实施例所公开的一种活体检测方法、活体分类器系统以及电子设备进行详细介绍。

实施例一:

本发明实施例提供的一种活体检测方法,如图1所示,该方法包括:

S11:获取待检测的人脸图像。

作为本实施例的优选实施方式,采集用于活体检测的人脸图像。具体的,通过采集图像中人脸区域的图像从而获取待检测的人脸图像,其中,图像可以是单帧的静态图像,也可以是多帧的动态图像。

其中,图像采集的具体过程可以为:首先通过摄像装置采集人脸实时视频流,如通过安装在移动终端上的前置摄像头或者后置摄像头采集人脸实时视频流,并依次对视频流中的图像帧进行处理;在获取到视频流之后,采用人脸检测算法对该视频流中的第一个图像帧进行人脸检测,从而得到相应的图像。

S12:对人脸图像进行第一级活体检测,得到第一活体检测结果。

具体的,可以先运行第一活体分类器,根据人脸图像获得第一活体分数值,如果第一活体分数值超过第一预设值,则直接返回“为活体”的结果;如果第一活体分数值没有超过第一预设值,则返回“不为活体”结果,然后继续执行步骤S13。

其中,运行第一活体分类器的方式可以为:首先提取人脸区域的特征点,通过人脸图像中的特征数据来训练第一活体分类器,并对这些数据之间的结构关系进行分析处理,然后,利用训练好的第一活体分类器进行分类识别与数值计算,从而得到第一检测数值。其中,第一检测数值也可以为第一活体分数值。

需要说明的是,在第一级活体检测过程中,人脸图像可以为待检测用户的人脸动态视频或待检测用户的人脸静动态图片。

例如,动作指令活体检测则需要对人脸动态视频进行检测。具体的,活体检测是指用户按照系统指示做出相应的动作,如张嘴、眨眼、点头等,用于智能判断用户行为,防止用户在某些环境下利用照片骗过系统完成验证。在用户按照系统提示完成相应动作后,后台对用户完成的动作进行识别,并提示用户活体检测是否通过。因此,该方法能够有效避免人为手持照片欺骗系统。

本实施例以眨眼动作为例进行说明,人脸采集的过程可以是客户端通过录像设备采集视频,然后后台对视频流的每一帧进行处理,进而检测视频每一帧中是否有人脸,例如可以检测到两只眼是否存在以及两只眼是否睁开,然后记录上次睁开眼的时间,然后在下一次检测到闭眼的时候比较与上一次睁眼的时间差,如果在正常范围内则认为是一次正常的眨眼。

作为本实施例的另一种实施方式,近红外光(Near Infrared,NIR)人脸活体检测则需要对人脸静态图片进行检测,其中,近红外人脸活体检测基于光流法而实现。具体的,近红外人脸活体检测无需指令配合,而是根据光流法,利用图像序列中的像素强度数据的时域变化和相关性来确定各自像素位置的运动,从图像序列中得到各个像素点的运行信息,采用高斯差分滤波器、线性反投影算法(Local Binary Patterns,简称LBP)特征和支持向量机进行数据统计分析。同时,光流场对物体运动比较敏感,利用光流场可以统一进行检测,这种活体检测方式可以在用户无动作配合的情况下实现盲测。由于活体与照片的区别在于,活体的光流特征显示为不规则的向量特征,而照片的光流特征则是规则有序的向量特征,因此,以此即可区分活体与照片。

当然,对人脸静态图片的活体检测方式还可以包括三维(three dimensional,简称3D)人脸活体检测。该方法是利用3D摄像头拍摄人脸,得到相应的人脸区域的3D数据,并基于这些数据做进一步的分析,最终判断出这个人脸是来自活体还是非活体。这里非活体的来源是比较广泛的,包括手机和Pad等介质的照片和视频、各种打印的不同材质的照片等。该方法是基于活体和非活体的3D人脸数据,选择最具有区分度的特征来训练分类器,利用训练好的分类器来区分活体与非活体。这里选择的特征既包含了全局的信息,也包含了局部的信息,这样的特征有利于算法的稳定性和鲁棒性。

具体的,3D人脸检活原理的步骤可以为:首先,提取活体和非活体人脸区域的256个特征点的三维信息,并对这些点之间的几何结构关系进行初部的分析处理;其次,提取整个人脸区域的三维信息,并对相应的特征点做进一步的处理,再采用协调训练(Co-training)的方法训练正负样本数据,之后利用得到的分类器进行初分类;最后,利用以上两个步骤所提取的特征点进行曲面的拟合来描述三维模型特征,然后根据曲面的曲率从深度图像中提取凸起区域,再对每个区域提取特征,最后利用其球形相关度进行再分类识别。

S13:判断第一活体检测结果是否为通过。如果是,则进行步骤S14;如果否,则进行步骤S15。

本步骤中,如果第一活体检测结果为通过,则进行步骤S14;如果第一活体检测结果为无法通过,则进行步骤S15。

S14:将第一活体检测结果作为最终检测结果。

作为一个优选方案,当第一活体检测结果为通过时,将第一活体检测结果作为最终检测结果,结束活体检测过程。

S15:对人脸图像进行至少一级后置活体检测,分别得到至少一个后置检测结果。

具体的,当第一活体检测结果为无法通过时,通过至少一个后置活体分类器对人脸图像进行至少一级后置活体检测,得到至少一个后置检测数值。其中,第一活体分类器与至少一个后置活体分类器均为神经网络。进一步,第一活体分类器的神经网络模型与后置活体分类器的神经网络模型也相同。

作为本实施例的优选实施方式,当第一活体检测结果为无法通过和/或“不为活体”时,运行第二活体分类器,获得第二活体分数值。

其中,虽然第一活体分类器的神经网络模型与后置活体分类器的神经网络模型相同,但是,对于第一活体分类器乃至每一个后置活体分类器之间,处理的数据都是不相同的,因此,每一级的活体检测的过程都是不相同的,从而使每一级的活体检测结果也不相同。需要说明的是,第二活体分类器处理的原始数据是第一活体分类器没有通过的数据,优选的,第二活体分类器主要是针对第一活体分类器没有通过的数据而进行训练。同样的,如果需要运行第三活体分类器,则第三活体分类器处理的原始数据是第一活体分类器与第二活体分类器均没有通过的数据。

例如,在运行第二活体分类器时,可以主要利用第一活体分类器无法通过的特征数据来训练第二活体分类器,并对这些特征数据之间的结构关系进行分析处理,之后,利用训练好的第二活体分类器进行分类识别与数值计算,从而得到第二检测数值。其中,第二检测数值也可以为第二活体分数值。

以此类推,如果需要运行再后置的活体分类器,可以主要利用前几个活体分类器无法通过的特征数据来训练后置的活体分类器,并对这些特征数据之间的结构关系进行分析处理,之后,利用训练好的后置活体分类器进行分类识别与数值计算,从而得到后置检测数值。其中,后置检测数值也可以为后置活体分数值。

本实施例以3D人脸活体检测为例进行说明,该方法的后置每一级活体检测是基于之前所有活体分类器无法通过的3D人脸特征数据,采用协调训练的方法来训练后置的分类器的正负样本数据,再利用训练好的后置分类器来进行分类,来区分活体与非活体。

S16:判断当前的后置检测结果是否为通过。如果是,则进行步骤S17;如果否,则进行步骤S18。

具体的,先将第一检测数值与至少一个后置检测数值进行相加,得到至少一个后置检测总数值,然后根据后置检测总数值与后置预设值,确定至少一个后置活体检测结果。

优选的,如果当前的后置检测总数值小于或等于当前的后置预设值,则判断当前的后置检测结果为无法通过,则进行步骤S17;如果当前的后置检测总数值大于当前的后置预设值,则判断当前的后置检测结果为通过,则进行步骤S18。

S17:将当前的后置活体检测结果作为最终检测结果。

在一种实现方式中,当第一活体检测结果为无法通过和/或“不为活体”时,运行第二活体分类器,获得第二活体分数值,如果第二活体检测结果为通过时,则将第二活体检测结果作为最终检测结果。因此,有可能只需要运行两个活体分类器,通过两级的活体分类检测进行活体检测,便能得到最终活体检测结果。

其中,第一活体分类器与第二活体分类器均为神经网络模型,作为一个优选方案,第一活体分类器与第二活体分类器均为轻量级神经网络。而且,第一活体分类器与第二活体分类器的神经网络模型相同。

S18:进行下一级后置活体检测,直至最后一级后置活体检测,获得最终检测结果。

在另一种实现方式中,如果第二活体检测结果为无法通过,则需要级联第三活体分类器或者有可能级联更多活体分类器,也就是说,全程通过两个以上的活体分类器对人脸图像进行两级以上的活体检测,获得多个活体分数值。需要说明的是,所有活体分类器均为神经网络模型,作为一个优选方案,第一活体分类器与第二活体分类器均为轻量级神经网络。而且,每级的活体分类器的神经网络模型相同。

因此,本发明实施例提供的活体检测方法也可以是一种基于级联活体分类器的活体检测方法。其中,对于级联活体分类器,是以级联的方式从简单到复杂逐步串联分类器,从而形成级联分类器。具体的,使用积分图计算不同尺度上的图像特征,然后再使用迭代算法构造的级联活体分类器对图像特征进行选择与分类。

本实施例中,可以通过至少一级甚至更多级的活体分类器进行活体检测,但是,无论级联多少个活体分类器即通过多少级的活体检测,都以最后一级的活体检测结果为最终的活体检测结果。

需要说明的是,活体分类器是一个软件实现的算法即程序,在本实施例中可以是神经网络。而分类器的大小一般指分类器的运算量或者模型体积。分类器越大则检测精度越高安全性越强,但是活体分类器越大,抗活体攻击能力便越强,活体检测速度也便越慢。

本实施例中,将现有技术中运算较多的大活体分类器分开,分成运算相对较少的两个小活体分类器,即本实施例中的第一活体分类器与第二活体分类器,从而解决了活体检测安全性与速度的矛盾。具体的,对于大多数用户图像如95%以上的人脸图像,均可以仅通过步骤S11、S12、S13与S14进行活体检测,故正常用户的耗时相当于仅进行第一级活体检测的时间,即只运行一个小活体分类器的时间,故大多数情况下不会进行两个小活体分类器分数值和的综合判断。而对于少部分非正常用户的人脸图像,直接通过第一活体分类器便得到最终检测结果的概率较低,需要继续通过步骤S15、S16与S17进行第二级活体检测,或是继续通过步骤S15、S16、S17与S18进行更多级的活体检测,以保障活体检测的精度与安全性。

因此,通过本实施例提供的方法实现了对各种人脸图像进行不同情况活体检测,减少不必要的步骤过程,从而使检测速度得以提升,而且安全性强于只使用一个大活体分类器的活体检测。

实施例二:

本发明实施例提供的一种活体检测方法,如图2所示,该方法包括:

S21:获取待检测的人脸图像。

本步骤中,采集用于活体检测的人脸图像。具体的,通过采集图像中人脸区域的图像从而获取待检测的人脸图像,其中,图像可以是单帧的静态图像,也可以是多帧的动态图像。

例如,图像采集的具体过程可以为:首先通过摄像装置采集人脸实时视频流,如通过安装在移动终端上的前置摄像头或者后置摄像头采集人脸实时视频流,并依次对视频流中的图像帧进行处理;在获取到视频流之后,采用人脸检测算法对该视频流中的第一个图像帧进行人脸检测,从而得到相应的图像。

S22:通过第一活体分类器对人脸图像进行第一级活体检测,得到第一检测数值。

作为一个优选方案,运行第一活体分类器的方式可以为:首先提取人脸区域的特征点,通过人脸图像中的特征数据来训练第一活体分类器,并对这些数据之间的结构关系进行分析处理,然后,利用训练好的第一活体分类器进行分类识别与数值计算,从而得到第一检测数值。其中,第一检测数值也可以为第一活体分数值。

进一步的是,在第一级活体检测过程中,人脸图像可以为待检测用户的人脸动态视频或待检测用户的人脸静动态图片。

例如,动作指令活体检测则需要对人脸动态视频进行检测。具体的,活体检测是指用户按照系统指示做出相应的动作,如张嘴、眨眼、点头等,用于智能判断用户行为,防止用户在某些环境下利用照片骗过系统完成验证。在用户按照系统提示完成相应动作后,后台对用户完成的动作进行识别,并提示用户活体检测是否通过。因此,该方法能够有效避免人为手持照片欺骗系统。

本实施例以眨眼动作为例进行说明,人脸采集的过程可以是客户端通过录像设备采集视频,然后后台对视频流的每一帧进行处理,进而检测视频每一帧中是否有人脸,例如可以检测到两只眼是否存在以及两只眼是否睁开,然后记录上次睁开眼的时间,然后在下一次检测到闭眼的时候比较与上一次睁眼的时间差,如果在正常范围内则认为是一次正常的眨眼。

作为本实施例的另一种实施方式,近红外光(Near Infrared,NIR)人脸活体检测则需要对人脸静态图片进行检测,其中,近红外人脸活体检测基于光流法而实现。具体的,近红外人脸活体检测无需指令配合,而是根据光流法,利用图像序列中的像素强度数据的时域变化和相关性来确定各自像素位置的运动,从图像序列中得到各个像素点的运行信息,采用高斯差分滤波器、线性反投影算法(Local Binary Patterns,简称LBP)特征和支持向量机进行数据统计分析。同时,光流场对物体运动比较敏感,利用光流场可以统一进行检测,这种活体检测方式可以在用户无动作配合的情况下实现盲测。由于活体与照片的区别在于,活体的光流特征显示为不规则的向量特征,而照片的光流特征则是规则有序的向量特征,因此,以此即可区分活体与照片。

当然,对人脸静态图片的活体检测方式还可以包括三维(three dimensional,简称3D)人脸活体检测。该方法是利用3D摄像头拍摄人脸,得到相应的人脸区域的3D数据,并基于这些数据做进一步的分析,最终判断出这个人脸是来自活体还是非活体。这里非活体的来源是比较广泛的,包括手机和Pad等介质的照片和视频、各种打印的不同材质的照片等。该方法是基于活体和非活体的3D人脸数据,选择最具有区分度的特征来训练分类器,利用训练好的分类器来区分活体与非活体。这里选择的特征既包含了全局的信息,也包含了局部的信息,这样的特征有利于算法的稳定性和鲁棒性。

具体的,3D人脸检活原理的步骤可以为:首先,提取活体和非活体人脸区域的256个特征点的三维信息,并对这些点之间的几何结构关系进行初部的分析处理;其次,提取整个人脸区域的三维信息,并对相应的特征点做进一步的处理,再采用协调训练(Co-training)的方法训练正负样本数据,之后利用得到的分类器进行初分类;最后,利用以上两个步骤所提取的特征点进行曲面的拟合来描述三维模型特征,然后根据曲面的曲率从深度图像中提取凸起区域,再对每个区域提取特征,最后利用其球形相关度进行再分类识别。

S23:判断第一检测数值是否大于第一预设值。如果是,进行步骤S24;如果否,进行步骤S25。

S24:确定人脸图像的第一活体检测结果为通过,并将第一活体检测结果作为最终检测结果。

在实际应用中,当第一活体检测结果为通过时,将第一活体检测结果作为最终检测结果,即确定人脸图像的最终活体检测结果为活体。

S25:确定人脸图像的第一活体检测结果为无法通过,并继续进行步骤S26。

进一步的是,当第一检测数值小于或等于第一预设值时,确定人脸图像的第一活体检测结果为无法通过,然后便继续进行步骤S26。

S26:通过至少一个后置活体分类器对人脸图像进行至少一级后置活体检测,得到至少一个后置检测数值。

其中,第一活体分类器与至少一个后置活体分类器均为神经网络。进一步,第一活体分类器与后置活体分类器均为轻量级神经网络。作为一个优选方案,第一活体分类器的神经网络模型与后置活体分类器的神经网络模型也相同。

再者,虽然第一活体分类器的神经网络模型与后置活体分类器的神经网络模型相同,但是,对于第一活体分类器乃至每一个后置活体分类器之间,处理的数据都是不相同的,因此,每一级的活体检测的过程都是不相同的,从而使每一级的活体检测结果也不相同。需要说明的是,第二活体分类器处理的原始数据是第一活体分类器没有通过的数据,优选的,第二活体分类器主要是针对第一活体分类器没有通过的数据而进行训练。同样的,如果需要运行第三活体分类器,则第三活体分类器处理的原始数据是第一活体分类器与第二活体分类器均没有通过的数据。

例如,在运行第二活体分类器时,可以主要利用第一活体分类器无法通过的特征数据来训练第二活体分类器,并对这些特征数据之间的结构关系进行分析处理,之后,利用训练好的第二活体分类器进行分类识别与数值计算,从而得到第二检测数值。其中,第二检测数值也可以为第二活体分数值。

以此类推,如果需要运行再后置的活体分类器,可以主要利用前几个活体分类器无法通过的特征数据来训练后置的活体分类器,并对这些特征数据之间的结构关系进行分析处理,之后,利用训练好的后置活体分类器进行分类识别与数值计算,从而得到后置检测数值。其中,后置检测数值也可以为后置活体分数值。

本实施例以3D人脸活体检测为例进行说明,该方法的后置每一级活体检测是基于之前所有活体分类器无法通过的3D人脸特征数据,采用协调训练的方法来训练后置的分类器的正负样本数据,再利用训练好的后置分类器来进行分类,来区分活体与非活体。

S27:将第一检测数值与至少一个后置检测数值进行相加,得到至少一个后置检测总数值。

S28:根据后置检测总数值与后置预设值,确定至少一个后置活体检测结果。

具体的,如果当前的后置检测总数值大于当前的后置预设值,则确定人脸图像的当前的后置活体检测结果为活体。如果当前的后置检测总数值小于或等于当前的后置预设值,则确定人脸图像的当前的后置活体检测结果为无法通过,之后,便会继续进行下一级的活体检测,根据下一级检测总数值与下一级的预设值,确定下一级活体检测结果,直至最后一级的活体检测结果,获得最终检测结果。

在一种实现方式中,当第一检测数值小于或等于第一预设值时,运行第二活体分类器,获得第二活体分数值,如果第二级检测总数值大于第二预设值,则将第二活体检测结果作为最终检测结果,即确定人脸图像的活体检测结果为活体。因此,有可能只需要运行两个活体分类器,通过两级的活体分类检测进行活体检测,便能得到最终活体检测结果。

在另一种实现方式中,如果第二级检测总数值小于或等于第二预设值,则对人脸图像进行第三级活体检测,即需要级联第三活体分类器,或者也有可能级联更多的活体分类器,也就是说,全程通过两个以上的活体分类器对人脸图像进行两级以上的活体检测,获得多个活体分数值。但是,无论通过多少级的活体检测,都以最后一级的活体检测结果作为最终的活体检测结果。

实施例三:

本发明实施例提供的一种活体检测装置,活体检测装置包括:第一活体分类器与至少一个后置活体分类器。

需要说明的是,第一活体分类器用于获取待检测的人脸图像。第一活体分类器还用于对人脸图像进行第一级活体检测,得到第一活体检测结果。

进一步,后置活体分类器用于当第一活体检测结果为无法通过时,对人脸图像进行至少一级后置活体检测,分别得到至少一个后置检测结果。后置活体分类器还用于在当前的后置检测结果为无法通过时,进行下一级后置活体检测,直至最后一级后置活体检测,获得最终检测结果。后置活体分类器还用于在当前的后置检测结果为通过时,将当前的后置活体检测结果作为最终检测结果。

作为一个优选实施方式,后置活体分类器的个数为一个,因此,如图3所示,活体检测装置3包括:第一活体分类器31与第二活体分类器32。

在实际应用中,第一活体分类器31用于获取待检测的人脸图像。第一活体分类器31还用于对人脸图像进行第一级活体检测,得到第一活体检测结果;

作为一个优选方案,第二活体分类器32用于当第一活体检测结果为检测无法通过时,对人脸图像进行第二级活体检测,得到第二活体检测结果。

作为本实施例的优选实施方式,第一活体分类器31与第二活体分类器32之间可以相互连接。进一步的是,第二活体分类器32还用于对第一活体分类器31没有检测的图像数据进行活体检测。即第二活体分类器32可以专注于检测第一活体分类器31不能通过的数据。

因此,活体分类器系统3至少包括两级活体分类器,其中每级活体分类器比现有技术的活体分类器的模型体积小。因为本实施例提供的活体分类器系统是将现有技术中模型体积较大的活体分类器分开,分成模型体积相对较小的两个小活体分类器,即本实施例中的第一活体分类器31与第二活体分类器32,通过模型体积相对较小的活体分类器实现运算量的相对减少,从而提升活体检测速度。

实施例四:

本发明实施例提供的一种电子设备,如图4所示,电子设备4包括存储器41和处理器42,存储器41中存储有可在处理器42上运行的计算机程序,处理器42执行计算机程序时用于执行上述实施例一或实施例二提供的方法的步骤。

参见图4,电子设备4还可以包括:总线43和通信接口44,处理器42、通信接口44和存储器41通过总线43连接;处理器42用于执行存储器41中存储的可执行模块,例如计算机程序。

其中,存储器41可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口44(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。

具体的,总线43可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

其中,存储器41用于存储程序,处理器42在接收到执行指令后,执行程序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器42中,或者由处理器42实现。

作为一个优选方案,处理器42可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器42中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器42可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器41,处理器42读取存储器41中的信息,结合其硬件完成上述方法的步骤。

实施例五:

本发明实施例提供的一种计算机存储介质,在存储介质上存储了程序指令,程序指令在被计算机运行时用于执行上述实施例一或实施例二的方法步骤。

除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。

附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

本发明实施例提供的具有处理器可执行的非易失的程序代码的计算机可读介质,与上述实施例提供的活体检测方法、活体分类器系统以及电子设备具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。

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

此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

本发明实施例所提供的进行活体检测方法的计算机程序产品,包括存储了处理器可执行的非易失的程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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