【技术实现步骤摘要】
一种基于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
中,经第一卷积层卷积后,输出得到向量将向量输入到第一残差模块中的第一分支后输出得到向量将向量输入到第一残差模块中的第二分支后输出得到向量将向量与向量相加得到向量将向量输入到第二残差模块中的第一分支后输出得到向量将向量输入到第二残差模块中的第二分支后输出得到向量将向量与向量相加得到向量将向量输入到第一上采样单元的残差模块第一个分支后输出得到向量将向量输入到第一上采样单元的残差模块第二个分支后输出得到向量将向量与向量相加得到向量将向量输入到第一上采样单元的上采样模块中,输出得到向量将向量输入到第二上采样单元的残差模块第一个分支后输出得到向量将向量输入到第二上采样单元的残差模块第二个分支后输出得到向量将向量与向量相加得到向量将向量输入到第二上采样单元的上采样模块中,输出得到向量将向量输入到第三上采样单元的...
【专利技术属性】
技术研发人员:舒明雷,曹伟,王英龙,董安明,高天雷,
申请(专利权)人:齐鲁工业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。