CN116152935A - 活体检测模型训练方法、活体检测方法和系统 - Google Patents

活体检测模型训练方法、活体检测方法和系统 Download PDF

Info

Publication number
CN116152935A
CN116152935A CN202310127275.0A CN202310127275A CN116152935A CN 116152935 A CN116152935 A CN 116152935A CN 202310127275 A CN202310127275 A CN 202310127275A CN 116152935 A CN116152935 A CN 116152935A
Authority
CN
China
Prior art keywords
image
target
living body
sample
attack
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310127275.0A
Other languages
English (en)
Inventor
朱军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202310127275.0A priority Critical patent/CN116152935A/zh
Publication of CN116152935A publication Critical patent/CN116152935A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/40Spoof detection, e.g. liveness detection
    • G06V40/45Detection of the body part being alive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • G06V10/267Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

本说明书提供的活体检测模型训练方法、活体检测方法和系统,在获得初始训练样本集合后,所述训练样本集合包括活体图像样本和原始攻击图像样本,基于原始图像样本的至少一个攻击区域,对活体图像样本进行区域替换,得到至少一个目标攻击图像样本,以及基于至少一个目标攻击图像样本和初始训练样本集合,对预设活体检测模型进行训练,得到训练后的目标活体检测模型;该方案可以提升活体检测模型的检测精度。

Description

活体检测模型训练方法、活体检测方法和系统
技术领域
本说明书涉及活体检测领域,尤其涉及一种活体检测模型训练方法、活体检测方法和系统。
背景技术
近年来,随着互联网技术的飞速发展,在人脸识别系统中活体检测已经成为不可缺少的一环,通过活体检测可以有效拦截非活体类型的攻击样本。为了保证活体检测的准确性,往往就需要对活体检测模型进行训练。针对用户的生物特征替换的攻击方式(比如五官替换或者其他生物特征的替换),现有的活体检测模型的训练过程往往通过人工采样的方式采样出这种类型的攻击样本,并通过攻击样本对预设活体检测模型进行训练。
在对现有技术的研究和实践过程中,本申请的发明人发现通过人工采样的方式,往往需要花费大量的人力资源,而且,采集的样本相对比较单一,从而在训练过程中,使得模型的泛化能力很弱,因此,导致训练出的活体检测模型的检测精度较低。
发明内容
本说明书提供一种检测精度更高的活体检测模型训练方法、活体检测方法和系统。
第一方面,本说明书提供一种活体检测模型训练方法,包括获得初始训练样本集合,所述初始训练样本集合包括活体图像样本和原始攻击图像样本;基于所述原始攻击图像样本中的至少一个攻击区域,对所述活体图像样本进行区域替换,得到至少一个目标攻击图像样本;以及基于所述至少一个目标攻击图像样本和所述初始训练样本集合,对预设活体检测模型进行训练,得到训练后的目标活体检测模型。
在一些实施例中,所述至少一个攻击区域包括所述原始攻击图像样本中攻击用户的至少一个生物特征对应的图像区域。
在一些实施例中,所述对所述活体图像样本进行区域替换,得到至少一个目标攻击图像样本,包括:在所述原始攻击图像样本中识别出至少一个攻击区域;基于所述至少一个攻击区域,生成区域掩膜图像集合;以及基于所述区域掩膜图像集合,对所述活体图像样本进行区域替换,得到所述至少一个目标攻击图像样本。
在一些实施例中,所述在所述原始攻击图像样本中识别出至少一个攻击区域,包括:在所述原始攻击图像样本中识别出至少一个生物特征对应的区域标识;以及在所述原始攻击图像样本中选取出所述区域标识对应的图像区域,得到至少一个攻击区域。
在一些实施例中,所述基于所述至少一个攻击区域,生成区域掩膜图像集合,包括:将所述至少一个攻击区域进行区域组合,得到至少一个目标攻击区域;获得所述至少一个目标攻击区域的区域位置和所述活体图像样本的图像尺寸;以及基于所述区域位置和所述图像尺寸,生成至少一个区域掩膜图像,得到区域掩膜图像集合,所述至少一个区域掩膜图像的图像尺寸与所述活体图像样本的图像尺寸相同。
在一些实施例中,所述对所述活体图像样本进行区域替换,得到所述至少一个目标攻击图像样本,包括:在所述活体图像样本中识别出至少一个生物特征对应的活体区域;基于所述活体区域的类型,在所述区域掩膜图像集合中选出至少一个候选区域掩膜图像;以及将所述至少一个候选区域掩膜图像与所述活体图像样本进行叠加,得到所述至少一个目标攻击图像样本。
在一些实施例中,所述至少一个目标攻击图像样本中每一目标攻击图像样本包括至少一个所述活体区域和至少一个攻击区域。
在一些实施例中,所述对预设活体检测模型进行训练,得到训练后的目标活体检测模型,包括:将所述至少一个目标攻击图像样本添加至所述初始训练样本集合,得到目标训练样本集合;将所述目标训练样本集合输入至所述预设活体检测模型,以得到所述目标训练样本集合中每一图像样本的预测活体类别和所述至少一个目标攻击图像样本的预测区域掩膜图像;以及基于所述预测活体类别和所述预测区域掩膜图像,对所述预设活体检测模型进行收敛,得到所述目标活体检测模型。
在一些实施例中,所述预设活体检测模型包括特征提取网络、活体分类网络和掩膜预测网络;以及所述将所述目标训练样本集合输入至所述预设活体检测模型,以得到所述目标训练样本集合中每一图像样本的预测活体类别和所述至少一个目标攻击图像样本对应的预测区域掩膜图像,包括:将所述目标训练样本集合输入至所述特征提取网络,得到所述每一图像样本的样本图像特征,将所述样本图像特征输入至所述活体分类网络,以得到所述每一图像样本的预测活体类别,在所述样本图像特征中选取出所述至少一个目标攻击图像样本中每一目标攻击图像样本的目标样本图像特征,以及将所述目标样本图像特征输入至所述掩膜预测网络,以得到所述每一目标攻击图像样本对应的预测区域掩膜图像。
在一些实施例中,所述掩膜预测网络包括特征转换子网络;以及所述将所述目标样本图像特征输入至所述掩膜预测网络,以得到所述每一目标攻击图像样本对应的预测区域掩膜图像,包括:将所述目标样本图像特征输入至所述特征转换子网络,以得到所述每一目标攻击图像样本的样本材质特征,所述样本材质特征的尺寸与所述每一目标攻击图像样本的尺寸相同,基于所述样本材质特征,确定所述每一目标攻击图像样本中每一区域的预测区域材质,以及基于所述预测区域材质,生成所述每一目标攻击图像样本对应的预测区域掩膜图像。
在一些实施例中,所述对所述预设活体检测模型进行收敛,得到所述目标活体检测模型,包括:获得所述每一图像样本的标注活体类别,并将所述标注活体类别与所述预测活体类别进行对比,以得到分类损失信息;基于所述预测区域掩膜图像,确定所述至少一个目标攻击图像样本对应的材质识别损失信息;以及将所述分类损失信息和所述材质识别损失信息进行融合,并基于融合后的活体检测损失信息,对预设活体检测模型进行收敛,得到所述目标活体检测模型。
在一些实施例中,所述确定所述至少一个目标攻击图像样本对应的材质识别损失信息,包括:获得所述至少一个目标攻击图像样本中每一目标攻击图像样本对应的目标区域掩膜图像,所述目标区域掩膜图像与对应的预测区域掩膜图像的尺寸相同;将所述目标区域掩膜图像与对应的所述预测区域掩膜图像进行对比,以得到所述材质识别损失信息。
在一些实施例中,所述将所述目标区域掩膜图像与对应的所述预测掩膜图像进行对比,以得到所述材质识别损失信息,包括:在所述目标区域掩膜图像中识别出当前攻击区域,并在所述预测区域掩膜图像中识别出预测攻击区域;将所述当前攻击区域与所述预测攻击区域进行对比,得到所述每一目标攻击图像样本对应的初始材质损失信息;以及将所述初始材质损失信息进行融合,得到所述材质识别损失信息。
在一些实施例中,所述将所述目标区域掩膜图像与对应的所述预测掩膜图像进行对比,以得到所述材质识别损失信息,包括:在所述目标区域掩膜图像的图像尺寸大于预设尺寸阈值时,分别在所述目标区域掩膜图像和所述预测区域掩膜图像中识别出候选检测区域;基于所述候选检测区域,分别对所述目标区域掩膜图像和所述预测区域掩膜图像进行裁剪;以及将裁剪后的目标区域掩膜图像与裁剪后的预测区域掩膜图像进行对比,以得到所述材质识别损失信息。
第二方面,本说明书还提供一种活体检测方法,包括:获得目标用户的目标用户图像;将所述目标用户图像输入至目标活体检测模型,以得到所述目标用户的活体检测结果,所述目标活体检测模型根据第一方面所述的活体检测模型训练方法训练得到;以及输出所述目标用户的活体检测结果。
第三方面,本说明书还提供一种活体检测模型训练系统,包括:至少一个存储介质,存储有至少一个指令集,用于进行活体检测模型训练;以及至少一个处理器,同所述至少一个存储介质通信连接,其中,当所述活体检测模型训练系统运行时,所述至少一个处理器读取所述至少一个指令集,并且根据所述至少一个指令集的指示执行本说明书第一方面所述的活体检测模型训练方法。
第四方面,本说明书还提供一种活体检测系统,包括:至少一个存储介质,存储有至少一个指令集,用于进行活体检测;以及至少一个处理器,同所述至少一个存储介质通信连接,其中,当所述活体检测系统运行时,所述至少一个处理器读取所述至少一个指令集,并且根据所述至少一个指令集的指示执行本说明书第二方面所述的活体检测方法。
由以上技术方案可知,本说明书提供的活体检测模型训练方法、活体检测方法和系统,在获得初始训练样本集合后,所述训练样本集合包括活体图像样本和原始攻击图像样本,基于原始图像样本的至少一个攻击区域,对活体图像样本进行区域替换,得到至少一个目标攻击图像样本,以及基于至少一个目标攻击图像样本和初始训练样本集合,对预设活体检测模型进行训练,得到训练后的目标活体检测模型;由于该方案在活体检测模型的训练过程中,通过将原始攻击图像样本的至少一个攻击区域替换至活体图像样本,从而无需人工采样,而且,在区域替换过程中,还可以将至少一个攻击区域自由组合,并替换至活体图像样本,大大增加了生物特征替换的这一类样本的多样性,从而可以提升训练出的活体检测模型的泛化能力,因此,可以提升活体检测模型的检测精度。
本说明书提供的活体检测模型训练方法、活体检测方法和系统的其他功能将在以下说明中部分列出。根据描述,以下数字和示例介绍的内容将对那些本领域的普通技术人员显而易见。本说明书提供的活体检测模型训练方法、活体检测方法和系统的创造性方面可以通过实践或使用下面详细示例中所述的方法、装置和组合得到充分解释。
附图说明
为了更清楚地说明本说明书实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本说明书的实施例提供的五官替换攻击的示意图;
图2示出了根据本说明书的实施例提供的一种活体检测系统的应用场景示意图;
图3示出了根据本说明书的实施例提供的一种计算设备的硬件结构图;
图4示出了根据本说明书的实施例提供的一种活体检测模型训练方法的流程图;
图5示出了根据本说明书的实施例提供的一种针对五官替换攻击的活体检测模型训练方法的流程示意图;以及
图6示出了根据本说明书的实施例提供的一种活体检测方法的流程图。
具体实施方式
以下描述提供了本说明书的特定应用场景和要求,目的是使本领域技术人员能够制造和使用本说明书中的内容。对于本领域技术人员来说,对所公开的实施例的各种局部修改是显而易见的,并且在不脱离本说明书的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用。因此,本说明书不限于所示的实施例,而是与权利要求一致的最宽范围。
这里使用的术语仅用于描述特定示例实施例的目的,而不是限制性的。比如,除非上下文另有明确说明,这里所使用的,单数形式“一”,“一个”和“该”也可以包括复数形式。当在本说明书中使用时,术语“包括”、“包含”和/或“含有”意思是指所关联的整数,步骤、操作、元素和/或组件存在,但不排除一个或多个其他特征、整数、步骤、操作、元素、组件和/或组的存在或在该系统/方法中可以添加其他特征、整数、步骤、操作、元素、组件和/或组。
考虑到以下描述,本说明书的这些特征和其他特征、以及结构的相关元件的操作和功能、以及部件的组合和制造的经济性可以得到明显提高。参考附图,所有这些形成本说明书的一部分。然而,应该清楚地理解,附图仅用于说明和描述的目的,并不旨在限制本说明书的范围。还应理解,附图未按比例绘制。
本说明书中使用的流程图示出了根据本说明书中的一些实施例的系统实现的操作。应该清楚地理解,流程图的操作可以不按顺序实现。相反,操作可以以反转顺序或同时实现。此外,可以向流程图添加一个或多个其他操作。可以从流程图中移除一个或多个操作。
为了方便描述,本说明书将对以下描述将会出现的术语进行如下解释:
人脸活体:基于图像中人脸区域判断采集的用户为真人或攻击,攻击类型主要包括如照片、手机、屏幕、面具等攻击。
五官替换攻击:人脸活体中的一种常见攻击方式,可以为将真人人脸的五官区域用对应纸张的目标区域进行遮挡,并尝试攻击;五官区域一般指眼睛、鼻子、嘴巴以及各种组合,具体可以如图1所示。
在对本说明书具体实施例说明之前,先对本说明书的应用场景进行如下介绍:
本说明书提供的活体检测模型可以应用在任意的活体检测场景中,比如,在人脸支付场景中,可以通过本说明书的活体检测模型对采集的待支付用户的人脸图像进行活体检测;在身份验证场景中,可以通过本说明书的活体检测模型对采集的用户的身份图像进行活体检测;还可以应用在任意的人脸识别场景中,在此就不再一一赘述。
本领域技术人员应当明白,本说明书所述的活体检测模型训练方法、活体检测方法和系统应用于其他使用场景也在本说明书的保护范围内。
图2示出了根据本说明书的实施例提供的一种活体检测系统001的应用场景示意图。活体检测系统001(以下简称系统001)可以应用于任意场景的活体检测,比如,人脸支付场景下的活体检测、身份验证场景下的活体检测、其他人脸识别场景下的活体检测,等等,如图2所示,系统001可以包括用户100、客户端200、服务器300以及网络400,客户端200与服务器300通过网络400进行连接。活体检测模型训练系统的应用场景可以与系统001类似,也可以包括用户100、客户端200、服务器300以及网络400。
用户100可以为触发对目标用户图像进行活体检测或者对预设活体检测模型进行训练的用户,用户100可以在客户端200进行活体检测或者活体检测模型训练的操作。用户100可以为目标用户,也可以为其他用户。
客户端200可以为响应于用户100的活体检测操作对目标用户图像进行活体检测或响应于用户100的活体检测模型训练的操作而对预设活体检测模型进行训练的设备。在一些实施例中,所述活体检测模型训练方法和活体检测方法可以在客户端200上执行。此时,客户端200可以存储有执行本说明书描述的活体检测模型训练方法和活体检测方法的数据或指令,并可以执行或用于执行所述数据或指令。在一些实施例中,客户端200可以包括具有数据信息处理功能的硬件设备和驱动该硬件设备工作所需必要的程序。如图2所示,客户端200可以与服务器300进行通信连接。在一些实施例中,服务器300可以与多个客户端200进行通信连接。在一些实施例中,客户端200可以通过网络400与服务器300交互,以接收或发送消息等,比如接收或发送目标用户图像或目标训练样本集合。在一些实施例中,客户端200可以包括移动设备、平板电脑、笔记本电脑、机动车辆的内置设备或类似内容,或其任意组合。在一些实施例中,所述移动设备可包括智能家居设备、智能移动设备、虚拟现实设备、增强现实设备或类似设备,或其任意组合。在一些实施例中,所述智能家居装置可包括智能电视、台式电脑等,或任意组合。在一些实施例中,所述智能移动设备可包括智能手机、个人数字辅助、游戏设备、导航设备等,或其任意组合。在一些实施例中,所述虚拟现实设备或增强现实设备可能包括虚拟现实头盔、虚拟现实眼镜、虚拟现实手柄、增强现实头盔、增强现实眼镜、增强现实手柄或类似内容,或其中的任何组合。例如,所述虚拟现实设备或所述增强现实设备可能包括谷歌眼镜、头戴式显示器、VR等。在一些实施例中,所述机动车中的内置装置可包括车载计算机、车载电视等。在一些实施例中,客户端200可以包括图像采集设备,用于采集目标用户图像或初始训练样本集合。在一些实施例中,所述图像采集设备可以是二维图像采集设备(比如RGB摄像头),也可以是二维图像采集设备(比如RGB摄像头)和深度图像采集设备(比如3D结构光摄像头、激光探测器,等等)。在一些实施例中,客户端200可以是具有定位技术的设备,用于定位客户端200的位置。
在一些实施例中,客户端200可以安装有一个或多个应用程序(APP)。所述APP能够为用户100提供通过网络400同外界交互的能力以及界面。所述APP包括但不限于:网页浏览器类APP程序、搜索类APP程序、聊天类APP程序、购物类APP程序、视频类APP程序、理财类APP程序、即时通信工具、邮箱客户端、社交平台软件等等。在一些实施例中,客户端200上可以安装有目标APP。所述目标APP能够为客户端200采集目标用户的至少一张用户图像,从而得到目标用户图像,或者,还可以采集或获得至少一张图像样本,从而得到初始训练样本集合。在一些实施例中,所述用户100还可以通过所述目标APP触发活体检测请求或活体检测模型训练请求。所述目标APP可以响应于所述活体检测模型训练请求或活体检测请求,执行本说明书描述的活体检测模型训练方法和活体检测方法。所述活体检测模型训练方法和活体检测方法将在后面的内容中详细介绍。
服务器300可以是提供各种服务的服务器,例如对客户端200上采集的目标用户图像进行活体检测或者对预设活体检测模型进行训练提供支持的后台服务器。在一些实施例中,所述活体检测模型训练方法和活体检测方法可以在服务器300上执行。此时,服务器300可以存储有执行本说明书描述的活体检测模型训练方法和活体检测方法的数据或指令,并可以执行或用于执行所述数据或指令。在一些实施例中,服务器300可以包括具有数据信息处理功能的硬件设备和驱动该硬件设备工作所需必要的程序。服务器300可以与多个客户端200通信连接,并接收客户端200发送的数据。
网络400用以在客户端200和服务器300之间提供通信连接的介质。网络400可以促进信息或数据的交换。如图2所示,客户端200和服务器300可以同网络400连接,并且通过网络400互相传输信息或数据。在一些实施例中,网络400可以是任何类型的有线或无线网络,也可以是其组合。比如,网络400可以包括电缆网络,有线网络、光纤网络、电信通信网络、内联网、互联网、局域网(LAN)、广域网(WAN)、无线局域网(WLAN)、大都市市区网(MAN)、广域网(WAN)、公用电话交换网(PSTN)、蓝牙网络TM、ZigBeeTM网络、近场通信(NFC)网络或类似网络。在一些实施例中,网络400可以包括一个或多个网络接入点。例如,网络400可以包括有线或无线网络接入点,如基站或互联网交换点,通过该接入点,客户端200和服务器300的一个或多个组件可以连接到网络400以交换数据或信息。
应该理解,图2中的客户端200、服务器300和网络400的数目仅仅是示意性的。根据实现需要,可以具有任意数目的客户端200、服务器300和网络400。
需要说明的是,所述活体检测模型训练方法和活体检测方法可以完全在客户端200上执行,也可以完全在服务器300上执行,还可以部分在客户端200上执行,部分在服务器300上执行。
图3示出了根据本说明书的实施例提供的一种计算设备600的硬件结构图。计算设备600可以执行本说明书描述的活体检测模型训练方法和活体检测方法。所述活体检测模型训练方法和活体检测方法在本说明书中的其他部分介绍。当所述活体检测模型训练方法和活体检测方法在客户端200上执行时,计算设备600可以是客户端200。当所述活体检测模型训练方法和活体检测方法在服务器300上执行时,计算设备600可以是服务器300。当所述活体检测模型训练方法和活体检测方法可以部分在客户端200上执行,部分在服务器300上执行时,计算设备600可以是客户端200和服务器300。
如图3所示,计算设备600可以包括至少一个存储介质630和至少一个处理器620。在一些实施例中,计算设备600还可以包括通信端口650和内部通信总线610。同时,计算设备600还可以包括I/O组件660。
内部通信总线610可以连接不同的系统组件,包括存储介质630、处理器620和通信端口650。
I/O组件660支持计算设备600和其他组件之间的输入/输出。
通信端口650用于计算设备600同外界的数据通信,比如,通信端口650可以用于计算设备600同网络400之间的数据通信。通信端口650可以是有线通信端口也可以是无线通信端口。
存储介质630可以包括数据存储装置。所述数据存储装置可以是非暂时性存储介质,也可以是暂时性存储介质。比如,所述数据存储装置可以包括磁盘632、只读存储介质(ROM)634或随机存取存储介质(RAM)636中的一种或多种。存储介质630还包括存储在所述数据存储装置中的至少一个指令集。所述指令是计算机程序代码,所述计算机程序代码可以包括执行本说明书提供的活体检测模型训练方法和活体检测方法的程序、例程、对象、组件、数据结构、过程、模块等等。
至少一个处理器620可以同至少一个存储介质630以及通信端口650通过内部通信总线610通信连接。至少一个处理器620用以执行上述至少一个指令集。当计算设备600运行时,至少一个处理器620读取所述至少一个指令集,并且根据所述至少一个指令集的指示,执行本说明书提供的活体检测模型训练方法和活体检测方法。处理器620可以执行活体检测模型训练方法和活体检测方法包含的所有步骤。处理器620可以是一个或多个处理器的形式,在一些实施例中,处理器620可以包括一个或多个硬件处理器,例如微控制器,微处理器,精简指令集计算机(RISC),专用集成电路(ASIC),特定于应用的指令集处理器(ASIP),中心处理单元(CPU),图形处理单元(GPU),物理处理单元(PPU),微控制器单元,数字信号处理器(DSP),现场可编程门阵列(FPGA),高级RISC机器(ARM),可编程逻辑器件(PLD),能够执行一个或多个功能的任何电路或处理器等,或其任何组合。仅仅为了说明问题,在本说明书中计算设备600中仅描述了一个处理器620。然而,应当注意,本说明书中计算设备600还可以包括多个处理器,因此,本说明书中披露的操作和/或方法步骤可以如本说明书所述的由一个处理器执行,也可以由多个处理器联合执行。例如,如果在本说明书中计算设备600的处理器620执行步骤A和步骤B,则应该理解,步骤A和步骤B也可以由两个不同处理器620联合或分开执行(例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一和第二处理器共同执行步骤A和B)。
图4示出了根据本说明书的实施例提供的一种活体检测模型训练方法P100的流程图。如前,计算设备600可以执行本说明书的活体检测模型训练方法P100。具体地,处理器620可以读取存储在其本地存储介质中的指令集,然后根据指令集的规定,执行本说明书的活体检测模型训练方法P100。如图4所示,方法P100可以包括:
S110:获得初始训练样本集合。
其中,初始训练样本集合包括活体图像样本和原始攻击图像样本。所述活体图像样本就可以为对活体用户进行生物特征采集后得到的图像样本,比如,可以包括人体图像、人脸图像或者其他类型的用户图像。所述原始攻击图像样本可以为对攻击用户进行生物特征采集后得到的图像样本,比如,可以为对包含用户生物特征的照片进行图像采集后得到的图像样本,或者,也可以为对显示用户生物特征的显示屏或者终端上的显示内容进行采集后得到的图像样本,或者,还可以为对用户戴面具或者其他攻击方式进行图像采集后得到的图像样本。所述生物特征可以包括面部、躯体、虹膜、巩膜、指纹、掌纹、声纹或骨骼投影中的至少一个。所述面部又可以包括面部中的各种面部元素,比如,五官(眼睛、嘴巴、鼻子、耳朵、眉毛)或者其他面部元素(比如,额头、头发或其他),等等。
其中,获得初始训练样本集合的方式可以有多种,具体可以如下:
例如,处理器620可以直接接收用户100通过客户端200或终端上传的初始训练样本集合,或者,可以在网络或者图像数据库中获得活体图像样本和原始攻击图像样本,从而得到初始训练样本集合,或者,可以通过图像采集设备采集至少一个活体用户的用户图像,从而得到活体图像样本,并通过图像采集设备采集至少一种攻击方式的用户图像,从而得到原始攻击图像样本,从而得到初始训练样本集合,或者,还可以接收客户端200或终端发送的活体检测模型训练请求,该活体检测模型训练请求包括初始训练样本集合的存储地址,基于该存储地址,获得初始训练样本集合,等等。
S120:基于原始攻击图像样本中的至少一个攻击区域,对活体图像样本进行区域替换,得到至少一个目标攻击图像样本。
其中,至少一个攻击区域包括原始攻击图像样本中攻击用户的至少一个生物特征对应的图像区域。比如,以原始攻击图像样本为人脸图像样本为例,则至少一个攻击区域就可以包括眼睛对应的区域、耳朵对应的区域、嘴巴对应的区域、耳朵对应的区域或者其他面部元素对应的区域,等等。
其中,目标攻击图像样本可以为替换用户生物特征的攻击图像样本,比如,以生物特征为眼睛为例,则目标攻击图像样本就可以为将活体图像样本中的眼睛对应的图像区域替换为原始攻击图像样本中眼睛对应的攻击区域后得到的攻击图像样本。
其中,基于原始攻击图像样本中的至少一个攻击区域,对活体图像样本进行区域替换的方式可以有多种,具体可以如下所示:
例如,处理器620可以在原始攻击图像样本中识别出至少一个攻击区域,基于至少一个攻击区域,生成区域掩膜图像集合,以及基于区域掩膜图像集合,对活体图像样本进行区域替换,得到至少一个目标攻击图像样本。
其中,在原始攻击图像样本中识别出至少一个攻击区域的方式可以有多种,比如,处理器620可以在原始攻击图像样本中识别出至少一个生物特征对应的区域标识(landmark),以及在原始攻击图像样本中选取出区域标识对应的图像区域,得到至少一个攻击区域。
其中,区域标识也可以为生物特征的关键点,每一个生物特征可以对应一个区域标识,也可以对应多个区域标识。在识别出区域标识之后,便可以在原始攻击图像中选取出区域标识对应的图像区域,从而得到至少一个攻击区域。选取出区域标识对应的图像区域的方式可以有多种,比如,在生物特征对应一个区域标识时,处理器620就可以以该区域标识为中心点,生成生物特征对应的预设尺寸的图像区域,从而得到该生物特征对应的攻击区域,或者,在生物特征对应多个区域标识时,处理器620就可以直接将多个区域标识组成的封闭区域作为该生物特征对应的攻击区域,等等。
处理器620在识别出至少一个攻击区域之后,便可以基于至少一个攻击区域,生成区域掩膜图像集合。区域掩膜图像集合中包括多个区域掩膜图像,所述区域掩膜图像可以为包含至少一个攻击区域的掩膜图像,所述掩膜图像也可以理解为就是一个图像的Mask(掩膜)。该掩膜图像也可以为由0和1组成的一个二进制图像,攻击区域对应的值就可以1,攻击区域以外的图像区域对应的值就可以为0;或者,还可以通过颜色的不同来组成掩膜图像,譬如,可以将攻击区域设置为白色,将其他区域设置为黑色,等等。基于至少一个攻击区域,生成区域掩膜图像集合的方式可以有多种,比如,处理器620可以将至少一个攻击区域进行区域组合,得到至少一个目标攻击区域,获得至少一个目标攻击区域的区域位置和活体图像样本的图像尺寸,以及基于区域位置和图像尺寸,生成至少一个区域掩膜图像,得到区域掩膜图像集合。
其中,将至少一个攻击区域进行区域组合的方式可以有多种,比如,处理器620可以随机将至少一个攻击区域进行自由组合,从而得到至少一个目标攻击区域,或者,也可以将一个攻击区域单独作为一个目标攻击区域,等等。
其中,自由组合的方式可以有多种,比如,以攻击区域包括面部的五官分别对应的图像区域为例,就可以自由将五官分别对应的图像区域进行组合,譬如,将眼睛对应的图像区域和鼻子对应的图像区域进行组合,得到一个目标攻击区域,或者,还可以将眼睛对应的图像区域、鼻子对应的图像区域和嘴巴对应的图像区域进行组合,得到一个目标攻击区域,或者,还可以采用其他的方式将面部五官组合成一个至少包括两种类型的图像区域,从而得到至少一个目标攻击区域,等等。
处理器620在将至少一个攻击区域进行区域组合之后,便可以获得至少一个目标攻击区域的区域位置和活体图像样本的图像尺寸,然后,基于区域位置和图像尺寸,生成至少一个区域掩膜图像,得到区域掩膜图像集合。区域掩膜图像的图像尺寸与活体图像样本的图像尺寸相同。基于区域位置和图像尺寸,生成至少一个区域掩膜图像的方式可以有多种,比如,处理器620可以生成图像尺寸对应的空白图像,基于至少一个目标攻击区域的区域位置,在空白图像上标注对应的目标攻击区域的位置,得到至少一个攻击区域图像,将攻击区域图像转换为掩膜图像,将掩膜图像作为一个目标攻击区域对应的区域掩膜图像,从而得到区域掩膜图像集合。
处理器620在得到区域掩膜图像集合之后,便可以基于区域掩膜图像集合,对活体图像样本进行区域替换,从而得到至少一个目标攻击图像样本。对活体图像样本进行区域替换的方式可以有多种,比如,处理器620可以在活体图像样本中识别出的至少一个生物特征对应的活体区域,基于活体区域的类型,在区域掩膜图像集合中选取出至少一个候选区域掩膜图像,以及将至少一个候选区域掩膜图像与活体图像样本进行叠加,得到至少一个目标攻击图像样本。
其中,活体区域可以为活体图像样本中生物特征对应的图像区域。识别的方式与识别攻击区域的方式类似,详见上文所述,在此就不再一一赘述。
处理器620在识别出活体区域之后,便可以基于活体区域的类型,在区域掩膜图像集合中选取出至少一个候选区域掩膜图像。选取至少一个候选区域掩膜图像的方式可以有多种,比如,以活体区域的类型包括面部五官为例,处理器620就可以在区域掩膜图像集合中选取出包含面部五官中至少一个生物特征对应的攻击区域,从而得到至少一个候选区域掩膜图像。需要说明的是,活体图像样本中包含的生物特征对应的活体区域的数量需要大于或等于区域掩膜图像中包含的生物特征对应的攻击区域,才可以实现对应的生物特征所在的图像区域的区域替换,比如,区域掩膜图像中包含手部对应的攻击区域,而活体图像样本中不包含手部对应的活体区域时,此时,很显然就无法完成活体图像样本中手部所在的图像区域的区域替换。
处理器620在选取出至少一个候选区域掩膜图像之后,便可以将至少一个候选区域掩膜图像与活体图像样本进行叠加,从而得到至少一个目标攻击图像样本。将至少一个候选区域掩膜图像与活体图像样本进行叠加的方式可以有多种,比如,处理器620可以采用Fogery Synthesis(一种图像合成算法)将至少一个候选区域掩膜图像中的每一候选区域掩膜图像与活体图像样本进行叠加,从而可以得到至少一个目标攻击图像样本,或者,还可以采用其他的图像叠加算法将至少一个候选区域掩膜图像中的每一候选区域掩膜图像与活体图像样本进行叠加,从而可以得到至少一个目标攻击图像样本,等等。
其中,需要说明的是,叠加后得到的至少一个目标攻击图像样本中每一目标攻击图像样本包括至少一个活体区域和至少一个攻击区域,也就说叠加后的目标攻击图像样本中仅有部分生物特征对应的活体区域被对应的攻击区域所替换,比如,将人脸图像中的眼睛和鼻子进行替换,此时,替换后的目标攻击图像样本就可以包含攻击的眼睛和鼻子,还可以包含活体的嘴巴、耳朵和除了眼睛和鼻子以外的其他面部元素,等等。另外,还需要说明的是,叠加过程中,候选区域掩膜图像中除了攻击区域以外的图像区域不会影响活体图像样本的图像内容,也就是说在叠加过程中,可以将候选区域掩膜图像中除攻击区域以外的图像区域调整为透明状态,也可以直接将候选区域掩膜图像中的攻击区域的内容拷贝至活体图像样本,将非攻击区域以外的图像区域的内容放弃拷贝至活体图像样本。
其中,相对于现有的人工采集来说,本方案通过原始攻击图像样本中的至少一个攻击区域,对活体图像样本进行区域替换,就可以得到替换生物特征后的目标攻击图像样本。不需要额外的采集图像样本,而且,通过自由组合的替换方式,还可以生成更加多样的目标攻击图像样本,从而在训练过程中可以增加活体检测模型的泛化能力,进而提升训练出的活体检测模型的检测精度或检测性能。
S130:基于至少一个目标攻击图像样本和初始训练样本集合,对预设活体检测模型进行训练,得到训练后的目标活体检测模型。
例如,处理器620可以将至少一个目标攻击图像样本添加至初始训练样本集合,得到目标训练样本集合,将目标训练样本集合输入至预设活体检测模型,以得到目标训练样本集合中每一图像样本的预测活体类别和至少一个目标攻击图像样本的预测区域掩膜图像,以及基于预测活体类别和预测区域掩膜图像,对预设活体检测模型进行收敛,得到目标活体检测模型。
其中,预设活体检测模型包括特征提取网络、活体分类网络和掩膜预测网络。所述特征提取网络为对图像样本进行特征提取的网络,特征提取网络的网络结构可以有多种,比如,可以包括残差网络、卷积网络或者其他网络结构。所述活体分类网络为对图像样本进行活体分类的网络。所述掩膜预测网络为预测目标攻击图像样本中叠加的区域掩膜图像的网络。将目标训练样本集合输入至预设活体检测模型,以得到目标训练样本集合中每一图像样本的预测活体类别和至少一个目标攻击图像样本对应的预测区域掩膜图像的方式可以有多种,比如,处理器620可以将目标训练样本集合输入至特征提取网络,得到每一图像样本的样本图像特征,将样本图像特征输入至活体分类网络,以得到每一图像样本的预测活体类别,在样本图像特征中提取出至少一个目标攻击图像样本中每一目标攻击图像样本的目标样本图像特征,以及将目标样本图像特征输入至掩膜预测网络,以得到每一目标攻击图像样本对应的预测区域掩膜图像。
其中,掩膜预测网络可以包括特征转换子网络。将目标样本图像特征输入至掩膜预测网络,以得到每一目标攻击图像样本对应的预测区域掩膜图像的方式可以有多种,比如,处理器620可以将目标样本图像特征输入至特征转换子网络,以得到每一目标攻击图像样本的样本材质特征,样本材质特征的尺寸与每一目标攻击图像样本的尺寸相同,基于样本材质特征,确定每一目标攻击图像样本中每一区域的预测区域材质,以及基于预测区域材质,生成每一目标攻击图像样本对应的预测区域掩膜图像。
其中,特征转换子网络的网络结构可以有多种,比如,可以为FeatureTransformer(一种特征转换网络)或者其他类型的特征转换网络,等等。以特征转换子网络为Feature Transformer为例,处理器620就可以在目标样本图像特征中提取出不同类型或维度的候选图像特征,并确定候选图像特征对应的注意力权重,基于注意力权重,对候选图像特征进行加权,从而得到初始样本材质特征,基于目标攻击图像样本的图像尺寸,对初始样本材质特征进行上采样,得到样本材质特征。
处理器620在对目标样本图像特征进行特征转换之后,便可以基于样本材质特征,确定每一目标攻击图像样本中每一区域的预测区域材质。这里的区域可以为预设区域,也可以为目标攻击图像样本中的像素区域。所述预测区域材质可以包括活体材质(真人)或攻击材质中的一种。在确定出每一区域的预测区域材质之后,便以基于预测区域材质,生成每一目标攻击图像样本对应的预测区域掩膜图像。生成预测区域掩膜图像的方式可以有多种,比如,处理器620可以在目标攻击图像样本中识别出的预测区域材质为攻击材质的区域,从而得到掩膜区域,基于掩膜区域和目标攻击图像样本的图像尺寸,生成该目标攻击图像样本对应的预测区域掩膜图像。
处理器620在得到预测活体类别和预测区域掩膜图像之后,便可以基于预测活体类别和预测区域掩膜图像,对预设活体检测模型进行收敛,从而得到目标活体检测模型。对预设活体检测模型进行收敛的方式可以有多种,比如,处理器620可以获得每一图像样本的标注活体类别,并将标注活体类别与预测活体类别进行对比,以得到分类损失信息,基于预测区域掩膜图像,确定至少一个目标攻击图像样本对应的材质识别损失信息,将分类损失信息和材质识别损失信息进行融合,并基于融合后的活体检测损失信息,对预设活体检测模型进行收敛,得到目标活体检测模型。
其中,分类损失信息可以为对图像样本进行活体分类时产生的损失信息。将标注活体类别与预测活体类别进行对比,以得到分类损失信息的方式可以有多种,比如,处理器620可以采用交叉熵损失函数,将标注活体类别与预测活体类别进行对比,以得到每一图像样本对应的初始分类损失信息,将初始分类损失信息进行累加,从而得到目标训练样本集合对应的分类损失信息,或者,还可以采用其他类型的损失函数,将标注活体类别与预测活体类别进行对比,以得到每一图像样本对应的初始分类损失信息,将初始分类损失信息进行累加,从而得到目标训练样本集合对应的分类损失信息,等等。
其中,材质识别损失信息可以为活体检测模型在目标攻击图像样本中感知不同材质的区别时产生的损失信息。基于预测区域掩膜图像,确定至少一个目标攻击图像样本对应的材质识别损失信息的方式可以有多种,比如,处理器620可以获得至少一个目标攻击图像样本中每一目标攻击图像样本对应的目标区域掩膜图像,将目标区域掩膜图像与对应的预测区域掩膜图像进行对比,以得到材质识别损失信息。
其中,目标区域掩膜图像与对应的预测区域掩膜图像的尺寸相同。将目标区域掩膜图像与对应的预测区域掩膜图像进行对比的方式可以有多种,比如,处理器620可以在目标区域掩膜图像中识别出当前攻击区域,并在预测区域掩膜图像中识别出预测攻击区域,将当前攻击区域与预测攻击区域进行对比,得到每一目标攻击图像样本对应的初始材质损失信息,以及将初始材质损失信息进行融合,得到材质识别损失信息,或者,还可以分别对目标区域掩膜图像和预测区域掩膜图像进行特征提取,得到目标区域掩膜图像对应的当前图像掩膜特征和预测区域掩膜图像对应的预测图像掩膜特征,获得当前图像掩膜特征与预测图像掩膜特征之间的特征相似度,并基于特征相似度,确定每一目标攻击图像样本对应的初始材质损失信息,以及将初始材质损失信息进行融合,得到材质识别损失信息,等等。
其中,将当前攻击区域与预测攻击区域进行对比的方式可以有多种,比如,处理器620可以获得当期攻击区域的当前区域位置和当前区域尺寸,获得当预测攻击区域的预测区域位置和预测区域尺寸,将当前区域位置与预测区域位置进行对比,得到区域位置差值,将当前区域尺寸与预测区域尺寸进行对比,得到区域尺寸差值,基于区域位置差值和区域尺寸差值,确定每一目标攻击图像样本对应的初始材质损失信息,或者,还可以对当前攻击区域对应的第一区域图像进行特征提取,得到第一区域图像特征,对预测攻击区域对应的第二区域图像进行特征提取,得到第二区域图像特征,获得第一区域图像特征和第二区域图像特征之间的特征相似度或特征距离,并基于特征相似度或特征距离,确定每一目标攻击图像样本对应的初始材质损失信息,等等。
在一些实施例中,将目标区域掩膜图像与对应的预测区域掩膜图像进行对比的方式还可以包括:处理器620在目标区域掩膜图像的图像尺寸大于预设尺寸阈值时,分别在目标区域掩膜图像和预测区域掩膜图像中识别出的候选检测区域,基于候选检测区域,分别对目标区域掩膜图像和预测区域掩膜图像进行裁剪,以及将裁剪后的目标区域掩膜图像与裁剪后的预测区域掩膜图像进行对比,以得到材质识别损失信息。
其中,在目标区域掩膜图像的图像尺寸大于预设尺寸阈值时,也就意味着目标训练样本集合中的图像样本为大尺寸图像样本,大尺寸图像样本中可能还存在一些背景图像,这些背景图像与活体检测并不相关。由于区域掩膜图像与图像样本的尺寸相同,也就表明区域掩膜图像(目标区域掩膜图像和预测区域掩膜图像)中的非攻击区域的区域占比较大,在进行图像对比时,往往会增加算力,影响活体检测模型的训练效率。为了提升训练效率,可以在目标区域掩膜图像和预测区域掩膜图像中识别出候选检测区域,然后,基于候选检测区域对目标区域掩膜图像和预测区域掩膜图像进行裁剪。以目标攻击图像样本为人脸图像为例,这里的裁剪就可以理解为裁剪出包含用户五官的区域即可,从而减少计算材质识别损失信息时的计算资源的消耗。
处理器620在识别出候选检测区域,并基于候选检测区域对目标区域掩膜图像和预测区域掩膜图像进行裁剪之后,便可以将裁剪后的目标区域掩膜图像与裁剪后的预测区域掩膜图像进行对比,从而得到材质识别损失信息。进行对比的方式可以参见将目标区域掩膜图像与预测区域掩膜图像进行对比的方式,详见上文所述,在此就不再一一赘述。
其中,材质识别损失信息用于表征不同的材质,以区域掩膜图像中黑色为非攻击区域,白色为攻击区域为例,则黑色区域就可以代表活体材质(真人),白色区域就代表被替换的攻击区域(比如,可以为纸张五官区域,等等),通过预测区域掩膜图像,从而就可以使得活体检测模型可以更好的感知到不同材质之间的区别,进而提升训练出的活体检测模型的检测精度和检测性能。
处理器620在确定出分类损失信息和材质识别损失信息之后,便可以将分类损失信息和材质识别损失信息进行融合。融合的方式可以有多种,比如,处理器620可以直接将分类损失信息和材质识别损失信息相加,或者,还可以获得活体检测权重,并基于活体检测权重,分别对分类损失信息和材质识别损失信息进行加权,将加权后的分类损失信息和加权后的材质识别损失信息进行相加,从而得到活体检测损失信息,等等。
处理器620在将分类损失信息和材质识别损失信息进行融合之后,便可以基于融合后的活体检测损失信息,对预设活体检测模型进行收敛,从而得到目标活体检测模型。对预设活体检测模型进行收敛的方式可以有多种,比如,处理器620可以采用梯度下降算法,基于活体检测损失信息,对预设活体检测模型的网络参数进行更新,得到更新后的活体检测模型,并将更新后的活体检测模型作为预设活体检测模型,返回执行获得初始训练样本集合的步骤,直至预设活体检测模型收敛时为止,从而得到训练后的目标活体检测模型,或者,还可以采用其他网络参数更新方式,基于活体检测损失信息,对预设活体检测模型的网络参数进行更新,得到更新后的活体检测模型,并将更新后的活体检测模型作为预设活体检测模型,返回执行获得初始训练样本集合的步骤,直至预设活体检测模型收敛时为止,从而得到训练后的目标活体检测模型,等等。
其中,以初始训练样本集合中的图像样本为人脸图像为例,即针对五官替换这一类活体攻击,活体检测模型训练的整体流程可以如图5所示,主要可以包括生成区域掩膜图像、假体生成(目标攻击样本的生成)、特征提取、活体分类、掩膜预测、确定分类损失信息和确定材质识别损失信息等,具体可以如下:
(1)生成区域掩膜图像:基于人脸的landmark,在攻击样本中识别出的人脸五官区域,并将识别出的人脸五官区域进行自由组合,然后,基于组合后的人脸五官区域中的至少一个区域,生成人脸替换的mask(区域掩膜图像);
(2)假体生成:采用Fogery Synthesis算法将人脸替换的mask与真人样本进行叠加,从而实现将攻击样本的五官区域替换至真人样本,将五官区域替换后的真人样本作为目标攻击样本;
(3)特征提取:采用特征提取网络(backbone)对真人样本、攻击样本和目标攻击样本进行特征提取,得到样本图像特征;
(4)活体分类:基于提取出的样本图像特征,对每一图像样本进行活体分类,从而得到每一图像样本的预测活体类别;
(5)掩膜预测:采用Feature Transformer网络将目标攻击样本对应的目标样本图像特征进行特征转换和上采样,从而得到样本材质特征,样本材质特征为目标样本图像特征中与图像材质相关的特征。样本材质特征的大小与对应的原图的大小相同。基于样本材质特征,预测出目标攻击样本中叠加的人脸替换的mask,从而得到预测的人脸替换的mask。另外,在目标攻击图像样本或区域掩膜图像为大尺寸图像时,还可以在预测出的人脸替换的mask中添加AOI,裁剪或标注出人脸区域,以便在确定材质损失信息时,降低计算量;
(6)确定分类损失信息:将预测出的预测活体类别与对应的图像样本的标注活体类别进行对比,从而得到分类损失信息;
(7)确定材质识别损失信息(MSELoss):通过将预测出的人脸替换的mask与目标攻击样本中真实叠加的人脸替换的mask进行对比,从而得到材质识别损失信息。MSELoss用于感知不同材质;以更加本质的形式去解决这一类攻击类型的拦截,同时不会对原有活体检测模型的识别能力造成负面影响。
其中,需要说明的是,在活体检测模型的训练过程中,采用样本生成的方式集合生成区域mask预测的方法,在人脸替换的样本生成中解决了人工采样样本丰富性不够的缺陷,从而大大提升了人脸替换的目标攻击样本的多样性。另外,在对预设活体检测模型的训练过程,除了常用的分类损失以外,还可以添加mask预测的损失信息,从真人材质和攻击类型(纸张、显示屏、面具)对应的材质的感知去解决活体检测的问题。
处理器620在对预设活体检测得到目标活体检测模型之后,便可以基于该目标活体检测模型进行活体检测。
图6示出了根据本说明书的一些实施例提供的一种活体检测方法P200的流程图。如前所述,计算设备600可以执行本说明书所述的活体检测方法P200。具体地,处理器620可以读取存储在其本地存储介质中的指令集,然后根据所述指令集的规定,执行本说明书所述的活体检测方法P200。如图6所示,所述方法P200可以包括:
S210:获得目标用户的目标用户图像。
其中,目标用户图像可以为包含目标用户的生物特征的图像。所述生物特征可以包括面部、躯体、虹膜、巩膜、指纹、掌纹、声纹或骨骼投影中的至少一个。
其中,获得目标用户的目标用户图像的方式可以有多种,具体可以如下:
例如,处理器620可以直接接收用户100或目标用户通过客户端、终端或服务器上传的所述目标用户的至少一张用户图像,从而得到目标用户图像,或者,可以从网络或者图像数据库中获得包含目标用户的生物特征的图像,从而得到目标用户图像,或者,可以通过图像采集设备采集目标用户的至少一张包含生物特征的用户图像,从而得到目标用户图像,或者,在目标用户图像的数量较多或者内存较大时,还可以接收活体检测请求,该活体检测请求中包括目标用户的目标用户图像的存储地址,基于该存储地址,获得目标用户的目标用户图像,等等。
S220:将目标用户图像输入至目标活体检测模型,以得到目标用户的活体检测结果。
其中,目标活体检测性可以通过图4的训练方法训练出的活体检测模型。
其中,活体检测结果可以包括活体用户(正常用户)或攻击用户中的一种。
其中,将目标用户图像输入至目标活体检测模型,以得到目标用户的活体检测结果的方式可以有多种,具体可以如下:
例如,处理器620将目标用户图像输入至目标活体检测模型的特征提取网络,得到目标用户图像的图像特征,基于图像特征,对目标用户进行活体分类,从而得到目标用户的活体检测结果。
S230:输出目标用户的活体检测结果。
例如,处理器620可以直接将活体检测结果发送至用户100或目标用户对应的客户端200、终端或服务器,以便客户端200、终端或服务器基于活体检测结果对目标用户或目标用户对应的请求进行响应,或者,还可以直接可视化展示该活体检测结果,等等。
其中,可视化展示活体检测结果的方式可以有多种,比如,处理器620可以直接显示该活体检测结果,或者,可以通过声光等方式展示该活体检测结果(譬如,通过语音播报活体检测结果,或者,可以通过显式不同颜色的光显式不同类型的活体检测结果,或者,还可以通过声光联动的方式展示活体检测结果),或者,还可以针对特定类型的活体检测结果进行展示(譬如,仅针对攻击用户这一类型的活体检测结果进行展示,或者,仅针对活体用户这一类型的活体检测结果进行展示,等等),等等。
在一些实施例中,处理器620还可以在确定出目标用户的活体检测结果或者输出该活体检测结果之后,基于该活体检测结果对目标用户或者目标用户对应的请求进行响应,响应的方式可以有多种,比如,处理器620可以直接对目标用户或目标用户对应的请求进行拦截,或者,处理器620还可以直接对目标用户进行二次验证,并基于二次验证结果,对目标用户或目标用户对应的请求进行最终的响应,等等。
综上所述,本说明书提供的活体检测模型训练方法P100、活体检测方法P200和系统001/002,在获得初始训练样本集合后,所述训练样本集合包括活体图像样本和原始攻击图像样本,基于原始图像样本的至少一个攻击区域,对活体图像样本进行区域替换,得到至少一个目标攻击图像样本,以及基于至少一个目标攻击图像样本和初始训练样本集合,对预设活体检测模型进行训练,得到训练后的目标活体检测模型;由于该方案在活体检测模型的训练过程中,通过将原始攻击图像样本的至少一个攻击区域替换至活体图像样本,从而无需人工采样,而且,在区域替换过程中,还可以将至少一个攻击区域自由组合,并替换至活体图像样本,大大增加了生物特征替换的这一类样本的多样性,从而可以提升训练出的活体检测模型的泛化能力,因此,可以提升活体检测模型的检测精度。
本说明书另一方面提供一种非暂时性存储介质,存储有至少一组用来进行活体检测模型训练和活体检测的可执行指令。当所述可执行指令被处理器执行时,所述可执行指令指导所述处理器实施本说明书所述的活体检测模型训练方法P100和活体检测方法P200的步骤。在一些可能的实施方式中,本说明书的各个方面还可以实现为一种程序产品的形式,其包括程序代码。当所述程序产品在计算设备600上运行时,所述程序代码用于使计算设备600执行本说明书描述的活体检测模型训练方法P100和活体检测方法P200的步骤。用于实现上述方法的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)包括程序代码,并可以在计算设备600上运行。然而,本说明书的程序产品不限于此,在本说明书中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统使用或者与其结合使用。所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本说明书操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在计算设备600上执行、部分地在计算设备600上执行、作为一个独立的软件包执行、部分在计算设备600上部分在远程计算设备上执行、或者完全在远程计算设备上执行。
上述对本说明书特定实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者是可能有利的。
综上所述,在阅读本详细公开内容之后,本领域技术人员可以明白,前述详细公开内容可以仅以示例的方式呈现,并且可以不是限制性的。尽管这里没有明确说明,本领域技术人员可以理解本说明书需求囊括对实施例的各种合理改变,改进和修改。这些改变,改进和修改旨在由本说明书提出,并且在本说明书的示例性实施例的精神和范围内。
此外,本说明书中的某些术语已被用于描述本说明书的实施例。例如,“一个实施例”,“实施例”和/或“一些实施例”意味着结合该实施例描述的特定特征,结构或特性可以包括在本说明书的至少一个实施例中。因此,可以强调并且应当理解,在本说明书的各个部分中对“实施例”或“一个实施例”或“替代实施例”的两个或更多个引用不一定都指代相同的实施例。此外,特定特征,结构或特性可以在本说明书的一个或多个实施例中适当地组合。
应当理解,在本说明书的实施例的前述描述中,为了帮助理解一个特征,出于简化本说明书的目的,本说明书将各种特征组合在单个实施例、附图或其描述中。然而,这并不是说这些特征的组合是必须的,本领域技术人员在阅读本说明书的时候完全有可能将其中一部分设备标注出来作为单独的实施例来理解。也就是说,本说明书中的实施例也可以理解为多个次级实施例的整合。而每个次级实施例的内容在于少于单个前述公开实施例的所有特征的时候也是成立的。
本文引用的每个专利,专利申请,专利申请的出版物和其他材料,例如文章,书籍,说明书,出版物,文件,物品等,可以通过引用结合于此。用于所有目的全部内容,除了与其相关的任何起诉文件历史,可能与本文件不一致或相冲突的任何相同的,或者任何可能对权利要求的最宽范围具有限制性影响的任何相同的起诉文件历史。现在或以后与本文件相关联。举例来说,如果在与任何所包含的材料相关联的术语的描述、定义和/或使用与本文档相关的术语、描述、定义和/或之间存在任何不一致或冲突时,使用本文件中的术语为准。
最后,应理解,本文公开的申请的实施方案是对本说明书的实施方案的原理的说明。其他修改后的实施例也在本说明书的范围内。因此,本说明书披露的实施例仅仅作为示例而非限制。本领域技术人员可以根据本说明书中的实施例采取替代配置来实现本说明书中的申请。因此,本说明书的实施例不限于申请中被精确地描述过的实施例。

Claims (17)

1.一种活体检测模型训练方法,包括:
获得初始训练样本集合,所述初始训练样本集合包括活体图像样本和原始攻击图像样本;
基于所述原始攻击图像样本中的至少一个攻击区域,对所述活体图像样本进行区域替换,得到至少一个目标攻击图像样本;以及
基于所述至少一个目标攻击图像样本和所述初始训练样本集合,对预设活体检测模型进行训练,得到训练后的目标活体检测模型。
2.根据权利要求1所述的活体检测模型训练方法,其中,所述至少一个攻击区域包括所述原始攻击图像样本中攻击用户的至少一个生物特征对应的图像区域。
3.根据权利要求1所述的活体检测模型训练方法,其中,所述对所述活体图像样本进行区域替换,得到至少一个目标攻击图像样本,包括:
在所述原始攻击图像样本中识别出至少一个攻击区域;
基于所述至少一个攻击区域,生成区域掩膜图像集合;以及
基于所述区域掩膜图像集合,对所述活体图像样本进行区域替换,得到所述至少一个目标攻击图像样本。
4.根据权利要求3所述的活体检测模型训练方法,其中,所述在所述原始攻击图像样本中识别出至少一个攻击区域,包括:
在所述原始攻击图像样本中识别出至少一个生物特征对应的区域标识;以及
在所述原始攻击图像样本中选取出所述区域标识对应的图像区域,得到至少一个攻击区域。
5.根据权利要求3所述的活体检测模型训练方法,其中,所述基于所述至少一个攻击区域,生成区域掩膜图像集合,包括:
将所述至少一个攻击区域进行区域组合,得到至少一个目标攻击区域;
获得所述至少一个目标攻击区域的区域位置和所述活体图像样本的图像尺寸;以及
基于所述区域位置和所述图像尺寸,生成至少一个区域掩膜图像,得到区域掩膜图像集合,所述至少一个区域掩膜图像的图像尺寸与所述活体图像样本的图像尺寸相同。
6.根据权利要求3所述的活体检测模型训练方法,其中,所述对所述活体图像样本进行区域替换,得到所述至少一个目标攻击图像样本,包括:
在所述活体图像样本中识别出至少一个生物特征对应的活体区域;
基于所述活体区域的类型,在所述区域掩膜图像集合中选出至少一个候选区域掩膜图像;以及
将所述至少一个候选区域掩膜图像与所述活体图像样本进行叠加,得到所述至少一个目标攻击图像样本。
7.根据权利要求6所述的活体检测方法,其中,所述至少一个目标攻击图像样本中每一目标攻击图像样本包括至少一个所述活体区域和至少一个攻击区域。
8.根据权利要求1所述的活体检测模型训练方法,其中,所述对预设活体检测模型进行训练,得到训练后的目标活体检测模型,包括:
将所述至少一个目标攻击图像样本添加至所述初始训练样本集合,得到目标训练样本集合;
将所述目标训练样本集合输入至所述预设活体检测模型,以得到所述目标训练样本集合中每一图像样本的预测活体类别和所述至少一个目标攻击图像样本的预测区域掩膜图像;以及
基于所述预测活体类别和所述预测区域掩膜图像,对所述预设活体检测模型进行收敛,得到所述目标活体检测模型。
9.根据权利要求8所述的活体检测模型训练方法,其中,所述预设活体检测模型包括特征提取网络、活体分类网络和掩膜预测网络;以及
所述将所述目标训练样本集合输入至所述预设活体检测模型,以得到所述目标训练样本集合中每一图像样本的预测活体类别和所述至少一个目标攻击图像样本对应的预测区域掩膜图像,包括:
将所述目标训练样本集合输入至所述特征提取网络,得到所述每一图像样本的样本图像特征,
将所述样本图像特征输入至所述活体分类网络,以得到所述每一图像样本的预测活体类别,
在所述样本图像特征中选取出所述至少一个目标攻击图像样本中每一目标攻击图像样本的目标样本图像特征,以及
将所述目标样本图像特征输入至所述掩膜预测网络,以得到所述每一目标攻击图像样本对应的预测区域掩膜图像。
10.根据权利要求9所述的活体检测模型训练方法,其中,所述掩膜预测网络包括特征转换子网络;以及
所述将所述目标样本图像特征输入至所述掩膜预测网络,以得到所述每一目标攻击图像样本对应的预测区域掩膜图像,包括:
将所述目标样本图像特征输入至所述特征转换子网络,以得到所述每一目标攻击图像样本的样本材质特征,所述样本材质特征的尺寸与所述每一目标攻击图像样本的尺寸相同,
基于所述样本材质特征,确定所述每一目标攻击图像样本中每一区域的预测区域材质,以及
基于所述预测区域材质,生成所述每一目标攻击图像样本对应的预测区域掩膜图像。
11.根据权利要求8所述的活体检测模型训练方法,其中,所述对所述预设活体检测模型进行收敛,得到所述目标活体检测模型,包括:
获得所述每一图像样本的标注活体类别,并将所述标注活体类别与所述预测活体类别进行对比,以得到分类损失信息;
基于所述预测区域掩膜图像,确定所述至少一个目标攻击图像样本对应的材质识别损失信息;以及
将所述分类损失信息和所述材质识别损失信息进行融合,并基于融合后的活体检测损失信息,对预设活体检测模型进行收敛,得到所述目标活体检测模型。
12.根据权利要求11所述的活体检测模型训练方法,其中,所述确定所述至少一个目标攻击图像样本对应的材质识别损失信息,包括:
获得所述至少一个目标攻击图像样本中每一目标攻击图像样本对应的目标区域掩膜图像,所述目标区域掩膜图像与对应的预测区域掩膜图像的尺寸相同;
将所述目标区域掩膜图像与对应的所述预测区域掩膜图像进行对比,以得到所述材质识别损失信息。
13.根据权利要求12所述的活体检测模型训练方法,其中,所述将所述目标区域掩膜图像与对应的所述预测掩膜图像进行对比,以得到所述材质识别损失信息,包括:
在所述目标区域掩膜图像中识别出当前攻击区域,并在所述预测区域掩膜图像中识别出预测攻击区域;
将所述当前攻击区域与所述预测攻击区域进行对比,得到所述每一目标攻击图像样本对应的初始材质损失信息;以及
将所述初始材质损失信息进行融合,得到所述材质识别损失信息。
14.根据权利要求12所述的活体检测模型训练方法,其中,所述将所述目标区域掩膜图像与对应的所述预测掩膜图像进行对比,以得到所述材质识别损失信息,包括:
在所述目标区域掩膜图像的图像尺寸大于预设尺寸阈值时,分别在所述目标区域掩膜图像和所述预测区域掩膜图像中识别出候选检测区域;
基于所述候选检测区域,分别对所述目标区域掩膜图像和所述预测区域掩膜图像进行裁剪;以及
将裁剪后的目标区域掩膜图像与裁剪后的预测区域掩膜图像进行对比,以得到所述材质识别损失信息。
15.一种活体检测方法,包括:
获得目标用户的目标用户图像;
将所述目标用户图像输入至目标活体检测模型,以得到所述目标用户的活体检测结果,所述目标活体检测模型根据权利要求1至14任一项所述的活体检测模型训练方法训练得到;以及
输出所述目标用户的活体检测结果。
16.一种活体检测模型训练系统,包括:
至少一个存储介质,存储有至少一个指令集,用于进行活体检测模型训练;以及
至少一个处理器,同所述至少一个存储介质通信连接,
其中,当所述活体检测模型训练系统运行时,所述至少一个处理器读取所述至少一个指令集,并且根据所述至少一个指令集的指示执行权利要求1-14中任一项所述的活体检测模型训练方法。
17.一种活体检测系统,包括:
至少一个存储介质,存储有至少一个指令集,用于进行活体检测;以及
至少一个处理器,同所述至少一个存储介质通信连接,
其中,当所述活体检测系统运行时,所述至少一个处理器读取所述至少一个指令集,并且根据所述至少一个指令集的指示执行权利要求15中所述的活体检测方法。
CN202310127275.0A 2023-02-16 2023-02-16 活体检测模型训练方法、活体检测方法和系统 Pending CN116152935A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310127275.0A CN116152935A (zh) 2023-02-16 2023-02-16 活体检测模型训练方法、活体检测方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310127275.0A CN116152935A (zh) 2023-02-16 2023-02-16 活体检测模型训练方法、活体检测方法和系统

Publications (1)

Publication Number Publication Date
CN116152935A true CN116152935A (zh) 2023-05-23

Family

ID=86350351

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310127275.0A Pending CN116152935A (zh) 2023-02-16 2023-02-16 活体检测模型训练方法、活体检测方法和系统

Country Status (1)

Country Link
CN (1) CN116152935A (zh)

Similar Documents

Publication Publication Date Title
WO2020134238A1 (zh) 活体检测方法、装置以及存储介质
CN110569808A (zh) 活体检测方法、装置及计算机设备
CN114092678A (zh) 图像处理方法、装置、电子设备及存储介质
CN112800978B (zh) 属性识别方法、部位属性提取网络的训练方法和装置
CN113221767A (zh) 训练活体人脸识别模型、识别活体人脸的方法及相关装置
CN115171199B (zh) 图像处理方法、装置及计算机设备、存储介质
CN105580050A (zh) 提供图像中的控制点
CN113920023B (zh) 图像处理方法及装置、计算机可读介质和电子设备
CN113240598B (zh) 人脸图像去模糊方法、人脸图像去模糊装置、介质与设备
WO2024152659A1 (zh) 一种图像处理方法、装置、设备、介质及程序产品
CN113642359B (zh) 人脸图像生成方法、装置、电子设备及存储介质
CN110866508B (zh) 识别目标对象的形态的方法、装置、终端及存储介质
CN112464873A (zh) 模型的训练方法、人脸活体识别方法、系统、设备及介质
CN115984977A (zh) 活体检测方法和系统
CN116468113A (zh) 活体检测模型的训练方法、活体检测方法和系统
CN115497176A (zh) 活体检测模型训练方法、活体检测方法和系统
CN116152935A (zh) 活体检测模型训练方法、活体检测方法和系统
CN115578768A (zh) 图像检测网络的训练方法、图像检测方法和系统
CN113837019B (zh) 一种化妆进度检测方法、装置、设备及存储介质
CN117576245B (zh) 一种图像的风格转换方法、装置、电子设备及存储介质
CN115909511A (zh) 活体检测方法和系统
CN113838159B (zh) 用于生成卡通图像的方法、计算设备和存储介质
CN116206371A (zh) 活体检测模型训练方法、活体检测方法和系统
CN116311551A (zh) 活体检测方法和系统
CN117037293A (zh) 活体检测方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination