论文中文翻译——SketchyCOCO Image Generation from Freehand Scene Sketches

本论文相关内容

  1. 论文下载地址——SketchyCOCO Image Generation from Freehand Scene Sketches
  2. 论文中文翻译——SketchyCOCO Image Generation from Freehand Scene Sketches


前言

  此博客为SketchyCOCO Image Generation from Freehand Scene Sketches论文的中文翻译,本篇论文主要研究的是如何从手绘草图生成我们日常生活中的完整图像,这也是最近比较火的一个领域,通过阅读本篇论文翻译博客,相信大家一定会对此方向有一个更深入的了解,下面就是本文的全部内容!


SketchyCOCO:从手绘场景草图生成图像

Chengying Gao Qi Liu Qi Xu Limin Wang Jianzhuang Liu Changqing Zou
School of Data and Computer Science, Sun Yat-sen University, China
State Key Laboratory for Novel Software Technology, Nanjing University, China
Noah’s Ark Lab, Huawei Technologies HMI Lab, Huawei Technologies
[email protected] {liuq99, xuqi5}@mail2.sysu.edu.cn

摘要

  我们介绍了从场景级写意草图自动生成图像的第一种方法。我们的模型允许通过手绘草图指定合成目标来生成可控的图像。关键贡献是一个名为EdgeGAN的属性向量桥接生成对抗网络,它支持高视觉质量的对象级图像内容生成,无需使用手绘草图作为训练数据。我们构建了一个名为SketchyCOCO的大型复合数据集,以支持和评估解决方案。我们在SketchyCOCO上的对象级和场景级图像生成任务上验证了我们的方法。通过定量、定性结果、人类评估和消融研究,我们证明了该方法从各种写意草图中生成真实复杂场景级图像的能力。

1. 引言

  近年来,生成对抗网络(GANs)在可视化数据的高维分布建模方面取得了显著的成功。特别是,可以通过在对象级数据(例如[4]中的动物图片)、特定类别的数据集(例如,室内场景),甚至是具有重复纹理的单张图像上训练的无条件生成模型来实现高保真图像。在实际应用中,能够根据特定要求生成图像和视频的自动图像合成可能更有用。这就解释了为什么越来越多的研究以文本、语义图、布局、场景图等其他输入信号为条件的对抗网络。与这些来源相比,手绘草图在以直观和灵活的方式表达用户的想法方面有其独特的优势。具体来说,在描述一个物体或场景时,草图比其他来源更能传达用户的意图,因为它自然地提供了更多的细节,如物体的位置、姿势和形状,从而减少了不确定性。

  在本文中,我们将生成对抗网络的使用扩展到一个新问题:如图1所示,从徒手场景级草图中可控制地生成具有许多对象和关系的现实图像。由于几个因素,这个问题极具挑战性。徒手草图具有不同程度的抽象性的特征,一千个用户有一千种不同的表象,甚至表达同一种共同的对象,这取决于用户的描绘能力,因此现有技术难以模拟从徒手场景素描到精确符合用户意图的现实自然图像的映射。更重要的是,徒手的场景草图通常是不完整的,只包含前景和背景。例如,用户最关心的前景对象往往喜欢画出具体细节的外观,他们希望结果能完全满足这一要求,而留空,只粗略地画出背景对象而不关注其细节,这就要求算法能够应对用户的不同需求。

请添加图片描述

图1:所提出的方法允许用户从徒手草图中可控地生成带有许多对象的逼真场景级图像,这与无条件GAN和条件GAN形成鲜明对比,因为我们使用场景草图作为上下文(弱约束),而不是从噪声或语义映射或边缘映射等更困难的条件生成。输入的约束从左到右变得更强。

  为了解决这个具有挑战性的问题,我们将其分解为两个连续的阶段,前景和背景生成,基于场景草图的特点。第一个阶段主要是前景生成,生成的图像内容应该完全满足用户的特定需求。第二阶段负责背景生成,生成的图像内容可能与草图松散对齐。由于前景中每个对象的外观都是由用户指定的,因此可以分别从各个前景对象生成真实合理的图像内容。此外,生成的前景可以对背景生成提供更多约束,这使得背景生成更容易,即,渐进式场景生成降低了问题的复杂性。

  为了解决草图抽象性引起的数据方差问题,我们提出了一种新的神经网络架构EdgeGAN。它学习了一种联合嵌入,将图像和相应的各种风格的边缘映射转换为一个共享的潜在空间,其中向量可以表示来自跨域数据的高级属性信息(即物体姿态和外观信息)。通过共享潜在空间中的属性向量的桥梁,我们能够将图像生成问题从手绘草图转化为边缘地图,而不需要收集前景手绘草图作为训练数据,我们可以解决图像与无限手绘草图之间建模一对多对应的建模挑战。

  为了评估我们的方法,我们基于MS COCO Stuff构建了一个名为SketchyCOCO的大规模复合数据集。该数据集的当前版本包括14K+场景级图像和草图的成对示例,20K+前景草图、图像和边缘地图的三重示例,涵盖14个类别,27K+背景草图和图像示例,涵盖3个类别,以及14K+场景草图的分割真实信息。我们将所提出的EdgeGAN与现有的草图到图像方法进行了比较。定性和定量结果都表明,所提出的EdgeGAN实现了显著优异的性能。

  我们的贡献总结如下:

  • 我们提出了第一个基于深度神经网络的场景级手绘草图图像生成框架。
  • 我们提出了一种新的生成模型,称为EdgeGAN,用于从手绘草图生成对象级图像。该模型可以以端到端的方式进行训练,并且不需要用于训练的草图图像成对真实信息。
  • 我们基于MS COCO Stuff构建了一个名为SketchyCOCO的大规模复合数据集。该数据集将极大地促进相关研究。

2. 相关工作

  基于草图的图像合成。早期基于草图的图像合成方法基于图像检索。Sketch2Photo和PhotoSketcher通过合成从给定草图中检索到的对象和背景来合成真实的图像。PoseShop通过让用户在查询中输入额外的2D骨架来合成人的图像,从而使检索更加精确。最近,SketchyGAN和ContextualGAN已经证明了变体GANs对于从手绘草图生成图像的价值。与SketchyGAN和ContextualGAN不同,SketchyGAN主要解决了从描绘单个对象的对象级草图生成图像的问题,我们的方法侧重于从场景级草图生成图片。

  条件图像生成。最近的几项研究证明了变体GANs在从文本、场景图、语义布局图生成场景级复杂图像方面的潜力。这些方法中的大多数使用从粗到细的多级策略来同时推断输入或中间结果中所有语义布局的图像外观。相反,我们采取另一种方式,使用分而治之的策略来顺序生成图像的前景和背景外观,因为前景和背景明显不同的手绘场景草图的独特特性。

  在对象级图像生成上,我们的EdgeGAN与无条件GAN和条件GAN形成鲜明对比,因为我们使用草图作为上下文(弱约束),而不是像DCGAN、Wasserstein GAN、WGAN-GP及其变体那样从噪声中生成,或者使用硬性条件,如边缘图、语义图,同时提供比使用文本、布局和场景图作为上下文更精确的控制。

3. 方法

  我们的方法主要包括两个顺序模块:前景生成和背景生成。如图2所示,给定场景草图,首先利用[40]中的草图分割方法定位和识别对象实例。之后,前景生成模块以随机顺序分别为每个前景对象实例(即,属于前景类别的草图实例)生成图像内容。通过将背景草图和生成的前景图像作为输入,通过一次生成背景图像来实现最终图像。这两个模块是分开训练的。接下来,我们将描述每个模块的详细信息。

请添加图片描述

图2:拟议框架的工作流程。

3.1. 方法

  EdgeGAN的总体架构。由于映射空间的巨大,直接建模单个图像与其对应草图(如SketchyGAN)之间的映射是困难的。因此,我们转而以另一种可行的方式来解决这一挑战:我们学习由跨域数据表示的对象的通用表示。为此,我们为EdgeGAN设计了一个对抗性架构,如图3(a)所示。EdgeGAN不是直接从草图推断图像,而是将草图到图像的生成问题转移到从属性向量生成图像的问题上,该属性向量对手绘草图的表达意图进行编码。在训练阶段,EdgeGAN通过向对抗网络提供图像及其各种绘制风格的边缘映射,学习对象图像及其边缘映射的公共属性向量。在推理阶段(图3(b)), EdgeGAN用属性向量捕捉用户的表达意图,然后从中生成所需的图像。

  EdgeGAN的结构。如图3(a)所示,本文提出的EdgeGAN有两个通道:一个通道包括生成器 G E G_{E} GE和鉴别器 D E D_{E} DE,用于生成边缘图;另一个通道包括生成器 G I G_{I} GI和鉴别器 D I D_{I} DI,用于生成图像。 G I G_{I} GI G E G_{E} GE都采用相同的噪声向量和指示特定类别的one-hot向量作为输入。判别器 D I D_{I} DI D E D_{E} DE试图将生成的图像或边缘映射与真实分布区分开来。另一个鉴别器 D J D_{J} DJ用于鼓励生成的假图像和描述同一对象的边缘映射,通过判断生成的假图像是否与假边缘映射匹配,它将 G I G_{I} GI G E G_{E} GE的输出作为输入(图像和边缘映射沿宽度维度连接)。边缘编码器用于鼓励边缘映射的编码属性信息通过 L 1 L1 L1损失接近馈送到 G I G_{I} GI G E G_{E} GE的噪声向量。分类器用于推断 G I G_{I} GI输出的类别标签,用于通过焦点损失鼓励生成的假图像被识别为所需的类别。EdgeGAN各模块的详细结构如图3(c)所示。

在这里插入图片描述

图3:拟议的EdgeGAN的结构。它包含四个子网络:两个生成器GI和GE,三个鉴别器DI,DE和DJ,一个边缘编码器E和一个图像分类器C。EdgeGAN学习图像的联合嵌入和将图像描绘到共享潜在空间的各种风格的边缘映射,其中向量可以编码来自跨模态数据的高级属性信息。

  我们在bicycleGAN中实现了具有相同编码器模块的边缘编码器,因为它们在功能上发挥了类似的作用,即,我们的编码器编码“内容”(例如,姿态和形状信息),而bicycleGAN中的编码器将属性编码为潜在向量。对于分类器,我们使用类似于SketchyGAN的鉴别器的架构,忽略对抗损失,只使用焦点损失作为分类损失。所有生成器和鉴别器的体系结构都基于WGAP-GP。目标函数和更多的训练细节可以在补充材料中找到。

3.2. 背景生成

  一旦合成了所有前景实例,我们训练pix2pix以生成背景。背景生成任务的主要挑战是大多数场景草图的背景都包含背景实例和区域内的空白区域(如图2所示),这意味着由于缺少草图约束,属于背景的某些区域是不确定的。通过利用pix2pix并使用生成的前景实例作为约束,我们可以允许网络生成与合成的前景实例匹配的合理背景。以图2为例,输入图像斑马下方的区域不包含用于约束的背景草图,输出图像显示,这样的区域可以合理地填充草和地面。

4. SketchyCOCO数据集

  我们通过从Sketchy数据集、Tuberlin数据集和QuickDraw数据集(每个前景类大约有700个草图)收集涵盖3个背景类和14个前景类的实例手绘草图来初始化构建。对于每节课,我们将这些草图分成两部分:80%用于训练集,其余20%用于测试集。我们从COCO Stuff收集了14081张自然图像,其中至少包含17个类别中的一个,并将它们分成两组,80%用于训练,其余20%用于测试。使用这些自然图像的分割掩码,我们将背景实例草图(云、草和树草图)放置在这些图像的相应背景区域内的随机位置。该步骤生成27683(22171+5512)对背景草图图像示例(如图4所示)。

在这里插入图片描述

图4:SketchyCOCO中14个前景和3个背景类别的代表性草图图像成对示例。每个类别的数据大小(分为训练/测试)显示在顶部。

  之后,对于自然图像中的每个前景对象,我们检索与图像中相应前景对象具有相同类标签的最相似的草图。该步骤采用Sketchy数据库中提出的草图图像嵌入方法。此外,为了获得更多用于训练对象生成模型的数据,我们从完整的COCO Stuff数据集中收集前景对象。通过这一步骤和人工选择,我们获得了前景草图、图像和边缘图的20198(18869+1329)个三元组示例。由于来自COCO Stuff的自然图像的所有背景对象和前景对象都具有类别和布局信息,因此我们也获得了合成场景草图的布局(例如,对象的边界框)和分割信息。在构建背景和前景草图之后,我们自然地获得了五元组地面真实数据(图5)。注意,在上述步骤中,训练和测试集中的场景草图只能分别由训练和测试集的实例草图组成。

在这里插入图片描述

图5:SketchyCOCO的五元组地面真实标签的图示,即(a){前景图像、前景草图、前景边缘图}(训练:18869,测试:1329),(b){背景图像、背景草图}(训练:11265,测试:2816),(c){场景图像、前景图像和背景草图},(d){场景图像,场景草图}(训练:11265,测试:2816),以及(e)草图分割(训练:112 65,测试,2816)。

5. 实验

5.1. 对象级图像生成

  基准。在收集的20198个三元组{前景草图、前景图像、前景边缘图}示例上,我们将EdgeGAN与普通图像到图像模型pix2pix以及两个现有的草图到图像模型ContextualGAN和SketchyGAN进行了比较。与SketchyGAN和pix2pix不同的是,它们可以同时使用边缘图和手绘草图来训练数据,EdgeGAN和ContextualGAN仅将边缘图作为输入,而不使用任何手绘草图来进行训练。为了公平和彻底的评估,我们为SketchyGAN、pix2pix和ContextualGAN设置了几种不同的训练模式。接下来,我们将为每个模型介绍这些模式。

  • EdgeGAN:我们使用前景图像和仅提取的14个前景对象类别的边缘图来训练单个模型。
  • ContextualGAN:我们使用前景图像及其边缘图分别训练每个前景对象类别的模型,因为原始方法不能使用单个模型来学习多个类别的草图到图像的对应关系。
  • SketchyGAN:我们用两种模式训练原始的SketchyGAN。第一种模式被标记为SketchyGAN-E,使用前景图像和它们的边缘地图进行训练。由于SketchyGAN在实验中可能同时使用边缘图和手绘草图来训练数据,我们也在另一种模式下训练SketchyGAN:使用前景图像和{它们的边缘图+草图}进行训练。在这个名为SketchyGAN- E&S的训练模式中,我们遵循与SketchyGAN相同的训练策略,首先将边缘地图输入模型,然后用草图对其进行微调。
  • Pix2pix:我们在四种模式下训练原始Pix2pix架构。前两种模式分别表示为pix2pix-E-SEP和pix2pix-S-SEP,其中我们分别使用来自14个前景类别的边缘地图或草图来训练14个模型。另外两种模式分别表示为pix2px-E-MIX和pix2pix-S-MIX,其中我们只使用来自所有14个类别的边缘地图或草图分别训练单个模型。

  定性的结果。我们将四种比较方法的代表性结果如图6所示。总的来说,EdgeGAN提供了比ContextualGAN更真实的结果。在可信度(即输入草图是否能描绘生成的图像)方面,EdgeGAN也优于ContextualGAN。这可以通过以下事实来解释:EdgeGAN使用学习的属性向量,该向量从跨域数据中捕获可靠的高级属性信息,用于监督图像生成。相比之下,ContextualGAN使用低级的草图边缘相似度度量来监督图像生成,这对输入草图的抽象性水平很敏感。

  相比于生成逼真图像的EdgeGAN, pix2pix和SketchyGAN在仅使用边缘图训练两个模型时,只对输入草图进行着色,不改变输入草图的原始形状(如图6(b1),(c1)和(c2))。这可能是因为SketchyGAN和pix2pix的输出都受到输入的强烈约束(即训练数据提供的一对一对应)。当输入是来自另一个领域的手绘草图时,这两个模型在训练过程中只能看到边缘图,因此难以产生逼真的结果。相比之下,EdgeGAN的输出受输入草图的约束相对较弱,因为它的生成器将从跨域数据中学习到的属性向量作为输入,而不是输入草图。因此,由于EdgeGAN对跨域输入数据相对不敏感,可以获得比pix2pix和SketchyGAN更好的结果。

  通过手绘草图对训练数据进行扩充或改变,SketchyGAN和pix2pix都能对某些类别生成逼真的局部补丁,但无法保留全局形状信息,如图6(b2)、(c3)和(c4)中结果的形状被扭曲。

请添加图片描述

图6:从左到右:输入草图,EdgeGAN的结果,ContextualGAN(a), SketchyGAN的两种训练模式(即SketchyGAN-E(b1)和SketchyGANE&S)(b2), pix2pix的四种训练模式,即pix2pix-E-SEP(c1), pix2pix-E-MIX(c2),pix2pix-S-MIX(c3), pix2pix-S-ESP(c4)

  定量的结果。我们进行了真实性和真实性评估,以进行定量比较。我们使用FID和Accuracy作为真实性指标。FID值越低,精度值越高,表明图像的真实感越好。值得一提的是,Inception Score指标并不适合我们的任务,因为最近的一些研究包括发现Inception Score基本上只对在ImageNet上训练的模型可靠。我们通过计算生成图像的边缘图与相应的输入草图之间的相似程度来衡量生成图像的可信度。具体而言,我们使用形状相似性(SS)来测量可信度(值越低表示可信度越高),形状相似性是输入草图和由canny边缘检测器从生成的图像生成的边缘图之间的 L 2 L2 L2 Gabor特征距离。

  定量结果总结为表1,其中我们可以看到所提出的EdgeGAN在真实性度量方面取得了最佳结果。然而,在可信度度量方面,我们的方法优于大多数竞争对手,但不如pix2pix-E-SEP、pix2pix-E-MIX、SketchyGAN-E。这是因为这些方法生成的结果看起来更像是输入草图的彩色化,其形状与输入草图几乎相同(见图6(b1)、(c1)、(c2)),而不是真实的。定量结果基本上证实了我们在定性研究中的观察结果。

表1:定量实验和人工评估的结果。

请添加图片描述

5.2. 场景级图像生成

  基准。目前还没有专门为从场景级手绘草图生成图像而设计的方法。SketchyGAN最初是为从手绘草图生成对象级图像而提出的。理论上,它也可以用于场景级手绘草图。pix2pix是一个流行的通用图像到图像模型,它应该应用于所有的图像转换任务。因此,我们使用SketchyGAN和pix2pix作为基准方法。

  由于我们有14081对{场景草图, 场景图像}示例,直接训练pix2pix和SketchyGAN模型学习从草图到图像的映射是很直观的。因此,我们在分辨率较低的实体上进行了实验,例如128×128。我们发现无论是pix2pix还是SketchyGAN的训练都容易发生模式崩溃,通常在60个epoch之后(对于SketchyGAN来说是80个epoch),甚至是SketchyCOCO数据集中的14081对{场景草图, 场景图像}示例都被使用了。原因可能是数据种类太大,无法建模。即使是14K对的尺寸也不足以完成一次成功的训练。然而,即使有80%的14081对{前景图像和背景草图,场景图像}的例子,我们仍然可以使用相同的pix2pix模型来生成背景,没有任何模式崩溃。这可能是因为在这种情况下,pix2pix模型避免了前景草图和相应的前景图像内容之间具有挑战性的映射。更重要的是,由于前景图像为背景生成提供了足够的先验信息和约束条件,因此训练收敛速度快。

  与其他系统的比较。我们还将我们的方法与使用其他模态约束生成图像的高级方法进行了比较。

  • GauGAN:原始的GauGAN模型将语义映射作为输入。我们发现,GauGAN模型也可以用作从语义草图生成图像的方法,草图的边缘有类别标签,如图7的第7列所示。在我们的实验中,我们测试了在数据集COCO Stuff上预训练的公共模型。此外,我们通过将收集到的SketchyCOCO数据集上的语义草图作为输入来训练一个模型。结果如图7第六列和第八列所示。
  • Ashual等人:Ashual等人提出的方法可以使用布局或者场景图作为输入。因此,我们将这两种模式与预先训练的模型进行了比较。为了确保公平性,我们只测试包含在SketchyCOCO数据集中的类别,并将最小对象数量的参数设置为1。结果如图7第2列和第4列所示。

  定性的结果。从图7中可以看出,手绘草图生成的图像比Ashual等人的场景图或布局生成的图像更加逼真,特别是在前景对象区域。这是因为与场景图或布局相比,手绘草图提供了更严格的约束(它提供了比场景图或布局更多的信息,包括姿态和形状信息)。与以语义草图为输入的GauGAN相比,我们的方法通常会生成更真实的图像。此外,与使用语义映射训练的GauGAN模型相比,我们的方法也获得了更好的结果,这可以在生成的前景对象区域中找到证据(GauGAN生成的奶牛和大象纹理模糊或不合理)。

请添加图片描述

图7:场景级比较。请详见5.2节正文。

  总的来说,我们的方法在整体视觉质量和前景对象的真实感方面可以产生比GauGAN和Ashual等人的方法更好的结果。整个图像的整体视觉质量也可与最先进的系统进行比较。

  定量结果。我们采用三种度量来评估生成的场景级图像的可信度和真实性。除了FID,结构相似性度量(SSIM)是用于量化生成的图像和真实标签图像的相似程度的另一个度量。SSIM值越高意味着距离越近。最后一个度量称为FID(局部),用于计算生成图像中前景对象区域的FID值。从表2中我们可以看到,除了与GauGAN语义图模型和Ashual等人的布局模型在某些度量方面的比较之外,大多数比较结果都证实了我们在定性研究中的观察结果和结论。

  使用语义图训练的GauGAN模型在FID和SSIM方面优于我们的模型有几个原因。除了语义图数据作为更严格的约束所提供的固有优势之外,使用语义图训练的GauGAN模型包含COCO Stuff数据集中的所有类别,而我们的模型在SketchyCOCO数据集中仅看到17个类别。因此,GauGAN生成的图像中实例的类别和数量与真实标签相同,而我们的结果只能包含其中的一部分。Ashual等人的布局模型在FID和SSIM方面优于我们的模型。这可能是因为当生成背景时,输入布局信息可以提供比草图更明确的空间约束。然而,我们的方法在FID(局部)度量上具有更大的优势,这证实了我们在定性结果分析中的观察,即我们的方法可以生成更真实的前景图像。由于我们的方法将手绘草图作为输入,这可能比GauGAN使用的语义图更容易理解,因此我们认为,与GauGAN模型相比,我们的方法对于图像生成工具来说仍然是一个有竞争力的系统。

5.3. 人工评估

  我们对对象级和场景级结果进行了人工评估研究。如表1所示,我们评估了八个对象级和五个场景级比较模型的结果的真实性和可信度。我们分别选择了51组对象级测试样本和37组场景级测试样本。在真实性评估中,30名参与者被要求从每个测试样本的比较模型生成的图像中选出他们认为最“真实”的结果图像。对于可信度评估,我们根据SketchyGAN对八个对象级比较模型进行评估。具体来说,对于每个样本图像,相同的30名参与者看到了同一类别的六个随机草图,其中一个是实际的输入/查询草图。参与者被要求选择他们认为得到输出图像的草图。对于五个场景级比较模型,30名参与者被要求以1到4的比例对GT图像和结果图像之间的相似度进行评分,其中4表示非常满意,1表示非常不满意。总共,分别收集了51×8×30=12240和51×30=1530条数据用于对象级可信度和真实性评估,37×5×30=5550和37×30=1110条数据用于场景级可信度和真实性评估。

  表1中的对象级统计结果一般证实了可信度的定量结果。场景级评估表明,我们的方法在真实性方面得分最高,这与FID测量的定量结果不一致。这可能是因为参与者更关心前景物体的视觉质量而不是背景区域。在场景级的可信度方面,GauGAN优于我们的方法,因为从真实标签图像生成的输入语义图提供了更准确的约束。

5.4. 消融实验

  我们进行了全面的实验来分析我们的方法的每个组成部分,包括:a)编码器 E E E是否已经学习了高水平的跨域属性信息,b)联合鉴别器 D J D_{J} DJ如何工作,c)哪个GAN模型最适合我们的方法,d)是否可以使用多尺度鉴别器来改善结果。由于篇幅有限,在本节中,我们只对最重要的研究,即研究a)进行了调查,而将其他研究放在补充材料中。

  我们测试不同风格的绘图,包括由各种过滤器生成的草图和边缘图作为输入。结果如图8所示。我们可以看到,我们的模型适用于各种各样的线条绘制风格,尽管其中一些并不包括在训练数据集中。我们认为,来自编码器 E E E的属性向量可以提取线条图的高级属性信息,无论它们是什么风格。

请添加图片描述

图8:不同风格的边缘或草图的结果。第1至4列:不同的手绘草图。第5至9列:来自canny, FDoG, Photocopy (PC), Photo-sketch和XDoG的边缘。

6. 讨论与局限性

  背景生成。我们研究了背景生成的可控性和鲁棒性。如图9(a)至(c)所示,我们逐步将背景类别添加到空白背景中。结果,输出图像根据新添加的背景草图被合理地改变,这表明这些草图确实控制了图像的不同区域的生成。可以看出,虽然背景中存在较大的无约束空白,但输出图像仍然合理。我们研究我们的方法产生不同结果的能力。如图9(c)至(e)所示,我们改变场景草图中前景对象的位置和大小,同时保持背景不变。因此,背景生成发生了重大变化。将前景作为背景训练的约束,前景和背景很好地融合。我们可以看到这种方法甚至会在长颈鹿下面产生阴影。

请添加图片描述

图9:从上到下:输入草图和我们方法生成的图像。

  数据集偏差。在SketchyCOCO的当前版本中,用于对象级训练的所有前景图像都是从COCO Stuff数据集收集的。在数据收集阶段,我们只丢弃主要部分被COCO Stuff遮挡的前景对象。为了测量前景对象的视图多样性,我们从训练数据中的每个类中随机抽取50个示例,并根据x-y平面上的视角将视图量化为八个范围。该结果如图10所示。正如我们所看到的,有一些主要的视角,例如侧视图。我们正在考虑扩充SketchyCOCO,以创建一个更平衡的数据集。

请添加图片描述

图10:SketchyCOCO中前景对象视角统计结果。

  草图分割。我们目前在场景草图的实例分割步骤中采用了[40]中的实例分割算法。我们的实验发现,所采用的分割算法可能无法分割场景草图中的一些对象,其中对象级草图过于抽象。为了解决这个问题,我们正在考虑为未来的场景草图分割任务定制一种更有效的算法。

7. 结论

  本文首次提出了一种基于神经网络的框架来解决从手绘草图生成场景级图像的问题。我们基于MS COCO Stuff构建了一个名SketchyCOCO的大型复合数据集,用于评估我们的解决方案。综合实验表明,所提出的方法可以从广泛的手绘草图中生成真实可信的图像。

致谢

  我们感谢所有评审员的宝贵意见和反馈。我们感谢吴家军提出的宝贵建议和富有成效的讨论,从而促成了EdgeGAN模型。这项工作得到了广东省自然科学基金(批准号A1515011075)和中国国家自然科学基金资助(批准号61972433,61921006)的支持。

补充材料

1. 目标函数

  设 s ~ \tilde{s} s~是输出边缘图像对, s s s是真实边缘图像对; z z z是噪声向量,而 s ^ \hat{s} s^是随机样本。基于我们的初步结果,我们利用WGAN-GP作为网络模型的基础,以实现稳定和有效的训练。WGAN-GP的损失函数定义如下:
L D J ( D ) = E s ~ ∼ P g [ D J ( s ~ ) ] − E s ∼ P r [ D J ( s ) ] + λ E s ^ ∼ P s ^ [ ( ∥ ∇ s ^ D J ( s ^ ) ∥ 2 − 1 ) 2 ] . \begin{array}{c} \mathcal{L}_{D_{J}}(D)=\underset{\tilde{s} \sim \mathbb{P}_{g}}{\mathbb{E}}\left[D_{J}(\tilde{s})\right]-\underset{s \sim \mathbb{P}_{r}}{\mathbb{E}}\left[D_{J}(s)\right]+\lambda \underset{\hat{s} \sim \mathbb{P}_{\hat{s}}}{\mathbb{E}}\left[\left(\left\|\nabla_{\hat{s}} D_{J}(\hat{s})\right\|_{2}-1\right)^{2}\right]. \end{array} LDJ(D)=s~PgE[DJ(s~)]sPrE[DJ(s)]+λs^Ps^E[(s^DJ(s^)21)2].

L D J ( G ) = E s ~ ∼ P g [ − D J ( s ~ ) ] \mathcal{L}_{D_{J}}(G)=\underset{\tilde{s} \sim \mathbb{P}_{g}}{\mathbb{E}}\left[-D_{J}(\tilde{s})\right] LDJ(G)=s~PgE[DJ(s~)]

  设 x ~ \tilde{x} x~ x x x x ^ \hat{x} x^分别为生成的边、实边和随机生成的边,而 y ~ \tilde{y} y~ y y y y ^ \hat{y} y^分别为生成自然图像、真实图像和随机生成自然图像。由于鉴别器 D E D_{E} DE D I D_{I} DI采用与 D J D_{J} DJ相同的架构,我们可以将其损失定义为:
L D E ( D ) = E x ~ ∼ P g [ D E ( x ~ ) ] − E x ∼ P r [ D E ( x ) ] + λ E x ^ ∼ P x ^ [ ( ∥ ∇ x ^ D E ( x ^ ) ∥ 2 − 1 ) 2 ] . \mathcal{L}_{D_{E}}(D)=\underset{\tilde{x} \sim \mathbb{P}_{g}}{\mathbb{E}}\left[D_{E}(\tilde{x})\right]-\underset{x \sim \mathbb{P}_{r}}{\mathbb{E}}\left[D_{E}(x)\right]+\lambda \underset{\hat{x} \sim \mathbb{P}_{\hat{x}}}{\mathbb{E}}\left[\left(\left\|\nabla_{\hat{x}} D_{E}(\hat{x})\right\|_{2}-1\right)^{2}\right] . LDE(D)=x~PgE[DE(x~)]xPrE[DE(x)]+λx^Px^E[(x^DE(x^)21)2].

L D E ( G ) = E x ~ ∼ P g [ − D E ( x ~ ) ] \mathcal{L}_{D_{E}}(G)=\underset{\tilde{x} \sim \mathbb{P}_{g}}{\mathbb{E}}\left[-D_{E}(\tilde{x})\right] LDE(G)=x~PgE[DE(x~)]

L D I = E y ~ ∼ P g [ D I ( y ~ ) ] − E y ∼ P r [ D I ( y ) ] + λ E y ^ ∼ P y ^ [ ( ∥ ∇ y ^ D I ( y ^ ) ∥ 2 − 1 ) 2 ] . \mathcal{L}_{D_{I}}=\underset{\tilde{y} \sim \mathbb{P}_{g}}{\mathbb{E}}\left[D_{I}(\tilde{y})\right]-\underset{y \sim \mathbb{P}_{r}}{\mathbb{E}}\left[D_{I}(y)\right]+\lambda \underset{\hat{y} \sim \mathbb{P}_{\hat{y}}}{\mathbb{E}}\left[\left(\left\|\nabla_{\hat{y}} D_{I}(\hat{y})\right\|_{2}-1\right)^{2}\right]. LDI=y~PgE[DI(y~)]yPrE[DI(y)]+λy^Py^E[(y^DI(y^)21)2].

L D I ( G ) = E y ~ ∼ P g [ − D I ( y ~ ) ] \mathcal{L}_{D_{I}}(G)=\underset{\tilde{y} \sim \mathbb{P}_{g}}{\mathbb{E}}\left[-D_{I}(\tilde{y})\right] LDI(G)=y~PgE[DI(y~)]

  在训练过程中,分别更新 D J D_{J} DJ D E D_{E} DE D I D_{I} DI使方程1、方程3和方程5最小化。我们的分类器用于预测类标签。我们用focal loss作为分类损失。设 c c c为预测类标签。形式上,真实标签和预测标签之间的损失函数定义为:

L a c ( D ) = E [ l o g P ( C = c ∣ y ) ] . \mathcal{L}_{ac}\left( D \right) =\mathbb{E}\left[ logP\left( C=c|y \right) \right]. Lac(D)=E[logP(C=cy)].
  训练分类器使式7最大化。当分类器固定时,生成器也使 L a c ( G ) = L a c ( D ) \mathcal{L}_{ac}\left( G \right) =\mathcal{L}_{ac}\left( D \right) Lac(G)=Lac(D)最大化。

  我们用随机输入向量 z z z和生成向量 z ~ \tilde{z} z~之间的 L 1 L1 L1损失来训练编码器 E E E z ~ \tilde{z} z~来自于生成器 G E G_{E} GE的边缘输出 x ~ \tilde{x} x~的编码。形式上,损失函数定义为:

L 1 latent ( E ) = E z ∼ P z ∣ ∣ z − E ( x ~ ) ∣ ∣ 1 . \mathcal{L}_{1}^{\text{latent}}\left( E \right) =\underset{z\sim \mathbb{P}_z}{\mathbb{E}}||z-E\left( \tilde{x} \right) ||_1. L1latent(E)=zPzE∣∣zE(x~)1.
  综上所述,生成器 G E G_{E} GE的损失函数为:

L G E ( G ) = L D J ( G ) + L D E ( G ) . \mathcal{L}_{G_E}\left( G \right) =\mathcal{L}_{D_J}\left( G \right) +\mathcal{L}_{D_E}\left( G \right) . LGE(G)=LDJ(G)+LDE(G).
  生成器 G I G_{I} GI的损失函数为:
L G I ( G ) = L D J ( G ) + L D I ( G ) − L a c ( G ) . \mathcal{L}_{G_I}\left( G \right) =\mathcal{L}_{D_J}\left( G \right) +\mathcal{L}_{D_I}\left( G \right) -\mathcal{L}_{ac}\left( G \right) . LGI(G)=LDJ(G)+LDI(G)Lac(G).
  生成器 G E G_{E} GE使式9最小,生成器 G I G_{I} GI使式10最小。

2. 实现细节

  在实例生成阶段,我们用100个epoch训练模型,随机生成均值为0,方差为1.0的正态分布的潜在向量。我们用instance normalization训练生成器和鉴别器。编码器使用instance normalization,并且ReLU使用ResNet块实现,分类器使用MRU块实现。我们使用ReLU和Tanh作为生成器,而使用Leaky ReLU作为鉴别器。在DCGAN实例中,我们使用Adam优化器,对所有网络的学习率为0.0002,beta为0.5。在WGAN的实例中,我们在每次梯度更新后将权值固定在-0.01和0.01之间,并对所有网络使用学习率为0.0002的RMSprop优化器。以WGANGP为例,我们将梯度惩罚 λ \lambda λ的权重设置为10,对所有网络使用学习率为0.0002的RMSprop优化器。对于背景生成,我们用110个epoch训练pix2pix模型。我们使用XDoG获取对象的边缘图作为训练数据。

3. 来自SketchyCOCO的代表性样本

  我们在图11中展示了更多的SketchyCOCO示例,包括5元组真实标签数据。

请添加图片描述

图11:SketchyCOCO的五元组真实标签数据的更多示例,即:(1){前景图像(a)、前景草图(b)、前景边缘图(c)},(2){背景图像(e)、背景草图(f)},(3){场景图像(d)、前景图像和背景草图(g)},(4){场景图像(d)、场景草图(h)},(5)草图分割(i)。与描绘单个对象的前景草图不同,背景草图(如草和树)是有目的地设计来描绘特定区域的(例如,几棵树草图描绘一个森林)。

4. 对象级结果

4.1. 更多的对象级比较结果

  我们将edgeGAN与ContextualGAN , SketchyGAN , pix2pix在不同的训练策略下进行比较。对比结果如图13所示。该图是对本文图6的补充。

请添加图片描述
请添加图片描述
请添加图片描述

图13:从左到右:输入草图、edgeGAN的结果、ContextualGAN (a)、SketchyGAN的两种训练模式(即SketchyGAN- E (b1)和SketchyGAN- E&S) (b2)以及pix2pix的四种训练模式(即pix2pix- E - SEP (c1)、pix2pix- E – MIX (c2)、pix2pix- S - MIX (c3)和pix2pix- S - SEP (c4))。

4.2. 在对象级结果上的一些128×128结果

  我们在分辨率为128 × 128的图像上训练模型。与在分辨率为64 × 64的图像上进行训练不同的是,我们多使用了一个鉴别器,其结构是 D I D_{I} DI的副本。我们将其输入大小设置为64 × 64,以保证全局信息。此外,我们还将 D I D_{I} DI的输入大小设置为256 × 256,使模型更加关注局部细节。部分结果如图14所示。

请添加图片描述

图14:更多的在对象级的128 × 128的结果。

5. 场景级结果

  在本节中,我们在图15中展示了更多基于64 × 64对象级结果生成的128 × 128场景级结果,在图16中展示了更多基于128 × 128对象级结果生成的256 × 256结果。

请添加图片描述

图15:更多的128 × 128的场景级结果。

请添加图片描述
请添加图片描述

图16:更多的256 × 256的场景级结果。

6. 消融实验

  • 联合鉴别器 D J D_{J} DJ是如何工作的?我们将宽度通道中的边缘生成器和图像生成器的输出作为联合图像,用作 D J D_{J} DJ的伪输入。将真实边缘图像对作为真实输入。因此,在对抗性损失的约束下,从同一向量生成的边缘和图像相互对应。在推理阶段,可以将属性向量映射到接近输入草图的边缘图像,也可以将属性向量映射到具有合理姿势和形状的自然图像。如图12所示,如果没有 D J D_{J} DJ,生成的图像的姿势和形状是不正确的。

请添加图片描述

图12:网络消融结果。完整模型基于WGAN-gp,包含DJ、DI和DE。WGAN和DCGAN是分别用WGAN和DCCAN取代WGAN-gp的结构。
  • 哪种GAN模型最适合我们的方法?WGAN-gp被证明比DCGAN和WGAN更适合于小数据集,使训练更稳定,产生更高质量的结果。如图12所示,当我们将其更改为DCGAN或WGAN时,结果在可信度和真实性方面都变得更差。因此,我们的网络基于WGAN-gp。更多定量结果如表2所示。
表2:消融研究中的对象级评分。

请添加图片描述

  • 是否可以使用多尺度鉴别器来改善结果?我们使用多尺度鉴别器来提高生成图像的质量。对于64×64的分辨率,我们添加了边缘鉴别器( D E D_{E} DE)和图像鉴别器( D I D_{I} DI),其输入分别是放大的边缘(128×128)和图像(128×28)。因此,该模型可以学习更小的感受野,从而更加关注局部细节。如图12所示,当没有 D I D_{I} DI D E D_{E} DE时,局部细节的质量不如完整模型的质量。如表2所示,完整模型在真实性和可信度度量上都优于没有多尺度鉴别器的模型。

总结

  以上就是本篇论文翻译的全部内容了,本篇论文也对从手绘草图生成日常生活中的图像这一研究领域提供了一种新的思路,同时也验证了本文所提出的方法的有效性,是一篇值得一读的论文。此篇论文翻译就到这里了,下篇论文翻译见!

猜你喜欢

转载自blog.csdn.net/IronmanJay/article/details/129567037