跳转至

Arxiv2023 TriA-GAN 任意人物,任何地方,任何姿势的合成

Arxiv2023 | TriA-GAN:任意人物,任何地方,任何姿势的合成

解读:Freedom

Paper title: Synthesizing Anyone, Anywhere, in Any Pose

Paper: https://arxiv.org/pdf/2304.03164.pdf

Code: http://github.com/hukkelas/deep_privacy2

导读

野外人物合成是在给定任何图像中的任何区域的情况下合成一个人物的身体。一直以来,这项任务一直是具有挑战性且探索不足的,目前的方法难以处理极端姿势、遮挡物体和复杂背景。本文提出了 TriA-GAN,它一种关键点引导的 GAN,可以合成任何人、任何地方、任何给定姿势。该方法的关键是将 Projected GAN 与设计的训练策略相结合,其生成器的架构可以成功应对野外全身合成的挑战。该方法是第一个在没有 DensePose 注释的情况下生成几乎逼真的人类,同时有效处理极端姿势、复杂背景、局部身体和遮挡的方法。

实验结果表明,TriA-GAN 比以前的野外全身合成方法有显着改进,并且合成所需的条件信息更少(关键点与 DensePose)。此外, TriA-GAN 的潜在空间与标准的无条件编辑技术兼容,可以对生成的人物形象进行文本引导编辑。

TriA-GAN 可以在给定mask图像和一组稀疏关键点的情况下合成逼真的人物形象

简介

野外人物合成需要对图像中的缺少区域生成逼真的人物外表,这需要对人类的外表有着复杂的理解,并且将其根据不同的环境、姿势、区域形状等因素而变化。图像生成是一个比较成熟的研究领域,有许多更高层次的目标。但是野外人物生成仍是一项困难且未被充分探索的任务。一些方法侧重于更简单的任务,例如将已知外观转移到给定姿势、转移服装或全身合成到普通背景。它们通常忽视了野外合成的一些关键困难,如目标重叠、身体分离、复杂背景、极端姿势等。也有一些研究将这些困难的例子从数据集中去除掉,以此来提高生成质量。虽然一些方法的效果从视觉角度看上去良好,但在很大程度上依赖于DensePose 估计和复杂的场景。此外,生成的图像难以编辑。当前野外人物合成方法的一个关键问题是它们对 DensePose 注释的依赖。具有此类注释的可用数据集要么大小有限,要么自动注释。作者认为,这种依赖限制了这些方法,要么是通过对小数据集的过拟合,要么是通过 DensePose 引起的大量注释错误。本文探讨了以稀疏二维关键点为条件的全身合成,消除了对 DensePose 注释的需求。但是,这大大增加了建模的复杂性,因为生成模型现在必须推断出人物身体的纹理和结构。并且,当前的 GAN 很难在没有 DensePose 对应的情况下合成逼真的人物形象。本文的贡献解决了扩大 GAN 来处理没有使用 DensePose 的野外全身合成的挑战。该方法的关键是用Projected GAN 代替传统的 GAN 鉴别器,通过将 Projected GAN 与精心设计的训练策略相结合,可以生成具有视觉上良好的纹理的连贯物体。

贡献

本文的贡献主要有以下几点:

(1) 对生成器的结构进行更改,并提出一种新颖的掩码感知 patch 鉴别器,以提高训练时间和稳定性;

(2) 研究鉴别器使用的预训练特征网络的表征能力。以前使用的分类网络不太适合直接区分人物形象,本文将自监督特征网络组合用于鉴别器,显着提高了样本质量;

(3) 为 U-Net 架构提出了一种渐进式训练技术,能够轻松扩展到高分辨率和更大的模型尺寸。

Projected GANs

Projected GANs是一种基于投影方法的生成对抗网络模型,其目标是通过使生成样本落在给定数据流形上来提高生成器的性能。Projected GANs相比传统的GAN模型具有以下优点:

  • 生成器产生的样本分布更加集中,具有更好的多样性和逼真度;
  • 生成器更加稳定,不容易出现模式崩塌或梯度消失等问题;
  • 模型训练过程中可以利用额外的数据结构信息进行监督。

但是,Projected GANs也存在一些缺点:

  • 投影步骤需要耗费较高的计算成本,对于高维数据而言尤为明显;
  • 由于引入了额外的投影步骤,生成器的计算复杂度会增加,导致生成器的速度变慢;
  • 对于一些复杂的数据流形,Projected GANs可能无法准确地将生成样本投影到数据流形上,从而导致生成样本失真或失去多样性。

方法 Method

本文将野外人物合成制定为图像修复任务,目标是补全损坏图像的缺失区域,数学语言描述为:\overline{I}=I \odot M,表示 GT (I) 和缺失区域的掩码(M)进行逐像素相乘。模型架构如下:

首先生成器根据给定 17 个关键点进行缺失区域的填充。这里采用自适应实例归一化来根据 ω 调节生成器,其中 ω 是样式映射网络的输出。然后从 18×10 分辨率开始逐步训练,通过在编码器/解码器的开始/结束添加层来增加图像分辨率,所有生成器层在整个训练过程中都保持可训练状态。对于每个特征网络 F ,使用四个浅层次的“patch”鉴别器来操作其特征,这些特征具有不同的空间分辨率,并且鉴别器这些专注于对输入数据的不同“块”或“片段”(也就是所谓的“patch”)的特征进行分析和识别。其中每个特征都通过随机可微操作 (P1-P4) 进行投影。最后,根据给定的投影特征,每个鉴别器预测给定的 patch 是否对应于真实或假图像区域。

TriA-GAN架构

Stabilizing the Generator

在GAN模型中,生成器想努力跟上预训练的鉴别器,但是鉴别器在训练早期就打败了生成器,这使得采用投影 GAN 进行图像修复训练时会不稳定。现有方法对前 200k 个图像使用鉴别器模糊,增加这个预处理操作是有帮助的,它可以通过对图像进行模糊处理来降低这些细节信息对于判别器的影响,使得判别器更加关注图像的全局特征,从而提高泛化能力。所以当使用GAN进行图像修复时,需要对输入图片进行遮挡和噪声等处理,然后将其输入到生成器中进行修复。因为遮挡和噪声的存在,生成器产生的图像可能会出现模糊、失真等问题。为了判断生成器产生的修复结果是否真实有效,需要使用鉴别器对修复结果进行评估。然而,由于遮挡和噪声的存在,生成器输出的图像可能存在高频边缘信息,这些信息可能会被长时间的模糊处理操作过程所淹没,并且鉴别器可能无法识别它们。因此,作者在训练开始时对输入到鉴别器的图像进行模糊处理,并且在 4M 图像上进行模糊程度的线性淡化,即在前400万张图片中逐渐地降低模糊强度(将模糊操作逐步减小)。通过这样的方式,可以使得鉴别器在最初的训练阶段适应模糊的输入图像,增强其抵御噪声和干扰的能力,进而提高生成器的图像合成质量。

U-net 架构通过一个映射网络并遵循 StyleGAN2 的样式调制来注入潜在代码(z),具体而言,使用2 层的映射网络来将随机噪声z映射到生成器的各个模块中(如上图a部分所示),并通过风格调制来控制每个模块的风格和特征表示。。其次,作者对残差连接缩放了 1/\sqrt{2} ,对U-net 中的跳跃连接缩放了 1/\sqrt{3} 。最后,为了更好地训练模型,使用实例归一化代替权重解调。实例归一化是一种归一化方法,它可以在每个样本中独立地对每个通道进行标准化,从而增强了网络对输入数据中的不同特征的适应性,使得训练过程更加稳定。

Mask-Aware Patch Discriminator

Projected GANs使用了四个浅层鉴别器来对生成图像进行评价。这些鉴别器都针对输入特征的不同投影方式进行处理,并且具有不同的空间分辨率。相比之下,作者使用了局部判别器来评价生成的图像质量。与全局判别器不同的是,局部判别器将输入图像分割成多个小块,并在每个小块上进行分类,从而让模型更加关注细节和局部特征的恢复。因此,最小化损失函数发生了如下变化:

上式来重新定义了判别器的目标函数,通过将判别器的任务改为同时进行图像块分类和空间分割,避免由于全局类别分配而引起的图像块分类歧义,可以提供更加细致和空间一致的反馈给生成器。同时,这种方法引入了一个辅助任务,即空间分割,这有助于提高合成图像的质量和真实感。

Progressive Growing

渐进式训练是一种被广泛应用于提升GAN训练稳定性的技术,并且最近被重新引入到基于投影的GAN的无条件合成任务中。例如StyleGAN-XL模型就采用了渐进式训练的方法,即先在低分辨率图像上进行训练,再逐步向解码器的末尾添加新的层来增加分辨率,直到达到目标分辨率。在训练过程中,已经训练好的层和样式网络会被冻结,只有新增加的层会被训练。这种训练方法可以提高训练的稳定性和效率,并且可以使得生成器更好地学习到不同分辨率下的图像特征。但是向编码器前端添加新块会造成训练不稳定性的问题,作者引入了每个残差块的LayerScale,它可以控制新块对之前已训练好的层输入的影响。作者还引入了跳跃连接,帮助信息流直达生成器的输出。与StyleGAN-XL不同的是,作者没有冻结任何块,在整个训练过程中所有块都参与训练。这种改进的引入显著提高了最终生成图像的质量。

此外,作者在Config E进行改进,将编码器/解码器的每个分辨率上的残差块数量加倍。由于加入了更多的残差块,这个版本的生成器参数数量比之前的版本更多。尽管增加了模型复杂度,该模型仍然能够稳定地训练高分辨率图像,并且可以处理FDH数据集中最大的图像分辨率。

实验

作者在 FDH 数据集上进行实验。 FDH 数据集由 1.87M 训练图像和 30K 验证图像组成。每幅图像都包含一个人物作为主题,但同一幅图像可以包含多个人物。每个图像都用 2D 关键点注释、指示要修复的人的分割掩码以及像素到表面的对应关系(即 T 形 3D 身体的表面)。下面是一些实验结果~~

TriA-GAN 更擅长处理重叠的物体/人,与SG-GAN的定量对比情况如下:

一些可视化的对比结果:

结论 Conclusion

TriA-GAN 能够在给定一组稀疏关键点的情况下以任何理想的姿势和位置生成人物形象,从而在 FDH 数据集上实现人物合成的最新技术水平。该方法的关键是利用预训练的特征网络作为鉴别器。实验证明,精心设计的训练策略与适合区分人物的特征网络相结合可以显着提高合成质量。 它是第一个通过文本提示演示可靠的人物属性编辑的方法。

但是 TriA-GAN 也有一些限制,它在处理逼真的手/手指等场景中存在较大的困难。虽然SG-GAN通常可以在这些情况下改善TriA-GAN的结果,但只有当DensePose信息明确地描述了交互时才能有效。在其他情况下,例如遮挡住的小号演奏时,SG-GAN仍然存在困难。同时,TriA-GAN在对FDH数据集中出现频率较低的属性进行编辑时面临很大的挑战。例如,在图像中没有出现下半身的情况下,尝试找到用于修改“穿红裤子的人”的方向时会影响其他属性。作者对这个问题的原因提出了两种可能性,即编辑方法的局限性或TriA-GAN本身的限制。目前还没有定论。因此,未来的研究可以在这两个方面做探讨。


本文总阅读量