人脸伪造图像鉴别方法、装置、设备以及介质转让专利

申请号 : CN202210363659.8

文献号 : CN114495245B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郝艳妮马先钦王璋盛王一刚曹家罗引王磊

申请人 : 北京中科闻歌科技股份有限公司

摘要 :

本公开涉及一种人脸伪造图像鉴别方法、装置、设备以及介质。其中,该方法包括:获取第一样本图像集和第二样本图像集,第一样本图像集中的假脸基于第一伪造方式伪造得到,第二样本图像集中的假脸基于第二伪造方式伪造得到;基于第一样本图像集训练生成用于鉴别第一伪造方式的第一教师模型;基于第二样本图像集训练生成用于鉴别第二伪造方式的第二教师模型;将第一教师模型和第二教师模型融合以训练学生模型,生成用于鉴别第一伪造方式和第二伪造方式的目标人脸伪造图像鉴别模型。根据本公开实施例提供的技术方案,能够使生成的目标人脸伪造图像鉴别模型适用于鉴别不同伪造方法生成的人脸图像,有更好的泛化性、拓展性,且更为高效。

权利要求 :

1.一种人脸伪造图像鉴别方法,其特征在于,所述方法包括:

获取第一样本图像集和第二样本图像集,所述第一样本图像集中的假脸基于第一伪造方式伪造得到,所述第二样本图像集中的假脸基于第二伪造方式伪造得到;

基于第一样本图像集训练生成用于鉴别所述第一伪造方式的第一教师模型;

基于第二样本图像集训练生成用于鉴别所述第二伪造方式的第二教师模型;

基于所述第一教师模型和所述第二教师模型,将两个教师模型分别鉴别一种伪造人脸的能力进行融合以训练学生模型,生成用于鉴别所述第一伪造方式和所述第二伪造方式的目标伪造人脸图像鉴别模型;

对所述目标伪造人脸图像鉴别模型的置信度进行校准处理;

其中,对所述目标人脸伪造图像鉴别模型的置信度进行校准处理,包括:分别将预设的第四样本图像输入所述第一教师模型、所述第二教师模型和所述目标伪造人脸图像鉴别模型,得到所述第一教师模型鉴别为真的第一概率值、所述第二教师模型鉴别为真的第二概率值,以及所述目标人脸伪造图像鉴别为真的第三概率值;

基于所述第一概率值确定所述第一教师模型的第一置信度,并基于所述第一置信度对所述目标人脸伪造图像鉴别模型与所述第一教师模型之间的第三相对熵损失进行加权处理,得到第一加权值;

基于所述第二概率值确定所述第二教师模型的第二置信度,并基于所述第二置信度对所述目标人脸伪造图像鉴别模型与所述第二教师模型之间的第四相对熵损失进行加权处理,得到第二加权值;

基于所述第一加权值、所述第二加权值以及所述第三概率值与所述第四样本图像对应的伪造概率值之间的交叉熵损失,对所述目标人脸伪造图像鉴别模型的蒸馏损失进行校正,得到校正后的蒸馏损失;

基于校正后的蒸馏损失调整所述目标人脸伪造图像鉴别模型的参数,并在参数调整后跳转到所述分别将预设的第四样本图像输入所述第一教师模型、所述第二教师模型和所述目标人脸伪造图像鉴别模型的步骤继续执行,直到所述目标人脸伪造图像鉴别的输出结果的变化程度小于预设阈值,停止校准。

2.根据权利要求1所述的方法,其特征在于,所述基于所述第一教师模型和所述第二教师模型,将两个教师模型分别鉴别一种伪造人脸的能力进行融合以训练学生模型,生成用于鉴别所述第一伪造方式和所述第二伪造方式的目标伪造人脸图像鉴别模型,包括:将预设的第三样本图像集分别输入第一教师模型、所述第二教师模型以及学生模型,得到所述第一教师模型的第一输出结果、所述第二教师模型的第二输出结果,以及所述学生模型的第三输出结果;

基于所述第一输出结果、所述第二输出结果、所述第三输出结果,以及所述第三样本图像集,对所述第一教师模型和所述第二教师模型的知识进行蒸馏处理;

在蒸馏处理后跳转到所述将预设的第三样本图像集分别输入第一教师模型、所述第二教师模型以及所述学生模型的步骤继续执行,直到所述学生模型的评估指标趋于稳定,停止训练,得到所述目标伪造人脸图像鉴别模型。

3.根据权利要求2所述的方法,其特征在于,所述基于所述第一输出结果、所述第二输出结果、所述第三输出结果,以及所述第三样本图像集,对所述第一教师模型和所述第二教师模型的知识进行蒸馏处理,包括:基于所述第三样本图像集和所述第三输出结果,确定所述学生模型的交叉熵损失;

基于所述第一输出结果和所述第三输出结果,确定所述学生模型与所述第一教师模型之间的第一相对熵损失;

基于所述第二输出结果和所述第三输出结果,确定所述学生模型与所述第二教师模型之间的第二相对熵损失;

基于所述交叉熵损失、所述第一相对熵损失以及所述第二相对熵损失,确定蒸馏损失;

基于所述蒸馏损失调整所述学生模型的参数,以降低所述蒸馏损失。

4.一种人脸伪造图像鉴别装置,其特征在于,所述装置包括:

获取单元,用于获取第一样本图像集和第二样本图像集,所述第一样本图像集中的假脸基于第一伪造方式伪造得到,所述第二样本图像集中的假脸基于第二伪造方式伪造得到;

第一教师模型生成单元,用于基于第一样本图像集训练生成用于鉴别所述第一伪造方式的第一教师模型;

第二教师模型生成单元,用于基于第二样本图像集训练生成用于鉴别所述第二伪造方式的第二教师模型;

学生模型生成单元,用于基于所述第一教师模型和所述第二教师模型,将两个教师模型分别鉴别一种伪造人脸的能力进行融合以训练学生模型,生成用于鉴别所述第一伪造方式和所述第二伪造方式的目标伪造人脸图像鉴别模型;

置信度校准单元,用于对所述目标人脸伪造图像鉴别模型的置信度进行校准处理;

所述置信度校准单元具体用于:

分别将预设的第四样本图像输入所述第一教师模型、所述第二教师模型和所述目标伪造人脸图像鉴别模型,得到所述第一教师模型鉴别为真的第一概率值、所述第二教师模型鉴别为真的第二概率值,以及所述目标人脸伪造图像鉴别为真的第三概率值;

基于所述第一概率值确定所述第一教师模型的第一置信度,并基于所述第一置信度对所述目标人脸伪造图像鉴别模型与所述第一教师模型之间的第三相对熵损失进行加权处理,得到第一加权值;

基于所述第二概率值确定所述第二教师模型的第二置信度,并基于所述第二置信度对所述目标人脸伪造图像鉴别模型与所述第二教师模型之间的第四相对熵损失进行加权处理,得到第二加权值;

基于所述第一加权值、所述第二加权值以及所述第三概率值与所述第四样本图像对应的伪造概率值之间的交叉熵损失,对所述目标人脸伪造图像鉴别模型的蒸馏损失进行校正,得到校正后的蒸馏损失;

基于校正后的蒸馏损失调整所述目标人脸伪造图像鉴别模型的参数,并在参数调整后跳转到所述分别将预设的第四样本图像输入所述第一教师模型、所述第二教师模型和所述目标人脸伪造图像鉴别模型的步骤继续执行,直到所述目标人脸伪造图像鉴别的输出结果的变化程度小于预设阈值,停止校准。

5.根据权利要求4所述的装置,其特征在于,所述学生模型生成单元具体用于:将预设的第三样本图像集分别输入第一教师模型、所述第二教师模型以及学生模型,得到所述第一教师模型的第一输出结果、所述第二教师模型的第二输出结果,以及所述学生模型的第三输出结果;

基于所述第一输出结果、所述第二输出结果、所述第三输出结果,以及所述第三样本图像集,对所述第一教师模型和所述第二教师模型的知识进行蒸馏处理;

在蒸馏处理后跳转到所述将预设的第三样本图像集分别输入第一教师模型、所述第二教师模型以及所述学生模型的步骤继续执行,直到所述学生模型的评估指标趋于稳定,停止训练,得到所述目标伪造人脸图像鉴别模型。

6.根据权利要求5所述的装置,其特征在于,所述学生模型生成单元包括:蒸馏处理子单元,用于基于所述第三样本图像集和所述第三输出结果,确定所述学生模型的交叉熵损失;

基于所述第一输出结果和所述第三输出结果,确定所述学生模型与所述第一教师模型之间的第一相对熵损失;

基于所述第二输出结果和所述第三输出结果,确定所述学生模型与所述第二教师模型之间的第二相对熵损失;

基于所述交叉熵损失、所述第一相对熵损失以及所述第二相对熵损失,确定蒸馏损失;

基于所述蒸馏损失调整所述学生模型的参数,以降低所述蒸馏损失。

7.一种计算机设备,其特征在于,包括:

处理器和存储器;

所述处理器通过调用所述存储器存储的程序或指令,用于执行如权利要求1‑3任一项所述的人脸伪造图像鉴别方法的步骤。

8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如权利要求1至3任一项所述方法的步骤。

说明书 :

人脸伪造图像鉴别方法、装置、设备以及介质

技术领域

[0001] 本公开涉及图像处理技术领域,尤其涉及一种人脸伪造图像鉴别方法、装置、设备以及介质。

背景技术

[0002] 随着图像处理技术的不断发展,对于人脸伪造图像的鉴别也越发精确,现有人脸伪造图像的鉴别主要面向具体域提取特征,即从时间域、空间域、频域提取特征用以鉴别人脸的真伪。
[0003] 目前,如果只使用其中一个域的特征,特征信息的不足导致这些单域方法很难应对所有类别的人脸伪造鉴别。如果使用多个域的特征信息,信息的冗余会导致多域模型过于拟合训练的样本,进而无法很好的处理新的待测数据。因此,有必要提出一种新的特征提取方法。

发明内容

[0004] 为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种人脸伪造图像鉴别方法、装置、设备以及介质。
[0005] 第一方面,本公开提供了一种人脸伪造图像鉴别方法,包括:
[0006] 获取第一样本图像集和第二样本图像集,所述第一样本图像集中的假脸基于第一伪造方式伪造得到,所述第二样本图像集中的假脸基于第二伪造方式伪造得到;
[0007] 基于第一样本图像集训练生成用于鉴别所述第一伪造方式的第一教师模型;
[0008] 基于第二样本图像集训练生成用于鉴别所述第二伪造方式的第二教师模型;
[0009] 基于所述第一教师模型和所述第二教师模型,将两个教师模型分别鉴别一种伪造人脸的能力进行融合以训练学生模型,生成用于鉴别所述第一伪造方式和所述第二伪造方式的目标伪造人脸图像鉴别模型。
[0010] 在一些实施例中,基于所述第一教师模型和所述第二教师模型,将两个教师模型分别鉴别一种伪造人脸的能力进行融合以训练学生模型,生成用于鉴别所述第一伪造方式和所述第二伪造方式的目标伪造人脸图像鉴别模型,包括:
[0011] 将预设的第三样本图像集分别输入第一教师模型、所述第二教师模型以及学生模型,得到所述第一教师模型的第一输出结果、所述第二教师模型的第二输出结果,以及所述学生模型的第三输出结果;
[0012] 基于所述第一输出结果、所述第二输出结果、所述第三输出结果,以及所述第三样本图像集,对所述第一教师模型和所述第二教师模型的知识进行蒸馏处理;
[0013] 在蒸馏处理后跳转到所述将预设的第三样本图像集分别输入第一教师模型、所述第二教师模型以及所述学生模型的步骤继续执行,直到所述学生模型的评估指标趋于稳定,停止训练,得到所述目标伪造人脸图像鉴别模型。
[0014] 在一些实施例中,所述基于所述第一输出结果、所述第二输出结果、所述第三输出结果,以及所述第三样本图像集,对所述第一教师模型和所述第二教师模型的知识进行蒸馏处理,包括:
[0015] 基于所述第三样本图像集和所述第三输出结果,确定所述学生模型的交叉熵损失;
[0016] 基于所述第一输出结果和所述第三输出结果,确定所述学生模型与所述第一教师模型之间的第一相对熵损失;
[0017] 基于所述第二输出结果和所述第三输出结果,确定所述学生模型与所述第二教师模型之间的第二相对熵损失;
[0018] 基于所述交叉熵损失、所述第一相对熵损失以及所述第二相对熵损失,确定蒸馏损失;
[0019] 基于所述蒸馏损失调整所述学生模型的参数,以降低所述蒸馏损失。
[0020] 在一些实施例中,所述基于所述第一教师模型和所述第二教师模型,将两个教师模型分别鉴别一种伪造人脸的能力进行融合以训练学生模型,生成用于鉴别所述第一伪造方式和所述第二伪造方式的目标伪造人脸图像鉴别模型之后,所述方法还包括:
[0021] 对所述目标人脸伪造图像鉴别模型的置信度进行校准处理。
[0022] 在一些实施例中,所述对所述目标人脸伪造图像鉴别模型的置信度进行校准处理,包括:
[0023] 分别将预设的第四样本图像输入所述第一教师模型、所述第二教师模型和所述目标伪造人脸图像鉴别模型,得到所述第一教师模型鉴别为真的第一概率值、所述第二教师模型鉴别为真的第二概率值,以及所述目标人脸伪造图像鉴别为真的第三概率值;
[0024] 基于所述第一概率值确定所述第一教师模型的第一置信度,并基于所述第一置信度对所述目标人脸伪造图像鉴别模型与所述第一教师模型之间的第三相对熵损失进行加权处理,得到第一加权值;
[0025] 基于所述第二概率值确定所述第二教师模型的第二置信度,并基于所述第二置信度对所述目标人脸伪造图像鉴别模型与所述第二教师模型之间的第四相对熵损失进行加权处理,得到第二加权值;
[0026] 基于所述第一加权值、所述第二加权值以及所述第三概率值与所述第四样本图像对应的伪造概率值之间的交叉熵损失,对所述目标人脸伪造图像鉴别模型的蒸馏损失进行校正,得到校正后的蒸馏损失;
[0027] 基于校正后的蒸馏损失调整所述目标人脸伪造图像鉴别模型的参数,并在参数调整后跳转到所述分别将预设的第四样本图像输入所述第一教师模型、所述第二教师模型和所述目标人脸伪造图像鉴别模型的步骤继续执行,直到所述目标人脸伪造图像鉴别的输出结果的变化程度小于预设阈值,停止校准。
[0028] 第二方面,本公开提供了一种人脸伪造图像鉴别装置,包括:
[0029] 获取单元,用于获取第一样本图像集和第二样本图像集,所述第一样本图像集基于第一伪造方式伪造得到,所述第二样本图像集基于第二伪造方式伪造得到;
[0030] 第一教师模型生成单元,用于基于第一样本图像集训练生成用于鉴别所述第一伪造方式的第一教师模型;
[0031] 第二教师模型生成单元,用于基于第二样本图像训练生成用于鉴别所述第二伪造方式的第二教师模型;
[0032] 学生模型生成单元,用于基于所述第一教师模型和所述第二教师模型训练学生模型,生成用于鉴别所述第一伪造方式和所述第二伪造方式的目标人脸伪造图像鉴别模型。
[0033] 在一些实施例中,所述学生模型生成单元具体用于:
[0034] 将预设的第三样本图像分别输入第一教师模型、所述第二教师模型以及学生模型,得到所述第一教师模型的第一输出结果、所述第二教师模型的第二输出结果,以及所述学生模型的第三输出结果;
[0035] 基于所述第一输出结果、所述第二输出结果、所述第三输出结果,以及所述第三样本图像对应的样本标签,对所述第一教师模型和所述第二教师模型的知识进行蒸馏处理;
[0036] 在蒸馏处理后跳转到所述将预设的第三样本图像集分别输入第一教师模型、所述第二教师模型以及所述学生模型的步骤继续执行,直到所述学生模型的输出结果的评估指标趋于稳定,停止训练,得到所述目标人脸伪造图像鉴别模型。
[0037] 在一些实施例中,所述学生模型生成单元包括:
[0038] 蒸馏处理子单元,用于基于所述第三样本图像集和所述第三输出结果,确定所述学生模型的交叉熵损失;
[0039] 基于所述第一输出结果和所述第三输出结果,确定所述学生模型与所述第一教师模型之间的第一相对熵损失;
[0040] 基于所述第二输出结果和所述第三输出结果,确定所述学生模型与所述第二教师模型之间的第二相对熵损失;
[0041] 基于所述交叉熵损失、所述第一相对熵损失以及所述第二相对熵损失,确定蒸馏损失;
[0042] 基于所述蒸馏损失调整所述学生模型的参数,以降低所述蒸馏损失。
[0043] 在一些实施例中,所述装置还包括:
[0044] 置信度校准单元,用于对所述目标人脸伪造图像鉴别模型的置信度进行校准处理。
[0045] 在一些实施例中,所述置信度校准单元具体用于:
[0046] 分别将预设的第四样本图像输入所述第一教师模型、所述第二教师模型和所述目标伪造人脸图像鉴别模型,得到所述第一教师模型鉴别为真的第一概率值、所述第二教师模型鉴别为真的第二概率值,以及所述目标人脸伪造图像鉴别为真的第三概率值;
[0047] 基于所述第一概率值确定所述第一教师模型的第一置信度,并基于所述第一置信度对所述目标人脸伪造图像鉴别模型与所述第一教师模型之间的第三相对熵损失进行加权处理,得到第一加权值;
[0048] 基于所述第二概率值确定所述第二教师模型的第二置信度,并基于所述第二置信度对所述目标人脸伪造图像鉴别模型与所述第二教师模型之间的第四相对熵损失进行加权处理,得到第二加权值;
[0049] 基于所述第一加权值、所述第二加权值以及所述第三概率值与所述第四样本图像对应的伪造概率值之间的交叉熵损失,对所述目标人脸伪造图像鉴别模型的蒸馏损失进行校正,得到校正后的蒸馏损失;
[0050] 基于校正后的蒸馏损失调整所述目标人脸伪造图像鉴别模型的参数,并在参数调整后跳转到所述分别将预设的第四样本图像输入所述第一教师模型、所述第二教师模型和所述目标人脸伪造图像鉴别模型的步骤继续执行,直到所述目标人脸伪造图像鉴别的输出结果的变化程度小于预设阈值,停止校准。
[0051] 第三方面,本公开提供了一种计算机设备,包括:
[0052] 处理器和存储器;
[0053] 所述处理器通过调用所述存储器存储的程序或指令,用于执行如第一方面任一项所述的人脸伪造图像鉴别方法的步骤。
[0054] 第四方面,本公开提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如第一方面任一项所述方法的步骤。
[0055] 本公开实施例提供的技术方案与现有技术相比具有如下优点:
[0056] 本公开实施例提供一种人脸伪造图像鉴别方法、装置、设备以及介质,其中,方法包括:获取了基于第一伪造方式伪造得到的第一样本图像集以及基于第二伪造方式伪造得到的第二样本图像集后,基于第一样本图像集训练生成用于鉴别第一伪造方式的第一教师模型,基于第二样本图像集训练生成用于鉴别第二伪造方式的第二教师模型,之后基于第一教师模型和第二教师模型训练学生模型,生成用于鉴别第一伪造方式和第二伪造方式的目标人脸伪造图像鉴别模型。由此,能够使生成的目标人脸伪造图像鉴别模型适用于鉴别不同伪造方法生成的人脸图像,有更好的泛化性、拓展性,且更为高效。

附图说明

[0057] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
[0058] 为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0059] 图1为本公开实施例提供的一种人脸伪造图像鉴别方法的流程图;
[0060] 图2为本公开实施例提供的一种不同方式生成人脸伪造图像的示意图;
[0061] 图3为本公开实施例提供的一种生成教师模型的示意图;
[0062] 图4为本公开实施例提供的一种第一教师模型的训练示意图;
[0063] 图5为本公开实施例提供的一种学生模型置信度校准的示意图;
[0064] 图6为本公开实施例提供的一种图像鉴别模型的生成装置的结构框图;
[0065] 图7为本公开提供的计算机设备的硬件结构示意图。

具体实施方式

[0066] 为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
[0067] 在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
[0068] 图1为本公开实施例提供的一种人脸伪造图像鉴别方法的流程图,本方法适用于人脸伪造图像的鉴别,在本公开实施例中,可以由计算机设备执行,其中,计算机设备可以包括电子设备或服务器。电子设备可以包括但不限于诸如笔记本电脑等等的移动终端以及诸如台式计算机等等的固定终端。服务器可以是云服务器或者服务器集群等具有存储及计算功能的设备。如图1所示,该方法包括以下步骤:
[0069] S110、获取第一样本图像集和第二样本图像集,第一样本图像集中的假脸基于第一伪造方式伪造得到,第二样本图像集中的假脸基于第二伪造方式伪造得到。
[0070] 在一种示例性的实施方式中,第一伪造方式可以示例性的理解为更换图像中对象的身份信息的伪造方式,比如,可以将人物图像A中人物的服饰通过计算机技术替换到人物图像B中使人物图像B中人物具有人物图像A中人物的服饰信息。
[0071] 第二伪造方式可以示例性的理解为更换图像中对象的动作信息的伪造方式,比如,可以将人物图像B中人物的表情动作通过计算机技术替换到人物图像A中使人物图像A中具有人物图像B中人物的表情动作信息。
[0072] 需要说明的是,上述仅是对第一伪造方式和第二伪造方式的举例说明而不是唯一限定,在其他实施方式中,第一伪造方式和第二伪造方式还都可以理解为其他伪造方式。
[0073] 图2为本公开实施例提供的一种不同方式生成人脸伪造图像的示意图,在本公开实施例中,第一样本图像集与第二样本图像集可以经由图中所示方式得到。示例性地,计算机设备获取了人物图像A与人物图像B两张真实图像来进行伪造,可以将人物图像A作为源图像,另一张人物图像B作为目标图像,保持人物图像A的动作信息不变,将人物图像B的服饰替换到人物图像A上,即可看做更换身份信息的伪造,得到第一样本图像集。在获取第二样本图像集时,则可以将人物图像B作为源图像,另一张人物图像A作为目标图像,保持人物图像B的身份信息不变,将人物图像A的表情替换到人物图像B上,即可看做更合动作信息的伪造。
[0074] 在本公开实施例中,第一样本图像集与第二样本图像集可以从特定人脸伪造数据库中公开数据集获取,在其他实施方式中,第一样本图像集与第二样本图像集也可以从其它数据库中获取,在此不作限定。
[0075] 由此,可以获取到更换身份信息的第一样本图像集以及更换动作信息的第二样本图像集。
[0076] S120、基于第一样本图像集训练生成用于鉴别第一伪造方式的第一教师模型。
[0077] 图3为本公开实施例提供的一种生成教师模型的示意图,在图3中,完整数据集可以包括身份信息更换子数据集和动作信息更换子数据集,而身份信息更换子数据集包括更换了对象身份信息的图像的数据,动作信息更换子数据集包括更换了对象的动作信息图像的数据,双教师模块包括第一教师模型和第二教师模型。
[0078] 如图3所示,在获取到完整数据集之后,可以就完整数据集中的身份信息更换子数据集对第一教师模型进行训练,使第一教师模型可以鉴别第一伪造方式,同时可以就完整数据集中的动作信息更换子数据集对第二教师模型进行训练,使第二教师模型可以鉴别第二伪造方式。其中,第一教师模型可以看做EfficientNet‑B3和特征Transformor编码器的组合体,可以输出图像是真实图像还是伪造图像的概率,例如输出的概率为0.1,则可以认为图像是伪造图像的概率为0.1,真实图像的概率为0.9。
[0079] 示例性地,图4为本公开实施例提供的一种第一教师模型的训练示意图,如图4所示,在训练第一教师模型时,一张224*224的第一样本图像201作为输入,经由EfficientNet‑B3202在其输出端得到一个1536*7*7矩阵203,通过在对第一维(即1536)上做切割,得到1536个7*7矩阵204,再对得到的7*7矩阵204进行可视化以及特征线性化展开的处理,处理的结果作为特征Transformor编码器205的输入,经由特征Transformor编码器
205与多层感知机206,输出第一样本图像201是预测伪造概率207。
[0080] 在第一教师模型不断的训练过程中,若第一教师模型对第一样本图像中每一张图片输出的概率不再有较大的变化且接近图像本身的属性(即图像是真实图像还是虚假图像),则可以确定生成第一教师模型且可用于鉴别第一伪造方式。
[0081] 由此,可以在第一样本图像训练的基础上获取到第一教师模型。
[0082] S130、基于第二样本图像训练生成用于鉴别第二伪造方式的第二教师模型。
[0083] 其中,第二教师模型与第一教师模型的结构相同。
[0084] 基于第二样本图像训练生成用于鉴别第二伪造方式的第二教师模型与基于第一样本图像训练生成用于鉴别第一伪造方式的第一教师模型的方式相同,具有相同或相应的有益效果,为避免重复,在此不再赘述。
[0085] S140、基于第一教师模型和第二教师模型,将两个教师模型分别鉴别一种伪造人脸的能力进行融合以训练学生模型,生成用于鉴别第一伪造方式和第二伪造方式的目标伪造人脸图像鉴别模型。
[0086] 其中,学生模型与教师模型采用结构相同参数不同的Backbone,两者仅在特征Transformor编码器的层数和每一层的接口数量上不同,比如,教师模型的特征Transformor编码器为1层编码器,接口数量为6,而学生模型承载的数据量更大,采用2层编码器,每层接口数量为12的设置。在本公开实施例中,学生模型可以看作由第一教师模型与第二教师模型学习而来。
[0087] 在一些实施例中,基于第一教师模型和第二教师模型,将两个教师模型分别鉴别一种伪造人脸的能力进行融合以训练学生模型,生成用于鉴别第一伪造方式和第二伪造方式的目标伪造人脸图像鉴别模型,包括:
[0088] S11、将预设的第三样本图像集分别输入第一教师模型、第二教师模型以及学生模型,得到第一教师模型的第一输出结果、第二教师模型的第二输出结果,以及学生模型的第三输出结果。
[0089] S12、基于第一输出结果、第二输出结果、第三输出结果,以及第三样本图像集对应的样本标签,对第一教师模型和第二教师模型的知识进行蒸馏处理。
[0090] S13、在蒸馏处理后跳转到将预设的第三样本图像集分别输入第一教师模型、第二教师模型以及学生模型的步骤继续执行,直到学生模型的输出结果的评估指标趋于稳定,停止训练,得到目标人脸伪造鉴别模型。
[0091] 其中,预设的第三样本图像集可以是基于第一伪造方式伪造得到的图像或者也可以是基于第二伪造方式伪造得到的图像。
[0092] 样本标签可以表明图像本身的属性,比如在本公开实施例中,样本标签可以为0或1,0表示图像为真实人脸图像,1表示图像为伪造人脸图像。
[0093] 在本公开实施例中,学生模型的输出结果的变化程度小于预设阈值表明学生模型对预设的第三样本图像的鉴别接近于预设的第三样本图像集本身的属性且波动较小,学生模型可以鉴别第一伪造方式与第二伪造方式。
[0094] 在一些实施例中,基于第一输出结果、第二输出结果、第三输出结果,以及第三样本图像集对应的样本标签,对第一教师模型和第二教师模型的知识进行蒸馏处理,包括:
[0095] S21、基于样本标签和第三输出结果,确定学生模型的交叉熵损失。
[0096] S22、基于第二输出结果和第三输出结果,确定学生模型与第二教师模型之间的第二相对熵损失。
[0097] S23、基于交叉熵损失、第一相对熵损失以及第二相对熵损失,确定蒸馏损失。
[0098] S24、基于蒸馏损失调整学生模型的参数,以降低蒸馏损失。
[0099] 其中,交叉熵损失可以表明学生模型对第三样本图像集的鉴别结果相对于第三样本图像属性的损失,在本公开实施例中交叉熵损失越小,学生模型对第三样本图像的鉴别能力越强。
[0100] 相对熵损失可以表明学生模型的鉴别结果与教师模型的鉴别结果的相似度,在本公开实施例中相对熵损失越小,学生模型继承教师模型的对应伪造方式的鉴别能力越多。
[0101] 具体地,计算机设备在获取到样本标签、第一输出结果、第二输出结果以及第三输出结果以后,可以根据样本标签与第三输出结果,确定学生模型的交叉熵损失,可以根据第一输出结果与第三输出结果,确定学生模型与第一教师模型的第一相对熵损失,可以根据第二输出结果与第三输出结果,确定学生模型与第二教师模型之间的第二相对熵损失,再根据交叉熵损失、第一相对熵损失以及第二相对熵损失,确定蒸馏损失。而在对学生模型的不断训练过程中,蒸馏损失也在不断变化,可以根据动态变化的蒸馏损失调整学生模型的参数,使影响蒸馏损失的参数降低,即前述的交叉熵损失、第一相对熵损失以及第二相对熵损失,进而降低蒸馏损失。
[0102] 示例性地,蒸馏损失可以定义为:
[0103]
[0104] 其中, 表示括号内两者的交叉熵损失, 表示括号内两者的相对熵损失, 为样本标签, 为第三输出结果, 为第一输出结果, 为第
二输出结果, 为蒸馏损失。
[0105] 由此,可以提高学生模型对于第一伪造方式伪造的图像以及第二伪造方式伪造的图像的鉴别能力。
[0106] 目前,一些人脸伪造图像的鉴别方法使用了不同域之间的独立性约束,尝试解决过拟合问题。但实际上这些增加独立性约束的方法会增加计算资源的消耗,模型的运行时间也会明显增长。
[0107] 本公开实施例提供的图像鉴别模型的生成方法,计算机设备在获取到基于第一伪造方式伪造得到的第一样本图像集与基于第二伪造方式伪造得到的第二样本图像集之后,可以基于第一样本图像集训练生成用于鉴别第一伪造方式的第一教师模型,同时基于第二样本图像集训练生成用于鉴别第二伪造方式的第二教师模型,再基于第一教师模型与第二教师模型可以训练学生模型,生成用于鉴别第一伪造方式和第二伪造方式的目标伪造人脸图像鉴别模型。
[0108] 由此,能够使生成的目标伪造人脸图像鉴别模型适用于鉴别不同伪造方法生成的人脸图像,且无需添加独立性约束,计算成本得以节省。
[0109] 在其他实施方式中,未来如果有新的伪造方法出现,可以直接添加一个新的教师模型,在当前学生模型的基础上继续训练,从而不断增强学生模型对于各类伪造人脸鉴别,包括新型伪造方法生成的人脸的鉴别能力,在此不作限定。
[0110] 在本公开的另一种实施方式中,为使更精准、全面地描述人脸伪造鉴别这一任务,本公开还提供一种对目标伪造人脸图像鉴别模型的置信度校准方法。
[0111] 在本公开实施例中,基于第一教师模型和第二教师模型训练目标伪造人脸图像鉴别模型,生成用于鉴别第一伪造方式和第二伪造方式的目标伪造人脸图像鉴别模型之后,方法还包括:
[0112] 对目标伪造人脸图像鉴别模型的置信度进行校准处理。
[0113] 其中,对目标人脸伪造图像鉴别模型的置信度进行校准处理在本公开实施例中可以采用标签重定义的方法,在其它实施方式中,还可以采用其它方法对目标人脸伪造图像鉴别模型的置信度进行校准处理,在此不作限定。
[0114] 在一些实施例中,对目标人脸伪造图像鉴别模型的置信度进行校准处理,包括:
[0115] S31、分别将预设的第四样本图像集输入第一教师模型、第二教师模型和目标人脸伪造图像鉴别模型,得到第一教师模型鉴别为真的第一概率值、第二教师模型鉴别为真的第二概率值,以及目标人脸伪造图像鉴别模型鉴别为真的第三概率值。
[0116] S32、基于第一概率值确定第一教师模型的第一置信度,并基于第一置信度对目标人脸伪造图像鉴别模型与第一教师模型之间的第三相对熵损失进行加权处理,得到第一加权值。
[0117] S33、基于第二概率值确定第二教师模型的第二置信度,并基于第二置信度对目标人脸伪造图像鉴别模型与第二教师模型之间的第四相对熵损失进行加权处理,得到第二加权值。
[0118] S34、基于第一加权值、第二加权值以及第三概率值与第四样本图像对应的标签概率值之间的交叉熵损失,对目标人脸伪造图像鉴别模型的蒸馏损失进行校正,得到校正后的蒸馏损失。
[0119] S35、基于校正后的蒸馏损失调整目标人脸伪造图像鉴别模型的参数,并在参数调整后跳转到分别将预设的第四样本图像集输入第一教师模型、第二教师模型和目标人脸伪造图像鉴别模型的步骤继续执行,直到目标人脸伪造图像鉴别模型的输出结果的变化程度小于预设阈值,停止校准。
[0120] 其中,预设的第四样本图像集包括基于第一伪造方式伪造得到的图像集或者基于第二伪造方式伪造得到的图像集。
[0121] 第一概率值可以为第一输出结果,第二概率值可以为第二输出结果,第三概率值可以为第三输出结果。
[0122] 置信度为模型鉴别为真的概率值与鉴别为假的概率值差值的绝对值,在本公开实施例中,模型鉴别为真的概率值与鉴别为假的概率值的和为1。
[0123] 标签概率值为预设的第四样本图像集为真的概率值。
[0124] 图5为本公开实施例提供的一种目标人脸伪造图像鉴别模型置信度校准的示意图,在图5中,预设的第四样本图像集可以是更换了对象身份信息的图像或者更换了对象动作信息的图像,y1为第一教师模型的第一加权值,y2为第二教师模型的第二加权值,s为目标人脸伪造图像模型鉴别为真的第三概率值,t为标签概率值。
[0125] 具体地,如图5所示,在对目标人脸伪造图像鉴别模型的置信度进行校准处理过程中,可引入第四样本图像集,在学生模型、第一教师模型以及第二教师模型对预设的第四样本图像集进行鉴别时,可获取第一教师模型输出的第一概率值、第二教师模型输出的第二概率值以及学生模型输出的第三概率值,基于第一概率值,可以确定第一教师模型的置信度,基于第二概率值确定第二教师模型的置信度,并将第一教师模型的置信度作为第一相对熵损失的权值即y1,类似的,可以将第二教师模型的置信度作为第二相对熵损失的权值,即y2。同时确定第三概率值与第四样本图像集对应的标签概率值t之间的交叉熵损失,进而可以基于如下蒸馏损失表达式对学生模型的参数进行调整,并在参数调整后跳转到分别将预设的第四样本图像集输入第一教师模型、第二教师模型和目标人脸伪造图像鉴别模型的步骤继续执行,直到目标人脸伪造图像鉴别模型的输出结果的变化程度小于预设阈值,停止校准。
[0126]
[0127] 其中, 为第一置信度, 为第二置信度, 为第三概率值与第四样本图像集对应的标签概率值之间的交叉熵损失,为 , 为
校正后的蒸馏损失。
[0128] 由此,可有效优化目标人脸伪造图像鉴别模型的置信度分布情况,防止过拟合的发生进而有效提升泛化性,同时,标签重定义也将原有的简单二分类问题优化为逼真程度为目标的回归问题,更精准、全面地描述了人脸伪造鉴别这一任务。
[0129] 对应本公开实施例提供的人脸伪造图像鉴别方法,本公开实施例还提供了一种人脸伪造图像鉴别装置。图6为本公开实施例提供的一种图像鉴别模型的生成装置的结构框图,如图6所示,该人脸伪造图像鉴别装置包括:
[0130] 获取单元301,用于获取第一样本图像集和第二样本图像集,第一样本图像集基于第一伪造方式伪造得到,第二样本图像集基于第二伪造方式伪造得到;
[0131] 第一教师模型生成单元302,用于基于第一样本图像集训练生成用于鉴别第一伪造方式的第一教师模型;
[0132] 第二教师模型生成单元303,用于基于第二样本图像训练生成用于鉴别第二伪造方式的第二教师模型;
[0133] 学生模型生成单元304,用于基于第一教师模型和第二教师模型训练学生模型,生成用于鉴别第一伪造方式和第二伪造方式的目标人脸伪造图像鉴别模型。
[0134] 在一些实施例中,学生模型生成单元具体用于:
[0135] 将预设的第三样本图像分别输入第一教师模型、第二教师模型以及学生模型,得到第一教师模型的第一输出结果、第二教师模型的第二输出结果,以及学生模型的第三输出结果;
[0136] 基于第一输出结果、第二输出结果、第三输出结果,以及第三样本图像对应的样本标签,对第一教师模型和第二教师模型的知识进行蒸馏处理;
[0137] 在蒸馏处理后跳转到将预设的第三样本图像集分别输入第一教师模型、第二教师模型以及学生模型的步骤继续执行,直到学生模型的输出结果的评估指标趋于稳定,停止训练,得到目标人脸伪造图像鉴别模型。
[0138] 在一些实施例中,学生模型生成单元包括:
[0139] 蒸馏处理子单元,用于基于第三样本图像集和第三输出结果,确定学生模型的交叉熵损失;
[0140] 基于第一输出结果和第三输出结果,确定学生模型与第一教师模型之间的第一相对熵损失;
[0141] 基于第二输出结果和第三输出结果,确定学生模型与第二教师模型之间的第二相对熵损失;
[0142] 基于交叉熵损失、第一相对熵损失以及第二相对熵损失,确定蒸馏损失;
[0143] 基于蒸馏损失调整学生模型的参数,以降低蒸馏损失。
[0144] 在一些实施例中,装置还包括:
[0145] 置信度校准单元,用于对目标人脸伪造图像鉴别模型的置信度进行校准处理。
[0146] 在一些实施例中,置信度校准单元具体用于:
[0147] 分别将预设的第四样本图像输入第一教师模型、第二教师模型和目标伪造人脸图像鉴别模型,得到第一教师模型鉴别为真的第一概率值、第二教师模型鉴别为真的第二概率值,以及目标人脸伪造图像鉴别为真的第三概率值;
[0148] 基于第一概率值确定第一教师模型的第一置信度,并基于第一置信度对目标人脸伪造图像鉴别模型与第一教师模型之间的第三相对熵损失进行加权处理,得到第一加权值;
[0149] 基于第二概率值确定第二教师模型的第二置信度,并基于第二置信度对目标人脸伪造图像鉴别模型与第二教师模型之间的第四相对熵损失进行加权处理,得到第二加权值;
[0150] 基于第一加权值、第二加权值以及第三概率值与第四样本图像对应的伪造概率值之间的交叉熵损失,对目标人脸伪造图像鉴别模型的蒸馏损失进行校正,得到校正后的蒸馏损失;
[0151] 基于校正后的蒸馏损失调整目标人脸伪造图像鉴别模型的参数,并在参数调整后跳转到分别将预设的第四样本图像输入第一教师模型、第二教师模型和目标人脸伪造图像鉴别模型的步骤继续执行,直到目标人脸伪造图像鉴别的输出结果的变化程度小于预设阈值,停止校准。
[0152] 以上实施例公开的人脸伪造图像鉴别装置能够执行以上各实施例公开的人脸伪造图像鉴别方法,具有相同或相应的有益效果,为避免重复,在此不再赘述。
[0153] 图7为本公开提供的计算机设备的硬件结构示意图。如图7所示,计算机设备包括一个或多个处理器401和存储器402。
[0154] 处理器401可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制计算机设备中的其他组件以执行期望的功能。
[0155] 存储器402可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器401可以运行所述程序指令,以实现上文所述的本公开的实施例的控制器检测方法,和/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
[0156] 在一个示例中,计算机设备还可以包括:输入装置403和输出装置404,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
[0157] 此外,该输入装置403还可以包括例如键盘、鼠标等等。
[0158] 该输出装置404可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出装置404可以包括例如显示器、扬声器、打印机、以及通信网络网络及其所连接的远程输出设备等等。
[0159] 当然,为了简化,图7中仅示出了该计算机设备中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,计算机设备还可以包括任何其他适当的组件。
[0160] 本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序指令,计算机程序指令在被处理器运行时使得处理器执行本发明各实施例所提供的人脸伪造图像的鉴别方法。
[0161] 该计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD‑ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0162] 上述计算机可读介质可以是上述计算机设备中所包含的;也可以是单独存在,而未装配入该计算机设备中。
[0163] 在本发明实施例中,可以以一种或多种程序设计语言或其组合来编写用于执行本发明的操作的程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0164] 需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0165] 以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。