图像处理方法及装置、电子设备和计算机存储介质与流程

文档序号:21786540发布日期:2020-08-07 20:32阅读:229来源:国知局
图像处理方法及装置、电子设备和计算机存储介质与流程

本申请实施例涉及图像处理技术领域,尤其涉及一种图像处理方法及装置、电子设备和计算机存储介质。



背景技术:

在互联网社交、虚拟现实、影视制作等许多应用场景中,存在保持原始图像(例如图片或者视频帧)中的背景图像,而原始图像中人脸的脸部(也称为待替换脸部)替换为其他人物的脸部(也称为目标脸部)的需求。

随着深度学习技术的发展,换脸技术得到前所未有的进步,尤其是随着生成对抗网络技术的成熟,换脸可以达到更逼真的效果。然而,现有的换脸技术,通常需要通过针对换脸对象的大量图像进行模型训练,训练得到的模型也仅是适合换脸对象或相近脸型进行换脸,若要对其他人脸进行换脸,可需要重新训练模型,这种换脸技术不能适配不同的人脸,没有很好的通用性。



技术实现要素:

有鉴于此,本申请实施例提供一种图像处理方法及装置、电子设备和计算机存储介质,用于克服相关技术中的上述缺陷。

第一方面,本申请实施例提供了一种图像处理方法,包括:

将目标图像中的第一脸部的人脸身份参数替换为第二脸部的人脸身份参数,得到混合三维参数;

将所述混合三维参数进行二维投影,得到第一投影图像;

根据所述第一投影图像和所述目标图像生成待融合人脸图像;

将所述目标图像和所述待融合人脸图像进行融合,生成换脸图像;

第二方面,本申请实施例提供了一种图像处理装置,其特征在于,包括:

参数替换模块,用于将目标图像中的第一脸部的人脸身份参数替换为第二脸部的人脸身份参数,得到混合三维参数;

投影模块,用于将所述混合三维参数进行二维投影,得到第一投影图像;

图像生成模块,用于根据所述第一投影图像和所述目标图像生成待融合人脸图像;

融合模块,用于将所述目标图像和所述待融合人脸图像,生成换脸图像。

第三方面,本申请实施例提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有程序指令,所述处理器配置为调用所述存储器中的程序指令以执行如第一方面所述的图像处理方法。

第四方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被配置为在被处理器执行时使所述处理器执行时实现如第一方面所述的图像处理方法。

本申请实施例中,通过将目标图像中的第一脸部的人脸身份参数替换为第二脸部的人脸身份参数,得到混合三维参数,将混合三维参数进行二维投影得到第一投影图像,根据第一投影图像和目标图像生成待融合人脸图像,进而根据目标图像和待融合人脸图像,生成换脸图像。本技术方案中,通过在第一脸部的三维模型中进行人脸身份参数替换生成替换人脸,可以使替换人脸通过三维参数适配各种脸型,基于替换了人脸身份参数的混合三维参数得到的投影图像来生成待融合人脸图像,并结合目标图像完成换脸,提高换脸图像的真实性和自然性。

附图说明

后文将参照附图以示例性而非限制性的方式详细描述本申请实施例的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比值绘制的。附图中:

图1为本申请实施例提供的一种图像处理方法的流程图;

图2为本申请实施例提供的示例性第一脸部和对应第一脸部遮罩的示意图;

图3为本申请实施例提供的一种图像处理方法的流程图;

图4为本申请实施例提供的一种生成器结构的示意图;

图5为本申请实施例提供的另一种生成器结构的示意图;

图6为本申请实施例提供的一种投影生成网络训练方法的流程图;

图7为本申请实施例提供的示例性样本投影图像和对应投影遮罩的示意图;

图8为本申请实施例提供的一种判别器结构的示意图;

图9为本申请实施例提供的一种遮罩指导生成网络训练方法的流程图;

图10为本申请实施例提供的一种融合网络训练方法的流程图;

图11为本申请实施例提供的一种人脸分割网络训练方法的流程图;

图12为本申请实施例提供的一种图像处理装置的结构示意图;

图13为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

下面结合本申请实施例附图进一步说明本申请实施例具体实现。

实施例一

本申请实施例一提供一种图像处理方法,如图1所示,图1为本申请实施例提供的一种图像处理方法的流程图。该图像处理方法包括以下步骤:

s101、将目标图像中的第一脸部的人脸身份参数替换为第二脸部的人脸身份参数,得到混合三维参数。

本实施例中,第一脸部是目标图像中的待替换的原始人脸,第二脸部是要替换成的目标人脸,其可以来自于另一图像,在下文中,为了便于描述,将包含第二脸部的图像称为样本图像。其中,目标图像和样本图像可以是采用任何适当方式获取的图像,例如通过对视频进行解帧处理获取的图像,通过摄像头拍摄获取的图像或者通过选择或下载已有图像获取的图像,或者通过人脸识别方法在上述任意方式获取的图像中进行人脸检测得到的局部图像,本实施例对此不做限制。

人脸身份参数用于表示人脸的脸部特征,其包括人脸的轮廓形状、人脸的纹理、颜色、眼睛、鼻子、嘴巴的位置信息以及对应的特征信息等,其中,人脸的轮廓形状包含有遮挡物对应的区域,例如毛发对应的区域。本实施例中对获取人脸身份参数的方式不做限定,可以采用任何可用的三维参数提取方式,例如三维形变模型(3dmorphablemodels,3dmm)网络,提取人脸的三维参数,从人脸的三维参数中获取人脸身份参数。其中,三维参数包括人脸身份参数、表情参数和环境参数。人脸身份参数用于表示人脸的脸部特征,如前面描述的,例如包括人脸的轮廓形状、人脸的纹理、颜色、眼睛、鼻子、嘴巴的位置信息以及对应的特征信息等;表情参数用于表示人脸各部位的动作,例如包括微笑、眨眼等脸部表情;环境参数用于表示人脸的投影角度偏向和光照,例如包括例如扭头角度、低头角度等脸部姿态。

具体地,在本申请的一种实现方式中,可以采用三维形变模型(3dmorphablemodels,3dmm)网络从目标图像提取第一脸部的三维参数,并从第一脸部对应的三维参数中获取第一脸部的人脸身份参数。其中,第一脸部的三维参数包括第一脸部的人脸身份参数、第一脸部的表情参数和第一脸部的环境参数。

本实施例中,可以采用与从目标图像获取第一脸部的人脸身份参数相同的方式从样本图像获取第二脸部的人脸身份参数,此处不再赘述。在获取到第二脸部的人脸身份参数之后,将第一脸部的人脸身份参数替换为第二脸部的人脸身份参数,得到混合三维参数。其中,混合三维参数可以包括:第二脸部的人脸身份参数、第一脸部的表情参数和第一脸部的环境参数。

s102、根据混合三维参数进行二维投影,得到第一投影图像。

本实施例中,可以采用任何适当的投影方式对混合三维参数进行二维投影,得到第一投影图像。换句话说,可以采用任何适当的投影方式将混合三维参数投影到二维图像上,得到第一投影图像,例如,采用正交投影方式将混合三维参数正交投影到二维图像上。由于混合三维参数包括第二脸部的人脸身份参数、第一脸部的表情参数和第一脸部的环境参数,因此,第一投影图像中包含与第一脸部的表情和姿态相似但与第二脸部的脸部特征相似的脸部。例如,第一投影图像中的脸部的形状、纹理、颜色、眼睛、鼻子、嘴巴以及其相对位置等与第二脸部相似,但该脸部的表情和姿态与第一脸部相似。

s103、根据第一投影图像和目标图像生成待融合人脸图像。

例如,在本申请的一种具体实现方式中,步骤s104包括:利用三维投影生成网络,根据第一投影图像,得到第一生成脸部图像;根据第一生成脸部图像和目标图像,得到待融合人脸图像。

其中,三维投影生成网络是根据第二脸部训练得到的,用于对第一投影图像进行处理以生成与第一投影图像关联且与第二脸部更接近的图像。通过将第一投影图像输入三维投影生成网络,可以使第一生成脸部图像中的脸部特征更接近第二脸部的脸部特征,由此可以得到更真实自然的脸部图像。

在一些情况下,目标图像中的第一脸部上具有遮挡物,例如第一脸部的一部分被手部、毛发等遮挡,而第一生成脸部图像根据混合三维参数对应的第一投影生成图像而生成,未考虑遮挡物的影响,这会导致融合后的换脸图像的脸部信息有缺失,使得换脸图像不自然,生成效果较差。

为了避免在第一脸部有遮挡时造成融合后的换脸图像生成效果差,可选的,在本申请的一种实施例中,将目标图像输入人脸分割网络,获得第一脸部对应的第一脸部遮罩;相应地,根据第一生成脸部图像和目标图像,得到待融合人脸图像,包括:将第一生成脸部图像和第一脸部遮罩输入到遮罩指导生成网络,生成待融合人脸图像。

其中,第一脸部遮罩中的脸部区域与目标图像中第一脸部的脸部区域保持一致。

本实施例中,人脸分割网络用于将目标图像分割为两个区域:脸部区域和除脸部区域之外的其他区域,该其他区域包含脸部遮挡物对应的区域,例如第一脸部被手部和/或毛发等遮挡物遮挡的区域。换言之,通过将目标图像输入人脸分割网络得到的第一脸部遮罩中的脸部区域不包括脸部遮挡物对应的区域。可选的,在一种实现方式中,第一脸部遮罩可以是一个二值图,其具有两种像素值,第一脸部遮罩中脸部区域具有同一像素值,脸部区域之外的其他区域具有另一种像素值。结合图2,图2为本申请实施例提供的示例性第一脸部和对应第一脸部遮罩的示意图。如图2所示,左侧图像21代表包含第一脸部的目标图像。右侧图像22代表第一脸部遮罩,该第一脸部遮罩中的脸部区域与目标图像中第一脸部的脸部区域保持一致。

由于第一脸部遮罩中的脸部区域不包括脸部遮挡物对应的区域,通过将该第一脸部遮罩和第一生成脸部图像输入到遮罩指导生成网络,可以将第一生成脸部图像转换为考虑脸部遮挡信息的最终生成脸部图像。换言之,通过以第一脸部遮罩来指导生成人脸的形状,可以保留人脸的遮挡信息,有效避免由于脸部有遮挡造成最终生成的换脸图像生成效果差的问题。

s104、将目标图像和待融合人脸图像进行融合,生成换脸图像。

本实施例中,目标图像包含待融合的背景图像,待融合人脸图像包含待融合的脸部图像,通过将目标图像和待融合人脸图像进行融合,可以得到包含脸部图像和背景图像的换脸图像。

此处,列举一个示例来具体说明如何进行融合得到换脸图像,可选地,在本申请的一个实施例中,将目标图像和所述待融合人脸图像进行融合,得到换脸图像,包括:利用第一脸部遮罩在目标图像中确定待融合的背景图像,并在待融合人脸图像中确定待融合的脸部图像;将待融合的脸部图像与待融合的背景图像进行融合得到初始融合图像;将初始融合图像、目标图像和第一脸部遮罩输入到融合网络,生成换脸图像。通过将初始融合图像、目标图像和第一脸部遮罩输入到融合网络,生成换脸图像,使得得到的换脸图像可以在保持图像梯度一致性的前提下,过渡自然又可以保证生成换脸图像更接近与真实图像。

本申请实施例中,通过将目标图像中的第一脸部的人脸身份参数替换为第二脸部的人脸身份参数,得到混合三维参数,对混合三维参数进行二维投影得到第一投影图像,根据第一投影图像和目标图像生成待融合人脸图像,进而根据目标图像和待融合人脸图像,生成换脸图像。本技术方案中,通过在第一脸部的三维模型中进行人脸身份参数替换生成替换人脸,可以使替换人脸通过三维参数适配各种脸型,基于替换了人脸身份参数的混合三维参数得到的投影图像来生成待融合人脸图像,并结合目标图像完成换脸,提高换脸图像的真实性和自然性。

实施例二

本申请实施例二提供一种图像处理方法,如图3所示,图3为本申请实施例提供的一种图像处理方法的流程图。该图像处理方法包括以下步骤:

s301、从目标图像提取第一脸部的三维参数,并从样本图像提取第二脸部的三维参数。

本实施例中,可以采用任何可用的三维参数提取方式,例如三维形变模型(3dmorphablemodels,3dmm)网络,分别从目标图像提取第一脸部的三维参数,并且从样本图像提取第二脸部对应的三维参数,三维参数可以包括人脸身份参数、表情参数和环境参数。

s302、将目标图像中的第一脸部的人脸身份参数替换为第二脸部的人脸身份参数,得到混合三维参数。

其中,混合三维参数包括第二脸部的人脸身份参数和第一脸部的表情参数和环境参数。

s303、将混合三维参数进行二维投影,得到第一投影图像。

本实施例中,在得到混合三维参数之后,可以采用任何适当的投影方式,例如正交投影方式,将混合三维参数投影到二维图像上,得到第一投影图像。

s304、将第一投影图像输入到三维投影生成网络,生成第一生成脸部图像。

其中,三维投影生成网络用于对第一投影图像进行处理以生成与第一投影图像关联且与第二脸部更接近的图像。

本步骤中,使用训练得到的三维投影生成网络的生成器即可生成第一生成脸部图像。具体地,在此阶段,将第一投影图像传入训练得到的三维投影生成网络的生成器,一种可行的生成器的结构如图4所示。参照图4,在该生成器中,输入的第一投影图像会被传入一个图像编码层和图像解码层架构,其中图像编码层和图像解码层都由卷积层,池化层和激活函数层堆积而成,唯一的区别在于图像编码层做的是下采样,将第一投影图像压缩到低维空间,而图像解码层做的是上采样,将压缩后的特征图投影回原始空间,以在减少计算量的前提下提取第一投影图像的核心内容。经过图像编码层处理后的图像输入图像解码层,经过图像解码层的前向运算得到最后的结果图像,即第一生成脸部图像。

由于三维投影生成网络用于对第一投影图像进行处理以生成与第一投影图像关联且与第二脸部更接近的图像,因此通过将第一投影图像输入三维投影生成网络,可以使第一生成脸部图像更接近与第一脸部具有相同姿态和表情的第二脸部,由此可以得到更真实自然的脸部图像。

s305、将目标图像输入人脸分割网络,得到第一脸部遮罩。

其中,人脸分割网络可以将目标图像转换为一个二值图,在该二值图中与目标图像中的第一脸部对应的区域用一种像素值表示,其他区域用另一种像素表示,其中,其他区域包括第一脸部被手部和/或毛发等遮挡物遮挡的区域,换言之,通过将目标图像输入人脸分割网络得到的第一脸部遮罩中的脸部区域不包含遮挡物对应的区域,与目标图像中第一脸部的脸部区域保持一致。

s306、将第一生成脸部图像和第一脸部遮罩输入到遮罩指导生成网络,生成待融合人脸图像。

其中,遮罩指导生成网络用于将第一生成脸部图像转换为考虑脸部遮挡物的最终生成脸部图像,即待融合人脸图像。

在本步骤中,使用训练完成的遮罩指导生成网络的生成器部分即可生成待融合人脸图像。具体地在此阶段,分别获取第一生成脸部图像和第一脸部遮罩作为双输入被传入训练完成的投影生成网络的生成器,一种可行的生成器的结构如图5所示。参照图5,在该生成器中,输入的第一生成脸部图像和第一脸部遮罩分别会被传入一个图像编码层-图像解码层架构中的图像编码层,图像编码层分别提取第一生成脸部图像的特征和第一脸部遮罩的特征,在将第一生成脸部图像的特征和第一脸部遮罩的特征进行加和处理后输入到图像解码层,经过图像解码层的前向运算得到最终生成脸部图像,作为待融合人脸图像。由于第一脸部遮罩中的脸部区域不包括遮挡物对应的区域,通过以第一脸部遮罩指导生成人脸的形状,可以保留人脸的遮挡信息,由此有效避免由于脸部有遮挡造成的换脸图像生成效果差的问题。

s307、根据目标图像和待融合人脸图像进行融合,得到换脸图像。

其中,目标图像包含待融合的背景图像,待融合人脸图像包含待融合的脸部图像,因此,可以通过将待融合人脸图像中的脸部图像贴到目标图像上,得到初始融合图像。例如,可以通过以下方式将待融合人脸图像中的脸部图像贴到目标图像,

其中,i′blend表示初始融合图像,表示第一脸部遮罩,表示最终生成脸部图像,以及i′crop表示目标图像。

由此,可以使得初始融合图像保留了目标图像中的背景图像和待融合人脸图像中的脸部图像。

为了使得融合后的图像过渡自然,可选的,可以将初始融合图像、待融合人脸图像和第二脸部遮罩输入训练完成的融合网络,得到最终融合图像,即换脸图像。融合网络的生成器和投影生成网络的生成器的结果大体相同,区别仅在于生成器中卷积层、池化层等的具体略微不同,此处不再赘述。

本申请实施例中,通过在第一脸部的三维模型中进行人脸身份参数生成替换替换人脸,可以使替换人脸通过三维参数适配各种脸型,且通过投影生成网络使得生成脸部更加逼真。进一步地,引入人脸分割网络来指导生成人脸的形状,可以保留脸部的遮挡信息,有效避免由于脸部有遮挡造成的生成效果差。此外,通过融合网络既可以保证最终生成的换脸图像颜色过度自然,又可以保证生成图像更接近与真实图像。

实施例三

本实施例三提供了一种三维投影生成网络训练方法。本实施例基于对抗生成网络(generativeadversarialnetwork,gan)结构对三维投影生成网络训练方法进行说明,其中,该gan结构包括生成器和判别器,生成器需要和判别器一起通过生成对抗网络来训练得到。图7为本申请实施例三提供的三维投影生成网络训练方法的流程图,如图7所示,该三维投影生成网络的训练方法,包括以下步骤:

s601、从包含第二脸部的样本图像中,提取第二脸部对应的样本三维参数。

其中,第二脸部是要替换成的目标人脸。

本实施例中,可以采用任何可用的三维参数提取方式,例如三维形变模型(3dmorphablemodels,3dmm)网络,从样本图像提取第二脸部对应的样本三维参数,样本三维参数可以包括第二脸部的人脸身份参数、第二脸部的表情参数和第二脸部的环境参数。

s602、将样本三维参数进行二维投影,得到样本投影图像和样本投影图像对应的投影遮罩。

本实施例中,在提取到第二脸部对应的样本三维参数之后,可以采用任何适当的投影方式,例如正交投影方式,将样本三维参数投影到二维图像上,得到样本投影图像。

在得到样本投影图像之后,可以通过将样本投影图像中的人脸部分去除得到投影遮罩。投影遮罩的人脸区域与样本投影图像的人脸区域保持一致。投影遮罩可以是一个二值图,其中可以具有两种像素值,投影遮罩中人脸区域具有同一像素值,人脸区域之外的其他区域具有另一种像素值。结合图7,图7为本申请实施例提供的示例性样本投影图像和对应投影遮罩的示意图,如图7所示,左侧图像71代表样本投影图像,样本投影图像中人脸区域之外的其他区域具有同一像素值,显示为黑色。右侧图像72代表投影遮罩,投影遮罩中的人脸区域具有同一像素值,显示为白色,人脸区域之外的其他区域具有另一像素值,显示为黑色,投影遮罩的人脸区域与第一投影图像的人脸区域保持一致。

s603、利用投影遮罩对样本图像进行处理,获得第二脸部对应的第一参考图像。

本实施例中,可以利用投影遮罩将样本图像中除人脸区域之外的其他区域去除,得到第二脸部对应的第一参考图像,第一参考图像是包含真实的第二脸部的图像。通过使第一参考图像与样本投影图像来自同一样本图像,不改变输入投影的人脸身份参数,可以使三维投影生成网络的最终输出有参照。

s604、利用样本投影图像以及参考图像对三维投影生成网络进行训练。

本实施例中,三维投影生成网络包括第一生成器和第一判别器。第一生成器需要与第一判别器一起通过生成对抗式生成网络来训练得到。第一生成器用于生成与第一输入图像相关联的第一生成图像,以训练第一判别器,使第一判别器尽可能将第一生成图像判别为“真”。

具体地,在训练时,首先可以将样本投影图像通过第一生成器的输入层输入第一生成器,通过第一生成器的图像编码层进行特征提取,获取特征图,通过第一生成器的解码器对特征图进行上采样,将上采样后获得的图像作为第一生成器的生成图像并通过第一生成器的输出层输出。然后,将生成图像和样本投影图像或者第一参考图像和样本投影图像输入三维投影生成网络的第一判别器进行判别,例如,将生成图像和样本投影图像输入第一判别器时,判别结果为“假”,将第一参考图像和样本投影图像输入第一判别器时,判别结果为“真”。基于第一判别器的判别结果调整对抗式生成网络的训练参数。

在本申请的一种实施例中,第一生成器的结构如图5所示,其图像编码层和图像解码层都是由卷积层,池化层和激活函数层堆积而成,唯一的区别在于图像编码器做的是下采样,将原始图像压缩到低维空间,而图像解码器做的是上采样,将压缩后的特征图投影回原始空间,以在减少计算量的前提下提取图像的核心内容。

在本申请的一种实施例中,第一判别器如图8所示,第一判别器和第一生成器中的图像编码层结构类似,都是由下采样的卷积层、池化层和激活函数层堆积而成。第一判别器的最终层的输出通道数为1,输出一个取值范围在[0,1]的实测预测值d1(g1(i′proj),i′proj)或者其中,i′proj表示样本投影图像,表示第一参考图像,g1(iproj′)表示将样本投影图像输入三维投影生成网络的第一编码器得到的生成图像,d1(g1(i′proj),i′proj)和分别表示将生成图像和样本投影图像输入第一判别器时第一判别器的输出,以及将第一参考图像和样本投影图像输入第一判别器时第一判别器的输出。该实测预测值越大,则代表第一判别器认为生成图像是与样本投影图像关联的且是真实图像的概率越高,该实测预测值值越小,则代表第一判别器认为图像为生成图像的概率越高。

在本申请的一种实施例中,可以基于以下损失函数对三维投影生成网络进行训练:

l(g1,d1)=λganlgan+λpreclprec+λpixellpixel

其中,l(g1,d1)为三维投影生成网络的总的损失,lgan为三维投影生成网络本身的判别损失,lprec表示三维投影生成网络的生成图像与第一参考图像之间的感知损失,fi表示提取预训练好的图像识别和人脸识别网络的中间层特征,c、h和w表示图像的通道数,长和宽的值,lpixel表示三维投影生成网络的生成图像与第一参考图像的像素差,λgan,λprec,λpixel分别表示三种损失的权重。

最后的优化目标为使第一生成图像和第一参考图像在第一判别器处都有较高的预测值,同时第一生成图像与第一参考图像具有较小的感知损失,整个优化目标可写成极大极小值函数:

需要说明的是,使用样本投影图像和第一参考图像进行三维投影生成网络的训练是一个迭代循环过程,迭代循环中的每一次训练都可参照本实施例实现。另外,在实际训练中,通常使用大量的样本投影图像和第一参考图像进行三维投影生成网络的训练,为了增加训练的数据量,提高模型的泛化能力,可以通过对样本投影图像和第一参考图像相应处理,得到更多的训练数据,以用于对三维投影生成网络的训练。此处,列举两种实现方式进行举例说明。

可选地,在本申请的一种实现方式中,对样本投影图像中的脸部区域进行随机腐蚀,获得多个腐蚀后的样本投影图像,以及对第一参考图像的脸部区域基于与样本投影图像相同的腐蚀比例进行腐蚀,获得多个腐蚀后的第一参考图像。其中,腐蚀处理可以使样本投影图像和第一参考图像中的脸部区域变小。由于腐蚀是随机的,因此可以得到多个腐蚀后的样本投影图像和对应的第一参考图像,以用于对三维投影生成网络进行训练。

可选的,在本申请的另一种实现方式中,对样本投影图像的大小进行随机变换,获得多个变换后的样本投影图像,以及对第一参考图像的大小基于与所述样本投影图像相同的变换比例进行变换,获得多个变换后的第一参考图像。其中,变换处理可以改变样本投影图像整体的大小。由于变换是随机的,因此可以得到多个变换后的样本投影图像和对应的第一参考图像,以用于对三维投影生成网络进行训练。

需要说明的是,在获取更多的训练数据时,上述两种实现方式可以单独使用,也可以组合使用,本实施例对此不作限定。

本实施例中,通过根据具有第二脸部的样本图像得到样本投影图像和第一参考图像进行三维投影生成网络的训练,可以使三维投影生成网络生成的人脸图像更接近样本图像中的第二脸部,更加自然逼真。同时,为了使三维投影生成网络可以适配不同形状人脸,对样本投影图像和第一参考图像对应地进行随机腐蚀和/或随机变换,利用腐蚀后的样本投影图像和对应的第一参考图像,和/或变换后的样本投影图像和对应的第一参考图像对三维投影生成网络进行训练,使得训练得到的三维投影生成网络更具鲁棒性,保证对不同脸型数据的生成效果。

实施例四

本申请实施例四提供了一种遮罩指导生成网络训练方法。本实施例基于gan结构对遮罩指导生成网络训练方法进行说明,其中,该gan结构包括生成器和判别器,生成器需要和判别器一起通过生成对抗网络来训练得到。图9为本申请实施例四提供的遮罩指导生成网络训练方法的流程图,如图9所示,该遮罩指导生成网络训练方法,可以包括以下步骤:

s901、将包含第二脸部的样本图像输入人脸分割网络,得到第二脸部对应的第二脸部遮罩。

本实施例中,人脸分割网络用于将样本图像分割为两个区域:脸部区域和除脸部区域之外的其他区域。该脸部区域是不包含脸部遮挡区域,例如脸部被手部和/或毛发等遮挡物遮挡的区域。第二脸部遮罩的脸部区域与样本图像中的脸部区域保持一致。与实施例提供的第一脸部遮罩类似,第二脸部遮罩可以是一个二值图,其中具有两种像素值,第二脸部遮罩中人脸区域具有同一像素值,人脸区域之外的区域具有另一种像素值。例如,第二脸部遮罩中人脸区域的像素值为0,其他部分的像素值为1。

s902、将样本投影图像输入三维投影生成网络,得到样本脸部生成图像。

其中,样本投影图像是对第二脸部对应的样本三维参数进行二维投影得到的。

具体地,可以采用任何可用的三维参数提取方式,例如三维形变模型(3dmorphablemodels,3dmm)网络,从样本图像提取第二脸部对应的样本三维参数,样本三维参数可以包括第二脸部的人脸身份参数、第二脸部的表情参数和第二脸部的环境参数。在提取到第二脸部对应的样本三维参数之后,可以采用任何适当的投影方式,例如正交投影方式,将样本三维参数投影到二维图像上,得到样本投影图像。将样本投影图像输入采用实施例三提供的三维投影生成网络的训练方法训练得到的三维投影生成网络中,得到样本脸部生成图像。

s903、利用第二脸部遮罩对样本图像进行处理,得到第二参考图像。

其中,第二参考图像为样本图像中的第二脸部。

本实施例中,可以利用第二脸部遮罩从样本图像中抠取第二脸部,作为第二参考图像。

s904、利用第二脸部遮罩、样本脸部生成图像、第二参考图像对遮罩指导生成网络进行训练。

本实施例中,遮罩指导生成网络包括第二生成器和第二判别器,第二生成器需要与第二判别器一起通过生成对抗生成网络来训练得到。本实施例中第二判别器的网络结构与实施例三中第一判别器的网络结构完全相同,本实施例中遮罩指导生成网络的损失函数与实施例三中投影生成网络的损失函数完全相同,均为gan本身的判别损失、感知损失和像素损失的线性加和。为了避免重复,此处不再赘述。

需要说明的是,使用第二脸部遮罩、样本脸部生成图像、第二参考图像对遮罩指导生成网络进行训练是一个迭代循环过程,迭代循环中的每一次训练都可参照本实施例实现。另外,在实际训练中,通常使用大量的第二脸部遮罩、样本脸部生成图像、第二参考图像进行遮罩指导生成网络的训练。为了增加训练的数据量,提高模型的泛化能力和鲁棒性,可以通过对样本图像和样本生成脸部图像进行处理,得到更多的训练数据,以用于对遮罩指导生成网络进行训练。此处列举两种实现方式进行举例说明。

可选的,在本申请的一种实现方式中,可以通过对样本图像的大小进行随机变换,并将变换后的样本图像输入人脸分割网络,得到变换后的第二脸部遮罩。变换处理可以改变第二脸部遮罩整体的大小,变换后的第二脸部遮罩的脸部区域与变换后的样本图像的脸部区域保持一致。由于变换是随机的,由此可以得到多个变换后的第二脸部遮罩,以用于遮罩指导生成网络的训练。

可选的,在本申请的另一种实现方式中,可以通过对将样本生成脸部图像的脸部区域进行随机腐蚀,获得多个腐蚀后的样本生成脸部图像。其中,腐蚀处理可以使样本生成脸部图像中的脸部区域变小。由于腐蚀是随机的,因此,可以得到多个腐蚀后的样本生成脸部图像,以用于遮罩指导生成网络的训练。

需要说明的是,在获取更多的训练数据时,上述两种实现方式可以单独使用或组合使用,本实施例对此不作限定。

本实施例中,通过引入人脸分割网络,根据样本图像得到第二脸部遮罩指导生成脸部的形状,可以保留脸部的遮挡信息,有效避免由于脸部有遮挡造成的生成效果差的问题。

实施例五

本申请实施例五提供了一种融合网络训练方法。本实施例基于gan结构对融合网络训练方法进行说明,其中,该gan结构包括生成器和判别器,生成器需要和判别器一起通过生成对抗网络来训练得到。图10为本申请实施例三提供的融合网络训练方法的流程图,如图10所示,该融合网络训练方法,包括以下步骤:

s1001、将包含第二脸部的样本图像输入人脸分割网络,得到第二脸部对应的第二脸部遮罩。

本实施例中,步骤s1001的实现原理与实施例四中步骤s901的实现原理相同,此处不再赘述。

s1002、利用第二脸部遮罩在样本图像中确定待融合的样本背景图像,在遮罩指导生成网络输出的图像中确定待融合的样本脸部图像,并将待融合的样本背景图像和待融合的样本脸部图像进行融合,生成样本初始融合图像。

本实施例中,遮罩指导生成网络输出的图像是从包括第二脸部的样本图像提取第二脸部对应的样本三维参数,将样本三维参数进行二维投影得到样本投影图像,将样本投影图像输入三维投影生成网络得到的样本脸部生成图像,并将样本脸部生成图像和第二脸部遮罩输入遮罩指导生成网络生成的图像。

本实施例对获取样本脸部生成图像方式不做限定。例如,在第二脸部遮罩的人脸区域的像素值为0,其他部分的像素值为1。可以通过将第二脸部遮罩与样本图像的对应像素值相乘来确定待融合的样本背景图像,并且将第二脸部遮罩的像素值取反与遮罩指导生成网络输入的图像的对象像素相乘来确定待融合的样本脸部图像,进而将待融合的样本背景图像和待融合的样本脸部图像的对应像素值求和,得到样本初始融合图像。

s1003、利用样本图像、第二脸部遮罩、样本初始融合图像和第三参考图像对融合网络进行训练,第三参考图像为自定义的保留待融合的样本脸部图像和待融合的样本背景图像的梯度的图像。

本实施例中,融合网络包括第三生成器和第三判别器,第三生成器需要与第三判别器一起通过生成对抗生成网络来训练得到。本实施例中,生成器的网络结构与实施例三中第一生成器的网络结构大体上相同,仅在卷积层、池化层等具体层数上略微不同。第三判别器的结构与实施例三中第一判别器结构完全相同,均是判断生成图像与真实图像的真假。本实施例对抗生成网络的损失函数与实施例三中对抗生成网络的损失函数相同,均为gan本身的判别损失、感知损失和像素损失的线性加和。为了避免重复,此处不再赘述。

可选的,在本申请的一种实现方式中,第三参考图像为:

其中,表示梯度运算符,it表示第四输入图像,iblend表示第四输入图像,icrop表示样本图像,表示第二脸部遮罩,i,j分别表示在图像中的位置,即第i行第j列,icrop(i,j)表示icrop中第i行第j列的像素值,表示第中i行第j的像素值。

第三参考图像it保留了遮罩指导生成网络生成的图像中的人脸部分和样本图像的背景部分的梯度,且像素值与样本图像的背景部分的像素值保持一致,使生成图像颜色过度自然。

本实施例训练得到的融合网络,由于第三参考图像可以保留遮罩脸部生成图像中的人脸部分和样本图像的背景部分的梯度,且像素值与样本图像的背景部分的像素值保持一致,使生成图像颜色过度自然。同时,由于融合网络使用了gan本身的判别损失、感知损失和像素损失的线性加和作为损失函数,可以在保证生成图像颜色过渡自然的同时,还可以保证生成图像与真实图像保持一致,避免出现多个眉毛情况。

实施例六

本申请实施例六提供了一种人脸分割网络训练方法。图11为本申请实施例六提供的人脸分割训练方法的流程图,如图11所示,该人脸分割网络训练方法,包括以下步骤:

s1101、获取训练样本图像和对应的第四参考图像。

其中,训练样本图像可以选择脸部具有遮挡的人脸分割数据集。第四参考图像是与训练样本图像中的第三脸部对应的第三脸部遮罩。

第四参考图像可以表示为与训练样本图像的大小相同的二值图,在该二值图中与训练样本图像中的第三脸部对应的区域具有同一像素值,该脸部区域之外的其他部分具有另一像素值。例如,去除脸部遮挡区域的脸部区域的像素值为0,其他部分的像素值为1。其中,该其他区域包含脸部遮挡物对应的区域,例如第一脸部被手部和/或毛发等遮挡物遮挡的区域,该脸部区域不包含脸部遮挡物对应的区域。

s1102、利用训练样本图像和对应的第四参考图像对人脸分割网络进行训练。

本实施例中的人脸分割网络的结构与实施例三中投影生成网络的结构大体上相同,仅在卷积层的层数、激活函数等细节方面存在差异,并且人脸分割网络没有判别器。人脸分割网络结构设计可以参考实施例三中投影生成网络的设计,此处不再赘述。

需要说明是,由于当前没有去除人脸遮挡物的人脸分割数据集,在初始训练时,可以从人脸分割数据集中选择一部分人脸分割数据作为训练样本图像,通过人工标注方式对每个训练样本图像进行处理得到与每个训练样本图像对应的第四参考图像。利用训练样本图像和得到的第四参考图像进行人脸分割网络训练,得到初始人脸分割网络。然后,可以从人脸分割数据集中选择更多的人脸分割数据作为新的训练样本图像,利用初始人脸分割网络对新的训练样本图像进行分割处理,并通过人工对分割处理结果进行微调得到与新的训练样本图像对应的第四参考图像,进而得到大规模的人脸分割数据集,用于人脸分割网络训练,得到最终的人脸分割网络,通过这种方式可以在减轻标注难度的同时提高模型训练精度。

本实施例中的人脸分割网络的结构与实施例三种投影生成网络的结构大体上相同,仅在卷积层的层数、激活函数等细节方面存在差异,并且本实施例中的人脸分割网络没有判别器。

实施例七

本申请实施例七提供了一种图像处理装置。图12为本申请实施例七提供的一种图像处理装置的结构示意图,如图12所示,该图像处理装置可以包括:

参数替换模块121,用于将目标图像中的第一脸部的人脸身份参数替换为第二脸部的人脸身份参数,得到混合三维参数;

投影模块122,用于将混合三维参数进行二维投影,得到第一投影图像;

图像生成模块123,用于根据第一投影图像和目标图像生成待融合人脸图像;

图像融合模块124,用于将目标图像和待融合人脸图像进行融合,生成换脸图像。

本实施例提供的图像处理装置用于实现前述多个方法实施例中相应的图像处理方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的图像处理装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。

需要指出,根据实施的需要,可将本申请实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本申请实施例的目的。

实施例八

图13为本申请实施例八提供的一种电子设备的结构示意图,本实施例提供的电子设备,用于执行本申请任意方法实施例提供的图像处理方法。如图13所示,本实施例提供的电子设备1300,可以包括:处理器1301和存储器1302,存储器1302中存储有程序指令,处理器1301配置为调用存储器1302中的程序指令以执行本申请任意方法实施例提供的图像处理方法。

处理器1301可以包括中央处理器(cpu,单核或者多核),图形处理器(gpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器,或者多个用于控制程序执行的集成电路。

存储器1302可以包括只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以包括电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1302可以是独立设置的,也可以和处理器1301集成在一起。

在具体实现中,作为一种实施例,处理器1301可以包括一个或多个cpu。在具体实现中,作为一种实施例,上述电子设备可以包括多个处理器。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。

电子设备的具体执行过程可参见本申请任意方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。

实施例十三

本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请任意方法实施例提供的图像处理方法。

本领域技术人员应明白,本公开的实施例可提供为方法、装置(设备)、或计算机程序产品。上述根据本申请实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如cdrom、ram、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如asic或fpga)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,ram、rom、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的图像处理方法。此外,当通用计算机访问用于实现在此示出的图像处理方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的图像处理方法的专用计算机。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。

以上实施方式仅用于说明本申请实施例,而并非对本申请实施例的限制,有关技术领域的普通技术人员,在不脱离本申请实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本申请实施例的范畴,本申请实施例的专利保护范围应由权利要求限定。

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