StarGAN:用于多域图像到图像转换的统一生成对抗网络外文翻译资料

 2022-08-09 04:08

英语原文共 9 页,剩余内容已隐藏,支付完成后下载完整资料


StarGAN:用于多域图像到图像转换的统一生成对抗网络

图1.通过转移从RaFD数据集中学到的知识,在CelebA数据集上进行多域图像到图像的转换结果。第一列和第六列显示输入图像,其余列是StarGAN生成的图像。 请注意,图像是由单个生成器网络生成,而愤怒,开心和恐惧等面部表情标签来自RaFD,而不是CelebA。

摘要

最近的研究表明两个领域的图像到图像的转换中取得了显著成功。但是,现有这些方法在处理两个以上的域方面具有有限的可伸缩性和鲁棒性,因为应该为每对图像域独立构建不同的模型。为了解决这一局限性,我们提出StarGAN可扩展的方法,可以仅使用一个模型就可以对多个域执行图像到图像的转换。StarGAN的这种统一模型架构允许在单个网络中同时训练具有不同域的多个数据集。 这导致了与现有模型相比StarGAN转换图像的质量出色以及将输入图像灵活转换为任何所需目标域的新颖功能。我们从经验上证明了我们的方法在面部属性转移和面部表情合成任务上的有效性。

1.简介

图像到图像的转换任务是将给定图像的特定方面更改为另一个,例如将一个人的面部表情从微笑变为皱眉,如图1所示。 在引入生成对抗性网络(GAN)之后,此任务有了显着改善,其结果包括改变头发颜色[8],从边缘地图重建照片[7],以及改变风景图像的季节 [32]

给定来自两个不同域的训练数据,这些模型学习将图像从一个域转换为其他域。 我们将术语“属性”表示为图像固有的有意义的特征,例如头发的颜色,性别或年龄,将属性值作为属性的特定值,例如黑色/棕色/棕色代表发色,或男性/女性代表性别。我们进一步将域表示为共享相同属性值的一组图像。例如,女性形象可以代表一个领域,而男人代表另一个领域。

几个图像数据集带有许多标记属性。例如,CelebA [18]数据集包含40个与面部属性相关的标签,例如头发的颜色,性别和年龄,并且RaFD [12]数据集有8个面部标签诸如“快乐”,“生气”和“悲伤”之类的表达方式。这些设置使我们能够执行更多有趣的任务,即多域图像到图像转换,其中我们根据多个域的属性来更改图像。图1的前五列显示如何根据“头发”,“性别”,“年龄”和“苍白的皮肤”四个领域中的任何一个转换CelebA图像。我们可以进一步扩展到训练来自不同数据集的多个域,例如联合训练CelebA和RaFD图像,已使用通过在RaFD上训练得到的特征来改变CelebA图像的面部表情,如图1的最右栏中所示。

但是,现有的模型在这种多域图像转换任务中既低效又无效。其效率低下是因为为了学习k个域之间的所有映射,必须训练k(k-1)个生成器。图2说明了如何训练十二个不同的生成器网络以在四个不同的域转换图像。同时,即使存在从人脸形状等所有领域的图像中都可以学习到的全局特征,每个生成器也不能充分利用整个训练数据,只能从k中的两个领域学习,这是无效的。无法充分利用训练数据可能会限制生成的质量图片。此外,由于每个数据集都是部分标记,我们将在第3.2节中进一步讨论。

为了解决此类问题,我们提出使用StarGAN,一个能够学习多个域之间映射的生成对抗网络。如图2(b)所示,我们的模型吸收了多个域的训练数据,并且仅使用一个生成器就学习了所有可用域之间的映射。这个想法很简单。我们的模型没有学习固定的转换,例如,从黑头发到金头发,模型将图像和领域信息作为输入,并学会灵活地将输入图像转换为图像相应的域。我们使用标签,例如二进制或onehot向量来表示域信息。在训练过程中,我们随机生成目标域标签并进行训练模型将输入图像灵活地转换为目标域。这样,我们可以控制域标签和在测试阶段将图像转换为任何所需的域。

我们还介绍了一种简单但有效的方法,该方法通过将掩码向量添加到域标签实现不同数据集的域之间的联合训练。我们提出的方法可确保模型忽略未知标签并专注于特定数据集提供的标签。通过这种方式,我们的模型可以很好地从RaFD中学到的功能完成合成CelebA图片的面部表情等任务,如图1的最右边一栏所示。据我们所知,我们的工作是第一个成功跨不同数据集成功执行多域图像转换的工作。

总体而言,我们的贡献如下:

bull;我们提出使用StarGAN,这是一种新型的生成对抗性网络,它仅使用一个生成器和一个鉴别器即可学习多个域之间的映射,并有效地从所有域的图像中训练。

bull;我们演示如何通过使用一种掩码向量方法成功地学习多个数据集之间的多域图像转换,该方法使StarGAN能够控制所有可用的域标签。

bull;我们用StarGAN提供了面部属性转移和面部表情合成任务的定性和定量结果,显示了它相对于基线模型的优越性。

图2.跨域模型与我们提出的模型StarGAN之间的比较。 (a)要处理多个域,应为每对图像域建立跨域模型。(b)StarGAN能够使用一个生成器来学习多个域之间的映射。该图表示连接多个域的星形拓扑。

2.相关工作

生成对抗网络。 生成对抗网络(GAN)[3] 在各种计算机视觉任务中已显示出显著成果,例如图像生成[1,6,23,31],图像转换[7,8,32],超分辨率成像[13]和面部图像合成[9、15、25、30]。 一种典型的GAN模型由两个模块组成:鉴别器和生成器。 鉴别者学会区分在真实样本和伪样本,而生成器学习生成与真实无二的伪样本样品。 我们的方法还利用了对抗性损失使生成的图像尽可能逼真。

有条件的GAN。 基于GAN的条件图像生成也得到了积极的研究。 先前的研究已经为鉴别器和生成器提供了类别信息,以便生成以该类别为条件的样品[19,20,21]。其他的最近方法侧重于生成与给定文字描述高度相关的特定图像[24,29]。 条件图像生成的思想也已经已成功应用于域转移[8,27],超分辨率成像[13]和照片编辑[2,26]。 在本文中,我们提出了一种可扩展的GAN框架,该框架可以通过提供条件域信息灵活地将图像转换引导到各种目标域。

图3. StarGAN的概述,它由两个模块组成:一个鉴别器D和一个生成器G。(a)D学会了区分真实和伪造图像,并将真实图像分类到其对应的域。(b)G接受图像和目标域作为输入标签并生成伪造图像。 目标域标签在空间上复制并与输入图像连接在一起。(c)G尝试给定原始域标签,从伪图像中重建原始图像。(d)G尝试生成与真实图像无法区分,并且D可以将其分类为目标域的图像。

图像到图像的转换。最近图像到图像的转换工作取得了令人印象深刻效果[7,8,16,32]。例如,pix2pix[7]使用cGAN[19]以监督方式学习该任务。它结合了对抗性损失和L1损失,因此需要成对的数据样本。为了缓解获取数据对的问题,使用未配对的图像到图像转换框架[8,16,32]已经提出。UNIT [16]将可变自动编码器(VAE)[11]与CoGAN [17]结合在一起,这是一个GAN框架,其中两个生成器共享权重以学习跨域图像的联合分布。CycleGAN[32]和DiscoGAN[8]通过利用循环一致性在输入图像和翻译图像之间保留关键属性失利。但是,所有这些框架都只能同一时间学习两个不同领域之间的关系。他们的方法在处理多个域时具有有限的可伸缩性,因为应该为每对域训练不同的模型。与前述方法不同,我们的框架仅使用一个模型就可以学习多个域之间的关系。

3.明星生成对抗网络

我们首先描述我们提出的StarGAN,这是一个在单个数据集中处理多域图像到图像转换的框架。然后,我们讨论StarGAN如何整合包含不同标签集的多个数据集,以灵活地使用这些标签中的任何一个执行图像转换。

3.1.多域图像到图像转换

我们的目标是训练一个生成器G,它学习多个域之间的映射。为此,我们训练G将输入图像x转换为以目标域标签c,G(x,c)→y为条件的输出图像y。我们随机生成目标域标签c,以便G学习灵活地转换输入图像。我们还介绍了辅助分类器[21],它允许单个鉴别器控制多个域。也就是说,我们的鉴别器会在源和域标签D上产生概率分布:D:x→{Dsrc(x),Dcls(x)}。图3说明我们提出的方法的培训过程。

对抗性损失:为了使生成的图像与真实图像无法区分,我们采用对抗损失

, (1)

其中G生成以两个条件为条件的图像G(x,c)输入图像x和目标域标签c,而D尝试区分真实图像和伪造图像。在本文中,我们将术语称为D给定源上的概率分布。生成器G试图最小化此目标,而鉴别器D试图将其最大化。

域分类损失:对于给定的输入图像x和目标域标签c,我们的目标是将x转换输出图像y并正确分类为目标域c。为了达到这个条件,我们在D的基础上增加了一个辅助分类,并在优化D和G时施加域分类损失。也就是说,我们分解该目标分为两个术语:用于优化D的真实图像的域分类损失和用于优化G的伪造图像的域分类损失。详细地,前者被定义为

, (2)

术语表示D所计算的域标签上的概率分布。通过最小化这个目标,D学习将真实图像x归类为其对应的原始域c′。我们假设输入图像和域标签对(x,c)由训练提供数据。另一方面,用于伪造图像的域分类的损失函数定义为

. (3)

换句话说,G尝试最小化此目标,以生成可归类为目标域c的图像。

重建损失。 通过最小化对抗和分类损失,训练G生成逼真图像,并归类到其正确的目标领域。 但是,将损失最小化(公式(1)和(3))并不能保证转换后的图像保留其输入内容。图片,而仅更改与域名相关的部分输入。为了减轻这个问题,我们应用了循环一致性损失[8,32]生成器,定义为

, (4)

G接收转换后的图像G(x,c)和原始域标签c′作为输入并尝试重建原始图像x。 我们采用L1范数作为我们的重构损伤。请注意,我们使用一次生成器两次,首先将原始图像转换为目标域中的图像然后从转换后的图像中重建原始图像。

完整目标。 最后,目标函数进行优化G和D分别写为

, (5)

, (6)

其中和是超参数,与对抗性损失相比,领域分类和重建损失的相对重要性。在所有实验中,我们使用= 1和= 10。

3.2. 训练多个数据集

StarGAN的一个重要优点是它可以同时合并包含不同类型标签的多个数据集,因此StarGAN在测试阶段可以控制所有标签。然而,从多个数据集学习时的一个问题是,每个数据集只知道部分标签信息。在CelebA[18]和RaFD[12]的例子中,前者包含头发颜色和性别等属性的标签,而前者没有任何面部表情的标签,例如“高兴”和“生气”,后者则相反。这是有问题的,因为当从翻译的图像G(x,c)重建输入图像x时,需要关于标签向量c′的完整信息,参见式(4)。

掩码向量: 为了缓解这个问题,我们引入了一个掩码向量m,它允许StarGAN忽略未指定的标签,并关注由特定数据集提供的显式已知标签。在StarGAN中,我们使用一个n维的一维热向量来表示m,其中n是数据集的数目。此外,我们定义了一个单一版本的标签作为向量

, (7)

其中[·]表示串联,ci表示向量第i个数据集的标签。 已知的向量标签ci可以表示为二进制属性的二进制向量或分类属性的一热向量。对于其余的n-1个未知标签,我们只需分配零值。 在我们的实验中,我们利用CelebA和RaFD数据集,其中n为2。

培训策略:用多个数据集训练StarGAN时,我们使用等式中定义的域标签ctilde;(7)作为生成器的输入。通过这样做,生成器学会了忽略未指定的标签,它们是零向量,并且专注于明确给定的标签。生成器的结构与输入单个数据集进行训练时完全相同,除了输入标签ctilde;的尺寸。在另一方面,我们扩展了鉴别器的辅助分类器,以生成所有数据集的标签上的概率分布。然后,我们在多任务学习环境中训练该模型,其中鉴别器尝试仅最小化与已知标签相关的分类错误。例如,当使用CelebA中的图像进行训练时,鉴别器仅最小化与CelebA属性相关的标签的分类错误,而不最小化与RaFD相关的面部表情。在这些设置下,通过在CelebA和RaFD之间交替,鉴别器学习两个数据集中的所有鉴别特征,生成器学习控制两个数据集中的所有标签。

图4. CelebA数据集上的面部属性转移结果。 第一列显示输入图像,接下来四列显示单个属性转移结果,最右边的列显示多属性转移结果。 H:发色; G:性别; A:中年。

4.实施

改进了GAN培训。为了稳定训练过程并生成更高质量的图像,我们替换公式(1)用Wasserstein GAN目标,其梯度罚分[1,4]定义为

,(8)

其中是沿一对真实的和生成的图像之间的直线均匀采样。 我们使用= 10用于所有实验。

网络体系结构: 改编自[32],StarGAN具的生成器网络由两个卷积层组成,步幅大小为2用于下采样,六个残差块[5]和两个转置卷积

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[238927],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。