一种活体模型训练和人脸活体检测方法、装置和电子设备与流程

文档序号:20920094发布日期:2020-05-29 14:02阅读:278来源:国知局
一种活体模型训练和人脸活体检测方法、装置和电子设备与流程

本发明涉及人脸识别技术领域,具体而言,涉及一种活体模型训练和人脸活体检测方法、装置和电子设备。



背景技术:

随着人脸识别技术的广泛应用,其使用安全性也慢慢受到人们的关注。人脸活体判断是指通过可以自动判别给定图像或视频中的人脸是来自真实的人还是来自于欺骗人脸如的技术,常见的欺骗人脸有面具、打印照片、屏幕上显示的照片或播放的视频片段等。人脸活体判断是一种重要的防攻击、防欺诈的技术手段,在银行、保险、互联网金融、电子商务等涉及到远程身份认证的行业和场合存在广泛的应用。

现有的人脸活体判断技术大体可以分为两类:静态方法和动态方法。静态方法主要通过图像中的颜色、纹理以及背景物体等特性来判断给定人脸的真实性,这种方法具有简单、高效的特点,但是安全等级并不高;原因在于静态人脸图像容易通过ps、合成软件以及高清屏幕显示照片等方式进行伪造,且随着技术的发展这种伪造方式的技术难度和成本将越来越低。动态方法主要是指各种基于动作的单帧图像的判断,要求使用者在镜头前完成张嘴、眨眼等指定的面部动作,然而,这些面部动作增加了技术实现难度,同时也降低了用户体验。

因此,亟需一种安全等级高且动作难度简单的人脸活体识别技术,以提高用户体验。



技术实现要素:

本发明解决的问题是如何结合样本分布特征,监督深度神经网络实现更准确的分类。

为解决上述问题,本发明首先提供一种活体模型训练方法,其包括:

获取多个静默视频,并从每个静默视频中抽取多个待训练帧图像;

将所述多个待训练帧图像输入预设的活体模型中,得到与所述静默视频对应的输出结果;

根据所述输出结果与静默视频的标注结果,计算损失函数的值;

根据所述损失函数的值调整所述活体模型的参数,直到所述损失函数的值收敛。

这样,可以由静默视频中抽取多个单帧图像,并输入活体模型中,进行训练和结果输出,这种多帧图像判断的方式及模型,避免了单帧图像造成的安全等级低的情况,且获取静默视频,无需设置特定动作,因此避免了动态图像中动作难度过于复杂的问题;不仅安全等级高,且动作简单,便于实现,提高了使用者的体验度。

可选的,所述活体模型为神经网络模型。

可选的,所述获取多个静默视频,并从每个静默视频中抽取多个待训练帧图像,之后还包括:

根据所述静默视频获取标注结果。

这样,通过静默视频获取标注结果,可以获得待训练帧图像的真实结果,从而通过后续对比提高识别的准确性,得到准确度更高的活体模型。

可选的,所述获取多个静默视频,并从每个静默视频中抽取多个待训练帧图像,包括:

获取一个所述静默视频,将所述静默视频划分为多个区间段;

在每个区间段中抽取一个帧图像;该帧图像为待训练帧图像;

遍历所有所述静默视频,获得待训练帧图像。

这样,划分区间段后,每个区间段抽取一个帧图像,可以避免直接抽取带来的帧图像在静默视频中的分布过于不均匀(两个帧图像之间的时间间隔过长,会造成有效信息的缺失,间隔时间过短,会造成重复显示)导致的有效信息的缺失或过度重复。

可选的,所述活体模型的输出结果至少包括:人脸存在分数、活体分数和攻击分数。

可选的,所述攻击分数包括:屏幕翻拍分数、打印纸分数、剪纸分数、抠图面具分数和3d模型分数。

这样,通过对攻击类型进行细分类,能够统计检测方法和模型在不同攻击类型上的表现,及时弥补方法和模型在不同攻击类型上的不足,达到使用简便,精度高、安全度高的目的。

可选的,所述静默视频的标注结果中,所述人脸存在分数表征不存在人脸时,所述损失函数由所述静默视频标注结果中的人脸存在分数和输出结果中的人脸存在分数确定。

可选的,所述静默视频的标注结果中,所述人脸存在分数表征存在人脸时,所述损失函数由所述静默视频标注结果中的人脸存在分数、活体分数、攻击分数和输出结果中的人脸存在分数、活体分数、攻击分数确定。

这样,通过不同人脸下的损失函数设置,建立输出结果与实际分类的对应关系,从而使得分类函数更能反映实际分类的准确程度,这样,通过损失函数对活体模型中的参数进行调整,可以提高活体模型识别的准确度和辨识度,达到更好的训练效果。

其次提供一种人脸活体检测方法,其包括:

拍摄人脸的静默视频,并从所述静默视频中抽取多个待评估帧图像;

将所述待评估帧图像输入预设的活体模型中,得到评估结果;所述活体模型采用如前述所述的活体模型训练方法训练获得;

根据所述评估结果判断所述静默视频的检测结果。

这样,可以由静默视频中抽取多个单帧图像,并输入活体模型中,进行训练和结果输出,这种多帧图像判断的方式及模型,避免了单帧图像造成的安全等级低的情况,且获取静默视频,无需设置特定动作,因此避免了动态图像中动作难度过于复杂的问题;不仅安全等级高,且动作简单,便于实现,提高了使用者的体验度。

可选的,所述静默视频的时长为1~3s。这样,可以减小使用者需要拍摄的时间,降低使用者拍摄的动作难度,从而提高体验感

可选的,所述根据所述评估结果判断所述静默视频的检测结果,包括:

判断所述评估结果中的人脸存在分数是否小于预设的人脸阈值;

若小于所述人脸阈值,则所述静默视频的活体检测未通过;

若不小于所述人脸阈值,则判断所述活体分数和所述攻击分数中,所述活体分数是否为最高分;

若为最高分,则所述静默视频的活体检测通过;

若不为最高分,则所述静默视频的活体检测未通过。

这样,对攻击类型进行细分类,通过统计检测方法和模型在不同攻击类型上的表现,及时弥补方法和模型在不同攻击类型上的不足,直接得出攻击类型,达到使用简便,精度高、安全度高的目的。

再次,提供一种活体模型训练装置,其包括:

获取单元,用于获取多个静默视频,并从每个静默视频中抽取多个待训练帧图像;

模型单元,用于将所述多个待训练帧图像输入预设的活体模型中,得到与所述静默视频对应的输出结果;

计算单元,用于根据所述输出结果与静默视频的标注结果,计算损失函数的值;

调整单元,用于根据所述损失函数的值调整所述活体模型的参数,直到所述损失函数的值收敛。

这样,可以由静默视频中抽取多个单帧图像,并输入活体模型中,进行训练和结果输出,这种多帧图像判断的方式及模型,避免了单帧图像造成的安全等级低的情况,且获取静默视频,无需设置特定动作,因此避免了动态图像中动作难度过于复杂的问题;不仅安全等级高,且动作简单,便于实现,提高了使用者的体验度。

从次,提供一种人脸活体检测装置,其包括:

拍摄单元,用于拍摄人脸的静默视频,并从所述静默视频中抽取多个待评估帧图像;

评估单元,用于将所述待评估帧图像输入预设的活体模型中,得到评估结果;所述活体模型采用如前述所述的活体模型训练方法训练获得;

判断单元,用于根据所述评估结果判断所述静默视频的检测结果。

这样,可以由静默视频中抽取多个单帧图像,并输入活体模型中,进行训练和结果输出,这种多帧图像判断的方式及模型,避免了单帧图像造成的安全等级低的情况,且获取静默视频,无需设置特定动作,因此避免了动态图像中动作难度过于复杂的问题;不仅安全等级高,且动作简单,便于实现,提高了使用者的体验度。

最后提供一种电子设备,包括处理器以及存储器,所述存储器存储有控制程序,所述控制程序被处理器执行时实现上述所述的活体模型训练方法,或者,实现上述所述的人脸活体检测方法。

另外,提供一种计算机可读存储介质,存储有指令,所述指令被处理器加载并执行时实现上述所述的活体模型训练方法,或者,实现上述所述的人脸活体检测方法。

附图说明

图1为根据本发明一个实施例的活体模型训练方法的流程图;

图2为根据本发明另一实施例的活体模型训练方法的流程图;

图3为根据本发明实施例的活体模型训练方法步骤10的流程图;

图4为根据本发明实施例的人脸活体检测方法的流程图;

图5为根据本发明实施例的人脸活体检测方法步骤300的流程图

图6为根据本发明实施例的活体模型训练装置的结构框图;

图7为根据本发明实施例的人脸活体检测装置的结构框图;

图8为根据本发明实施例的一种电子设备的结构框图;

图9为根据本发明实施例的另一种电子设备的框图。

附图标记说明:

1-获取单元,2-模型单元,3-计算单元,4-调整单元,5-拍摄单元,6-评估单元,7-判断单元,12-电子设备,14-外部设备,16-处理单元,18-总线,20-网络适配器,22-输入/输出(i/o)接口,24-显示器,28-系统存储器,30-随机存取存储器,32-高速缓存存储器,34-存储系统,40-实用工具,42-程序模块。

具体实施方式

为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。

显然,所说明的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动的前提下获得的所有其他实施例,都属于本发明保护的范围。

为了便于理解,在本发明中,需要对其中的技术问题和技术原理进行详细阐述。

人脸识别技术,现已取得广泛的应用;其中,人脸识别是否安全,是通过人脸活体判断来确定的。人脸活体判断是指通过可以自动判别给定图像或视频中的人脸是来自真实的人还是来自于欺骗人脸(面具、打印照片、屏幕上显示的照片或播放的视频片段等)的技术。

也即是说,人脸活体判断就是判断摄像头等获取的图像或视频中是真实的人脸,还是用面具、打印照片、屏幕上显示的照片或播放的视频片段等做成的欺诈人脸。如果是真实的人脸,则后续判断该人脸的真实身份,从而识别人脸;如果是欺骗人脸,则停止判断该人脸的真实身份,防止出现识别错误及造成其他严重后果。

现有的人脸活体判断技术大体可以分为两类:静态方法和动态方法。

静态方法主要在获取单帧图像后,通过图像中的颜色、纹理以及背景物体等特性来判断给定人脸的真实性。这种方法具有简单、高效的特点,但是安全等级并不高,原因在于静态人脸图像容易通过ps、合成软件以及高清屏幕显示照片等方式进行伪造,这种伪造很难通过对颜色、纹理及背景物体等特性来判断出来。事实上,如果给定一张人脸图像,通过人工方式来判断该图像是真实人脸还是其他手段如面具、打印照片、屏幕上显示的照片或播放的视频片段截图得到的人脸,在清晰度较高的情况下,(人工)也是很难分辨的。另外,随着技术的发展,上述的伪造人脸的方式,其技术难度以及伪造成本会越来越低,辨识的失败率反而会越来越高,目前的这种静态方法,弊端会越来越明显。

动态方法主要是指各种基于动作的单帧图像的判断,要求使用者在镜头前完成张嘴、眨眼等指定的面部动作。也即是说,使用者在镜头前按照指示进行张嘴、眨眼等动作;在获取到这些张嘴、眨眼的动作视频后,从中截取具体动作的单帧图像,然后对该单帧图像进行判断,确定是活体人脸还是欺骗人脸。这种方式,由于是从视频中抽取一帧图像,所以伪造者必须对整个视频进行伪造,才能进行欺骗;这些具体动作牵涉到多个面部神经,伪造的难度很高,因此安全级别很高。但是,由于这些动作牵涉到多个面部神经,所以对于判断方而言,通过何种方式来判断,又以什么样的标准来判断,是一件非常复杂的事情,所以这种判断的实现难度很高;另外,按照要求做设定的动作,特别是动作不标准还需要按照要求进行重复,对于使用者而言,是比较为难的事情,体验度很差。

现有的活体检测方法,以及其中的检测模型,都是针对单帧图像的静态或动态识别方式,因此普遍存在要么安全等级过低,要么动作难度过于复杂的问题。

本公开实施例提供了一种活体模型训练方法,该方法可以由活体模型训练装置来执行,该活体模型训练装置可以集成在电脑,服务器等电子设备中。如图1所示,其为根据本发明实施例的活体模型训练方法的流程图;其中,所述活体模型训练方法,包括:

步骤10,获取多个静默视频,并从每个静默视频中抽取多个待训练帧图像;

其中,所述静默视频,可以为使用者注视摄像头或屏幕一段时间后得到的,无需使用者做特殊动作或具体动作,因此不会降低客户的体验度。

需要说明的是,所述静默视频(或者说每个视频)是由多帧图像依次排列组成的,每帧图像可以是一张rgb图片,也可以是一张红外图像。从每个静默视频中抽取多个待训练帧图像,也即是说,从每个静默视频中的多帧依次排列的图像中,抽取多个作为待训练帧图像。

可选的,从每个静默视频中抽取的待训练帧图像的数量相同,比如在每个静默视频中均抽取n个待训练帧图像;这样,通过统一抽取标准,可以大大减小由于标准不统一造成的识别误差,提高模型识别的准确性。

可选的,从静默视频中抽取的待训练帧图像中相邻的两个待训练帧图像的抽取时间间隔相同。这样,可以均匀第进行待训练帧图像的抽取,避免不均匀抽取带来的识别误差,从而获得识别度准确性更高的活体模型。

步骤30,将所述多个待训练帧图像输入预设的活体模型中,得到与所述静默视频对应的输出结果;

其中,所述活体模型,可以为如vgg16、alexnet、resnet等模型,也可以为在此基础上修改的模型,也可以为自定义的网络结构或自定义的神经网络。

其中,在确定活体模型后,预先设置活体模型内的各项参数,后期再通过损失函数逐步调整,以达到获得最佳活体模型的目的。需要说明的是,活体模型内的各项参数,可以是根据经验预先设置,也可以是根据实际需求或惯常设置等其他方式设置的默认值。

将所述多个待训练帧图像输入预设的活体模型中,得到与所述静默视频对应的输出结果,该输出结果为活体模型对待训练帧图像/静默视频的预测结果,并非该待训练帧图像/静默视频的真实结果。

可选的,所述活体模型为神经网络模型。这样,神经网络模型可以通过训练得到更准确的判断,从而提高对人脸活体识别的准确度。

需要说明的是,本步骤中,将所述多个待训练帧图像输入活体模型,是指将一个静默视频中抽取的多个待训练帧图像均输入活体模型中,这样,才可以判断该静默视频中的人脸是否是真实人脸。

其中,一个静默视频中抽取的多个待训练帧图像均输入活体模型中,进而从活体模型中输出一个结果,该输出结果即为静默视频的输出结果,也即是活体模型对该静默视频的预测结果/识别结果。

需要说明的是,将待训练帧图像输入活体模型,不是一帧一帧地输入,而是把同一个静默视频中抽取的待训练帧图像作为一组帧图像,输入时将该组帧图像输入活体模型,得到一个输出结果,该结果即是该组帧图像对应的输出结果,也是该静默视频对应的输出结果。步骤40,根据所述输出结果与静默视频的标注结果,计算损失函数的值;

其中,静默视频的标注结果,是指该待训练帧图像的真实结果,该结果的获取方式,可以是在获取待训练帧图像或者静默视频时同步获得,也可以是通过人工方式识别得到。比如,通过人工方式,可以识别获得的静默视频是真实人脸还是欺骗人脸,静默视频的识别结果,即是该静默视频中抽取的多个待训练帧图像的识别结果;比如,使用者在录制静默视频时,可以同时给出静默视频的识别结果,进而可获得抽取的多个待训练帧图像的识别结果。

步骤50,根据所述损失函数的值调整所述活体模型的参数,直到所述损失函数的值收敛。

根据所述损失函数的值调整所述神经网络模型或所述活体模型的参数时,可以通过小批量的更新样本来进行迭代。比如具有1万个待训练帧图像,每次选择100个待训练帧图像输入神经网络模型或所述活体模型,并计算这100个样本的损失函数的值,通过损失函数的值调整神经网络模型或所述活体模型的参数;然后再选择100个待训练帧图像输入调整后的神经网络模型,这样循环迭代进行更新,直到所述损失函数的值收敛为止。

这样,通过步骤10-50,可以由静默视频中抽取多个单帧图像,并输入活体模型中,进行训练和结果输出,这种多帧图像判断的方式及模型,避免了单帧图像造成的安全等级低的情况,且获取静默视频,无需设置特定动作,因此避免了动态图像中动作难度过于复杂的问题;不仅安全等级高,且动作简单,便于实现,提高了使用者的体验度。

可选的,如图2所示,所述步骤10,获取多个静默视频,并从每个静默视频中抽取多个待训练帧图像,之后还包括:

步骤20,根据所述静默视频获取标注结果。

其中,标注结果,是指该待训练帧图像的真实结果,标注结果的获取方式,可以是在获取待训练帧图像或者静默视频时同步获得,可以是静默视频中或其他存储部分预先存储,也可以是通过人工方式识别得到。比如,通过人工方式,可以识别获得的静默视频是真实人脸还是欺骗人脸,静默视频的识别结果,即是该静默视频中抽取的多个待训练帧图像的识别结果;比如,使用者在录制静默视频时,可以同时给出静默视频的识别结果,进而可获得抽取的多个待训练帧图像的识别结果。

这样,通过静默视频获取标注结果,可以获得待训练帧图像的真实结果,从而通过后续对比提高识别的准确性,得到准确度更高的活体模型。

可选的,如图3所示,所述步骤10,获取多个静默视频,并从每个静默视频中抽取多个待训练帧图像,包括:

步骤11,获取一个所述静默视频,将所述静默视频划分为多个区间段;

需要从多个静默视频中抽取待训练帧图像时,先选择一个静默视频进行抽取,抽取完毕后再选择另一个静默视频进行抽取,直至所有静默视频抽取完毕为止。

其中,将所述静默视频划分为多个区间段,是指从静默视频中设置多个时间节点,相邻时间节点之间的即为划分出的区间段,由于时间点还包括0时刻和最末时刻,因此划分出的区间段的数量比静默视频内时间节点(不包含0时刻和末时刻)的数量多一个。

可选的,将所述静默视频均匀划分为多个区间段,从而提高区间段的均匀性。

可选的,所述区间段的时长为定值(常量);也即是说,对静默视频进行划分时,以预先设定的定值(常量)为时长,逐个进行划分,剩余时长不足的,单独划分为一个区间段(也可以从末时刻向0时刻的方向通过预设的时长进行划分,或者其他的划分方式);这样,对区间段的时长进行限定,可以防止区间段的时长过长带来的对静默视频的有效信息造成的遗漏,也可以防止区间段的时长过短带来的区间段数量过多,进而造成需要处理的数据量增多的情况。

步骤12,在每个区间段中抽取一个帧图像;该帧图像为待训练帧图像;

每个区间段中均包含多个rgb图像(帧图像),在每个区间段中抽取一个帧图像,即是在多个rgb图像中选择一个作为抽取出来的帧图像。

这样,划分区间段后,每个区间段抽取一个帧图像,可以避免直接抽取带来的帧图像在静默视频中的分布过于不均匀(两个帧图像之间的时间间隔过长,会造成有效信息的缺失,间隔时间过短,会造成重复显示)导致的有效信息的缺失或过度重复。

步骤13,遍历所有所述静默视频,获得待训练帧图像。

先选择一个静默视频进行抽取,抽取完毕后再选择另一个静默视频进行抽取,直至所有静默视频抽取完毕为止;这样,通过遍历,可以保证所有的静默视频依次完成抽取,从而提高视频抽取效率。

这样,通过步骤11-13,划分区间段后,每个区间段抽取一个帧图像,可以避免直接抽取带来的帧图像在静默视频中的分布过于不均匀(两个帧图像之间的时间间隔过长,会造成有效信息的缺失,间隔时间过短,会造成重复显示)导致的有效信息的缺失或过度重复。

可选的,所述活体模型的输出结果至少包括:人脸存在分数、活体分数和攻击分数。

其中,所述人脸存在分数,用于判断是否有人脸存在;所述活体分数,用于判断其中的人脸是否是活体(活人或真实人脸);所述攻击分数,用于判断其中的人脸是否是网络攻击(欺骗人脸)。

这样,通过在输出结果中输出三种分数,从而将人脸检测与活体检测集中到一个模型中,这样可以直接通过一个活体检测模型同时检测人脸和活体,使用简单、精度高、安全度高。

可选的,所述攻击分数包括:屏幕翻拍分数、打印纸分数、剪纸分数、抠图面具分数和3d模型分数。

其中,所述攻击分数包含的类型,是用于判断现实中攻击的五个种类的具体类型;该五个攻击种类屏幕翻拍攻击、打印纸攻击、剪纸攻击、抠图面具攻击和3d模型攻击,是通过对现实生活中的攻击种类,进行大量的实践和总结得到的,本步骤中将其分为五大类,具体为:

屏幕翻拍攻击:拍摄对象为手机、电脑、ipad、显示屏等屏幕,素材包括图片、视频等;

打印纸攻击:拍摄对象为各种尺寸的完整打印纸,素材包括黑白纸、彩色纸、光面纸、绒面纸、铜版纸等;

剪纸攻击:拍摄对象为沿着人身轮廓进行裁剪后的打印纸,素材包括黑白纸、彩色纸、光面纸、绒面纸、铜版纸等;

抠图面具攻击:拍摄对象为裁剪后的打印纸与真人相结合的攻击,裁剪方式包括裁掉眼睛、嘴巴、鼻子等,素材包括黑白纸、彩色纸、光面纸、绒面纸、铜版纸等;

3d模型攻击:拍摄对象为3d模型,模型材质包括硅胶、塑料、石墨等。

这样,通过对攻击类型进行细分类,能够统计检测方法和模型在不同攻击类型上的表现,及时弥补方法和模型在不同攻击类型上的不足,达到使用简便,精度高、安全度高的目的。

需要说明的是,上述分为五大类,是针对现有攻击类型的其中一种分类方式,也可以根据其他分类标准将其分类为其他多个类型,比如分为四类、三类、七类、八类等,具体分类数量和类型可以根据实际情况调整。

在将攻击分为五个类型时,我们优选将输出结果和标注结果设置为(1,7)的向量,具体为:

y=(p,c0,c1,c2,c3,c4,c5)

其中,y代表标注结果,p代表视频中是否有人脸,p=1代表有人脸,p=0代表无人脸(在输出结果中,也可以输出0和1的中间数值,因此可以设置阈值,高于该阈值认为有人脸,低于该阈值认为无人脸);c0代表活体分数,c1代表屏幕翻拍攻击分数,c2代表打印纸攻击的分数,c3代表剪纸攻击的分数,c4代表抠图面具攻击的分数,c5代表3d模型攻击的分数。

这样,在数据采集标注阶段(活体模型训练阶段)收集的七类视频及其对应的标注结果为:

无人脸视频—(0,0,0,0,0,0,0)

真人视频(活体视频)—(1,1,0,0,0,0,0)

屏幕翻拍攻击视频—(1,0,1,0,0,0,0)

打印纸攻击视频—(1,0,0,1,0,0,0)

剪纸攻击视频—(1,0,0,0,1,0,0)

抠图面具攻击视频—(1,0,0,0,0,1,0)

3d模型攻击视频—(1,0,0,0,0,0,1)

可选的,所述静默视频的标注结果中,所述人脸存在分数表征不存在人脸时,所述损失函数由所述静默视频标注结果中的人脸存在分数和输出结果中的人脸存在分数确定。

也即是说,在所述人脸存在分数表征不存在人脸(分数为0)时,仅通过人脸存在分数计算损失函数,不再考虑标注结果和输出结果中的其他分数。

其中,在所述人脸存在分数表征不存在人脸时(或标注结果中p=0时),所述损失函数为:

l=(p-p^)2

式中,l为损失函数的值,p为活体模型标注结果中的人脸存在分数,p^为输出结果中的人脸存在分数。

可选的,所述静默视频的标注结果中,所述人脸存在分数表征存在人脸时,所述损失函数由所述静默视频标注结果中的人脸存在分数、活体分数、攻击分数和输出结果中的人脸存在分数、活体分数、攻击分数确定。

也即是说,在所述人脸存在分数表征存在人脸时,通过标注结果和输出结果中的所有分数来计算损失函数。

其中,在所述人脸存在分数表征存在人脸时(或标注结果中p=1时),所述损失函数为:

式中,l为损失函数的值,p为活体模型标注结果中的人脸存在分数,p^为输出结果中的人脸存在分数,ci为标注结果中的活体分数或攻击分数,为输出结果中的活体分数或攻击分数。

这样,通过不同人脸下的损失函数设置,建立输出结果与实际分类的对应关系,从而使得分类函数更能反映实际分类的准确程度,这样,通过损失函数对活体模型中的参数进行调整,可以提高活体模型识别的准确度和辨识度,达到更好的训练效果。

本公开实施例提供了一种人脸活体检测方法,该方法可以由人脸活体检测装置来执行,该人脸活体检测装置可以集成在电脑,服务器等电子设备中。如图4所示,其为根据本发明实施例的人脸活体检测方法的流程图;其中,所述人脸活体检测方法,包括:

步骤100,拍摄人脸的静默视频,并从所述静默视频中抽取多个待评估帧图像;

本人脸活体检测方法中,步骤100的具体内容可以参考活体模型训练方法中步骤10及步骤11-13的具体描述,在此不再赘述。

可选的,所述静默视频的时长为1~3s。这样,可以减小使用者需要拍摄的时间,降低使用者拍摄的动作难度,从而提高体验感。

步骤200,将所述待评估帧图像输入预设的活体模型中,得到评估结果;所述活体模型采用如前述所述的活体模型训练方法训练获得;

本人脸活体检测方法中,步骤200的具体内容可以参考活体模型训练方法中步骤30的具体描述,在此不再赘述。

其中,活体模型采用上述所述的活体模型训练方法训练获得;这样,先对活体模型进行学习训练,然后通过训练好的活体模型,对待评估帧图像进行判断和识别,从而可以对待评估帧图像进行准确的分类。

步骤300,根据所述评估结果判断所述静默视频的检测结果。

这样,通过步骤100-300,可以由静默视频中抽取多个单帧图像,并输入活体模型中,进行训练和结果输出,这种多帧图像判断的方式及模型,避免了单帧图像造成的安全等级低的情况,且获取静默视频,无需设置特定动作,因此避免了动态图像中动作难度过于复杂的问题;不仅安全等级高,且动作简单,便于实现,提高了使用者的体验度。

可选的,如图5所示,所述步骤300,根据所述评估结果判断所述静默视频的检测结果,包括:

步骤310,判断所述评估结果中的人脸存在分数是否小于预设的人脸阈值;

人脸存在分数大于人脸阈值,意味着该人脸存在的可能性很高,可以认为是静默视频中存在人脸;人脸存在分数小于人脸阈值,意味着该人脸存在的可能性很低,可以认为是静默视频中不存在人脸。

可选的,所述人脸阈值的取值范围为0.3-0.5。这样,可以对人脸存在分数进行准确判断,确定静默视频中是否存在人脸。

步骤320,若小于所述人脸阈值,则所述静默视频的活体检测未通过;

静默视频是使用者拍摄的视频,静默视频中不存在人脸,意味着静默视频的拍摄出现问题,人脸并未存在于视频中,进而可以确定,静默视频中并不存在真实人脸,因此判定静默视频的活体检测未通过。

步骤330,若不小于所述人脸阈值,则判断所述活体分数和所述攻击分数中,所述活体分数是否为最高分;

步骤340,若为最高分,则所述静默视频的活体检测通过;

步骤350,若不为最高分,则所述静默视频的活体检测未通过。

静默视频中存在人脸,才可以在此基础上判断静默视频中的人脸是真实人脸还是欺骗人脸。

上述判断即为判断所述活体分数和所述攻击分数中,谁为最高分;若活体分数为最高分,则静默视频中的人脸是真实人脸,活体检测通过;若攻击分数为最高分,则静默视频中的人脸是欺骗人脸,活体检测未通过。

可选的,如前述所述,所述攻击分数包括:屏幕翻拍分数、打印纸分数、剪纸分数、抠图面具分数和3d模型分数。

需要说明的是,上述分为五大类,是针对现有攻击类型的其中一种分类方式,也可以根据其他分类标准将其分类为其他多个类型,比如分为四类、三类、七类、八类等,具体分类数量和类型可以根据实际情况调整。

如前述所述,所述评估结果为:

y=(p,c0,c1,c2,c3,c4,c5)

则所述活体分数和所述攻击分数为c0,c1,c2,c3,c4,c5;上述判断步骤实质上即为判断c0,c1,c2,c3,c4,c5中的最高分,若活体分数c0为最高分,则静默视频中的人脸是真实人脸,活体检测通过;若攻击分数c1,c2,c3,c4,c5中的其中一个为最高分,则静默视频中的人脸是欺骗人脸,活体检测未通过;且攻击分数中,c1代表屏幕翻拍攻击分数,c2代表打印纸攻击的分数,c3代表剪纸攻击的分数,c4代表抠图面具攻击的分数,c5代表3d模型攻击的分数,其中哪一个为最高分(均意味着攻击分数为最高分),代表所述静默视频中的欺骗人脸为最高分对应的攻击类型。

这样,通过步骤310-350,对攻击类型进行细分类,通过统计检测方法和模型在不同攻击类型上的表现,及时弥补方法和模型在不同攻击类型上的不足,直接得出攻击类型,达到使用简便,精度高、安全度高的目的。

本公开实施例提供了一种活体模型训练装置,用于执行本发明上述内容所述的活体模型训练方法,以下对所述活体模型训练装置进行详细描述。

如图6所示,其为根据本发明实施例的活体模型训练装置的结构框图;其中,所述活体模型训练装置,包括:

获取单元1,用于获取多个静默视频,并从每个静默视频中抽取多个待训练帧图像;

模型单元2,用于将所述多个待训练帧图像输入预设的活体模型中,得到与所述静默视频对应的输出结果;

计算单元3,用于根据所述输出结果与静默视频的标注结果,计算损失函数的值;

调整单元4,用于根据所述损失函数的值调整所述活体模型的参数,直到所述损失函数的值收敛。

这样,可以由静默视频中抽取多个单帧图像,并输入活体模型中,进行训练和结果输出,这种多帧图像判断的方式及模型,避免了单帧图像造成的安全等级低的情况,且获取静默视频,无需设置特定动作,因此避免了动态图像中动作难度过于复杂的问题;不仅安全等级高,且动作简单,便于实现,提高了使用者的体验度。

可选的,所述活体模型为神经网络模型。

可选的,所述获取单元1,还用于:根据所述静默视频获取标注结果。

可选的,所述获取单元1,还用于:获取一个所述静默视频,将所述静默视频划分为多个区间段;在每个区间段中抽取一个帧图像;该帧图像为待训练帧图像;遍历所有所述静默视频,获得待训练帧图像。

可选的,所述活体模型的输出结果至少包括:人脸存在分数、活体分数和攻击分数。

可选的,所述攻击分数包括:屏幕翻拍分数、打印纸分数、剪纸分数、抠图面具分数和3d模型分数。

可选的,所述静默视频的标注结果中,所述人脸存在分数表征不存在人脸时,所述损失函数由所述静默视频标注结果中的人脸存在分数和输出结果中的人脸存在分数确定。

可选的,所述静默视频的标注结果中,所述人脸存在分数表征存在人脸时,所述损失函数由所述静默视频标注结果中的人脸存在分数、活体分数、攻击分数和输出结果中的人脸存在分数、活体分数、攻击分数确定。

本公开实施例提供了一种人脸活体检测装置,用于执行本发明上述内容所述的人脸活体检测方法,以下对所述人脸活体检测装置进行详细描述。

如图7所示,其为根据本发明实施例的人脸活体检测装置的结构框图;其中,人脸活体检测装置,包括:

拍摄单元5,用于拍摄人脸的静默视频,并从所述静默视频中抽取多个待评估帧图像;

评估单元6,用于将所述待评估帧图像输入预设的活体模型中,得到评估结果;所述活体模型采用如权前述所述的活体模型训练方法训练获得;

判断单元7,用于根据所述评估结果判断所述静默视频的检测结果。

这样,可以由静默视频中抽取多个单帧图像,并输入活体模型中,进行训练和结果输出,这种多帧图像判断的方式及模型,避免了单帧图像造成的安全等级低的情况,且获取静默视频,无需设置特定动作,因此避免了动态图像中动作难度过于复杂的问题;不仅安全等级高,且动作简单,便于实现,提高了使用者的体验度。

可选的,所述活体模型为神经网络模型。

可选的,所述活体模型的输出结果至少包括:人脸存在分数、活体分数和攻击分数。

可选的,所述攻击分数包括:屏幕翻拍分数、打印纸分数、剪纸分数、抠图面具分数和3d模型分数。

可选的,判断单元7,还用于:判断所述评估结果中的人脸存在分数是否小于预设的人脸阈值;若小于所述人脸阈值,则所述静默视频的活体检测未通过;若不小于所述人脸阈值,则判断所述活体分数和所述攻击分数中,所述活体分数是否为最高分;若为最高分,则所述静默视频的活体检测通过;若不为最高分,则所述静默视频的活体检测未通过。

需要说明的是,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

以上描述了活体模型训练装置、人脸活体检测装置的内部功能和结构,如图8所示,实际中,该活体模型训练装置、人脸活体检测装置可实现为电子设备,包括:处理器以及存储器,所述存储器存储有控制程序,所述控制程序被处理器执行时实现上述所述的活体模型训练方法,或者,实现上述所述的人脸活体检测方法。

图9是根据本发明实施例示出的另一种电子设备的框图。例如,电子设备800可以是计算机,服务器,终端机,数字广播终端,消息收发设备,等。

图9显示的电子设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图9所示,电子设备12可以通用电子设备的形式实现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。

总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(industrystandardarchitecture;以下简称:isa)总线,微通道体系结构(microchannelarchitecture;以下简称:mac)总线,增强型isa总线、视频电子标准协会(videoelectronicsstandardsassociation;以下简称:vesa)局域总线以及外围组件互连(peripheralcomponentinterconnection;以下简称:pci)总线。

电子设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(randomaccessmemory;以下简称:ram)30和/或高速缓存存储器32。电子设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性的计算机可读存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图中未显示,通常称为“硬盘驱动器”)。尽管图9中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(compactdiscreadonlymemory;以下简称:cd-rom)、数字多功能只读光盘(digitalvideodiscreadonlymemory;以下简称:dvd-rom)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。

具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。

电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它电子设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(localareanetwork;以下简称:lan),广域网(wideareanetwork;以下简称:wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备12的其它模块通信。要说明的是,尽管图中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。

本发明的电子设备可以是服务器,也可以有限算力的终端设备,本发明的轻量级网络结构尤其适用于后者。所述终端设备的基体实现包括但不限于:智能移动通信终端、无人机、机器人、便携式图像处理设备、安防设备等等。

本公开实施例提供了一种计算机可读存储介质,存储有指令,所述指令被处理器加载并执行时实现上述所述的活体模型训练方法,或者,实现上述所述的人脸活体检测方法。

本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本发明实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

虽然本公开披露如上,但本公开的保护范围并非仅限于此。本领域技术人员在不脱离本公开的精神和范围的前提下,可进行各种变更与修改,这些变更与修改均将落入本发明的保护范围。

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