Image Manipulation:StyleGAN2 Distillation for Feed-forward Image Manipulation(2020)

StyleGAN2 Distillation for Feed-forward Image Manipulation
stylegan2-distillation

Image Manipulation:StyleGAN2 Distillation for Feed-forward Image Manipulation(2020)_第1张图片

摘要

StyleGAN2是用于生成逼真的图像的先进网络。 此外,还对它进行了明确训练,使其在潜在空间中具有纠缠的方向,从而可以通过更改潜在因子来进行有效的图像处理。编辑现有图像需要将给定图像嵌入到StyleGAN2的潜在空间中。通过反向传播进行的潜在代码优化通常用于对真实世界图像进行定性嵌入,尽管对于许多应用程序来说,这样做的速度太慢了。我们提出了一种将StyleGAN2的特定图像处理提炼成以配对方式训练的图像到图像网络的方法。生成的管道是对现有GAN的替代方案,它是针对未配对数据进行训练的。我们提供人脸转换的结果:性别互换,衰老/复兴,样式转换和图像变形。我们证明,在这些特定任务中,使用我们的方法生成的质量可与StyleGAN2反向传播和最新技术相媲美。

介绍

生成对抗网络(GAN)[18]在图像处理方面创造了广泛的机会。公众从许多可以以某种方式改变面孔的应用程序中熟悉它们:变老/变年轻,加眼镜,胡须等。

可以执行这种转换前馈的网络结构有两种类型:在成对或不成对的数据集上训练的神经网络。实际上,仅使用未配对的数据集。 那里使用的方法基于周期一致性[61]。 后续研究[24,11,12]的最大分辨率为256x256。同时,现有的配对方法(例如pix2pixHD [55]或SPADE [42])支持高达2048x1024的分辨率。 但是为诸如年龄操纵之类的任务收集成对的数据集非常困难,甚至不可能。对于每个人,这样的数据集都必须包含不同年龄的照片,并具有相同的头部位置和面部表情。存在此类数据集的接近示例,例如 CACD [8],AgeDB [40],尽管具有不同的表情和面部朝向。据我们所知,它们从未被用于以配对模式训练神经网络。

如果我们解决了有关数据集生成的两个已知问题,则可以通过创建合成的配对数据集来克服这些障碍:外观差距[22]和内容差距[28]。在这里,可以使用无条件的生成方法,例如StyleGAN [30]。根据低FID结果,StyleGAN生成的图像质量接近真实世界,并且分布接近真实世界。因此,该生成模型的输出可以很好地替代现实世界的图像。其潜在空间的属性允许创建在特定参数上不同的图像集。在StyleGAN [31]的第二个版本中增加了路径长度正则化(在[30]中作为质量的度量标准引入),使得潜在空间甚至更适合于操作。

潜在空间中的基本操作对应于特定的图像操作操作。 在潜在空间中添加向量,线性插值和交叉分别导致表达式传递,变形和样式传递。两种版本的StyleGAN体系结构的显着特点是,潜在代码在网络的不同层上多次应用。更改某些图层的矢量将导致所生成图像的比例不同。作者将空间分辨率在生成过程中分为粗略,中度和精细。 可以通过一个人使用一个人的代码,而另一个人使用另一个人的代码来合并两个人。

对于具有已知嵌入的图像,可以轻松执行上述操作。对于许多娱乐目的,至关重要的是动态地操纵一些现有的现实世界图像,例如 编辑刚拍摄的照片。不幸的是,在文献中描述的所有在潜在空间中成功搜索的情况下,都使用了反向传播方法[1,2,16,31,47]。前馈仅被报告为潜在代码优化的初始状态[5]。缓慢的推理使使用StyleGAN2进行图像处理的应用非常有限:它在数据中心的成本很高,并且几乎不可能在设备上运行。但是,有一些反向传播在生产中运行的示例,例如 [48]。

在本文中,我们考虑了机会[21,4],对在FFHQ数据集上训练的StyleGAN2生成器进行特殊的图像处理。通过蒸馏,可以从StyleGAN提取有关面部外观及其更改方式(例如,衰老,性别互换)的信息,以实现图像到图像的网络。我们提出了一种生成配对数据集,然后在收集到的数据上训练“学生”网络的方法。该方法非常灵活,并且不限于特定的图像到图像模型。

尽管生成的图像到图像网络仅在生成的样本上进行训练,但我们证明它在真实世界图像上的表现与StyleGAN反向传播以及在未配对数据上训练的当前最新算法相当。
我们的贡献总结如下:

  • 我们创建配对图像的合成数据集,以解决人脸图像处理的多项任务:性别互换,衰老/复兴,样式转换和脸部变形;
  • 我们表明,有可能在合成数据上训练图像到图像网络,然后将其应用于现实世界图像;
  • 我们研究在合成数据集上训练的图像到图像网络的定性和定量性能;
  • 我们表明,在性别互换任务中,我们的方法要优于现有方法。

我们发布所有收集的配对数据集,以实现可重复性和未来研究:https://github.com/EvgenyKashin/stylegan2-distillation。

相关工作

无条件图像生成

随着ProgressiveGAN [29]和BigGAN [6]的成功,StyleGAN [30]成为了最先进的图像生成模型。之所以能够实现这一目标,是因为重新考虑了生成器体系结构,并借鉴了样式传递网络的方法:映射网络和AdaIN [23],恒定输入,噪声添加和混合正则化。StyleGAN的下一版本– StyleGAN2 [31],通过修改AdaIN摆脱了第一版的伪像,并通过使用感知路径长度作为正则化函数来改进了解缠结。

映射网络是StyleGAN的关键组件,可将潜在空间 Z Z Z转换为纠缠程度较小的中间潜在空间 W W W。代替从正态分布采样的实际潜在 z ∈ Z z∈Z zZ,将映射网络 f : Z → W f:Z→W fZW产生的 w ∈ W w∈W wW馈入AdaIN。也可以从扩展空间 W + W + W+采样矢量,扩展空间 W + W + W+ W W W的多个独立采样组成,每个生成器层一个。在不同的层上改变 w w w将以不同的比例改变所生成图片的细节。

潜在代码操纵

最近显示[17,27],在生成器的潜在空间中的线性操作允许在各种领域和各种GAN架构中成功进行图像操作。在GANalyze [17]中,注意力集中在使用MemNet [32]作为“评估者”网络的BigGAN [6]潜在空间中搜索可解释的方向。Jahanian等 [27]表明,在潜在空间中行走会导致不同模型架构(BigGAN,StyleGAN和DCGAN)中可解释的变化[43]。

为了在StyleGAN的潜在空间中处理真实图像,需要在其中找到其嵌入。在[1,2,16,47]中描述了通过反向传播优化来搜索中间潜在空间中嵌入的方法。作者使用非平凡的损失函数来找到接近且在视觉上都不错的图像,并表明嵌入在扩展空间 W + W + W+中更合适。Gabbay等文献[16]表明,StyleGAN生成器可以先用作通用图像。Shen等 [47]显示了为PGGAN [29]和StyleGAN操纵生成人的外观的机会,包括年龄,性别,眼镜和姿势。StyleGAN2 [31]的作者建议在 W W W中而不是 W + W + W+中搜索嵌入,以检查图片是否由StyleGAN2生成。

配对的图像到图像翻译

Pix2pix [26]是最早应用于图像到图像翻译的条件生成模型之一。它学习从输入图像到输出图像的映射。Chen和Koltun [9]提出了第一个可以合成2048x1024图像的模型。紧随其后的是pix2pixHD [55]和SPADE [42]。在SPADE生成器中,每个归一化层都使用分段掩码来调制层激活。因此,它的用法仅限于分割图的翻译。有很多基于pix2pixHD架构的后续工作,包括那些与视频相关的工作[7,53,54]。

未配对的图像到图像翻译

在CycleGAN [61]中首先引入了应用周期一致性来训练未配对数据的想法。未配对的图像到图像转换的方法可以是单模GAN [61,59,36,11]或多模式GAN [62,24,33,34,37,12]。FUNIT [37]支持使用来自目标域的一些参考图像进行多域图像翻译。StarGAN v2 [12]提供潜在指导和参考指导综合。当应用于人脸时,所有上述方法均以最高256x256的分辨率运行。

性别互换是无监督的图像到图像翻译的众所周知的任务之一[11,12,38]。

面部衰老/嫩肤是一项特别的任务,引起了很多关注[60,50,19]。问题的表述可能会有所不同。此任务的最简单版本是使面孔看起来更老或更年轻[11]。更加困难的任务是产生与特定年龄间隔匹配的面孔[35,56,58,38]。 S 2 G A N S^2GAN S2GAN [19]提出了在对应于两个最接近年龄组的变换之间使用权重插值来连续改变年龄。

使用合成数据训练

合成数据集广泛用于扩展某些分析任务(如分类)的数据集。在许多情况下,可以使用简单的图形引擎生成合成数据。为了在现实世界的图像上表现良好,此数据需要克服外观差距[22,15,51,52,49]和内容差距[28,46]。

Ravuri等[44]研究了由BigGAN生成的合成数据训练的分类器的质量,并显示[45] BigGAN未捕获ImageNet [14]数据分布,仅部分成功用于数据增强。Shrivastava等[49]通过修改训练的设置来减少这种方法的质量下降。Chen等[10]使配对的数据集与图像编辑应用程序来训练image2image网络。

合成数据是知识提炼的基础,知识提炼是一种允许使用“教师”网络生成的数据来训练“学生”网络的技术[21,4]。可以使用这些额外的数据源来改进度量[57]或减小目标模型的大小[39]。Aguinaldo等文献[3]表明,知识提炼成功地适用于生成模型。

方法概述

数据采集

Image Manipulation:StyleGAN2 Distillation for Feed-forward Image Manipulation(2020)_第2张图片
我们的数据集中使用的所有图像都是使用 S t y l e G A N 2 3 StyleGAN2^3 StyleGAN23的官方实现生成的。除此之外,我们仅在FFHQ数据集上使用由StyleGAN2的作者预先训练的config-f版本模型。所有操作均以解纠缠的图像代码 w w w执行。

我们使用最直接的方式来生成用于样式混合和面部变形的数据集。样式混合在[30]中被描述为一种正则化技术,并且需要使用两个不同比例的中间潜码 w 1 w_1 w1 w 2 w_2 w2。脸部变形对应于中间潜码 w w w的线性插值。我们为每个任务生成5万个样本。每个样本都包含两个源图像和一个目标图像。通过从正态分布中随机采样 z z z,将其映射到中间潜码 w w w,并使用StyleGAN2生成图像 g ( w ) g(w) gw,可以获得每个源图像。我们通过对潜在代码执行相应的操作并将结果提供给StyleGAN2来生成目标图像。

人脸属性(例如性别或年龄)未在StyleGAN2潜在空间或中间空间中明确编码。为了克服这一局限性,我们使用了单独的预训练人脸分类网络。它的输出包括人脸检测的置信度、年龄和性别。该网络是专有的,因此我们发布了性别和年龄数据集的最终版本,以保持这项工作的完全再现性。

我们通过四个主要步骤创建性别和年龄数据集。首先,我们生成一个中间数据集,将潜在向量映射到目标属性,如图2所示。其次,我们在与属性相关的潜在空间中找到方向。第三,我们使用上述向量生成原始数据集,如图3所示。最后,我们对图像进行过滤以获得最终的数据集。 该方法在下面更详细地描述。
Image Manipulation:StyleGAN2 Distillation for Feed-forward Image Manipulation(2020)_第3张图片
一旦我们对齐了数据,就可以训练成对的图像到图像翻译网络。
Image Manipulation:StyleGAN2 Distillation for Feed-forward Image Manipulation(2020)_第4张图片

训练过程

在这项工作中,我们专注于说明通用方法,而不是尽可能地解决每一项任务。结果,我们选择训练pix2pixHD [55]作为图像到图像翻译的统一框架,而不是为每种任务选择自定义模型。

众所周知,pix2pixHD具有斑点伪影,并且也倾向于重复模式[42]。重复模式的问题在[30,42]中得到解决。浅色斑点是StyleGAN2中解决的一个问题。 我们假设pix2pixHD也使用了类似的处理方法。

幸运的是,即使在我们的数据集上训练的原始pix2pixHD也能产生足够好的结果,而几乎没有伪影。因此,我们留待改进或替换pix2pixHD以便将来工作。我们在512x512分辨率下进行了大部分实验和比较,但也尝试使用1024x1024进行性别互换。

样式混合和面部平均任务需要将两个输入图像同时馈送到网络。通过将输入通道数设置为6并沿通道轴连接输入来完成此操作。

实验

尽管可以对StyleGAN2进行不同性质的数据训练,但我们仅将精力集中在面部数据上。我们展示了我们的方法在多项任务中的应用:性别互换,衰老/年轻化以及样式混合和脸部变形。在我们所有的实验中,我们从FFHQ数据集上训练的StyleGAN2收集数据[30]。

评估协议

仅使用性别转换任务(两个方向)进行评估。我们使用Frech´et起始距离(FID)[20]进行方法的定量比较以及人工评估。

对于每个前馈基线,我们使用FFHQ的20000张图像作为源图像,计算FFHQ数据集的50000张真实图像和20000张生成的图像之间的FID。对于每个源图像,假设源性别由我们的分类模型确定,我们将转换应用于其他性别。在计算FID度量之前,将所有图像调整为256x256大小以进行公平比较。

此外,人工评估还可以与基于优化的方法进行更准确的比较。 我们的研究包括两项调查:

  • 质量。 女性到男性的翻译任务(男性到女性的翻译是相似的):“对于左侧的同一图像,右侧有两个不同的选项。选择最好的脸部,即:变成男性(最重要),类似于原始人,保留脸部位置和情感,保留照片中的原始项目。”
  • 现实主义。 在此任务中,来源是不同的,因此未显示。 “选择图像,这是:更真实(最重要),质量更好,伪影更少。”

在此比较中,所有图像均调整为512x512大小。第一个任务应显示哪种方法最适合执行转换,第二个任务则应显示最真实的方法,而与源图像无关。我们对两个任务都使用了并行实验,其中一侧是我们的方法,另一侧是基于优化的基准之一。答案选择被打乱了。对于我们的方法与基线的每次比较,我们都会生成1000个问题,并且每个问题都会由10个不同的人回答。对于答案汇总,我们使用Dawid-Skene方法[13]并过滤出置信度小于95%(大约占所有问题的4%)的示例。

图像到图像翻译的精馏

性别互换

我们根据上述方法为男性和女性面部生成了配对的数据集,然后为每种性别翻译训练了一个单独的pix2pixHD模型。

我们与不成对的图像到图像方法以及具有潜在代码优化功能的不同StyleGAN嵌入器竞争。我们选择StarGAN [11],MUNIT [25]和StarGAN v2 * [12]进行不配对方法的比赛。 我们在FFHQ上将所有这些方法训练为男性和女性。
Image Manipulation:StyleGAN2 Distillation for Feed-forward Image Manipulation(2020)_第5张图片
图4显示了我们的方法与未配对的图像到图像之间的定性比较。它表明蒸馏转化具有明显更好的视觉质量和更稳定的结果。表1a中的定量比较证实了我们的观察结果。我们还检查了我们的模型在其他数据集上的表现是否良好,无需重新训练。表1b显示了CelebA-HQ图像的性别互换与在CelebA上训练的模型的比较。尽管训练期间没有CelebA样本,我们的模型还是赢了。结果表明,该方法无需重新训练就可以潜在地应用于现实世界图像。
Image Manipulation:StyleGAN2 Distillation for Feed-forward Image Manipulation(2020)_第6张图片
StyleGAN2提供了一种官方的投影方法。 该方法在 W W W模式下运行,该模式仅允许查找由该模型生成的人脸,而不能查找真实世界的图像。 因此,我们还为 W + W + W+建立了类似的方法进行比较。 它为生成器的每一层优化了单独的 w w w,这有助于更好地重建给定图像。 找到 w w w之后,我们可以添加上述转换向量并生成转换后的图像。

此外,我们还添加了Dmitry Nikitko(Puzer)[41]和Peter Baylies(pbaylies)[5]制作的投影方法,以查找潜在的代码进行比较,即使它们基于StyleGAN的第一个版本。 这些编码器是最著名的实现,它们使用自定义的感知损失以获得更好的感知。Peter Baylies的StyleGAN编码器是高级模式。 除了更精确地选择损失函数外,它还使用背景遮罩和优化起点的前向逼近。

由于未配对的方法显示出明显较差的质量,因此我们将更多精力投入到通过优化搜索嵌入的不同方法之间的比较中。我们避免使用利用FID的方法,因为所有方法都基于相同的StyleGAN模型。此外,FID无法衡量“转变的质量”,因为它不检查个性的保持。因此,我们决定让用户研究所有基于StyleGAN的方法的主要指标。图5显示了所有方法的定性比较。可见,我们的方法在转换质量方面表现更好。而且只有StyleGAN编码器[5]在实际效果上胜过我们的方法。但是,此方法无条件生成背景。
Image Manipulation:StyleGAN2 Distillation for Feed-forward Image Manipulation(2020)_第7张图片
我们发现,与所有编码器相比,pix2pixHD保留了更多的变换图像细节。我们假设这是由于pix2pixHD通过网络传递部分未更改内容的能力而实现的。与被迫将有关图像的所有信息编码在一个矢量中的编码器相比,Pix2pixHD解决了一项更轻松的任务。

图4和5也显示了我们方法的缺点。由于FFHQ的属性分布存在一定偏差,因此,“性别”向量不能完全解开,因此,StyleGAN的潜在空间相关性[47]。例如,可以看出翻译成女性面孔也可以增加微笑。

我们还遇到pix2pixHD体系结构的问题:重复的图案,浅色斑点以及对1024x1024分辨率进行微调的困难。我们在补充材料中显示了生成的图像的未整理清单。

老化/复兴

为了表明我们的方法可以应用于另一种图像到图像的变换任务,我们还对面部年龄操纵进行了类似的实验。首先,我们估算所有生成图像的年龄,然后将它们分组到几个箱中。之后,对于每个箱子,我们找到“+2箱子”和“-2箱子”的向量。利用这些向量,我们生成统一的成对数据集。每一对都有同一张脸的年轻版和老年版。最后,我们训练了两个pix2pixHD网络,两个方向各一个。图6给出了这种方法的应用示例。
Image Manipulation:StyleGAN2 Distillation for Feed-forward Image Manipulation(2020)_第8张图片

混合式蒸馏

风格混合和脸部变形

StyleGAN2架构中有18个AdaIN输入。这些AdaIN在不同的空间分辨率下工作,更改不同的输入将更改不同比例的细节。 作者将它们分为三组:粗略样式(用于 4 2 – 8 2 4 ^ 2 – 8 ^ 2 4282空间分辨率),中样式( 1 6 2 − 3 2 2 16 ^ 2-32 ^ 2 162322)和精细样式( 6 4 2 – 102 4 2 64 ^ 2 – 1024 ^ 2 64210242)。 更改粗糙,中间或精细细节的机会是StyleGAN体系结构的独特功能。

我们收集三元组的数据集(两个源图像及其混合物),并为每次转换训练我们的模型。 我们将两个图像连接成6个通道,以提供pix2pixHD模型。 图7(a,b,c)显示了样式混合的结果。

另一个简单的线性运算是对两个潜在代码求平均。 它对应于图像的变形操作。 我们收集了另一个包含三元组潜在代码的数据集:两个随机代码和一个平均值。 脸部变形的示例在图7(d)中显示。
Image Manipulation:StyleGAN2 Distillation for Feed-forward Image Manipulation(2020)_第9张图片

结论

在本文中,我们将无条件图像生成与成对的图像到图像GAN结合起来,以将StyleGAN2的潜在代码中的特定图像处理提炼为单图像到图像的转换。所产生的技术既显示了快速的推论又显示了令人印象深刻的质量。它在FID得分方面优于现有的未配对图像对图像模型,并且在用户研究和推断性别互换任务的时间上均采用StyleGAN Encoder方法。我们证明该方法也适用于其他图像处理,例如老化/复兴和样式转换。

我们的框架有几个局限性。 StyleGAN2的潜在空间并没有完全解开,因此我们的网络所做的转换并不是完全纯净的。尽管潜在空间的纠缠程度不足以进行纯转换,但杂质并不是那么严重。

尽管不同的体系结构更适合于不同的任务,但我们仅使用pix2pixHD网络。此外,尽管可以训练一些通用模型,但我们将每次转换都分解为一个单独的模型。这个机会应该在以后的研究中进行研究。

你可能感兴趣的:(深度学习,算法,图像处理,StyleGAN2)