一种基于Transformer的deepfake生成方法技术

技术编号:35525794 阅读:29 留言:0更新日期:2022-11-09 14:47
一种基于Transformer的deepfake生成方法,通过将预处理得到的源身份人脸和目标身份人脸图片,放入基于Swin Transformer为主干网络的编码器,得到图片中的人脸整体编码特征,再将编码特征进行特征向量嵌入得到最终编码向量,再放入基于注意力的解码器生成特定的身份图片之前,将编码向量进行嵌出。之后嵌出向量通过基于注意力的解码器即可生成特定身份的高分辨图片。之后为了提升图片生成质量,使用图片块判别器进行更加大的区域感知。最后再利用人脸转化中的人脸扭曲和插值模块、肤色校正模块和人脸融合拼接模块生成最终的人脸交换结果。本专利不仅加强了编码和解码过程中人脸表情和身份信息的控制而且最终得到高分辨图片人脸交换的结果。图片人脸交换的结果。图片人脸交换的结果。

【技术实现步骤摘要】
一种基于Transformer的deepfake生成方法


[0001]本专利技术涉及视频或图片中人脸交换领域,具体涉及一种基于Transformer的deepfake生成方法。

技术介绍

[0002]随着深度学习技术的发展、自媒体的兴起而产生的大量人脸数据,deepfake技术随之产生。Deepfake生成是指给定任意两个人脸图片,选定一个为源身份人脸图片,另一个则为目标身份人脸图片。具体来说,是通过二者最终生成的人脸,应当包含源身份人脸的身份信息,同时保证与目标身份人脸的属性信息(表情、姿势和光照等等)保持一致。
[0003]之前的这些deepfake生成方法,都是基于卷积神经网络为主要框架的。人们设计了各种各样的卷积神经网络模块来满足换脸需求。从最开始的上采样、下采样模块到之后的身份信息模块、人脸属性分离模块以及其它模块,这些功能模块在提高deepfake生成效率上发挥了一定的作用,但是也存在一定的问题。首先,由于卷积神经网络自身的局限性,存在归纳偏置的问题,无法对图片的长距离关系进行把握。因此使用卷积神经网络设计的编码模块不可避免本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于Transformer的deepfake生成方法,其特征在于,包括:a)对包含源身份人脸的源视频V
s
进行人脸识别及人脸对齐操作,得到源身份人脸图片P
s
,对包含目标身份人脸的目标视频V
t
进行人脸识别及人脸对齐操作,得到目标身份人脸图片P
t
;b)建立网络模型,该网络模型由Swin Transformer编码器E、向量嵌入单元V
in
、源身份的向量嵌出单元V
outs
、目标身份的向量嵌出单元V
outt
、源身份的基于注意力的解码器G
s
、目标身份的基于注意力的解码器G
t
、源身份图片的判别器D
s
以及目标身份图片的判别器D
t
构成;c)将源身份人脸图片P
s
和目标身份人脸图片P
t
输入Swin Transformer编码器E中,输出得到源身份人脸图片的编码向量及目标身份人脸图片的编码向量d)将源身份人脸图片的编码向量及目标身份人脸图片的编码向量分别输入到向量嵌入单元V
in
中,输出得到源身份人脸图片的编码向量及目标身份人脸图片的编码向量e)将源身份人脸图片的编码向量输入到源身份的向量嵌出单元V
outs
中,输出得到源身份人脸图片的解码向量V
s
,将目标身份人脸图片的编码向量输入到目标身份的向量嵌出单元V
outt
中,输出得到目标身份人脸图片的解码向量V
t
;f)将源身份人脸图片的解码向量V
s
输入到源身份的基于注意力的解码器G
s
中,输出得到源身份人脸图片的重建高分辨率图片R
s
,将目标身份人脸图片的解码向量V
t
输入到目标身份的基于注意力的解码器G
t
中,输出得到目标身份人脸图片的重建高分辨率图片R
t
;g)将高分辨率图片R
s
输入到源身份图片的判别器D
s
中,采用PatchGAN判别器对高分辨率图片R
s
进行判别,得到判别结果将高分辨率图片R
t
输入到目标身份图片的判别器D
t
中,采用PatchGAN判别器对高分辨率图片R
t
进行判别,得到判别结果完成模型建立;h)通过损失函数l
all
利用Adam优化器迭代步骤c)至g)中模型的参数,得到优化后的模型;i)将目标身份人脸图片P
t
输入到步骤h)中优化后的模型内,依次经过优化后的模型的Swin Transformer编码器E、向量嵌入单元V
in
、源身份的向量嵌出单元V
outs
、源身份的基于注意力的解码器G
s
后输出得到高分辨率图片解码结果R
t2s
,利用dlib库对目标身份人脸图片P
t
检测分别得到目标身份人脸的人脸特征点f
k
、目标人脸图片P
tp
及目标人脸背景图片P
tc
;j)根据高分辨率图片解码结果R
t2s
、目标身份人脸的人脸特征点f
k
、目标人脸图片P
tp
及目标人脸背景图片P
tc
得到最终换脸结果R
output
。2.根据权利要求1所述的基于Transformer的deepfake生成方法,其特征在于:步骤a)中使用InsightFace工具对包含源身份人脸的源视频V
s
以及包含目标身份人脸的目标视频V
t
进行人脸识别及人脸对齐操作。3.根据权利要求1所述的基于Transformer的deepfake生成方法,其特征在于:步骤a)中源身份人脸图片P
s
及目标身份人脸图片P
t
的大小均设置为224*224。4.根据权利要求1所述的基于Transformer的deepfake生成方法,其特征在于,步骤c)
包括如下步骤:c

1)Swin Transformer编码器E依次由patch Partition模块、第一处理模块、第二处理模块、第三处理模块及第四处理模块构成;c

2)所述patch Partition模块由一个卷积核为4*4、步长为4的卷积层构成,将源身份人脸图片P
s
和目标身份人脸图片P
t
分别输入到patch Partition模块中,输出得到不重叠的源身份人脸图片的图片块P
spatch
及目标身份人脸图片的图片块P
tpatch
,将图片块P
spatch
及图片块P
tpatch
加上绝对位置编码,分别得到编码向量P
se
和编码向量P
te
;c

3)所述第一处理模块依次由Linear Embeding层、第一Swin Transformer block、第二Swin Transformer block构成,Linear Embeding层由一个卷积核为1*1、输出特征通道数为33的卷积层构成,第一Swin Transformer block与第二Swin Transformer block均由Swin Transformer网络中以移动窗口所构成的注意力计算单元构成,第一Swin Transformer block与第二Swin Transformer block的多头个数设置为3,将编码向量P
se
和编码向量P
te
输入到第一处理模块后,分别输出得到编码向量和编码向量c

4)所述第二处理模块依次由Swin Transformer网络中的patch merging层、第一Swin Transformer block、第二Swin Transformer block构成,第一Swin Transformer block与第二Swin Transformer block均由Swin Transformer网络中以移动窗口所构成的注意力计算单元构成,第一Swin Transformer block与第二Swin Transformer block的多头个数设置为6,将编码向量和编码向量输入到第二处理模块后,分别输出得到编码向量和编码向量c

5)所述第三处理模块依次由Swin Transformer网络中的patch merging层、第一Swin Transformer block、第二Swin Transformer block、第三Swin Transformer block、第四Swin Transformer block、第五Swin Transformer block、第六Swin Transformer block构成,第一Swin Transformer block、第二Swin Transformer block、第三Swin Transformer block、第四Swin Transformer block、第五Swin Transformer block、第六Swin Transformer block均由Swin Transformer网络中以移动窗口所构成的注意力计算单元构成,第一Swin Transformer block、第二Swin Transformer block、第三Swin Transformer block、第四Swin Transformer block、第五Swin Transformer block、第六Swin Transformer block的多头个数设置为12,将编码向量和编码向量输入到第三处理模块后,分别输出得到编码向量和编码向量c

6)所述第四处理模块依次由Swin Transformer网络中的patch merging层、第一Swin Transformer block、第二Swin Transformer block、第三Swin Transformer block、第四Swin Transformer block、第五Swin Transformer block、第六Swin Transformer block构成,第一Swin Transformer block、第二Swin Transformer block、第三Swin Transformer block、第四Swin Transformer block、第五Swin Transformer block、第六Swin Transformer block均由Swin Transformer网络中以移动窗口所构成的注意力计算单元构成,第一Swin Transformer block、第二Swin Transformer block、第三Swin Transformer block、第四Swin Transformer block、第五Swin Transformer block、第六
Swin Transformer block的多头个数设置为12,将编码向量和编码向量输入到第四处理模块后,分别输出得到编码向量和编码向量5.根据权利要求1所述的基于Transformer的deepfake生成方法,其特征在于:步骤d)中向量嵌入单元V
in
由一个卷积核为1*1、输出特征通道数为256的卷积层构成;步骤e)中源身份的向量嵌出单元V
outs
及目标身份的向量嵌出单元V
outt
均依次由两个卷积核为1*1、输出特征通道数为256的卷积层构成。6.根据权利要求1所述的基于Transformer的deepfake生成方法,其特征在于,步骤f)包括如下步骤:f

1)源身份的基于注意力的解码器G
s
和目标身份的基于注意力的解码器G
t
均依次由3*3卷积核的第一卷积层、第一残差模块、第二残差模块、第一上采样单元、第二上采样单元、第三上采样单元、第四上采样单元、第三残差模块、第四残差模块、第五残差模块、第一自注意力模块、第二自注意力模块、第三自注意力模块、第一上采样模块、第二上采样模块、第三上采样模块、第二卷积层构成;f

2)第一上采样单元、第二上采样单元、第三上采样单元、第四上采样单元均依次由残差模块和上采样模块构成,所述第一残差模块、第二残差模块、第三残差模块、第四残差模块、第五残差模块以及第一上采样单元、第二上采样单元、第三上采样单元、第四上采样单元中的残差模块均由第一分支和第二分支构成,所述第一分支依次由第一批标准化层、第一ReLU函数层、卷积核为3*3的第一卷积层、卷积核为2*2最大池化层、第二批标准化层、第二ReLU函数层及卷积核为3*3第二卷积层构成,所述第二分支依次由第三批标准化层、ReLU函数层及卷积核为3*3的第三卷积层构成,第一自注意力模块、第二自注意力模块、第三自注意力模块均由第一分支、第二分支构成,所述第一分支由归一化层、第一卷积层、第二卷积层、第三卷积层、第一乘法模块、Softmax函数层、第二乘法模块及第四卷积层构成;f

3)将源身份人脸图片的解码向量V
s
输入到源身份的基于注意力的解码器G
s
中,经第一卷积层卷积后,输出得到向量将向量输入到第一残差模块中的第一分支后输出得到向量将向量输入到第一残差模块中的第二分支后输出得到向量将向量与向量相加得到向量将向量输入到第二残差模块中的第一分支后输出得到向量将向量输入到第二残差模块中的第二分支后输出得到向量将向量与向量相加得到向量将向量输入到第一上采样单元的残差模块第一个分支后输出得到向量将向量输入到第一上采样单元的残差模块第二个分支后输出得到向量将向量与向量相加得到向量将向量输入到第一上采样单元的上采样模块中,输出得到向量将向量输入到第二上采样单元的残差模块第一个分支后输出得到向量将向量输入到第二上采样单元的残差模块第二个分支后输出得到向量将向量与向量相加得到向量将向量输入到第二上采样单元的上采样模块中,输出得到向量将向量输入到第三上采样单元的...

【专利技术属性】
技术研发人员:舒明雷曹伟王英龙董安明高天雷
申请(专利权)人:齐鲁工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1