Stitch it in Time: GAN-Based Facial Editing of Real Videos

生成对抗网络在其潜空间内编码丰富语义的能力已被广泛用于面部图像编辑。然而,事实证明,在视频上复制他们的成功具有挑战性。高质量的面部视频集是缺乏的,在视频上存在一个需要克服的基本障碍——时间一致性。我们认为这种障碍很大程度上是人为的。源视频在时间上已经是连贯的,偏离这种状态的部分原因是在编辑思路中对各个组件的粗心处理。我们利用StyleGAN的自然对齐和神经网络学习低频函数的趋势,并证明它们提供了强一致的先验。我们利用这些见解,提出了一个视频中人脸语义编辑的框架,并证明了与目前最先进技术相比我们的框架具有显著改进。我们的方法产生了有意义的面部操作,保持了更高程度的时间一致性,并且可以应用于具有挑战性的、高质量的、会说话的头部视频(语音驱动头部动作的视频),目前的方法难以做到。

引言
      生成对抗网络(GANs)的出现带来了内容创作和操作领域的复兴,允许用户以直观的方式修改照片。特别是StyleGAN[21,22]的高度解纠缠潜空间已被广泛应用于面部图像的逼真编辑。然而,这些语义编辑工具大多局限于图像,因为视频的编辑强加了一个额外的挑战——保持时间一致性。对视频的任何操作都必须在所有视频帧中传播一致性。先前的工作建议通过训练GAN进行视频合成来解决这一挑战[36,47,51]。然而,由于缺乏高质量的视频数据集,以及额外的数据维度所产生的复杂性,视频GANs到目前为止还无法与单幅图像的质量相匹配。
      相反,我们建议通过在现成的、非时间的StyleGAN模型中使用通常的潜编辑技术来应对这一挑战。我们强调了一个关于视频编辑过程的基本假设:初始视频已经是一致的。与合成工作相反,我们不需要创造时间一致性,而只需要维持它。基于这种直觉,我们回顾了最近基于StyleGAN编辑思想的构建块,确定了可能出现时间不一致的点,并提出在许多情况下,这些不一致可以通过仔细选择工具来减轻。
      我们通过确定两种类型的时间不一致性开始我们的研究:局部-相邻帧之间的过渡不流畅,显示相当大的抖动,全局- GAN编辑过程中的不准确性,如身份的变化,随着时间的推移而增加。我们考虑最近提出的PTI [33];一种两步反演方法,首先找到一个“枢轴”——一个初始的潜码,可以通过生成器产生输入图像的近似值。然后,生成器的权重被微调,以便特定的“枢轴”代码可以更好地再现目标。PTI提供了强大的全局一致性,使身份与目标视频保持一致。然而,我们的调查显示,它在本地基准上表现不佳,并在编辑操作下产生不一致的反转。
      在这一点上,我们做了两个关键的观察:生成器是一个高度参数化的神经函数,已知它倾向于学习低频函数。因此,其输入潜码的微小变化可能只会导致生成图像的微小变化。此外,已有研究表明,基于风格的模型在微调下保持了令人难以置信的对齐,特别是在过渡到相邻域时[13,30,43]。因此,如果生成器对一组平滑变化的潜码进行一致的编辑,我们期望任何经过微调的生成器都类似地倾向于时间一致性。
      直觉考虑,我们认为PTI的局部不一致性出现在找到“枢轴”这个过程的第一步。更具体地说,采用的基于优化的反演是不一致的。高度相似的帧可以编码到潜空间的不同区域,即使是使用相同的初始化和随机噪声种子。另一方面,基于编码器的反演方法利用高度参数化的网络,因此也偏向于低频表征。因此,当编码器的输入只经历一个微小的变化时,例如在观察两个相邻的视频帧时,编码器可能会提供缓慢变化的潜特征。
      我们合并了两种方法:用于发现局部一致枢轴的编码器和用于促进全局一致性的生成器微调,并证明它们已经提供了强一致的先验。然而,对于编辑真实的视频来说,它们是不够的。由于StyleGAN 不能在整个帧上操作,我们需要将编辑过的裁切图像放回原始视频中。然而,反演和编辑方法通常会大量地破坏背景,使其结果难以融入原始帧。为此,我们设计了一种新颖的“还原-调优”操作,进一步调优生成器以提供空间一致的迁移。通过这样做,我们在保留编辑效果的同时实现了真正的混合。

图1   使用我们提出的思路的视频编辑。我们的框架可以成功地将一致的语义操作应用于具有挑战性的讲话头部视频,而不需要任何时间组件或损失。
      我们证明了我们提出的编辑思路可以无缝地将基于潜在语义的修改应用于真实视频中的人脸。虽然我们只使用非时间模型,但我们可以成功地编辑具有相当大的动作、复杂的背景、具有挑战性的讲话头部视频,这是目前的方法无法解决的问题。在图1中,我们展示了从使用我们的方法编辑的视频中提取的几帧。这些证明了我们改变野外场景并保持时间连贯性的能力。通过详细的消融研究,我们验证了每个建议的组件,并证明了其对真实性和一致性的贡献。所有的视频都可以作为我们的补充材料。

2、背景和相关工作
基于StyleGAN的编辑
      StyleGAN[21,22]采用基于风格的架构从语义丰富且高度结构化的潜空间生成高保真图像。值得注意的是,StyleGAN可以通过简单的潜码修改实现逼真的图像编辑。在此激励下,许多方法利用不同层面的监督方法,发现了有意义的潜方向。这些范围从全监督[3,10,14,34,37,38],如属性标签或面部3D先验,到全无监督和无样本方法[13,17,28,35,41,42,44]。

GAN反演方法
      然而,将这些编辑方法应用于真实图像需要首先找到给定图像对应的潜在表征,这一过程称为GAN反演[8,25,45,49,54]。有许多工作已经在以StyleGAN为背景下调研了反演方法。他们要么直接优化潜在向量以重现特定图像[1,2,6,15,33,46,56],要么在大量图像集合上训练有效的编码器[4,5,16,19,23,29,32,40,53]。通常,直接优化更准确,但编码器在推理方面更快。此外,由于编码器作为高参数神经函数估计器的性质,编码器显示出更平滑的行为,倾向于在相似的输入中产生更一致的结果。我们在工作中利用了这些好处。
      早期的反演方法在两个空间之一中生成编码:要么在StyleGAN的原生潜空间中,表示为W,要么在更有表现力的W+中,其中一个不同的潜码被分配给生成器的每个层。[40,56]已经证明W显示出更高程度的可编辑性-在这个空间中的潜码可以更容易地操纵,同时保持更高程度的真实性。另一方面,W提供了较差的表达能力,导致了与目标标识不一致的反演。Tov et al.[40]将此定义为扭曲-可编辑性权衡。他们认为,这两个方面可以通过设计一个编码器来平衡,该编码器预测W+中的编码,这些编码位于W附近。最近,Roich等人[33]证明了可以避开这种权衡。通过围绕初始反转编码(称为“pivot”)对生成器进行微调,他们实现了具有高可编辑性的最先进的重建。然而,单纯地将PTI应用于视频可能会导致时间不一致,因为不同的枢轴不一定是一致的。Xu等人提出了一种提高反演质量的不同方法,利用帧序列而不是单个图像。

使用StyleGAN的视频生成器
      虽然大多数工作都探索了StyleGAN在图像领域的使用,但最近的一些工作试图将其许多好处带入视频生成和操作领域。在生成方面,Skorokhodov等人[36]提出了一种基于样式的模型,该模型可以生成短的(例如3)连贯的帧序列。然而,他们的方法需要时间数据集,目前表现出较低的质量和不充分的数据。其他工作[12,39]训练第二个生成器为预训练的固定StyleGAN产生时间一致的潜码。他们的目标是解纠缠空间和时间信息。Tian等人[39]训练了一个基于时序LSTM的生成器。采用不同的方法,Fox等人[12]只使用一个视频。产生的潜在序列后来被投影到任意潜码上,从而产生随机主题的动画。然而,尽管提供了可靠的初始结果,这些方法并不能成功地可信地反演真实的视频或编辑它。

视频语义编辑
      许多方法建议对图像中的面部属性进行编辑[7,18,24,26,27]。然而,在帧级别应用这些通常会导致时间不一致,导致不真实的视频操作。为了克服这一挑战,人们提出了针对视频的方法。Duong等人[11]使用深度强化学习在视频序列中进行面部老化编辑。与我们的工作最接近的是,Yao等人[48]提出使用StyleGAN编辑真实视频,通过训练专用的潜码转换器来实现更多的解纠缠编辑。这些编辑应用了他们提出的思路的一部分,首先包括一个基于裁剪和对齐步骤的平滑光流,以减少抖动。然后,他们使用W+编码器[32]反转帧,使用专用转换器进行编辑,并使用泊松混合的分割掩码将它们缝合回原始视频。在我们的工作中,我们证明了通过构建高度一致的工具,我们可以在更具挑战性的设置中实现改进的编辑,并且使用更少的视觉材料——不需要任何流或基于时间的模块。


图2   我们完整的视频编辑思想包含6个步骤。(1)将视频分割成单独的帧。每一帧中的脸都是裁剪和对齐的。(2)使用预训练的e4e编码器,将每个裁剪的脸倒转嵌入预训练StyleGAN2模型的潜空间中。(3)使用PTI对所有视频帧并行进行微调,纠正初始反演中的不准确性并恢复全局一致性。(4)通过使用固定的方向和步长线性操作其枢轴潜码来编辑所有帧。(5)我们第二次微调生成器,以空间平滑的方式将背景和编辑过的人脸拼接在一起。(6)我们反转对齐步骤,将修改后的人脸粘贴到视频中。

图3   我们完整的编辑思路的可视化过程。左列显示了从源视频中提取的三帧。在接下来的列中,我们展示我们的思路在相同的三帧上的中间结果。从左到右:编码器反转步骤,PTI微调步骤,枢轴编辑步骤,最后是我们的拼接过程。当不应用我们的拼接过程时,我们使用基于分割掩码的混合过程[48]。特别注意颈部区域,在编辑步骤之后,它显示了大量的伪影,然后通过我们的缝合-微调方法消除了这些伪影。

3、方法
      给定一个真实的视频和一个语义潜在的编辑方向,我们的目标是生成一个编辑的视频。结果应保留原始帧的保真度,同时以时间一致的方式修改它们,实现有意义和现实的编辑。为此,我们提出了一个由六个部分组成思路:时间一致对齐、基于编码器的反转、生成器调优、编辑调优、拼接调优,以及最终将结果合并回原始帧。在下一节中,我们将详细描述每个核心步骤、用于实现它的工具以及每个选择背后的动机。我们整个思路的概述如图2所示。此外,图3提供了在编辑思路在不同阶段视频状态的可视化。

3.1、对齐
      我们使用预训练的StyleGAN2模型进行人脸编辑。然而,该模型是在FFHQ数据集上训练的,其中每张图像都经过预处理。特别是,每张图像都被裁剪并围绕面部对齐。因此,将图像成功地反转到GAN的潜空间需要类似的裁剪和对齐阶段。而这种预处理过程由离散步骤(例如裁剪)组成,这些步骤对提取的面部标志的确切位置非常敏感。这种敏感性会导致时间不一致的出现,因此我们的目标是降低它。受Fox等人[12]工作的启发,我们在标志上使用高斯低通滤波器。我们发现这种平滑足以克服由对齐步骤引起的任何不一致。

3.2、反演
      要编辑一个对齐的面,我们必须将它反转到GAN的潜空间中。我们使用PTI[33]来实现这一点,该方法首先发现一个“枢轴”潜码,该潜码可以在GAN更可编辑的区域大致重建输入图像,然后微调生成器,以便相同的枢轴编码将产生更准确的目标图像版本。PTI的目标是克服反演模型的扭曲性、可编辑性权衡,从而实现更准确但高度可编辑重建。我们认为,除了它最初的用途之外,PTI还可以帮助维持时间一致性。直观上,我们希望反转的原始视频本身在时间上是一致的。因此,如果我们能精确地再现每一帧,我们就保证有一个一致的反演。
      然而,在实践中,我们观察到PTI的编辑性能容易受到枢轴本身不一致的影响。这些表现为两种方式:首先,如果枢轴在潜空间中彼此相距很远,那么编辑就不那么一致了。例如,在潜空间的两个不同区域中编码的同一张脸,当潜码朝同一方向调整时,可能会长出不同的胡须。其次,如果PTI必须在反转中“修复”属性(例如缺少胡子),那么对属性的进一步编辑通常不会考虑这个修复。因此,如果属性在枢轴之间不一致(只在一些倒置的帧中出现胡子),那么PTI将只需要在一些帧中“修复”它,结果编辑将在这些帧中有所不同。
      我们提出,这两个缺陷都可以简单地通过用基于编码器的版本替换基于优化器的初始反转(即找到枢轴)的PTI来纠正,特别是e4e[40]。由于e4e是一个具有数百万个参数的深度神经网络,它天生倾向于学习低频表示[31]。我们期望这个属性将提供一个强大的平滑偏置,鼓励连续帧图像之间的任何相一致变化映射到一致变化的潜码中。在第4.2节中,我们分析了这个属性,并证明编码器的使用确实优于基于优化的反转。注意,此属性依赖于输入帧之间转换的平滑性,因此可以被不一致的对齐所破坏,从而引发第3.1节的变化。为了减少内存和时间需求,我们同时在所有枢轴潜码周围使用PTI(而不是为每一帧使用一个模型)。
      形式上,给定N帧源视频{ x i } i = 1 N \{x_i\}^N_{i=1}{x 
i
​    
 } 
i=1
N
​    
 ,我们将裁剪对齐的帧表示为{ c i } i = 1 N \{c_i\}^N_{i=1}{c 
i
​    
 } 
i=1
N
​    
 。我们首先使用e4e编码器E来获得它们的潜反转{ w i } i = 1 N = { E ( c i ) } i = 1 N \{w_i\}^N_{i=1} = \{E(c_i)\}^N_{i=1}{w 
i
​    
 } 
i=1
N
​    
 ={E(c 
i
​    
 )} 
i=1
N
​    
 。然后将这些潜向量用作PTI的“枢轴”。令r i = G ( w i ; θ ) r_i = G(w_i;θ)r 
i
​    
 =G(w 
i
​    
 ;θ)为隐码w i w_iw 
i
​    
 带有权重θ参数化的生成器G生成的图像, PTI目标定义为:
m i n θ 1 N ∑ i = 1 N ( L L P I P S ( c i , r i ) + λ L 2 P L L 2 ( c i , r i ) ) + λ R P L R . (1) \underset{θ}{min}\frac{1}{N}\sum^{N}_{i=1}(\mathcal L_{LPIPS}(c_i, r_i) + λ^P_{L2}\mathcal L_{L2}(c_i, r_i)) + λ^P_R\mathcal L_R. \tag{1}
θ
min
​    
  
N
1
​    
  
i=1

N
​    
 (L 
LPIPS
​    
 (c 
i
​    
 ,r 
i
​    
 )+λ 
L2
P
​    
 L 
L2
​    
 (c 
i
​    
 ,r 
i
​    
 ))+λ 
R
P
​    
 L 
R
​    
 .(1)
其中L L P I P S \mathcal L_{LPIPS}L 
LPIPS
​    
 是Zhang et al. [52]所提出的LPIPS感知损失。L L 2 \mathcal L_{L2}L 
L2
​    
 是像素级 MSE距离。L R \mathcal L_RL 
R
​    
 是 Roich et al. [33]所说的局部正则化。λ L 2 P 、 λ R P λ^P_{L2}、λ^P_Rλ 
L2
P
​    
 、λ 
R
P
​    
 是整个实验中的常量

3.3、编辑
      获得了一组时间一致的反演之后,我们现在开始编辑它们。我们证明了我们的方法可以很好地使用现成的线性编辑技术[28,34]。我们期望,由于StyleGAN本身倾向于低频表示(并进一步受到路径长度正则化的激励),它将对附近的潜码应用足够一致的编辑。换句话说,如果我们使用StyleGAN编辑时序平滑的枢轴,我们期望生成一个时序平滑的序列。正如我们稍后所论证的,这种期望与我们的实验结果一致。形式上,给定语义潜在编辑方向δ w δwδw,我们利用PTI-weights θ p θ_pθ 
p
​    
 来获得我们编辑的帧e i = G ( w i + δ w ; θ p ) e_i = G(w_i + δw;θ_p)e 
i
​    
 =G(w 
i
​    
 +δw;θ 
p
​    
 )。

3.4、拼接微调

图4  我们的拼接-调整方法的概述。我们首先使用修改过的枢轴编码生成编辑过的图像,然后使用现成的分割网络[50]对图像进行分割。分割掩码被扩张,创建一个边界区域。然后,我们对生成器进行微调,以便修改后的枢轴将提供一个图像(a)与人脸掩模(蓝色)内的原始编辑一致的图像,以及(b)与边界掩模(红色)内的原始背景一致的图像。我们使用微调生成器合成最终图像,并将其粘贴在扩张的掩模区域内(蓝色+红色)。

图7  与可选编辑思想的可视化比较。我们的方法保持了更高程度的时间一致性,产生了真实的编辑,并成功地减轻了混合诱导的伪影。

图9  定性地展示了我们组件的重要性。用优化步骤替换编码器会导致编辑一致性较差。没有PTI,身份随时间漂移,拼接性能下降。用基于掩模的混合方案替换拼接会产生视觉伪影,例如头发区域的尖锐过渡。我们的完整思路成功地避免了这些陷阱,并生成了一致的视频。
      作为最后一步,我们必须将编辑过的人脸e i e_ie 
i
​    
 注入到原始视频中。仅仅覆盖裁剪脸部的原始位置是不够的,因为编辑过程通常会导致在裁剪边界周围发生明显的背景变化。例如,图3和图9演示了在简单的缝合裁切块时出现伪影。先前的工作[48]通过使用从对齐步骤中检测到的标志提取的分割掩模并执行泊松混合来限制对面部区域的修改。然而,这样的拼接仍然容易在边界周围出现不一致,导致诸如轮廓出现伪迹等伪影(见图7)。我们建议通过一种受PTI启发的新型调谐技术来解决这一限制,称为拼接调谐。这种技术的概述如图4所示。对于每个编辑过的帧,我们在分割掩码的边缘指定一个边界。然后,我们围绕编辑过的主轴,以双重目标简单地微调生成器。首先,我们的目标是将边界恢复到反转前的值,即将边界完美地融合在原始框架中。其次,我们希望保留我们的编辑结果,通过要求在分割掩码覆盖的区域内与编辑帧相似。这个短暂的调整会话可以成功地恢复边界,并诱导平滑过渡到图像的中心,而不影响编辑的人脸。
      在形式上,我们首先使用现成的预训练的分割网络50]为所有帧生成分割掩码{ m i } i = 1 N \{m_i\}^N_{i=1}{m 
i
​    
 } 
i=1
N
​    
 。然后,我们对每一个进行扩散,以获得一组扩展掩码{ m i d } i = 1 N \{m^d_i\}^N_{i=1}{m 
i
d
​    
 } 
i=1
N
​    
 。边界定义为它们的元素异或运算符b i i = 1 N = { m i ⊕ m i d } i = 1 N {b_i}^N_{i=1} = \{m_i⊕m^d_i\}^N_{i=1}b 
i
​    
  
i=1
N
​    
 ={m 
i
​    
 ⊕m 
i
d
​    
 } 
i=1
N
​    
 。设s i = G ( w i + δ w ; θ s t ) s_i = G(w_i + δw;θ_{st})s 
i
​    
 =G(w 
i
​    
 +δw;θ 
st
​    
 )表示拼接调整过程的结果,我们的第一个目标是将边界与原始图像混合:
L b , i = L L 1 ( s i ⊙ b i , x i ⊙ b i ) , (2) \mathcal L_{b,i} = \mathcal L_{L1}(s_i \odot b_i ,xi \odot b_i), \tag{2}

b,i
​    
 =L 
L1
​    
 (s 
i
​    
 ⊙b 
i
​    
 ,xi⊙b 
i
​    
 ),(2)
其中⊙ \odot⊙表示对应元素相乘。第二个目标是保存编辑结果:
L m , i = L L 1 ( s i ⊙ m i , e i ⊙ m i ) . (3) \mathcal L_{m,i} = \mathcal L_{L1}(s_i\odot m_i, e_i\odot m_i). \tag{3}

m,i
​    
 =L 
L1
​    
 (s 
i
​    
 ⊙m 
i
​    
 ,e 
i
​    
 ⊙m 
i
​    
 ).(3)
这些损失项用于进一步优化每一帧的生成器权重θ s t θ_{st}θ 
st
​    
 :
m i n θ s t L b , i + λ m L m , i , (4) \underset{θ_{st}}{min} \mathcal L_{b,i} + λ_m\mathcal L_{m,i},\tag{4}
θ 
st
​    
 
min
​    
 L 
b,i
​    
 +λ 
m
​    
 L 
m,i
​    
 ,(4)
其中权重用PTI的权重θ p θ_pθ 
p
​    
 初始化, λ m λ_mλ 
m
​    
 在所有实验中均为常数。最后,我们执行反向对齐,并使用扩展掩模m i d i = 1 N {m^d_i}^N_{i=1}m 
i
d
​    
  
i=1
N
​    
 将每个帧s i s_is 
i
​    
 镶嵌到原始帧x i x_ix 
i
​    
 。高斯模糊可以进一步平滑掩模的边缘。

3.5、实验细节
      所有实验均设置λ L 2 P = 10 , λ R P = 0.1 , λ m = 0.01 λ^P_{L2} = 10, λ^P_R = 0.1, λ_m = 0.01λ 
L2
P
​    
 =10,λ 
R
P
​    
 =0.1,λ 
m
​    
 =0.01。当使用PTI调优模型时,我们使用3e−5的学习率并训练每个帧80次。当调整模型用于拼接时,我们将学习率提高到3e−4,并将训练迭代次数提高到每帧100次。对于所有其他实现细节,我们遵循PTI。

4、实验(略)
5、讨论
      提出了一种新的人脸视频语义编辑方法。通过使用光滑和一致的工具,我们证明了标准StyleGAN编辑技术可以很容易地应用于野外视频,而不影响时间一致性。
      虽然我们的方法在许多实际场景中工作得很好,但它仍然面临一些局限性。特别是,Style GAN对齐过程容易将部分头发(例如,辫子)留在裁剪区域之外。这些“外部”区域不进行任何语义操作,当试图修改头发长度或颜色等属性时,可能会导致不协调的过渡。在StyleGAN3[20]中研究的“纹理粘合”效果的形式出现了进一步的限制。使用每帧优化而不是潜空间插值可以显著降低这种影响。然而,在某些情况下,它仍然是可见的。我们希望随着StyleGAN3的反转和编辑工具的出现,它们可以与我们的方法结合起来,以获得无粘连的结果。
      也许令人惊讶的是,我们的框架可以生成连贯的视频,而不需要复杂的机制来直接执行时间一致性。这些结果表明,光谱和归纳偏差可以在保持一致性方面发挥关键作用,比试图通过损失项强制一致性产生显著优势。此外,我们强调了将编辑过的裁切块缝合到视频的挑战,并提出了一个指定的微调方案,可以避免与当前泊松混合方法相关的陷阱。展望未来,我们希望我们的方法可以通过具有时间意识的目标来改进,这些目标旨在补充它,而不是替代。例如,可以对输入视频上的反转编码器进行微调,以激发生成代码的更大一致性。
————————————————
版权声明:本文为CSDN博主「jjw_zyfx」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jjw_zyfx/article/details/128599534

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值