掌桥专利:专业的专利平台
掌桥专利
首页

换脸方法、装置、电子设备和存储介质

文献发布时间:2023-06-19 10:48:02


换脸方法、装置、电子设备和存储介质

技术领域

本发明涉及图像处理技术领域,尤其涉及一种换脸方法、装置、电子设备和存储介质。

背景技术

换脸是指将人脸从源人脸图像转移到目标人脸图像,同时保留目标人脸图像的属性,如姿态、表情、光照等。

近年来,随着人脸合成技术的快速发展,换脸技术取得了巨大进展。换脸需要将身份信息与属性信息分离,然后将它们重组以得到交换后的人脸图像。

目前的换脸方法通常需要大量相同身份的人脸图像进行建模,才能实现身份信息与属性信息的解耦,如此以来导致目前的换脸方法极难适用于任意的人脸图像,直接影响了换脸技术的应用。

发明内容

本发明提供一种换脸方法、装置、电子设备和存储介质,用以解决现有技术中换脸需要大量相同身份的人脸图像,实用性差的缺陷。

本发明提供一种换脸方法,包括:

确定源人脸图像和目标人脸图像;

将所述源人脸图像和目标人脸图像输入至人脸生成器中,得到所述人脸生成器输出的换脸图像;

所述人脸生成器是基于样本图像对,与人脸判别器对抗训练得到的,所述人脸判别器用于对所述样本图像对及其样本换脸图像进行真伪判别,所述样本换脸图像是所述人脸生成器基于所述样本图像对进行换脸得到的。

根据本发明提供的一种换脸方法,所述人脸生成器包括解耦表示模块和语义融合模块;

所述将所述源人脸图像和目标人脸图像输入至人脸生成器中,得到所述人脸生成器输出的换脸图像,包括:

将所述源人脸图像和目标人脸图像输入至所述解耦表示模块,得到所述解耦表示模块输出的所述源人脸图像的身份编码和所述目标人脸图像的属性编码;

将所述源人脸图像的身份编码和所述目标人脸图像的属性编码输入至所述语义融合模块,由所述语义融合模块基于所述目标人脸图像的语义信息,融合所述源人脸图像的身份编码和所述目标人脸图像的属性编码,得到所述语义融合模块输出的所述换脸图像。

根据本发明提供的一种换脸方法,所述语义信息包括人脸语义分割图和/或人脸关键点图。

根据本发明提供的一种换脸方法,所述将所述源人脸图像的身份编码和所述目标人脸图像的属性编码输入至所述语义融合模块,由所述语义融合模块基于所述目标人脸图像的语义信息,融合所述源人脸图像的身份编码和所述目标人脸图像的属性编码,得到所述语义融合模块输出的所述换脸图像,包括:

将所述源人脸图像的身份编码和所述目标人脸图像的属性编码输入至所述语义融合模块,由所述语义融合模块基于反归一化方式顺次将所述目标人脸图像的人脸语义分割图的编码、所述源人脸图像的身份编码,以及所述目标人脸图像的人脸关键点图的编码,注入所述目标人脸图像的属性编码,得到所述语义融合模块输出的换脸图像。

根据本发明提供的一种换脸方法,所述人脸生成器是基于如下步骤确定的:

将所述样本图像对输入至初始生成器中,得到所述初始生成器输出的重建图像对和换脸图像对;

将所述样本图像对及其换脸图像对中的各图像分别输入至所述人脸判别器中,得到所述人脸判别器的判别结果;

基于所述样本图像对及其重建图像对、换脸图像对和判别结果,确定损失函数值;

基于所述损失函数值更新所述初始生成器,得到所述人脸生成器。

根据本发明提供的一种换脸方法,所述将所述样本图像对输入至初始生成器中,得到所述初始生成器输出的重建图像对和换脸图像对,包括:

将所述样本图像对输入至初始生成器中,由所述初始生成器分别提取所述样本图像对中两张样本图像的身份编码和属性编码,并基于同一样本图像的身份编码和属性编码重建图像,基于不同样本图像的身份编码和属性编码合成图像,得到所述初始生成器输出的重建图像对和换脸图像对。

根据本发明提供的一种换脸方法,所述基于所述样本图像对及其重建图像对、换脸图像对和判别结果,确定损失函数值,包括:

基于身份保持损失值、属性保持损失值和重建损失值中的至少一种,以及对抗损失值,确定所述损失函数值;

其中,所述身份保持损失值是基于所述样本图像对和所述换脸图像对中各图像的身份编码确定的;

所述属性保持损失值是基于所述样本图像对和所述换脸图像对中各图像的属性编码确定的;

所述重建损失值是基于所述样本图像对和所述重建图像对确定的;

所述对抗损失值是基于所述判别结果确定的。

本发明还提供一种换脸装置,包括:

图像确定单元,用于确定源人脸图像和目标人脸图像;

换脸单元,用于将所述源人脸图像和目标人脸图像输入至人脸生成器中,得到所述人脸生成器输出的换脸图像;

所述人脸生成器是基于样本图像对,与人脸判别器对抗训练得到的,所述人脸判别器用于对所述样本图像对及其样本换脸图像进行真伪判别,所述样本换脸图像是所述人脸生成器基于所述样本图像对进行换脸得到的。

本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一种所述换脸方法的步骤。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述换脸方法的步骤。

本发明提供的换脸方法、装置、电子设备和存储介质,结合人脸判别器训练所得的人脸生成器,具有较强的泛化性能,可以适配任意人脸图像,无身份限制。且人脸生成器的训练样本也不需要大量相同身份的人脸图像,能够有效降低样本获取难度和获取成本,进一步提高换脸方法的适用范畴。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的换脸方法的流程示意图;

图2是本发明提供的人脸生成器的运行流程示意图;

图3是本发明提供的残差块的结构示意图;

图4是本发明提供的语义融合模块的结构示意图;

图5是本发明提供的人脸生成器的确定方法的流程示意图;

图6是本发明提供的人脸生成器的训练结构示意图;

图7是本发明提供的人脸生成器的结构示意图;

图8是本发明提供的换脸装置的结构示意图;

图9是本发明提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1是本发明提供的换脸方法的流程示意图,如图1所示,该方法包括:

步骤110,确定源人脸图像和目标人脸图像。

此处,源人脸图像和目标人脸图像均为包含人脸的图像,在换脸操作时,源人脸图像中人脸需要转移到目标人脸图像中,同时保留目标人脸图像中的姿态、表情、光照等属性,换而言之,由此得到的换脸图像应对具有源人脸图像中人脸的身份,以及目标人脸图像中人脸的姿态、表情、光照等属性。

步骤120,将源人脸图像和目标人脸图像输入至人脸生成器中,得到人脸生成器输出的换脸图像;

人脸生成器是基于样本图像对,与人脸判别器对抗训练得到的,人脸判别器用于对样本图像对及其样本换脸图像进行真伪判别,样本换脸图像是人脸生成器基于样本图像对进行换脸得到的。

具体地,步骤120中可以通过人脸生成器实现结合源人脸图像和目标人脸图像的换脸操作。而为了降低人脸生成器的训练成本,拓宽人脸生成器的应用范畴,本发明实施例中将人脸生成器与人脸判别器进行对抗训练,通过对抗生成网络(GenerativeAdversarial Networks,GANs)思想的应用,实现具有较强泛化能力,可适应于任意人脸图像的人脸生成器的构建和训练:

人脸生成器与人脸判别器可以构成生成对抗网络,其中人脸生成器即生成对抗网络框架下的生成模型(Generative Model),人脸判别器即生成对抗网络框架下的判别模型(Discriminative Model)。人脸生成器用于生成结合了源人脸图像的身份信息和目标人脸图像的属性信息的换脸图像,人脸判别器用于区分输入的图像中包含的人脸是合成的人脸还是直接采集得到的真实人脸。

在人脸生成器的训练过程中,人脸生成器与人脸判别器之间相互博弈学习,从而在提高人脸生成器输出的换脸图像中人脸的逼真度和自然度的同时,提高人脸判别器对于合成人脸和真实人脸的区分能力。具体可以在模型训练过程中,将样本图像对输入到人脸生成器中,得到人脸生成器输出的预测换脸图像,将样本图像对中的图像和预测换脸图像混合后输入人脸判别器,得到人脸判别器输出的各图像的判别结果,基于预测换脸图像中的身份信息与样本图像对中的源人脸图像中的身份信息之间的差异,以及预测换脸图像中的属性信息与样本图像对中的目标人脸图像中的属性信息之间的差异构建生成损失函数,基于各图像的判别结果与各图像的实际真伪情况之间的差异构建判别损失函数,结合生成损失函数和判别损失函数对人脸生成器和人脸判别器进行联合训练。

需要说明的是,在上述训练过程中可以将大量样本图像对作为训练样本,此处任一组样本图像对中包含两张不同身份的人脸图像即可,每个身份的人脸图像仅需一张即可,人脸生成器的构建无需大量相同身份的人脸图像,有效降低了样本获取难度和成本。

本发明实施例提供的方法,结合人脸判别器训练所得的人脸生成器,具有较强的泛化性能,可以适配任意人脸图像,无身份限制。且人脸生成器的训练样本也不需要大量相同身份的人脸图像,能够有效降低样本获取难度和获取成本,进一步提高换脸方法的适用范畴。

进一步地,本发明实施例中的人脸生成器,无论是训练还是测试阶段,针对每个身份仅需一张人脸图像,即本发明实施例可实现单样本的换脸方法。

基于上述实施例,人脸生成器包括解耦表示模块和语义融合模块。

其中,解耦表示模块用于分离输入的人脸图像中的身份信息和属性信息,语义融合模块用于在人脸图像的语义信息的引导下,融合需要合成人脸的身份信息和属性信息。此处,用于进行融合引导的语义信息,与需要合成人脸的属性信息来自同一张人脸图像,进一步地,语义信息可以表征人脸图像的语义。

解耦表示模块和语义融合模块呈编码-解码结构,解耦表示模块属于编码器,语义融合模块属于解码器。

进一步地,图2是本发明提供的人脸生成器的运行流程示意图,如图2所示,步骤120包括:

步骤121,将所述源人脸图像和目标人脸图像输入至所述解耦表示模块,得到所述解耦表示模块输出的所述源人脸图像的身份编码和所述目标人脸图像的属性编码。

具体地,解耦表示模块可用于分离输入的人脸图像中的身份信息和属性信息,当解耦表示模块的输入包括源人脸图像和目标人脸图像两张图像时,解耦表示模块可以分别分离源人脸图像和目标人脸图像中的身份信息和属性信息。考虑到针对源人脸图像和目标人脸图像进行换脸,仅需要源人脸图像的身份信息和目标人脸图像的属性信息,解耦表示模块也可以在分离图像的身份信息和属性信息时仅提取源人脸图像的身份信息和目标人脸图像的属性信息,由此得到并输出源人脸图像的身份编码和所述目标人脸图像的属性编码。

此处所指的身份编码和属性编码即人脸图像身份信息和属性信息的特征编码。

步骤122,将所述源人脸图像的身份编码和所述目标人脸图像的属性编码输入至所述语义融合模块,由所述语义融合模块基于所述目标人脸图像的语义信息,融合所述源人脸图像的身份编码和所述目标人脸图像的属性编码,得到所述语义融合模块输出的所述换脸图像。

具体地,语义信息反映了对应人脸图像的语义,例如对应人脸图像中反映人脸所处环境和位置的人脸语义分割图,又例如对应人脸图像中反映人脸表情的人脸关键点图。

在应用语义融合模块进行源人脸图像的身份编码和目标人脸图像的属性编码的融合时,可以将目标人脸图像的语义信息作为引导,此处所指的引导可以是基于目标人脸图像的语义信息调整源人脸图像的身份编码和目标人脸图像的属性编码的融合权重,也可以是基于目标人脸图像的语义信息引导反归一化层,对融合过程中的源人脸图像的身份编码和目标人脸图像的属性编码进行反归一化。

本发明实施例提供的方法,充分应用图像的语义信息引导特征融合,有助于提高合成图像的可靠性、

基于上述任一实施例,解耦表示模块具体可以包括属性编码器和身份编码器。属性编码器和身份编码器分别用于提取输入人脸图像的属性信息和身份信息,并分别编码得到属性编码和身份编码。

进一步地,属性编码器和身份编码器可以采用相同或者不同的网络结构。例如,属性编码器和身份编码器均可采用由残差块组成的网络结构,通常残差块中包含有批归一化层,在实际应用属性编码器和身份编码器时,可以保留残差块中的批归一化层,也可以将批归一化层替换为实例归一化层,例如图3示出的残差块中归一化应用的是实例归一化层Inst.Norm。

例如,属性编码器可以包括5个下采样残差块和2个瓶颈残差块,身份编码器可以包括6个下采样残差块、1个卷积层和1个全连接层。

基于上述任一实施例,语义信息包括人脸语义分割图和/或人脸关键点图。

具体地,人脸语义分割图即人脸mask图,人脸语义分割图的获取可以通过预先训练的目标检测模型实现,可以通过预先标注好人脸区域的样本人脸图像训练目标检测模型,使得目标检测模型能够识别输入的人脸图像中的人脸区域,并输出标记有人脸区域的人脸mask图。例如可以通过人脸分割算法生成二值人脸图像作为人脸mask图。

人脸关键点图用于标记人脸图形中人脸的各个关键点的位置,可以通过经典的人脸关键点检测算法检测人脸关键点得到,还可以使用不同的颜色连接不同的面部组件,生成多通道的人脸关键点图,例如可以设置人眼关键点、唇部外轮廓点、唇部内轮廓点采用不同的颜色,由此得到三通道的人脸关键点图。

基于上述任一实施例,步骤122包括:

将所述源人脸图像的身份编码和所述目标人脸图像的属性编码输入至所述语义融合模块,由所述语义融合模块基于反归一化方式顺次将所述目标人脸图像的人脸语义分割图的编码、所述源人脸图像的身份编码,以及所述目标人脸图像的人脸关键点图的编码,注入所述目标人脸图像的属性编码,得到所述语义融合模块输出的换脸图像。

具体地,语义融合模块用于将目标人脸图像的语言信息的编码和源人脸图像的身份编码注入到目标人脸图像的属性编码中,从而实现基于语言信息引导的源人脸图像的身份编码和目标人脸图像的属性编码的融合。

进一步地,语义融合模块也是由残差块构成的。为了实现目标人脸图像的语言信息的编码和源人脸图像的身份编码的注入,应用反归一化层替换了语义融合模块中残差块的归一化层,从而通过反归一化的形式顺次将目标人脸图像的人脸语义分割图的编码、源人脸图像的身份编码,以及目标人脸图像的人脸关键点图的编码注入目标人脸图像的属性编码,得到注入结果,即换脸图像。

基于上述任一实施例,图4是本发明提供的语义融合模块的结构示意图,如图4所示,语义融合模块的运行流程如下:

假设将B个样本作为一批输入,记语义引导反归一化层的第

首先,将人脸语义分割图缩放到与

其中,

其次,通过反归一化

其中,

接着,将人脸关键点图缩放到与

其中,

最后,通过简单的融合操作将人脸区域与背景区域结合起来,具体公式为:

由此所得的各层

基于上述任一实施例,图5是本发明提供的人脸生成器的确定方法的流程示意图,如图5所示,所述人脸生成器是基于如下步骤确定的:

步骤510,将所述样本图像对输入至初始生成器中,得到所述初始生成器输出的重建图像对和换脸图像对;

具体地,初始生成器可以是任意结构的神经网络模型,在基于初始生成器进行人脸生成器的模型训练阶段,可以将样本图像对作为输入到初始生成器中的训练样本。

针对于具备身份信息和属性信息的解耦功能的初始生成器,输入的样本图像对中的两张人脸图像可以互为源人脸图像和目标人脸图像,对两张人脸图像分别进行信息解耦所得的身份信息和属性信息可以任意形式组合,从而得到重建图像对和换脸图像对。

其中,重建图像对是分别基于两张人脸图像的身份信息和属性信息进行重建得到的,换脸图像对是交叉两张人脸图像的身份信息和属性信息进行合成得到的。

步骤520,将所述样本图像对及其换脸图像对中的各图像分别输入至所述人脸判别器中,得到所述人脸判别器的判别结果。

具体地,人脸判别器具备区分输入的图像中包含的人脸是合成的人脸还是直接采集得到的真实人脸的能力,将样本图像对及其换脸图像对中的各图像分别输入到人脸判别器中,由人脸判别器分别进行判别,即可得到各图像的判别结果。

步骤530,基于所述样本图像对及其重建图像对、换脸图像对和判别结果,确定损失函数值;

步骤540,基于所述损失函数值更新所述初始生成器,得到所述人脸生成器。

此处,在确定损失函数值时,可以考量样本图像对及其重建图像对之间的差异性,此两者差异越小,则说明初始生成器在拆分人脸图像的属性信息和身份信息,并据此重建图像时的精度越高。此外,还可以考量样本图像对中图像的属性编码和换脸图像对中对应图像的属性编码之间的差异性,此两者差异越小,则说明初始生成器在合成图像时对于图像属性信息保持得越好,同样地,可以考量样本图像对中图像的身份编码和换脸图像对中对应图像的身份编码之间的差异性,此两者差异越小,则说明初始生成器在合成图像时对于图像身份信息保持得越好;再者,还可以根据人脸判别器输出的判别结果,衡量初始生成器合成图像是否逼真。

在得到损失函数值之后,即可据此更新初始生成器,例如利用梯度反向传播算法迭代调整初始生成器的权值,或者可以一并调整初始生成器和人脸判别器的权值,直至收敛。收敛后的初始生成器即人脸生成器。

基于上述任一实施例,步骤510包括:

将所述样本图像对输入至初始生成器中,由所述初始生成器分别提取所述样本图像对中两张样本图像的身份编码和属性编码,并基于同一样本图像的身份编码和属性编码重建图像,基于不同样本图像的身份编码和属性编码合成图像,得到所述初始生成器输出的重建图像对和换脸图像对。

具体地,在初始生成器内部应用解耦表示模块针对两张样本图像分别进行身份和 属性解耦,得到其对应的身份编码和属性编码之后,可以应用语义融合模块分别进行不同 身份编码和属性编码组合下的图像合成,例如两张样本图像分别为

基于上述任一实施例,图6是本发明提供的人脸生成器的训练结构示意图,如图6 所示,人脸生成器中,Attribute Encoder表示属性编码器,Identity Encoder表示身份编 码器,Attribute Encoder和Identity Encoder构成解耦表示模块,用于分别对样本图像

Semantic-guided Fusion Module表示基于语义信息引导的语义融合模块,在此基础上结合解码器Decoder即可实现不同身份编码和属性编码组合下的图像合成。

Discriminator表示人脸判别器,可以将图像输入人脸判别器中,判别输入图像的真假(Real or Fake)。

进一步地,在图像合成阶段,假设两张样本图像

将源人脸图像的身份编码、目标人脸图像的属性编码、目标人脸图像的人脸mask 图和目标人脸图像的人脸关键点图输入语义融合模块,生成具有源图像身份和目标图像属 性的换脸图像,如图6中

将目标人脸图像的身份编码、目标人脸图像的属性编码、目标人脸图像的人脸 mask图和目标人脸图像的人脸关键点图输入语义融合模块,生成目标人脸图像的重建图 像,如图6中

将目标人脸图像的身份编码、源人脸图像的属性编码、源人脸图像的人脸mask图 和源人脸图像的人脸关键点图输入语义融合模块,生成具有目标图像身份和源图像属性的 换脸图像,如图6中

基于上述任一实施例,步骤530包括:

基于身份保持损失值、属性保持损失值和重建损失值中的至少一种,以及对抗损失值,确定所述损失函数值;

其中,所述身份保持损失值是基于所述样本图像对和所述换脸图像对中各图像的身份编码确定的;

所述属性保持损失值是基于所述样本图像对和所述换脸图像对中各图像的属性编码确定的;

所述重建损失值是基于所述样本图像对和所述重建图像对确定的;

所述对抗损失值是基于所述判别结果确定的。

具体地,假设样本图像对中的两张人脸图像分别为源人脸图像和目标人脸图像, 则身份保持损失值

其中,源人脸图像身份保持损失值

例如,源人脸图像身份保持损失值

其中,

类似地,目标人脸图像身份保持损失值

其中,

由此可以得到身份保持损失值

属性保持损失值

源人脸图像属性保持损失值

例如,源人脸图像属性保持损失值

其中,

类似地,目标人脸属性保持损失

由此可以得到属性保持损失值

重建损失值

其中, 源人脸图像的重建损失

例如,源人脸图像的重建损失的计算公式可以是:

其中,

类似地,目标人脸图像的重建损失值的计算公式可以是:

由此可以得到重建损失值的计算公式为:

对抗损失值

其中,目标对抗损失值

例如,目标对抗损失值

其中,

类似地,源对抗损失值

其中,

由此可以得到对抗损失值的计算公式为:

进一步地,结合上述各损失值,可以通过对各损失值进行加权求和的方式,确定损 失函数值

其中,

对应地,步骤540中,可以以损失函数值

基于上述任一实施例,图7是本发明提供的人脸生成器的结构示意图,图7中,斜线填充的方框表示下采样残差块或者上采样残差块,方格填充的方框表示瓶颈残差块。

进一步地,属性编码器可以包括5个下采样残差块和2个瓶颈残差块,即图7中目标人脸图像Traget Image箭头所指的部分。身份编码器Identity Encoder即图7中源人脸图像Source Image箭头所指的部分,身份编码器可以包括6个下采样残差块、1个卷积层和1个全连接层,身份编码器还可以后接全局池化层Global Pooling,得到身份编码E

此外,图7示出的虚线框表示的是语义融合模块,其中包括2个瓶颈语义引导换脸模块和5个上采样语义引导换脸模块,瓶颈语义引导换脸模块即瓶颈残差块与语义引导融合部分Semantic-guided Face Swapping Blocks的结合,上采样语义引导换脸模块即上采样残差块与语义引导融合部分Semantic-guided Face Swapping Blocks的结合。图7中的S和L分别为目标人脸图像的人脸mask图和人脸关键点图。

此外,在图7示出的人脸生成器中,属性编码器和语义融合模块中的解码器之间添加有跳连接,通过跳连接实现编码器与解码器中不同分辨率的特征图的直接连接,有助于提高编解码的可靠性和图像的合成精度。

基于上述任一实施例,基于人脸生成器得到的换脸图像,会随着人脸生成器自身的训练迭代次数的不同而不同,具体表现为:

首先,在开始阶段,生成的图像趋向于重建图像,在损失值上表现为,属性保持损失迅速下降,而身份保持损失稍有上升,记为第一阶段,又称重建阶段;

然后,身份保持损失上升到一定值后开始下降,同时属性保持损失开始上升,期间生成的图像趋向于合成换脸图像,记为第二阶段,又称合成阶段;

最后,所有损失值趋于稳定,模型收敛,生成换脸图像,因此称为渐进的换脸方法。

下面对本发明提供的换脸装置进行描述,下文描述的换脸装置与上文描述的换脸方法可相互对应参照。

图8是本发明提供的换脸装置的结构示意图,如图8所示,该装置包括:

图像确定单元810,用于确定源人脸图像和目标人脸图像;

换脸单元820,用于将所述源人脸图像和目标人脸图像输入至人脸生成器中,得到所述人脸生成器输出的换脸图像;

所述人脸生成器是基于样本图像对,与人脸判别器对抗训练得到的,所述人脸判别器用于对所述样本图像对及其样本换脸图像进行真伪判别,所述样本换脸图像是所述人脸生成器基于所述样本图像对进行换脸得到的。

本发明实施例提供的装置,结合人脸判别器训练所得的人脸生成器,具有较强的泛化性能,可以适配任意人脸图像,无身份限制。且人脸生成器的训练样本也不需要大量相同身份的人脸图像,能够有效降低样本获取难度和获取成本,进一步提高换脸方法的适用范畴。

进一步地,本发明实施例中的人脸生成器,无论是训练还是测试阶段,针对每个身份仅需一张人脸图像,即本发明实施例可实现单样本的换脸方法。

基于上述任一实施例,所述人脸生成器包括解耦表示模块和语义融合模块;

所述换脸单元820包括:

解耦表示子单元,用于将所述源人脸图像和目标人脸图像输入至所述解耦表示模块,得到所述解耦表示模块输出的所述源人脸图像的身份编码和所述目标人脸图像的属性编码;

语义融合子单元,用于将所述源人脸图像的身份编码和所述目标人脸图像的属性编码输入至所述语义融合模块,由所述语义融合模块基于所述目标人脸图像的语义信息,融合所述源人脸图像的身份编码和所述目标人脸图像的属性编码,得到所述语义融合模块输出的所述换脸图像。

基于上述任一实施例,所述语义信息包括人脸语义分割图和/或人脸关键点图。

基于上述任一实施例,所述语义融合子单元用于:

将所述源人脸图像的身份编码和所述目标人脸图像的属性编码输入至所述语义融合模块,由所述语义融合模块基于反归一化方式顺次将所述目标人脸图像的人脸语义分割图的编码、所述源人脸图像的身份编码,以及所述目标人脸图像的人脸关键点图的编码,注入所述目标人脸图像的属性编码,得到所述语义融合模块输出的换脸图像。

基于上述任一实施例,该装置还包括:

生成训练单元,用于将所述样本图像对输入至初始生成器中,得到所述初始生成器输出的重建图像对和换脸图像对;

对抗训练单元,用于将所述样本图像对及其换脸图像对中的各图像分别输入至所述人脸判别器中,得到所述人脸判别器的判别结果;

损失评估单元,用于基于所述样本图像对及其重建图像对、换脸图像对和判别结果,确定损失函数值;

参数更新单元,用于基于所述损失函数值更新所述初始生成器,得到所述人脸生成器。

基于上述任一实施例,所述生成训练单元用于:

将所述样本图像对输入至初始生成器中,由所述初始生成器分别提取所述样本图像对中两张样本图像的身份编码和属性编码,并基于同一样本图像的身份编码和属性编码重建图像,基于不同样本图像的身份编码和属性编码合成图像,得到所述初始生成器输出的重建图像对和换脸图像对。

基于上述任一实施例,所述损失评估单元用于:

基于身份保持损失值、属性保持损失值和重建损失值中的至少一种,以及对抗损失值,确定所述损失函数值;

其中,所述身份保持损失值是基于所述样本图像对和所述换脸图像对中各图像的身份编码确定的;

所述属性保持损失值是基于所述样本图像对和所述换脸图像对中各图像的属性编码确定的;

所述重建损失值是基于所述样本图像对和所述重建图像对确定的;

所述对抗损失值是基于所述判别结果确定的。

图9示例了一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)910、通信接口(Communications Interface)920、存储器(memory)930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行换脸方法,该方法包括:确定源人脸图像和目标人脸图像;将所述源人脸图像和目标人脸图像输入至人脸生成器中,得到所述人脸生成器输出的换脸图像;所述人脸生成器是基于样本图像对,与人脸判别器对抗训练得到的,所述人脸判别器用于对所述样本图像对及其样本换脸图像进行真伪判别,所述样本换脸图像是所述人脸生成器基于所述样本图像对进行换脸得到的。

此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的换脸方法,该方法包括:确定源人脸图像和目标人脸图像;将所述源人脸图像和目标人脸图像输入至人脸生成器中,得到所述人脸生成器输出的换脸图像;所述人脸生成器是基于样本图像对,与人脸判别器对抗训练得到的,所述人脸判别器用于对所述样本图像对及其样本换脸图像进行真伪判别,所述样本换脸图像是所述人脸生成器基于所述样本图像对进行换脸得到的。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的换脸方法,该方法包括:确定源人脸图像和目标人脸图像;将所述源人脸图像和目标人脸图像输入至人脸生成器中,得到所述人脸生成器输出的换脸图像;所述人脸生成器是基于样本图像对,与人脸判别器对抗训练得到的,所述人脸判别器用于对所述样本图像对及其样本换脸图像进行真伪判别,所述样本换脸图像是所述人脸生成器基于所述样本图像对进行换脸得到的。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 图像换脸方法、视频换脸方法、装置、设备和存储介质
  • 换脸方法、装置、电子设备和存储介质
技术分类

06120112683882