人脸活体检测网络的训练方法及装置与流程

文档序号:30950656发布日期:2022-07-30 07:24阅读:143来源:国知局
人脸活体检测网络的训练方法及装置与流程

1.本发明实施例涉及人工智能技术领域,尤其涉及一种人脸活体检测网络的训练方法及装置。


背景技术:

2.近年来,人们对人脸活体检测技术的关注度日益增加,这是因为随着人脸识别技术在生活中的应用和推广,随之而来的安全性问题不容忽视。随着计算机技术的进步和人工智能的发展,人脸活体检测技术也在不断地进步和提高。当前,依托深度学习和大数据技术的人脸活体检测技术已是主流的方法。
3.为了提高人脸活体检测技术的稳定性和针对新的攻击的能力,现有的人脸活体检测网络模型的训练方法中提到通过采集真实人脸数据和攻击人脸数据,并根据真实人脸数据和攻击人脸数据训练网络。
4.现有的人脸活体检测网络模型的训练方法存在以下缺点:对数据的要求较高,尤其是数据量。训练稳健的深度学习模型需要大量的数据,但是获取大量的有效的数据是比较困难的,尤其对于人脸活体检测来说,实际中的攻击情况相对来说还是少的,也很难采集到所有情形的攻击样本数据,这对依托数据来实现人脸活体检测的方法是一个弊病和挑战。


技术实现要素:

5.本发明实施例提供一种人脸活体检测网络的训练方法及装置,用于解决现有的用于训练人脸活体检测网络模型的数据获取困难,导致训练出的人脸活体检测网络模型稳健性差的问题。
6.为了解决上述技术问题,本发明是这样实现的:
7.第一方面,本发明实施例提供了一种人脸活体检测网络的训练方法,包括:
8.获取多个域的人脸图像,每个域中包括多幅人脸图像,每个域中的多幅人脸图像在同一个环境场景和/或使用同一种数据采集设备采集;
9.从所述多个域中选取至少一个域作为源域;
10.将所述源域中的人脸图像输入至对抗样本生成网络中,生成对抗样本图像;
11.将所述源域中的人脸图像作为训练数据,将所述对抗样本图像作为测试数据,对待训练人脸活体检测网络进行训练,得到训练后的人脸活体检测网络。
12.可选的,所述方法还包括:
13.将所述多个域中除所述源域之外的域作为目标域;
14.利用所述目标域中的人脸图像对所述训练后的人脸活体检测网络进行测试,并输出测试结果。
15.可选的,将所述源域中的人脸图像输入至对抗样本生成网络中,生成对抗样本图像之前还包括:
16.采用所述源域中的人脸图像,对待训练对抗样本生成网络进行训练,生成所述对抗样本生成网络;
17.其中,对待训练对抗样本生成网络进行训练包括:
18.将所述源域中的人脸图像输入至待训练对抗样本生成网络中,得到输出结果,所述输出结果包括:输入的人脸图像对应的人脸深度图像、分类结果、人脸特征数据和对抗样本图像;其中,所述待训练对抗样本生成网络包括特征提取器、深度图估计网络和分类器,所述特征提取器对输入的人脸图像进行特征提取,得到人脸特征数据,所述深度图估计网络对所述人脸特征数据进行处理,得到人脸深度图像,所述分类器对所述人脸特征数据进行人脸活体检测分类,得到人脸活体检测分类结果;
19.根据所述输出结果计算所述待训练对抗样本生成网络的总损失函数,根据所述总损失函数更新所述待训练对抗样本生成网络的参数,得到训练后的对抗样本生成网络;所述总损失函数根据所述分类器的损失函数、所述深度图估计网络的损失函数以及所述特征差异损失函数计算得到。
20.可选的,所述总损失函数采用如下公式计算:
[0021][0022]
其中,表示所述总损失函数,表示所述分类器的损失函数,表示所述特征差异损失函数,表示所述深度图估计网络的损失函数,θ表示所述分类器的参数,表示所述深度图估计网络的参数,x表示输入至待训练对抗样本生成网络的人脸图像,z表示输入至待训练对抗样本生成网络的人脸图像经过所述特征提取器提取的人脸特征数据,α和β表示权重。
[0023]
可选的,所述分类器的损失函数采用如下公式计算:
[0024][0025]
其中,y表示输入至所述待训练对抗样本生成网络的人脸图像的真实标签,表示所述待训练对抗样本生成网络输出的人脸活体检测分类结果,yi和表示y和的第i个维度。
[0026]
可选的,所述特征差异损失函数采用如下公式计算:
[0027][0028]
其中,z表示输入至待训练对抗样本生成网络的人脸图像经过所述特征提取器提取的人脸特征数据,z
+
表示待训练对抗样本生成网络输出的对抗样本图像经过所述特征提取器提取的人脸特征数据,1{
·
}表示指示函数,y表示人脸图像的标签,y
+
表示生成的对抗样本图像的标签。
[0029]
可选的,所述深度图估计网络的损失函数采用如下公式计算:
[0030][0031]
其中,d表示输入至待训练对抗样本生成网络的人脸图像对应的深度图像,d
+
表示
所述深度图估计网络生成的深度图像。
[0032]
可选的,所述对抗样本生成网络输出的对抗样本图像的公式如下:
[0033][0034]
其中,表示第t步迭代得到的对抗样本图像,表示第t+1步迭代得到的对抗样本图像,θ,ψ分别为分类器和深度图估计网络的参数,表示对抗样本图像经过特征提取器提取的特征,表示对的进行求导,γ是超参数,表示梯度上升的学习率。
[0035]
可选的,将所述源域中的人脸图像作为训练数据,将所述对抗样本图像作为测试数据,对待训练人脸活体检测网络进行训练,得到训练后的人脸活体检测网络包括:
[0036]
将所述源域中的人脸图像作为训练数据,对待训练人脸活体检测网络进行训练,并计算第一分类损失函数,根据所述第一分类损失函数,更新待训练人脸活体检测网络的参数;
[0037]
将所述对抗样本图像作为测试数据,输入至待训练人脸活体检测网络,并计算第二分类损失函数,根据所述第一分类损失函数和所述第二分类损失函数,更新待训练人脸活体检测网络的参数。
[0038]
可选的,根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数的计算公式如下:
[0039][0040]
其中,表示根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数,θ表示更新前的待训练人脸活体检测网络的参数,η是超参数,表示学习率,表示源域的人脸图像,表示所述第一分类损失函数,是表示对θ进行求导。
[0041]
可选的,所述第二分类损失函数的计算公式如下:
[0042][0043]
其中,表示所述第二分类损失函数,y
+
表示输入至待训练人脸活体检测网络的对抗样本图像的标签,是待训练人脸活体检测网络输出的对抗样本图像的标签,y
i+
和分别表示y
+
和的第i个维度。
[0044]
可选的,根据所述第一分类损失函数和所述第二分类损失函数,更新的待训练人脸活体检测网络的参数的计算公式如下:
[0045][0046]
其中,表示所述第一分类损失函数,表示所述第二分类损失函数,k表示目标域的个数,表示源域,θ表示更新前的待训练人脸活体检测网络的参数,表示第k个对抗样本图像组成的域,表示根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数,η是超参数,表示学习率,是表示对θ进行求导。
[0047]
第二方面,本发明实施例提供了一种人脸活体检测网络的训练装置,包括:
[0048]
获取模块,用于获取多个域的人脸图像,每个域中包括多幅人脸图像,每个域中的多幅人脸图像在同一个环境场景和/或使用同一种数据采集设备采集;
[0049]
第一选取模块,用于从所述多个域中选取至少一个域作为源域;
[0050]
生成模块,用于将所述源域中的人脸图像输入至对抗样本生成网络中,生成对抗样本图像;
[0051]
第一训练模块,用于将所述源域中的人脸图像作为训练数据,将所述对抗样本图像作为测试数据,对待训练人脸活体检测网络进行训练,得到训练后的人脸活体检测网络。
[0052]
可选的,所述装置还包括:
[0053]
第二选取模块,用于将所述多个域中除所述源域之外的域作为目标域;
[0054]
测试模块,用于利用所述目标域中的人脸图像对所述训练后的人脸活体检测网络进行测试,并输出测试结果。
[0055]
可选的,所述装置还包括:
[0056]
第二训练模块,用于采用所述源域中的人脸图像,对待训练对抗样本生成网络进行训练,生成所述对抗样本生成网络;
[0057]
其中,对待训练对抗样本生成网络进行训练包括:
[0058]
将所述源域中的人脸图像输入至待训练对抗样本生成网络中,得到输出结果,所述输出结果包括:输入的人脸图像对应的人脸深度图像、分类结果、人脸特征数据和对抗样本图像;其中,所述待训练对抗样本生成网络包括特征提取器、深度图估计网络和分类器,所述特征提取器对输入的人脸图像进行特征提取,得到人脸特征数据,所述深度图估计网络对所述人脸特征数据进行处理,得到人脸深度图像,所述分类器对所述人脸特征数据进行人脸活体检测分类,得到人脸活体检测分类结果;
[0059]
根据所述输出结果计算所述待训练对抗样本生成网络的总损失函数,根据所述总损失函数更新所述待训练对抗样本生成网络的参数,得到训练后的对抗样本生成网络;所述总损失函数根据所述分类器的损失函数、所述深度图估计网络的损失函数以及所述特征差异损失函数计算得到。
[0060]
可选的,所述总损失函数采用如下公式计算:
[0061][0062]
其中,表示所述总损失函数,表示所述分类器的损失函数,表示
所述特征差异损失函数,表示所述深度图估计网络的损失函数,θ表示所述分类器的参数,表示所述深度图估计网络的参数,x表示输入至待训练对抗样本生成网络的人脸图像,z表示输入至待训练对抗样本生成网络的人脸图像经过所述特征提取器提取的人脸特征数据,α和β表示权重。
[0063]
可选的,所述分类器的损失函数采用如下公式计算:
[0064][0065]
其中,y表示输入至所述待训练对抗样本生成网络的人脸图像的真实标签,表示所述待训练对抗样本生成网络输出的人脸活体检测分类结果,yi和表示y和的第i个维度。
[0066]
可选的,所述特征差异损失函数采用如下公式计算:
[0067][0068]
其中,z表示输入至待训练对抗样本生成网络的人脸图像经过所述特征提取器提取的人脸特征数据,z
+
表示待训练对抗样本生成网络输出的对抗样本图像经过所述特征提取器提取的人脸特征数据,1{
·
}表示指示函数,y表示人脸图像的标签,y
+
表示生成的对抗样本图像的标签。
[0069]
可选的,所述深度图估计网络的损失函数采用如下公式计算:
[0070][0071]
其中,d表示输入至待训练对抗样本生成网络的人脸图像对应的深度图像,d
+
表示所述深度图估计网络生成的深度图像。
[0072]
可选的,所述对抗样本生成网络输出的对抗样本图像的公式如下:
[0073][0074]
其中,表示第t步迭代得到的对抗样本图像,表示第t+1步迭代得到的对抗样本图像,θ,ψ分别为分类器和深度图估计网络的参数,表示对抗样本图像经过特征提取器提取的特征,表示对的进行求导,γ是超参数,表示梯度上升的学习率。
[0075]
可选的,所述第一训练模块包括:
[0076]
训练子模块,用于将所述源域中的人脸图像作为训练数据,对待训练人脸活体检测网络进行训练,并计算第一分类损失函数,根据所述第一分类损失函数,更新待训练人脸活体检测网络的参数;
[0077]
测试子模块,用于将所述对抗样本图像作为测试数据,输入至待训练人脸活体检测网络,并计算第二分类损失函数,根据所述第一分类损失函数和所述第二分类损失函数,更新待训练人脸活体检测网络的参数。
[0078]
可选的,根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数的计
算公式如下:
[0079][0080]
其中,表示根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数,θ表示更新前的待训练人脸活体检测网络的参数,η是超参数,表示学习率,表示源域的人脸图像,表示所述第一分类损失函数,是表示对θ进行求导。
[0081]
可选的,所述第二分类损失函数的计算公式如下:
[0082][0083]
其中,表示所述第二分类损失函数,y
+
表示输入至待训练人脸活体检测网络的对抗样本图像的标签,是待训练人脸活体检测网络输出的对抗样本图像的标签,y
i+
和分别表示y
+
和的第i个维度。
[0084]
可选的,根据所述第一分类损失函数和所述第二分类损失函数,更新的待训练人脸活体检测网络的参数的计算公式如下:
[0085][0086]
其中,表示所述第一分类损失函数,表示所述第二分类损失函数,k表示目标域的个数,表示源域,θ表示更新前的待训练人脸活体检测网络的参数,表示第k个对抗样本图像组成的域,表示根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数,η是超参数,表示学习率,是表示对θ进行求导。
[0087]
第三方面,本发明实施例提供了一种电子设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现上述第一方面所述的人脸活体检测网络的训练方法的步骤。
[0088]
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的人脸活体检测网络的训练方法的步骤。
[0089]
本发明实施例中,在每一次的训练中,首先利用设计的生成对抗样本网络来生成源域的人脸图像的对抗样本,然后利用人脸图像作为训练数据,生成的对抗样本作为测试数据,在元学习的框架之下进行人脸活体检测网络的训练。这样一方面得到分布更加分散的人脸数据,对实际中不同场景不同采集设备采集的人脸数据进行了模拟和补充,另一方面,充分利用元学习的优势,让模型在每次训练中都在模拟遇到未知数据攻击的情形,让模
型逐渐对于未知的场景下的识别更加稳健,模型的泛化性能和稳定性也得到提高。
附图说明
[0090]
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0091]
图1为本发明实施例一的人脸活体检测网络的训练方法的流程示意图;
[0092]
图2为本发明实施例二的人脸活体检测网络的训练方法的流程示意图;
[0093]
图3为本发明实施例三的对抗样本生成网络的训练方法的流程示意图;
[0094]
图4为本发明实施例的对抗样本生成网络的结构示意图;
[0095]
图5为本发明实施例四的人脸活体检测网络的训练方法的流程示意图;
[0096]
图6为本发明实施例的人脸活体检测网络的训练装置的结构示意图;
[0097]
图7为本发明实施例的电子设备的结构示意图。
具体实施方式
[0098]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0099]
请参考图1,本发明实施例一提供一种人脸活体检测网络的训练方法,包括:
[0100]
步骤11:获取多个域的人脸图像,每个域中包括多幅人脸图像,每个域中的多幅人脸图像在同一个环境场景和/或使用同一种数据采集设备采集;从所述多个域中选取至少一个域作为源域;
[0101]
本发明实施例中,可以设置不同的环境场景,和/或,采用不同的数据采集设备,来采集若干真人和攻击人脸的图像或者视频,组成数据集。其中,其中环境场景可以设置差异较大的光照和/或不同的背景环境等。数据采集设备可使用不同品牌的相机和/或分辨率等不同的相机等。将同一个环境场景和/或使用同一种数据采集设备采集的图像作为一个域的图像。
[0102]
然后,可以对采集到的图像进行预处理。如果获取到的是人脸图像(rgb图像),可以首先通过人脸检测方法检测图像中的人脸,并将人脸裁剪出来,将裁剪的人脸图像统一调整后预设尺寸,例如256*256。如果获取到的视频,则从视频中抽取(例如随机抽取)图像,并通过人脸检测方法检测图像中的人脸,并将人脸裁剪出来,将裁剪的人脸图像统一调整后预设尺寸。本发明实施例中,可以采用mtcnn(multi-task convolutional neural network,多任务卷积神经网络)算法对检测图像中的人脸。
[0103]
最后,将预处理后的图像根据不同的域分开,并从该多个域中选取至少一个域作为源域,用于训练人脸活体检测网络。优选的,选取多个源域,以使得训练出的人脸活体检测网络可以适应各种场景和/或数据采集设备的图像。
[0104]
步骤12:将所述源域中的人脸图像输入至对抗样本生成网络中,生成对抗样本图像;
[0105]
步骤13:将所述源域中的人脸图像作为训练数据,将所述对抗样本图像作为测试数据,对待训练人脸活体检测网络进行训练,得到训练后的人脸活体检测网络。
[0106]
本发明实施例中,若包括多个源域,可以依次根据每一源域以及对应的对抗样本图像,输入至待训练人脸活体检测网络进行训练,以得到最终的训练后的人脸活体检测网络。
[0107]
本发明实施例中,在每一次的训练中,首先利用设计的生成对抗样本网络来生成源域的人脸图像的对抗样本,然后利用人脸图像作为训练数据,生成的对抗样本作为测试数据,在元学习的框架之下进行人脸活体检测网络的训练。这样一方面得到分布更加分散的人脸数据,更加丰富的对抗样本,以提高网络在不同的环境场景下的准确率,另一方面,充分利用元学习的优势,让模型在每次训练中都在模拟遇到未知数据攻击的情形,让模型逐渐对于未知的场景下的识别更加稳健,模型的泛化性能和稳定性也得到提高。
[0108]
请参考图2,本发明实施例二提供一种人脸活体检测网络的训练方法,包括:
[0109]
步骤21:获取多个域的人脸图像,每个域中包括多幅人脸图像,每个域中的多幅人脸图像在同一个环境场景和/或使用同一种数据采集设备采集;从所述多个域中选取至少一个域作为源域;将所述多个域中除所述源域之外的域作为目标域;
[0110]
步骤22:将所述源域中的人脸图像输入至对抗样本生成网络中,生成对抗样本图像;
[0111]
步骤23:将所述源域中的人脸图像作为训练数据,将所述对抗样本图像作为测试数据,对待训练人脸活体检测网络进行训练,得到训练后的人脸活体检测网络。
[0112]
步骤24:利用所述目标域中的人脸图像对所述训练后的人脸活体检测网络进行测试,并输出测试结果。
[0113]
本发明实施例中,优选的,将获取到的多个域中的其中一个域作为目标域其余域均作为源域,也就是说,使用尽量多的域的数据进行训练,只需采用一个域的数据进行验证即可。当然,也不排除使用多个目标域对训练后的人脸活体检测网络进行测试的实施方式。
[0114]
本发明实施例中,在训练得到人脸活体检测网络之后,再使用目标域对训练后的人脸活体检测网络进行测试,查看训练效果。
[0115]
本发明实施例中,可选的,将所述源域中的人脸图像输入至对抗样本生成网络中,生成对抗样本图像之前还包括:采用所述源域中的人脸图像,对待训练对抗样本生成网络进行训练,生成所述对抗样本生成网络。
[0116]
下面对对抗样本生成网络的训练过程进行说明。
[0117]
请参考图3,本发明实施例三提供一种对抗样本生成网络的训练方法,包括:
[0118]
步骤31:将源域中的人脸图像输入至待训练对抗样本生成网络中,得到输出结果,所述输出结果包括:输入的人脸图像对应的人脸深度图像、分类结果、人脸特征数据和对抗样本图像;其中,请参考图4,所述待训练对抗样本生成网络包括特征提取器、深度图估计网络和分类器,所述特征提取器对输入的人脸图像进行特征提取,得到人脸特征数据,所述分类器对所述人脸特征数据进行人脸活体检测分类,得到人脸活体检测分类结果,所述深度图估计网络对所述人脸特征数据进行处理,得到人脸深度图像;深度图估计网络的作用,一方面是在对抗样本生成的过程中起到了监督和限制的作用,使得生成的对抗样本与源域的人脸图像对应的深度图之间的域的迁移较大,进而得到和源域差异较大的对抗样本图像,
另一方面是指导待训练对抗样本生成网络提取出对活体检测有帮助的特征,提升活体检测性能。
[0119]
步骤32:根据所述输出结果计算所述待训练对抗样本生成网络的总损失函数,根据所述总损失函数更新所述待训练对抗样本生成网络的参数,得到训练后的对抗样本生成网络;所述总损失函数根据所述分类器的损失函数、所述深度图估计网络的损失函数以及所述特征差异损失函数计算得到。
[0120]
本发明实施例中,可以预先将源域中的人脸图像处理成深度图像,从而计算深度图估计网络的损失函数,例如在上述图像预处理的步骤中进行处理。
[0121]
本发明实施例中,可选的,所述总损失函数采用如下公式计算:
[0122][0123]
其中,表示所述总损失函数,表示所述分类器的损失函数,表示所述特征差异损失函数,表示所述深度图估计网络的损失函数,θ表示所述分类器的参数,表示所述深度图估计网络的参数,x表示输入至待训练对抗样本生成网络的人脸图像,z表示输入至待训练对抗样本生成网络的人脸图像经过所述特征提取器提取的人脸特征数据,α和β表示权重。
[0124]
本发明实施例中,可选的,所述分类器的损失函数采用如下公式计算:
[0125][0126]
其中,y表示输入至所述待训练对抗样本生成网络的人脸图像的真实标签,表示所述待训练对抗样本生成网络输出的人脸活体检测分类结果,yi和表示y和的第i个维度。
[0127]
本发明实施例中,可选的,所述特征差异损失函数采用如下公式计算:
[0128][0129]
其中,z表示输入至待训练对抗样本生成网络的人脸图像经过所述特征提取器提取的人脸特征数据,z
+
表示待训练对抗样本生成网络输出的对抗样本图像经过所述特征提取器提取的人脸特征数据,1{
·
}表示指示函数,y表示人脸图像的标签,y
+
表示生成的对抗样本图像的标签。其中,y=y
+
时,1{y≠y
+
}取0,y≠y
+
时,1{y≠y
+
}取1。
[0130]
本发明实施例中,可选的,所述深度图估计网络的损失函数采用如下公式计算:
[0131][0132]
其中,d表示输入至待训练对抗样本生成网络的人脸图像对应的深度图像,d
+
表示所述深度图估计网络生成的深度图像。
[0133]
本发明实施例中,可选的,所述对抗样本生成网络输出的对抗样本图像的公式如下:
[0134]
[0135]
其中,表示第t步迭代得到的对抗样本图像,表示第t+1步迭代得到的对抗样本图像,θ,ψ分别为分类器和深度图估计网络的参数,表示对抗样本图像经过特征提取器提取的特征,表示对的进行求导,γ是超参数,表示梯度上升的学习率。
[0136]
本发明实施例中,生成对抗样本的方式,与现有技术中的改变图像色彩平衡等方式不同,采用一种在线迭代生成的方式,随着神经网络的迭代,对抗样本也在不断变化。具体是采用在原始数据基础上加上扰动的方式来对图像进行改变,此处的扰动,是通过神经网络损失(loss)设计得到的,得到的数据不仅在图像丰富度上有提升,而且是朝着对活体检测任务有提升的方向不断变化的。
[0137]
另外,训练对抗样本生成网络使用的损失(loss),利用了深度图信息作为监督,利用深度图信息来提升活体检测的性能,使得网络生成的新的样本对活体检测性能提升贡献增大。
[0138]
下面对人脸活体检测网络的训练过程进行说明。本发明实施例中,以原学习的思路来训练对抗样本生成网络。
[0139]
请参考图5,本发明实施例四提供一种对抗样本生成网络的训练方法,包括:
[0140]
步骤51:将源域中的人脸图像作为训练数据,对待训练人脸活体检测网络进行训练,并计算第一分类损失函数,根据所述第一分类损失函数,更新待训练人脸活体检测网络的参数;
[0141]
步骤52:将所述对抗样本图像作为测试数据,输入至待训练人脸活体检测网络,并计算第二分类损失函数,根据所述第一分类损失函数和所述第二分类损失函数,更新待训练人脸活体检测网络的参数。
[0142]
可选的,根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数的计算公式如下:
[0143][0144]
其中,表示根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数,θ表示更新前的待训练人脸活体检测网络的参数,η是超参数,表示学习率,表示源域的人脸图像,表示所述第一分类损失函数,是表示对θ进行求导。
[0145]
可选的,所述第二分类损失函数的计算公式如下:
[0146][0147]
其中,表示所述第二分类损失函数,y
+
表示输入至待训练人脸活体检测网络的对抗样本图像的标签,是待训练人脸活体检测网络输出的对抗样本图像的
标签,y
i+
和分别表示y
+
和的第i个维度。
[0148]
可选的,根据所述第一分类损失函数和所述第二分类损失函数,更新的待训练人脸活体检测网络的参数的计算公式如下:
[0149][0150]
其中,表示所述第一分类损失函数,表示所述第二分类损失函数,k表示目标域的个数,表示源域,θ表示更新前的待训练人脸活体检测网络的参数,表示第k个对抗样本图像组成的域,表示根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数,η是超参数,表示学习率,是表示对θ进行求导。
[0151]
对于有多个源域一个目标域的情况,假设有n-1个源域,则重复以上步骤生成源域的人脸图像对应的对抗样本,并利用元学习来训练待训练人脸活体检测网络n-1次,得到最终训练后的人脸活体检测网络,并使用1个目标域对训练后的人脸活体检测网络进行测试,当然也可以采用其他测试数据对训练后的人脸活体检测网络进行测试。
[0152]
本发明实施例中,采用元学习框架来训练人脸活体检测网络,这里,对于元学习的训练阶段,采用原始采集的人脸数据,但是在元学习的测试阶段采用生成的对抗样本数据,采用这样巧妙的元学习训练方式,而不是根据采集的原始的数据集合来随机划分元学习中的训练集和测试集,能在学习中模拟人脸活体检测网络遇到新的未知数据的情形,使得人脸活体检测网络能够对新的、从未见过的场景数据也能有较好的性能,对未知的场景具有一定的抵抗力。
[0153]
请参考图6,本发明实施例提供了一种人脸活体检测网络的训练装置60,包括:
[0154]
获取模块61,用于获取多个域的人脸图像,每个域中包括多幅人脸图像,每个域中的多幅人脸图像在同一个环境场景和/或使用同一种数据采集设备采集;
[0155]
第一选取模块62,用于从所述多个域中选取至少一个域作为源域;
[0156]
生成模块63,用于将所述源域中的人脸图像输入至对抗样本生成网络中,生成对抗样本图像;
[0157]
第一训练模块64,用于将所述源域中的人脸图像作为训练数据,将所述对抗样本图像作为测试数据,对待训练人脸活体检测网络进行训练,得到训练后的人脸活体检测网络。
[0158]
可选的,所述人脸活体检测网络的训练装置60还包括:
[0159]
第二选取模块,用于将所述多个域中除所述源域之外的域作为目标域;
[0160]
测试模块,用于利用所述目标域中的人脸图像对所述训练后的人脸活体检测网络进行测试,并输出测试结果。
[0161]
可选的,所述人脸活体检测网络的训练装置60还包括:
[0162]
第二训练模块,用于采用所述源域中的人脸图像,对待训练对抗样本生成网络进行训练,生成所述对抗样本生成网络;
[0163]
其中,对待训练对抗样本生成网络进行训练包括:
[0164]
将所述源域中的人脸图像输入至待训练对抗样本生成网络中,得到输出结果,所述输出结果包括:输入的人脸图像对应的人脸深度图像、分类结果、人脸特征数据和对抗样本图像;其中,所述待训练对抗样本生成网络包括特征提取器、深度图估计网络和分类器,所述特征提取器对输入的人脸图像进行特征提取,得到人脸特征数据,所述深度图估计网络对所述人脸特征数据进行处理,得到人脸深度图像,所述分类器对所述人脸特征数据进行人脸活体检测分类,得到人脸活体检测分类结果;
[0165]
根据所述输出结果计算所述待训练对抗样本生成网络的总损失函数,根据所述总损失函数更新所述待训练对抗样本生成网络的参数,得到训练后的对抗样本生成网络;所述总损失函数根据所述分类器的损失函数、所述深度图估计网络的损失函数以及所述特征差异损失函数计算得到。
[0166]
可选的,所述总损失函数采用如下公式计算:
[0167][0168]
其中,表示所述总损失函数,表示所述分类器的损失函数,表示所述特征差异损失函数,表示所述深度图估计网络的损失函数,θ表示所述分类器的参数,表示所述深度图估计网络的参数,x表示输入至待训练对抗样本生成网络的人脸图像,z表示输入至待训练对抗样本生成网络的人脸图像经过所述特征提取器提取的人脸特征数据,α和β表示权重。
[0169]
可选的,所述分类器的损失函数采用如下公式计算:
[0170][0171]
其中,y表示输入至所述待训练对抗样本生成网络的人脸图像的真实标签,表示所述待训练对抗样本生成网络输出的人脸活体检测分类结果,yi和表示y和的第i个维度。
[0172]
可选的,所述特征差异损失函数采用如下公式计算:
[0173][0174]
其中,z表示输入至待训练对抗样本生成网络的人脸图像经过所述特征提取器提取的人脸特征数据,z
+
表示待训练对抗样本生成网络输出的对抗样本图像经过所述特征提取器提取的人脸特征数据,1{
·
}表示指示函数,y表示人脸图像的标签,y
+
表示生成的对抗样本图像的标签。
[0175]
可选的,所述深度图估计网络的损失函数采用如下公式计算:
[0176][0177]
其中,d表示输入至待训练对抗样本生成网络的人脸图像对应的深度图像,d
+
表示所述深度图估计网络生成的深度图像。
[0178]
可选的,所述对抗样本生成网络输出的对抗样本图像的公式如下:
[0179][0180]
其中,表示第t步迭代得到的对抗样本图像,表示第t+1步迭代得到的对抗样本图像,θ,ψ分别为分类器和深度图估计网络的参数,表示对抗样本图像经过特征提取器提取的特征,表示对的进行求导,γ是超参数,表示梯度上升的学习率。
[0181]
可选的,所述第一训练模块包括:
[0182]
训练子模块,用于将所述源域中的人脸图像作为训练数据,对待训练人脸活体检测网络进行训练,并计算第一分类损失函数,根据所述第一分类损失函数,更新待训练人脸活体检测网络的参数;
[0183]
测试子模块,用于将所述对抗样本图像作为测试数据,输入至待训练人脸活体检测网络,并计算第二分类损失函数,根据所述第一分类损失函数和所述第二分类损失函数,更新待训练人脸活体检测网络的参数。
[0184]
可选的,根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数的计算公式如下:
[0185][0186]
其中,表示根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数,θ表示更新前的待训练人脸活体检测网络的参数,η是超参数,表示学习率,表示源域的人脸图像,表示所述第一分类损失函数,是表示对θ进行求导。
[0187]
可选的,所述第二分类损失函数的计算公式如下:
[0188][0189]
其中,表示所述第二分类损失函数,y
+
表示输入至待训练人脸活体检测网络的对抗样本图像的标签,是待训练人脸活体检测网络输出的对抗样本图像的标签,y
i+
和分别表示y
+
和的第i个维度。
[0190]
可选的,根据所述第一分类损失函数和所述第二分类损失函数,更新的待训练人脸活体检测网络的参数的计算公式如下:
[0191][0192]
其中,表示所述第一分类损失函数,表示所述第二分类
损失函数,k表示目标域的个数,表示源域,θ表示更新前的待训练人脸活体检测网络的参数,表示第k个对抗样本图像组成的域,表示根据所述第一分类损失函数更新的待训练人脸活体检测网络的参数,η是超参数,表示学习率,是表示对θ进行求导。
[0193]
请参考图7,本发明实施例还提供一种电子设备70,包括处理器71,存储器72,存储在存储器72上并可在所述处理器71上运行的计算机程序,该计算机程序被处理器71执行时实现上述人脸活体检测网络的训练方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0194]
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述人脸活体检测网络的训练方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等。
[0195]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0196]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0197]
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1