活体检测方法及装置和电子设备
技术领域
本说明书实施例涉及互联网技术领域,尤其涉及一种活体检测方法及装置和电子设备。
背景技术
随着生物识别技术不断发展,尤其是人脸识别技术得到了广泛的应用;大大简化了支付、门禁、安检等身份认证场景的流程。
然而,人脸识别系统容易受到例如人脸照片、人脸视频等手段的攻击。这些攻击被称为活体攻击,而检测活体攻击的技术被称为活体检测技术。
发明内容
本说明书实施例提供的一种活体检测方法及装置和电子设备:
根据本说明书实施例的第一方面,提供一种活体检测方法,所述方法包括:
提取待检测的多帧人脸图像的空间特征和时间特征;
将所述空间特征和时间特征输入到第一卷积神经网络模型,获取所述第一卷积神经网络中全局池化层输出的低维空间特征和低维时间特征;
将所述多帧人脸图像输入到第二卷积神经网络模型,获取所述第二卷积神经网络中全连接层输出的每一帧人脸图像的生物运动特征;
根据所述低维空间特征、低维时间特征和生物运动特征,计算所述多帧人脸图像的活体检测结果。
可选的,所述空间特征包括局部二值模式特征;
所述提取待检测的多帧人脸图像的时间特征,具体包括:
针对待检测的多帧人脸图像中的每一帧人脸图像,分别在3*3邻域、5*5邻域和7*7邻域提取局部二值模式特征;
合并每一帧人脸图像在3*3邻域、5*5邻域和7*7邻域提取到的局部二值模式特征,得到每一帧人脸图像对应三通道的局部二值模式特征。
可选的,所述时间特征包括光流特征;
所述提取待检测的多帧人脸图像的空间特征,具体包括:
提取待检测的多帧人脸图像中各间隔3帧的两帧人脸图像的光流特征。
可选的,在所述将所述空间特征和时间特征输入到第一卷积神经网络之前,还包括:
对所述多帧人脸图像和空间特征做主成分分析,得到主成分人脸图像和主成分空间特征;
将所述主成分人脸图像、主成分空间特征和时间特征在通道维度进行融合,得到第一融合特征;
所述将所述空间特征和时间特征输入到第一卷积神经网络,包括:
将所述第一融合特征输入到第一卷积神经网络,获取所述第一卷积神经网络中全局池化层输出的低维空间特征和低维时间特征。
可选的,所述每一帧人脸图像的生物运动特征由每一帧人脸图像中若干人脸关键点构成;
在所述将所述多帧人脸图像输入到第二卷积神经网络模型,获取所述第二卷积神经网络中全连接层输出的每一帧人脸图像的生物运动特征之后,还包括:
依次将所述每一帧人脸图像的人脸关键点的集合输入到长短时记忆模型,获取所述长短时记忆模型输出优化的人脸关键点;
将所述优化的人脸关键点作为生物运动特征。
可选的,所述根据所述低维空间特征、低维时间特征和生物运动特征,计算所述多帧人脸图像的活体检测结果,包括:
将所述低维空间特征、低维时间特征和生物运动特征进行融合,得到第二融合特征;
基于设定的二分类决策算法,计算所述第二融合特征的攻击概率;
根据所述攻击概率确定所述多帧人脸图像的活体检测结果。
可选的,所述根据所述攻击概率确定所述多帧人脸图像的活体检测结果,包括:
如果所述攻击概率小于阈值,确定所述多帧人脸图像的活体检测结果为活体;
如果所述攻击概率大于或等于阈值,确定所述多帧人脸图像的活体检测结果为非活体。
可选的,在所述基于设定的二分类决策算法,计算所述第二融合特征的攻击概率之前,还包括:
对所述第二融合特征做主成分分析,得到降维后的第二融合特征。
根据本说明书实施例的第二方面,提供一种活体检测装置,所述装置包括:
第一提取单元,提取待检测的多帧人脸图像的空间特征和时间特征;
特征精炼单元,将所述空间特征和时间特征输入到第一卷积神经网络模型,获取所述第一卷积神经网络中全局池化层输出的低维空间特征和低维时间特征;
第二提取单元,将所述多帧人脸图像输入到第二卷积神经网络模型,获取所述第二卷积神经网络中全连接层输出的每一帧人脸图像的生物运动特征;
检测单元,根据所述低维空间特征、低维时间特征和生物运动特征,计算所述多帧人脸图像的活体检测结果。
可选的,所述空间特征包括局部二值模式特征;
所述第一提取单元中,提取待检测的多帧人脸图像的空间特征,具体包括:
空间特征提取子单元,针对待检测的多帧人脸图像中的每一帧人脸图像,分别在3*3邻域、5*5邻域和7*7邻域提取局部二值模式特征;合并每一帧人脸图像在3*3邻域、5*5邻域和7*7邻域提取到的局部二值模式特征,得到每一帧人脸图像对应三通道的局部二值模式特征。
可选的,所述时间特征包括光流特征;
所述第一提取单元中,所述提取待检测的多帧人脸图像的空间特征,具体包括:
提取待检测的多帧人脸图像中各间隔3帧的两帧人脸图像的光流特征。
可选的,在所述特征精炼单元之前,还包括:
特征预处理单元,对所述多帧人脸图像和空间特征做主成分分析,得到主成分人脸图像和主成分空间特征;将所述主成分人脸图像、主成分空间特征和时间特征在通道维度进行融合,得到第一融合特征;
所述特征精炼单元,具体包括:
将所述第一融合特征输入到第一卷积神经网络,获取所述第一卷积神经网络中全局池化层输出的低维空间特征和低维时间特征。
可选的,所述生物运动特征由若干人脸关键点构成;
在所述第二提前单元之后,还包括:
第二特征处理子单元,依次将所述每一帧人脸图像的人脸关键点的集合输入到长短时记忆模型,获取所述长短时记忆模型输出优化的人脸关键点;将所述优化的人脸关键点作为生物运动特征。
可选的,所述检测单元,包括:
融合子单元,将所述低维空间特征、低维时间特征和生物运动特征进行融合,得到第二融合特征;
计算子单元,基于设定的二分类决策算法,计算所述第二融合特征的攻击概率;
确定子单元,根据所述攻击概率确定所述多帧人脸图像的活体检测结果。
可选的,所述确定子单元,包括:
第一确定子单元,如果所述攻击概率小于阈值,确定所述多帧人脸图像的活体检测结果为活体;
第二确定子单元,如果所述攻击概率大于或等于阈值,确定所述多帧人脸图像的活体检测结果为非活体。
可选的,在所述计算子单元之前,还包括:
降维子单元,对所述第二融合特征做主成分分析,得到降维后的第二融合特征。
根据本说明书实施例的第五方面,提供一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为上述任一项活体检测方法。
为了兼顾活体检测算法的准确率和检测耗时,本说明书提供了一种活体检测方案,采用多帧的非交互式活体检测方式。由于从多帧的人脸图像来说,活体攻击的生物运动模式与真实活体的生物运动模式存在差别,比如攻击存在手持设备时的抖动,而活体会有自然的眨眼、呼吸等生物运动特征;因此可以利用多帧的生物运动特征结合单帧的空间-时间特征进行活体检测。如此,在不影响检测准确性的同时,无需和用户进行交互,从而使得检测耗时大大降低。
附图说明
图1是本说明书一实施例提供的活体检测方法的流程图;
图2a-2c是本说明书一实施例提供的3*3邻域的LBP特征提取的示意图;
图3是本说明书一实施例提供的活体检测装置的硬件结构图;
图4是本说明书一实施例提供的活体检测装置的模块示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
近年来,活体检测技术已经称为人脸识别系统中不可缺少的一个环节,为整个人脸识别系统的安全性保驾护航。
在相关技术中,活体检测可以分为两类,一类是基于单帧的非交互式活体检测方式,另一类是基于多帧的交互式活体检测方式。
其中,单帧就是指一帧,多帧就是指至少两帧。
所述帧可以是指视频中最小单位的单幅图像。一帧就是一副静止的图像;连续的帧就可以形成动态画面,如视频等。通常,帧数可以是指1秒钟时长内传输图像的数量;也可以理解为图形处理器每秒钟能够刷新的次数。通常,帧数可以用FPS(Frames Per Second)表示。高的帧率可以得到更流畅、更逼真的动画。每秒钟帧数越多,所显示的动作就会越流畅。
其中,基于单帧的活体检测,一般可以用于检测活体攻击的静态特征(如空间特征)。具体地所述静态特征可以包括屏幕边框、照片反射、屏幕摩尔纹等等;由于检测的是静态特征,检测过程中无需和用户进行交互,因此称为非交互式。
基于单帧的非交互式活体检测方式中,输入数据为一张(单帧)人脸图像,因此在交互成本、算法运行速度、响应时间上有明显优势,但是由于输入图像没有考虑到时序信息,对视频回放攻击的拦截率往往达不到预期。
其中,基于多帧的活体检测,一般可以用于检测活体攻击的动态特征(如时间特征)。具体地所述动态特征可以包括如眨眼、转头、张嘴或者组合动作;由于检测的是动态特征,检测过程中需要与用户进行交互,因此称为交互式。
基于多帧的交互式活体检测方式中,通过向用户下达交互指令,用户根据交互指令做出相应动作(比如眨眼、转头、张嘴或者组合动作),进而采集用户的动作视频。也就是说,输入数据为一段包含用户动作的视频,即多帧的人脸图像。通过判断用户动作是否满足交互要求从而得到检测结果。由于动作的随机性,攻击者难以提前录制视频绕过活体检测,因此活体攻击无法满足时间特征,检测准确率高。虽然基于多帧的交互式活体检测方式具有检测准确率高的优点,但是需要提供大量的交互时间,因此整体检测耗时较长(通常在十几秒甚至几十秒的级别),用户体验下降严重。
为了兼顾活体检测算法的准确率和检测耗时,本说明书提供了一种活体检测方案,采用多帧的非交互式活体检测方式。由于从多帧的人脸图像来说,活体攻击的生物运动模式与真实活体的生物运动模式存在差别,比如攻击存在手持设备时的抖动,而活体会有自然的眨眼、呼吸等生物运动特征;因此可以利用多帧的生物运动特征结合单帧的空间-时间特征进行活体检测。如此,本说明书提供的活体检测方案在不影响检测准确性的同时,可以无需和用户进行交互,从而使得检测耗时大大降低,从而大大提升用户体验。
本说明书提供了一种活体检测方法,以下可以参考图1所示的例子介绍,所述方法可以包括以下步骤:
步骤110:提取待检测的多帧人脸图像的空间特征和时间特征。
所述多帧人脸图像为同一视频流中的多帧人脸图像,所述多帧可以是指至少两帧。
在一实施例中,由于采集到的视频流中的原始图像不仅包含有人脸信息还包含较多的背景和噪声信息;这些背景和噪声信息相对于人脸信息来说是多余的,如果直接针对原始图像进行活体检测可能会被背景和噪声信息干扰,从而影响检测的准确性。为此,需要对原始图像进行人脸检测,将原始图像中的背景和噪声信息过滤掉,从而得到仅有人脸信息的人脸图像;针对人脸图像进行活体检测的准确率较高。
在一实施例中,不同终端设备上传的人脸图像的尺寸可能存在差异,疼了图像尺寸的不同也会影响活体检测准确性。为此,可以将得到的人脸区域的尺寸归一化到固定的尺寸,例如256*256。这些尺寸归一化后的人脸图像就可以用于后续空间特征、时间特征、人脸关键点等特征提取。
在一实施例中,所述空间特征可以包括LBP(Local Binary Pattern,局部二值模式或局部二进制模式)特征。
LBP特征可以是指一种局部纹理特征,通常可以用来描述人脸的空间(纹理)信息。原始的LBP算子定义是在像素为3*3的邻域内,以邻域中心的像素值为阈值,将邻域中心相邻的8个像素的灰度值与邻域中心的像素值进行比较,如果相邻像素大于中心像素值,则该相邻像素点的位置被标记为1,否则被标记为0。
以下参考图2a-2c所示3*3邻域的LBP特征提取的示意图。
如图2a所示,该3*3邻域总共有9个像素点,其中邻域中心为这9个像素点中心的像素点;其它8个像素点即为邻域。
如图2b所示,每个像素点的数值表示像素值。邻域中心的像素值为125,然后依次将每个邻域像素的灰度值与该125进行比较,如果相邻像素大于中心像素值,则该相邻像素点的位置被标记为1,否则被标记为0;
如图2c所示,邻域1的灰度值小于125,因此邻域1被标记为0;
邻域2的灰度值小于125,因此邻域1被标记为0;
邻域3的灰度值大于125,因此邻域1被标记为1;
邻域4的灰度值大于125,因此邻域1被标记为1;
邻域5的灰度值大于125,因此邻域1被标记为1;
邻域6的灰度值大于125,因此邻域1被标记为1;
邻域7的灰度值大于125,因此邻域1被标记为1;
邻域8的灰度值小于125,因此邻域1被标记为0。
综上,该邻域3*3的人脸图像进行LBP特征提取后可以得到特征
而在本说明书中,所述提取待检测的多帧人脸图像的时间特征,具体包括:
针对待检测的多帧人脸图像中的每一帧人脸图像,分别在3*3邻域、5*5邻域和7*7邻域提取局部二值模式特征;
合并每一帧人脸图像在3*3邻域、5*5邻域和7*7邻域提取到的局部二值模式特征,得到每一帧人脸图像对应三通道的局部二值模式特征。
通过分别采用3*3邻域、5*5邻域和7*7邻域提取LBP特征,可以得到一个三通道的特征图像,每个通道的长和宽与输入人脸图像一致。
在一实施例中,所述时间特征可以包括光流特征;
所述提取待检测的多帧人脸图像的空间特征,具体包括:
提取待检测的多帧人脸图像中各间隔3帧的两帧人脸图像的光流特征。
光流特征可以是空间运动物体在观察成像平面上的像素运动的瞬时速度。在活体检测场景中,光流特征通常可以用来描述人脸视频的时间特征。原始的光流特征是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。
而在本说明书中,虽然也是每两帧人脸图像得到一帧光流特征。但这两帧人脸图像并非相邻的,而是每隔预设帧数的两帧人脸图像的光流特征。
以10帧的人脸图像为例,可以每3帧提取一次光流特征,总共可以提取3次。具体地,对第1帧和第4帧的人脸图像进行特征提取,记为1-4光流特征;
对第2帧和第5帧的人脸图像进行特征提取,记为2-5光流特征;
对第3帧和第6帧的人脸图像进行特征提取,记为3-6光流特征。
这样,可以得到一个三通道的特征图像,每个通道的长和宽与输入人脸图像一致。
步骤120:将所述空间特征和时间特征输入到第一卷积神经网络(ConvolutionalNeural Networks,CNN),获取所述第一卷积神经网络中全局池化层输出的低维空间特征和低维时间特征。
在一实施例中,每一帧的人脸图像都对应有LBP特征。通常,人脸图像与LBP特征之间的维度差异较大,因此需要对人脸图像和LBP特征进行特征维度简化。具体地,在步骤120之前,还可以包括:
A1:对所述多帧人脸图像和空间特征做主成分分析,得到主成分人脸图像和主成分空间特征;
A2:将所述主成分人脸图像、主成分空间特征和时间特征在通道维度进行融合,得到第一融合特征。
相应地,所述步骤120,包括:
将所述第一融合特征输入到第一卷积神经网络,获取所述第一卷积神经网络中全局池化层输出的低维空间特征和低维时间特征。
该实施例中,可以对多帧的人脸图像以及对应的LBP特征进行PCA(主成分分析)处理,从而提取出维度较低的主成分人脸图像以及对应的主成分LBP特征。
其中,主成分人脸图像共有三个通道,且每个通道的长和宽与输入人脸图像一致。同样主成分LBP特征也是如此。最后,可以将主成分人脸图像、主成分LBP特征和光流特征在通道维度进行融合,得到一个9通道(每个通道的长和宽与输入人脸图像一致)的第一融合特征。
然后,可以将所述第一融合特征输入到第一CNN,所述第一CNN可以基于第一融合特征,通过若干卷积层、池化层的计算,最终通过全局池化层计算并输出的低维空间特征和低维时间特征。
需要说明的是,所述第一CNN是预先训练好的。以下介绍第一CNN模型的训练过程:
首先收集用于训练模型的训练样本集,所述训练样本集由若干已经标注了是否为活体的活体-攻击标签的多帧人脸图像。
采用如前步骤110以及步骤A1-A2,可以得到每组训练样本的9通道的第一融合特征;将9通道的第一融合特征作为输入,活体-攻击标签作为监督信号,训练第一CNN模型。以下表1为可能的一种第一CNN模型结构:
表1
其中,Conv表示卷积层,Conv()表示卷积核,例如Conv(3*3)表示3*3的卷积核;
Pooling表示池化层,Pooling()表示池化核,例如Pooling(3*3,stride2)表示3*3的池化核,步长2;
Global Average Pooling表示全局池化层;
Fully Connected表示全连接层;
Softmax表示二分类的损失函数。
由于训练样本已经标注了活体-攻击标签,即Softmax输出是否为活体的检测结果需要与标签相同;如此,通过反复训练,可以不断调整前述各个卷积层内卷积核的参数,最终得到最优的各个卷积核,实现输入各个训练样本的多帧人脸图像计算得到的检测结果与标签一致。训练完成的第一CNN即为步骤120中的第一CNN。
需要注意的是,传统CNN模型的应用是为了获取Softmax输出的结果,而本说明书中,第一CNN模型的应用是为了获取全局池化层(Global Average Pooling)的输出。通过表1可知,全局池化层输出的是1*1*256维的时间和空间特征。相对于第一个卷积层的输入256*256*9=589824维(即9通道下空间时间特征),精炼后的低维时间-空间特征仅仅是256维,特征维度大大减少;并且第一CNN模型精炼后的特征仅包含了人脸图像中与攻击-活体判断有关的空间-时间特征。减少的特征实际都是些无关特征。这样,对于后续计算不仅由于特征维度减少而大大减少了计算量,并且由于精炼的特征维度都是与判断是否活体相关的特征,从而排除了无关特征对检测结果的影响大大提高了检测准确性。
步骤130:将所述多帧人脸图像输入到第二卷积神经网络模型,获取所述第二卷积神经网络中全连接层输出的每一帧人脸图像的生物运动特征。
真实的生物运动过程中,即使在较短的时间内(1s内)因为其呼吸、眨眼等生物运动,也会产生和攻击(视频回放,打印照片)明显不同的特征。这些特征会表现在脸运动角度和速度、眨眼频率等生物运动特征。
本说明书通过人脸关键点构建生物运动特征。其中,所述人脸关键点的数量可以根据对检测结果的准确性要求进行调整。一般的,人脸关键点数量越多,检测准确性越高,反之越低。
以下统一以106个人脸关键点为例加以说明,用人脸图像中的106个关键点随时间的变化来刻画这种生物特有的运动模式,从而达到与攻击相区分的目的。如前所述,106个人脸关键点仅是一个示例,在实际应用时可以根据需求灵活配置。
与前述第一CNN类似的,所述第二CNN也是预先训练好的。以下介绍第二CNN模型的训练过程:
首先收集用于训练模型的训练样本集,所述训练样本集由若干已经标注了是否为活体的活体-攻击标签的多帧人脸图像。值得一提的是,所述第二CNN训练样本集可以使用第一CNN训练样本集。
以下表2为可能的一种第二CNN模型结构:
表2
其中,Conv表示卷积层,Conv()表示卷积核,例如Conv(3*3)表示3*3的卷积核;
Pooling表示池化层,Pooling()表示池化核,例如Pooling(3*3,stride2)表示3*3的池化核,步长2;
Global Average Pooling表示全局池化层;
Fully Connected表示全连接层;
Euclidean Loss表示欧几里得损失函数。
由于训练样本已经标注了活体-攻击标签,即Euclidean Loss输出是否为活体的检测结果需要与标签相同;如此,通过反复训练,可以不断调整前述各个卷积层内卷积核的参数,最终得到最优的各个卷积核,实现输入各个训练样本的多帧人脸图像计算得到的检测结果与标签一致。训练完成的第二CNN即为步骤130中的第二CNN。
所述第二CNN需要等待第一CNN训练完成后才可以训练。
需要注意的是,传统CNN模型的应用是为了获取Euclidean Loss输出的结果,而本说明书中,第二CNN模型的应用是为了获取全连接层(Fully Connected)的输出。通过表2可知,全连接层输出的是106维的人脸关键点。
在一实施例中,在所述将所述多帧人脸图像输入到第二卷积神经网络模型,获取所述第二卷积神经网络中全连接层输出的每一帧人脸图像的生物运动特征之后,还包括:
依次将所述每一帧人脸图像的人脸关键点的集合输入到长短时记忆模型(Longshort termmemory,LSTM),获取所述长短时记忆模型输出优化的人脸关键点;
将所述优化的人脸关键点作为生物运动特征。
该实施例中,通过第二CNN和LSTM实现生物运动特征的提取和优化。
第二CNN用于提取空间信息。具体的,第二CNN的输入为尺寸归一化好的每一帧人脸图像,并被用于预测每一帧人脸图像中的106关键点。LSTM用于提取时间信息。LSTM的输入为一帧人脸图像的106关键点,输出为预测该帧人脸图像的下一帧人脸图像的106关键点。
当采用10帧为输入的多帧人脸图像时,全部的生物运动特征的维度总共有106*10=1060维。
所述LSTM同样可以是预先训练好的,例如针对与第二CNN同样的训练样本,可以对每个训练样本标注人脸图像的人脸关键点;在训练时,将第二CNN输出的每一帧人脸图像的人脸关键点作为LSTM的输入,将标注的人脸关键点作为监督信号,训练该LSTM,训练目标可以是LSTM输出的优化后的人脸关键点与标注人脸关键点一致。
值得一提的是,所述LSTM需要等待第二CNN训练完成后才可以开始训练。
步骤140:根据所述低维空间特征、低维时间特征和生物运动特征,计算所述多帧人脸图像的活体检测结果。
在步骤120获取了低维空间特征和低维时间特征序列,以及步骤130获取了生物运动特征之后,就可以通过预先训练的二分类决策器计算该多帧人脸图像的攻击概率,以确定活体检测结果。
在一实施例中,所述步骤140,具体可以包括:
将所述低维空间特征、低维时间特征和生物运动特征进行融合,得到第二融合特征;
基于设定的二分类决策算法,计算所述第二融合特征的攻击概率;
根据所述攻击概率确定所述多帧人脸图像的活体检测结果。
在这个过程中,首先需要将低维空间特征和低维时间特征和生物运动特征进行特征融合,并对融合的特征进行预处理。
如前所述,在步骤120中获取到256维的低维空间-时间特征与步骤130中获取到的1060维生物运动特征进行简单的融合,得到1060+256=1316维的第二融合特征。然后,对所述第二融合特征做主成分分析,得到降维后的第二融合特征,即可以得到512维的降维特征。
所述二分类决策算法的训练过程:可以采用SVM(支持向量机)分类器,并利用前述第一CNN相同的训练样本,由于这些训练样本已经标注了活体-攻击标签,因此可以将活体-攻击标签作为监督信号。
如前所述,通过对第一CNN和LSTM的输出进行简单维度融合以及PCA降维处理,实际SVM分类器的输入为512维的第二融合特征,攻击-活体标签作为监督信号,进行二分类SVM训练。最终SVM对于每个训练样本(10帧人脸图像)给出一个攻击概率,将这个攻击概率作为最终的活体检测结果。
在一实施例中,如果第二CNN不与LSTM配合使用,则所述SVM分类器的输入为第一CNN和第二CNN的输出;如果第二CNN与LSTM配合使用,则所述分类器的输入为第一CNN和LSTM的输出。
值得一提的是,如果第二CNN不与LSTM配合使用,则所述二分类决策算法例如SVM需要等待第一CNN和第二CNN训练完成后才可以开始训练。
如果第二CNN与LSTM配合使用,则所述二分类决策算法例如SVM需要等待第一CNN和第二CNN以及LSTM训练完成后才可以开始训练。
综上,第一CNN训练完成后可以训练第二CNN,第二CNN训练完成后可以训练LSTM,LSTM训练完成后可以训练SVM。
在一实施例中,所述根据所述攻击概率确定所述多帧人脸图像的活体检测结果,包括:
如果所述攻击概率小于阈值,确定所述多帧人脸图像的活体检测结果为活体;
如果所述攻击概率大于或等于阈值,确定所述多帧人脸图像的活体检测结果为非活体。
其中,所述阈值可以是前述二分类决策算法训练过程中计算出的最优值。也可以是基于经验的经验值。
综上所述,本实施例采用多帧的非交互式活体检测方式。由于从多帧的人脸图像来说,活体攻击的生物运动模式与真实活体的生物运动模式存在差别,比如攻击存在手持设备时的抖动,而活体会有自然的眨眼、呼吸等生物运动特征;因此可以利用多帧的生物运动特征结合单帧的空间-时间特征进行活体检测。如此,本说明书提供的活体检测方案在不影响检测准确性的同时,可以无需和用户进行交互,从而使得检测耗时大大降低,从而兼顾了活体检测算法的准确率和检测耗时。
与前述活体检测方法实施例相对应,本说明书还提供了活体检测装置的实施例。所述装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机业务程序指令读取到内存中运行形成的。从硬件层面而言,如图3所示,为本说明书活体检测装置所在设备的一种硬件结构图,除了图3所示的处理器、网络接口、内存以及非易失性存储器之外,实施例中装置所在的设备通常根据活体检测实际功能,还可以包括其他硬件,对此不再赘述。
请参见图4,为本说明书一实施例提供的活体检测装置的模块图,所述装置对应了图1所示实施例,所述装置包括:
第一提取单元310,提取待检测的多帧人脸图像的空间特征和时间特征;
特征精炼单元320,将所述空间特征和时间特征输入到第一卷积神经网络模型,获取所述第一卷积神经网络中全局池化层输出的低维空间特征和低维时间特征;
第二提取单元330,将所述多帧人脸图像输入到第二卷积神经网络模型,获取所述第二卷积神经网络中全连接层输出的每一帧人脸图像的生物运动特征;
检测单元340,根据所述低维空间特征、低维时间特征和生物运动特征,计算所述多帧人脸图像的活体检测结果。
可选的,所述空间特征包括局部二值模式特征;
所述第一提取单元310中,提取待检测的多帧人脸图像的空间特征,具体包括:
空间特征提取子单元,针对待检测的多帧人脸图像中的每一帧人脸图像,分别在3*3邻域、5*5邻域和7*7邻域提取局部二值模式特征;合并每一帧人脸图像在3*3邻域、5*5邻域和7*7邻域提取到的局部二值模式特征,得到每一帧人脸图像对应三通道的局部二值模式特征。
可选的,所述时间特征包括光流特征;
所述第一提取单元310中,所述提取待检测的多帧人脸图像的空间特征,具体包括:
提取待检测的多帧人脸图像中各间隔3帧的两帧人脸图像的光流特征。
可选的,在所述特征精炼单元320之前,还包括:
特征预处理单元,对所述多帧人脸图像和空间特征做主成分分析,得到主成分人脸图像和主成分空间特征;将所述主成分人脸图像、主成分空间特征和时间特征在通道维度进行融合,得到第一融合特征;
所述特征精炼单元,具体包括:
将所述第一融合特征输入到第一卷积神经网络,获取所述第一卷积神经网络中全局池化层输出的低维空间特征和低维时间特征。
可选的,所述生物运动特征由若干人脸关键点构成;
在所述第二提前单元330之后,还包括:
第二特征处理子单元,依次将所述每一帧人脸图像的人脸关键点的集合输入到长短时记忆模型,获取所述长短时记忆模型输出优化的人脸关键点;将所述优化的人脸关键点作为生物运动特征
可选的,所述检测单元340,包括:
融合子单元,将所述低维空间特征、低维时间特征和生物运动特征进行融合,得到第二融合特征;
计算子单元,基于设定的二分类决策算法,计算所述第二融合特征的攻击概率;
确定子单元,根据所述攻击概率确定所述多帧人脸图像的活体检测结果。
可选的,所述确定子单元,包括:
第一确定子单元,如果所述攻击概率小于阈值,确定所述多帧人脸图像的活体检测结果为活体;
第二确定子单元,如果所述攻击概率大于或等于阈值,确定所述多帧人脸图像的活体检测结果为非活体。
可选的,在所述计算子单元之前,还包括:
降维子单元,对所述第二融合特征做主成分分析,得到降维后的第二融合特征。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本邻域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上图4描述了活体检测装置的内部功能模块和结构示意,其实质上的执行主体可以为一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
提取待检测的多帧人脸图像的空间特征和时间特征;
将所述空间特征和时间特征输入到第一卷积神经网络模型,获取所述第一卷积神经网络中全局池化层输出的低维空间特征和低维时间特征;
将所述多帧人脸图像输入到第二卷积神经网络模型,获取所述第二卷积神经网络中全连接层输出的每一帧人脸图像的生物运动特征;
根据所述低维空间特征、低维时间特征和生物运动特征,计算所述多帧人脸图像的活体检测结果。
可选的,所述空间特征包括局部二值模式特征;
所述提取待检测的多帧人脸图像的时间特征,具体包括:
针对待检测的多帧人脸图像中的每一帧人脸图像,分别在3*3邻域、5*5邻域和7*7邻域提取局部二值模式特征;
合并每一帧人脸图像在3*3邻域、5*5邻域和7*7邻域提取到的局部二值模式特征,得到每一帧人脸图像对应三通道的局部二值模式特征。
可选的,所述时间特征包括光流特征;
所述提取待检测的多帧人脸图像的空间特征,具体包括:
提取待检测的多帧人脸图像中各间隔3帧的两帧人脸图像的光流特征。
可选的,在所述将所述空间特征和时间特征输入到第一卷积神经网络之前,还包括:
对所述多帧人脸图像和空间特征做主成分分析,得到主成分人脸图像和主成分空间特征;
将所述主成分人脸图像、主成分空间特征和时间特征在通道维度进行融合,得到第一融合特征;
所述将所述空间特征和时间特征输入到第一卷积神经网络,包括:
将所述第一融合特征输入到第一卷积神经网络,获取所述第一卷积神经网络中全局池化层输出的低维空间特征和低维时间特征。
可选的,所述生物运动特征由若干人脸关键点构成;
在所述将所述多帧人脸图像输入到第二卷积神经网络模型,获取所述第二卷积神经网络中全连接层输出的每一帧人脸图像的生物运动特征之后,还包括:
依次将所述每一帧人脸图像的人脸关键点的集合输入到长短时记忆模型,获取所述长短时记忆模型输出优化的人脸关键点;
将所述优化的人脸关键点作为生物运动特征。
可选的,所述根据所述低维空间特征、低维时间特征和生物运动特征,计算所述多帧人脸图像的活体检测结果,包括:
将所述低维空间特征、低维时间特征和生物运动特征进行融合,得到第二融合特征;
基于设定的二分类决策算法,计算所述第二融合特征的攻击概率;
根据所述攻击概率确定所述多帧人脸图像的活体检测结果。
可选的,所述根据所述攻击概率确定所述多帧人脸图像的活体检测结果,包括:
如果所述攻击概率小于阈值,确定所述多帧人脸图像的活体检测结果为活体;
如果所述攻击概率大于或等于阈值,确定所述多帧人脸图像的活体检测结果为非活体。
可选的,在所述基于设定的二分类决策算法,计算所述第二融合特征的攻击概率之前,还包括:
对所述第二融合特征做主成分分析,得到降维后的第二融合特征。
在上述电子设备的实施例中,应理解,该处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application SpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,而前述的存储器可以是只读存储器(英文:read-only memory,缩写:ROM)、随机存取存储器(英文:random access memory,简称:RAM)、快闪存储器、硬盘或者固态硬盘。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本邻域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未公开的本技术邻域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。