Controlling Style and Semantics in Weakly-Supervised Image Generation(在弱监督图像生成中控制样式和语义)

本篇博客是对论文 Controlling Style and Semantics in Weakly-Supervised Image Generation 的翻译,因本人水平有限,翻译不对的地方还请不吝赐教!
论文下载地址: PDF

在这里插入图片描述
图片1:我们的方法可以通过高级属性或文本描述来控制场景及其对象的样式。它还支持通过遮罩进行图像操作,包括移动、删除或添加对象实例。背景和前景的分解(右上角)有助于场景的局部变化

摘要

我们提出了一种弱监督的复杂场景条件图像生成方法,用户可以很好地控制场景中出现的对象。我们利用稀疏语义映射来控制对象形状和类,以及文本描述或属性来控制本地和全局样式。为了进一步增强场景的可控性,我们提出了一种分背景和前景的两步生成方案。用于训练模型的标签映射是由一个大型词汇表对象检测器生成的,该检测器允许访问未标记的数据集,并提供结构化的实例信息。在这样的背景下,我们报告了更好的FID分数,而在完全监督的背景下,模型是在真值语义图上训练的。我们还展示了我们的模型在复杂数据集(如COCO和Visual Genome)上操纵场景的能力。

1.介绍

深度生成模型,如V-AEs[22]和GANs[9]使得学习各种类型的数据(包括图像或文本)上的复杂分布成为可能。在图像方面,最近的技术进步[13、19、27、28、45、1]使GANs能够为大量的类生成逼真的图像。然而,这些模型通常不能提供对图像特征(如外观、形状、纹理或颜色)的高级控制,并且它们无法在场景中精确地建模多个(或复合)对象,从而限制了它们的实际应用。

一个相关的研究方向是在产生过程中分离变异因素[20]。虽然这些方法可以通过在不同级别注入噪声来产生不同风格的图像,但是风格因素的学习没有任何疏忽,这使得用户对生成过程的处理变得松散。此外,它们的适用性仅在单域图像(如人脸、汽车或鸟类)中得到了证明。一些条件方法允许使用属性[42、12]或自然语言[46、47、41]控制图像的样式,但是同样,这些方法仅在单域数据集上显示出令人信服的结果。

生成建模的一个关键方面是所需语义信息的数量:i)弱条件(例如描述场景的句子)使任务受限制且难以学习,从而可能导致复杂数据集上的图像不连贯。另一方面,ii)丰富的语义信息(在极端情况下,使用完整的分割掩码)可产生最佳的生成质量,但需要艺术家或数据集注释者付出更多的努力。这种条件丰富的模型的应用广泛,包括艺术,动画,图像处理和视频游戏的逼真的纹理。此类别中的现有作品[4,30,16,40,29]通常需要带有每个像素类注释的手工标记的分割蒙版。不幸的是,这对于诸如图像处理之类的下游应用来说不够灵活,其中艺术家面临以连贯的方式修改语义蒙版的负担。常见的转换(例如移动,删除或替换对象)需要实例信息(并不总是可用)和适当填充背景的策略。此外,这些模型几乎不对图像及其对象的样式进行高级控制。

我们的工作通过依赖基于掩码的生成(使用我们称为稀疏掩码的变体)和基于文本的生成(可用于控制场景中包含的对象的样式及其全局方面),将掩码与强语义信息结合起来。图1将我们的想法概念化。我们的方法使用一个大词汇表对象检测器来获取注释,然后使用注释以弱监督的方式训练生成模型。输入掩码是稀疏的,并保留实例信息(使它们易于操作),并且可以从图像或视频中推断。

图2突出显示了当前生成模型的另一个问题:由于对象之间学习到的相关性,对对象所做的局部更改(例如移动或删除)可以全局影响场景。虽然这些耦合表示有助于最大化场景连贯性,但它们不允许用户修改场景的局部部分而不影响其余部分。为此,我们的方法依赖于一个多步骤的生成过程,我们首先生成一个背景图像,然后根据前者生成前景对象。在操作前景对象时,也可以冻结背景图像。
在这里插入图片描述
图片2:左:在单个生成器模型中,由于学习到的相关性,局部更改(在本例中,将狗的颜色更改为白色)会全局影响场景; 右:在两步模型中,我们可以在处理场景中的实例时冻结第一步(背景)的结果。

最后,我们在 COCO[25,5,2]和Visual Genome[24]对我们的方法进行了评估,并且表明我们的弱监督设置可以获得比完全监督设置更好的FID分数[13],同时对大型未标记数据集更可控和可扩展。

总结的说,我们的贡献是:

  • 我们提出了使用稀疏掩码的弱监督训练:从对象检测器推断出的语义掩码。 这些易于绘制或操作,并允许在大型未标记数据集上训练模型。
  • 我们表明,我们的设置比现有的那些在完全监督情况下训练出的模型,实现更好的FID得分。因为我们有能力更好地模拟精细的细节。
  • 我们提出了一个耦合的多步的生成方案,在不牺牲视觉质量的前提下,将背景和前景的生成分离开来,并且有利于局部操作。
  • 一种控制场景及其实例的样式的方法,使用高级属性或带有注意机制的自然语言。
  • 我们很快就会发布我们的代码

相关工作

GAN模型最近的成功引发了人们对条件图像合成的兴趣,其中图像是从分类标签[27、28、45、1]、文本[31、46、47、41]、语义映射[16、40、29]或其他领域的条件图像[49、16]生成的。

基于语义映射的图像生成 在这个设置中,语义分割图被转换成自然图像。非对抗性方法通常基于感知损失[4,30],而GAN架构基于基于补丁的鉴别器[16]、渐进增长[40,19]和条件批处理规范化,其中语义映射以不同分辨率馈送到模型[29]。由于其稳定性和令人信服的结果,我们决定将我们的架构建立在[29]的基础上。大多数方法都是在手工标记的掩码上训练的(限制了它们在自然情况下的应用),但是[29]给出了一个例子,其中该模型在使用语义分割模型推断的掩码上受到弱监督[3]。我们的模型也是弱监督的,但是我们使用对象检测器来代替语义分割模型,它允许我们在操作过程中维护实例信息,并导致稀疏的掩码。早期的工作集中在类语义上,而最近的方法支持某种程度的样式控制。例如,[40]训练一个实例自动编码器,允许用户从一组模式中选择一个潜在代码,而[29]训练一个VAE,通过复制引导图像的样式来控制生成图像的全局样式。然而,这两种方法都不提供细粒度的样式控制(例如,将对象的颜色更改为红色)。另一个最新的趋势是从结构化布局生成图像,作为简化任务的中间步骤,并将其转换为语义映射。在这方面,有关于从边界框布局[48,14]和场景图[17]生成的工作。

语义控制 现有的方法不允许对语义图进行简单的操作,因为它们不存在用于对现有图像进行编码的接口。原则上,可以在从语义分割模型推断出的映射上训练弱监督模型,正如[29]对景观所做的那样。但是,由于实例信息不可用,因此操作仍然具有挑战性。此外,由于标签掩码很密集,即使是简单的转换,例如删除或移动对象,也会在语义映射中创建需要艺术家调整的孔。密集的mask还会使任务相对于场景的背景方面(例如天空、陆地、天气)过于受限,这就减少了样式控制的空间。

基于文本的生成 最近的一些模型对文本数据的生成过程进行了研究。它们通常基于自回归结构[32]和GANs[31,46,47,41]。众所周知,学习使用GANs从文本生成图像是困难的,因为任务是无约束的。为了简化训练过程,[46,47]提出了一个名为StackGAN的两阶段体系结构。为了避免与GAN联合训练语言模型相关联的不稳定性,他们使用预先训练的句子编码器[23],该编码器将字幕编码为固定长度的向量,然后将其输入到模型中。更高级的架构,比如AttnGAN[41]使用了注意机制,我们将在下面的一段中讨论这个机制。这些方法在单域数据集(鸟、花等)上显示了有趣的结果,但在复杂数据集(如COCO[25])上效果较差,因为仅从文本生成连贯场景是固有的困难。一些著作[1844]已经证明,生成模型可以从每个图像的多个不同的文本描述作为输入中获益。最后,我们还没有意识到任何先前的工作都会影响文本和语义映射(我们的设置)的生成过程。

多步骤生成 像[43,36]这样的方法旨在分离背景和前景生成。尽管完全无监督解纠缠是不可能的[26],但它仍然可以通过某种形式的归纳偏差来实现——无论是在模型结构中还是在损失函数中。[43]使用空间变换器来实现分离,[36]使用对象边界框。这两种方法在描述中心对象的单域数据集上都显示了令人信服的结果,但并不直接适用于更具挑战性的数据集。在我们的环境中,我们对完全解开不感兴趣(即,我们不假设背景和前景之间具有独立性),而只是希望将两个步骤分开,同时保持它们可解释。 我们的模型仍然利用类别之间的相关性来最大化视觉质量,并应用于具有复杂场景的数据集。 最后,也有关于使用对话进行交互式生成的工作[8,6,34]。

GAN中的注意模式 对于无条件模型(或以简单类标签为条件的模型),自我注意的GANs[45,1]使用视觉注意来提高空间连贯性。对于文本生成,[41]使用句子视觉注意与LSTM编码器结合,但仅在生成器中使用。而是字幕通过基于从预先训练的起始点网络提取的特征的有监督丢失来实施,而不是在鉴别器中国增加注意。在我们的例子中,我们使用了一种新的注意形式(句子语义),它被应用于语义映射而不是卷积特征映射,其计算成本与图像分辨率无关。它既适用于生成器,也适用于鉴别器,在句子方面,它具有基于变压器的[39]编码器。

方法:

3.1 框架

我们的主要兴趣是复杂场景的条件图像生成,用户可以对场景中出现的对象进行精细控制。先前的工作主要集中在从真实mask(49、16、40、29)生成对象上,或者基于简单的手绘mask(29)生成室外场景上。虽然前一种方法需要大量的标记工作,但后一种方法并不直接适用于复杂的数据集,例如COCO Stuff[2],其图像由大量具有复杂(难以绘制)形状的类组成。我们通过引入一个新的模型来解决这些问题,该模型以稀疏遮罩(控制对象形状和类)和文本/属性(控制样式和纹理)为条件。这使得用户能够通过各种图像操作(例如移动、缩放或删除实例、从另一个图像或形状数据库添加实例)以及使用单个实例上的高级属性(例如红色、绿色、潮湿、发亮)控制的样式操作来生成真实场景或者使用引用对象和全局上下文的文本(例如,“夜晚的红色汽车”)。在后一种情况下,视觉-文本关联不是明确定义的,而是以无监督的方式学习的。

稀疏遮罩 我们没有像在[16,40,29]中那样训练精确分割掩码的模型,而是使用从大词汇表对象检测器自动生成的。尽掩码管这个过程引入了一些噪声,但它也有一个好处,那就是提供关于每个实例的信息(这些信息在其他情况下可能并不总是可用),包括需要大量手动操作才能在新数据集中标记的对象部分。通常,我们的类集包括可数对象(人,汽车等),部分对象(灯,窗户,门等)以及不可数类(草,水,雪),它们通常称为 作为COCO术语中的“东西” [2]。 对于后一种类别,对象检测器仍可以提供有用的有关背景的稀疏信息,同时保持模型自主以填补空白。 我们将在第4.2节中介绍目标检测设置的详细信息。

两步生成 在没有约束的情况下,条件模型学习训练数据中观察到的类关联。例如,狗通常站在青草上,斑马则站在黄草上。虽然这一特征对于最大化场景连贯性是有用的,但是当只需要图像中的局部变化时,这是不可取的。我们观察到类似的全局效应对其他局部变换,如移动对象或改变其属性,一般来说,输入的小扰动会导致输出的大变化。我们在图2中展示了这样一个例子。为了解决这个问题,我们提出了一种我们称之为两步模型的体系结构变体,它由两个级联生成器组成(图3)。第一步(生成器G1)负责生成背景图像,而第二步(生成器G2)生成基于背景图像的前景图像。构成背景和前景的定义是任意的:我们的选择是按类别分开:静态/不可数对象(如建筑物、道路、草地和其他表面)被指定给背景,移动/可数对象被指定给前景。有些类可以根据父类切换角色,例如默认情况下窗口是后台,但如果它是前台对象(如汽车)的子对象,则它将成为前台。
在这里插入图片描述
图3 左:一步模型(增强的SPADE)。 右:两步模型。 背景生成器G1将背景掩模(由S块处理)和完整掩模(由Savg块处理,其中去除了位置信息)作为输入。 前景发生器将G1和前景蒙版的输出作为输入。 最后,将两个输出进行alpha混合。 为了方便起见,我们在此图中未显示属性/文本

将局部变换应用于前景对象时,可以方便地冻结背景以避免全局更改。 作为附带好处,这还导致较低的计算成本来重新生成图像。 与不纠结的工作[43,36]要求背景独立于前景而不必针对视觉质量进行优化不同,我们的目标是在最大程度提高定性结果的同时实现分离。 在我们的设置中,G1既暴露于背景对象又暴露于前景对象,但是其架构的设计方式是不呈现前景信息,而仅用于在背景中引起偏差(请参阅第3.2节)。

属性和标题 我们的方法允许用户使用高级属性控制单个实例的样式。这些属性指的是外观因素,例如颜色(例如白色、黑色、红色)、材质(木材、玻璃),甚至是特定于类(无叶、雪地)的修改器,但不是形状或大小,因为这两个是由 mask 决定的。一个对象还可以组合多个属性(例如,黑色和白色)或不包含任何属性-在这种情况下,生成器将选择预定义的模式。 由于不需要为每个对象都指定属性,因此该设置为用户提供了很大的灵活性来操纵场景。

或者,可以考虑使用自然语言进行调节。 这具有更具表现力的优点,并且除了特定于实例的方面之外,还允许用户控制场景的全局方面(例如,一天中的时间,天气,风景)。 尽管这种条件比普通属性更难学习,但是在第3.2节中,我们引入了一种新的注意力模型,该模型在不过度增加模型复杂性的情况下显示了令人信服的结果。

3.2 架构

我们在SPADE[29]的基础上构建了我们的体系结构,SPADE[29]是一个有条件的GAN体系结构,它在许多场景中都表现出了稳定性。在原始公式中,语义映射通过条件批规范化以提高空间分辨率的方式反馈给生成器。它们使用多尺度鉴别器[40],其中语义映射连接到输入。此外,它们使用预先训练的VGG网络[35]和鉴别器中的特征匹配损失[40]来增加对抗性损失和知觉损失。

一步模式 因为这个模型(图3,左)是一个基线,所以我们保持它的架构尽可能接近[29]的参考模型。我们建议通过修改生成器的输入层和条件批处理规范化层(SPADE blocks),在该体系结构中插入所需的属性/标题信息,这是语义信息被输入到模型中的地方。我们把这些扩大铁锹块命名为。我们将同样的变化应用到鉴别器的输入层。

扩大 SPADE 块 在最初的SPADE[29]中,类掩码(即语义映射)被转换为一个one-hot表示,并使用具有128个输出通道的3×3内核进行卷积。得到的特征映射通过ReLU非线性,再次卷积得到两个特征映射 γ \gamma β \beta ,分别是条件批归一化增益和偏差。然后将归一化计算为 y = B N x 1 + γ + β y=BN(x)\bigodot(1+\gamma)+\beta ,其中BN(x)是无参数的批量标准化。虽然one-hot 掩码上的3×3卷积在应用于一组小类时是足够的,但当应用于大量类时(我们的设置)会导致参数过多。因此,我们将 one-hot 掩模上的3×3卷积替换为64维卷积。像素级嵌入层,然后是3×3卷积。我们将同样的原理应用于发生器和鉴别器的第一层。为了添加样式信息,我们将另一个64维连接起来。类嵌入的表示(像素级)。我们将在接下来的两段中解释如何导出这些表示。

属性条件作用 对于属性,我们采用包包法学习64维。 嵌入每个可能的属性,并将分配给实例的所有属性嵌入都简单地广播到实例的形状,相加在一起,然后串联到类嵌入中。 图4(S框)描绘了该过程。 为了有效地实现此目的,我们创建了一个多热点属性掩码(在与分配给该实例的属性相对应的位置中为1,在其他位置为0),并将其通过具有Nattr输入通道和64个输出通道的1×1卷积层进行馈送。 属性嵌入在类之间共享,而不是特定于类的。 这有助于模型更好地泛化(例如,“白色”之类的颜色适用于车辆和动物)以及看不见的组合。

在这里插入图片描述
图4 我们的SPADE块增加了属性。 将类和属性嵌入进行串联和处理,以生成条件批量归一化增益和偏差。 在属性掩码中,嵌入采用它们所引用的实例的形状。 在同时使用S和Savg的两步模型的G1中,嵌入权重是共享的。

文字条件 尽管先前的工作使用固定长度矢量表示[46,47]或与RNN耦合的单层注意力模型[41],但场景的多样性导致我们使用完全基于自我注意力的功能更强大的编码器[39] 。我们使用预训练的BERTbase模型[7]对图像标题进行编码,该模型由12个注意层和110M参数组成。由于过多的内存需求和潜在的不稳定性,将这种模型附加到GAN并对其进行微调是不合理的。相反,我们冻结预训练的模型并对句子进行编码,在最后一层(即倒数第二层)之前提取其隐藏的表示形式,并为我们的任务训练一个自定义的多头注意层。文献[7]也提出了这种方法,事实证明,该方法在各种NLP下游任务上都是成功的,尤其是当这些任务涉及的是小型数据集或词汇量有限时。此外,我们无需预先将语言模型存储在内存中,而是简单地预先计算句子表示并将其缓存。

接下来,我们描述可训练注意力层的设计(图5)。我们的注意力机制不同于句子-视觉注意力[41],后者的注意力直接应用于生成器内部的卷积特征图。取而代之,我们提出了一种句子语义注意的形式,该形式在计算上是有效的,可解释的和模块化的。可以采用与连接属性相同的方式将其连接到现有的SPADE层。与成本为O(nd2)的句子视觉注意力相比(其中n为句子长度,d×d为特征图分辨率),我们的方法的成本为O(nc)(其中c为类数) ,即与图像分辨率无关。我们构造了一组大小为h = 64(其中h是关注头的大小)的c个查询(即每个类一个)。我们将句子的每个标记的隐藏表示提供给两个线性层,一个用于键,一个用于值。最后,我们计算了一个按比例缩放的点积注意力[39],它产生了一组c值。为了使SPADE块能够关注句子的多个部分,我们使用了12个关注头,它们的输出值被连接起来并通过线性层进一步转换。可以认为此过程是生成上下文化的类嵌入,即根据句子定制的类嵌入。例如,给定一个描述汽车和标题“红色汽车和一个人”的语义图,对应于视觉类汽车的查询很可能会出现“红色汽车”,并且相应的值将导致该模型可为汽车的位置添加红色。最后,将上下文化的类嵌入通过与一热向量的逐像素矩阵乘法应用于语义蒙版,并以与属性相同的方式连接到类嵌入。在当前的表述中,这种方法无法区分同一类的实例。我们建议在第5节中提出缓解措施。

在这里插入图片描述
图5 通过文本调节样式的注意机制。 句子(长度n = 7,包括定界符)被馈送到预训练的注意力编码器,并且使用两个可训练的线性层将每个标记转换为键和值。 针对每个类学习查询,并且评估注意力功能会导致一组上下文化的类嵌入,这些嵌入与常规的语义嵌入连接在一起。

两步模型 该模型由两个串联的生成器组成。 G1生成背景,即模型p(xbg),而G2生成以背景为条件的前景,即p(xfg | xbg)。 训练这种模型的一个显着困难是,训练集中永远不会观察到背景图像(我们只观察最终图像),因此我们不能对G1使用中间判别器。 取而代之的是,我们使用单个最终标识符,并以将标识符的梯度(加上辅助损耗)重定向到正确的生成器的方式设计架构。 自然的选择是alpha混合,出于不同的原因,[43,36]中也使用了它。 直观地,G2生成RGB前景图像以及透明蒙版(alpha通道),并且通过线性混合将前景粘贴到背景上来获得最终图像:
x f i n a l = x b j ( 1 α f g ) + x f g α f g x_{final}=x_{bj}\cdot(1-\alpha_{fg})+x_{fg}\cdot\alpha_{fg}
其中 x f i n a l x_{final} x b g x_{bg} x f g x_{fg} 是RGB图像,而 α f g α_{fg} 是以[0,1]为边界的1通道图像。 熟悉高速公路网络的读者[37]可能会注意到这种方法在坡度动力学方面的相似性。 如果 α f g α_{fg} = 1,则梯度将完全重定向到 x f g x_{fg} ,而如果 α f g α_{fg} = 0,则将梯度重定向到 x b g x_{bg} 。 这种方案允许我们使用单个鉴别器以端到端的方式训练两个生成器,并且我们还可以保留辅助损耗(VGG损耗,特征匹配损耗),这对于收敛非常重要[29]。 鼓励按秒定义的类之间的分隔。 在图3.1中,我们使用二进制交叉熵损失对 α f g α_{fg} 进行监督,并随着时间的推移而衰减该项(请参见第4.2节)。

G 2 G_2 中,我们使用与单步模型(S块)中使用的扩展SPADE块相同的增强SPADE块,它们以前景蒙版作为输入。 由于 G 1 G_1 必须在不渲染的情况下利用前景信息,因此我们设计了SPADE的另一种变体,该变体包含两个分支:(i)第一个分支(S块)将背景遮罩作为输入并像往常一样对其进行处理以产生批量归一化增益 γ \gamma 和偏差 β \beta 。 (ii)第二个分支( S a v g S_avg 块,图4)将完整蒙版作为输入(背景加前景),对其进行处理,然后对特征图应用全局平均池以删除有关定位的信息。 这样,前景信息仅用于偏置生成器,而无法在精确的空间位置进行渲染。 合并后,它输出 γ a v g \gamma_{avg} β a v g \beta_{avg} 。 (iii)最终条件批次归一化计算如下:
y = B N ( x ) ( 1 + γ + γ a v g ) + β + β a v g y = BN(x)\bigodot(1 + \gamma + \gamma_{avg}) +\beta + \beta_{avg}
请注意,如果G1在不减少信息的情况下将完整的蒙版作为输入,则由于渐变永远不会到达蒙版的前景区域,因此它将在输出图像中渲染可见的“空洞”,这正是我们要避免的事情。 最后,鉴别器D将完整的掩码作为输入(背景加前景)。 在App.A.1中,我们提供了有关体系结构的更多底层细节。

4. 实验

4.1 设置和数据集

为了与[29]保持一致,我们始终在COCO-Stuff验证集[2]上评估我们的模型,但是我们在各种训练集上进行训练:

COCO-Stuff(COCO2017) [25,2]包含118k带有标题的训练图像[5]。 我们训练有无字幕。 COCO-Stuff用地面真实语义图扩展了COCO2017,但是出于我们的目的,这两个数据集是等效的,因为我们不使用地面真实掩码。

视觉基因组(VG) [24]包含108k张与COCO部分重叠(约50%)的图像。 VG没有默认的训练/测试拆分,因此我们将数据集的10%用作开发集(ID以9结尾),其余部分用作训练集,从中我们删除与 COCO-Stuff验证集。 我们从场景图中提取属性。\

视觉基因组增强(VG +) VG增强了来自COCO未标记集的123k图像。 移除完全相同的副本后,总大小为217k张图像。 目的是评估我们的方法对大型未标记数据集的扩展能力。 我们训练时没有属性和标题

对于所有实验,我们评估Frechet初始距离(FID)[13]。 我们以秒为单位报告结果(定性和定量)。 4.3。 此外,我们在附录A.2中提供了FID的精确实施细节,并在A.3中提供了其他定性结果。

4.2 实施细节

语义图 为了构造输入语义图,我们使用[15]提出的Mask RCNN [11,33]的半监督实现。 在Visual Genome(3000类)的边界框和COCO(80类)的分段蒙版上接受了培训,并学习了对没有地面蒙版的类进行细分的方法。 我们舍弃了最不频繁的类,并且由于某些VG概念重叠(例如汽车,车辆)导致虚假检测,因此我们合并了这些类,最终得到总共c = 280个类(加上“ no class”的特殊类) )。 我们将对象检测器的阈值设置为0.2,并通过对遮罩相交(IoU)大于0.7的检测执行类不可知的非最大抑制(NMS)步骤来进一步完善预测。 我们还构建了一个转换层次结构,以在语义图(例如汽车的前照灯)中将孩子链接到他们的父母,更多细节请参见附录A.1。 我们选择256个最常用的属性,手动排除引用形状的属性(例如,短,正方形)。

训练 除非另有说明,否则我们的设置与[29]相同,包括256×256的图像分辨率。在所有实验中,我们在8个Pascal GPU上训练了100个历元,并且在第50个周期后开始将学习率衰减为0。以线性方式划时代。对于单步模型,我们使用32的批处理大小,对于两步模型,我们使用24的批处理大小,这是我们可以装入内存的最大批处理大小,并且我们启用了同步批处理规范化。一步骤模型的培训大约需要一周,而两步骤模型的培训则需要两个星期。在两步模型中,以秒为单位。在图3.2中,我们对alpha混合蒙版提供了监督,对于该损失项,其因子从10开始,然后随着每次权重更新以0.9997的因子呈指数衰减,降至0.01。我们观察到该术语可以安全地衰减,而模型不会变得不稳定或与预期行为(即背景和前景分离)背离。这为G2提供了一些其他的灵活性,可以在未通过蒙版表示的图形细节(反射,阴影)中进行绘制。

对于带有字幕的实验,由于COCO每个图像包含五个字幕,因此我们在训练时随机选择一个字幕。 在评估阶段,由于我们的注意力模型可以轻松决定要参加哪些字幕,因此我们将所有字幕的表示形式串联起来。

在这里插入图片描述
表格1 不同实验的FID分数越低越好。 第一行代表SPADE基准线[29]

4.3 结果

我们在表1中显示了各种实验的FID分数。虽然提高FID分数不是我们的工作目标,但有趣的是,我们弱监督的稀疏蒙版设置所产生的分数比监督基线要好一些(即使使用等效的架构和训练集(如表中的模型2所示)。我们认为,这是因为蒙版可以更好地代表复合对象中的精细细节(例如窗户,门,灯光,轮子),而这些对象不是COCO类集中的一部分。在图7(左)中,我们显示了少数此类示例。此外,增强视觉基因组数据集上的实验表明,我们的模型受益于额外的未标记图像(#7)。在#4(Captions +)中,鉴别器增加了属性,以为生成器提供更强的监管信号。我们从Visual Genome中获取两个数据集之间重叠的图像的属性。在图6中,我们显示了一些定性结果以及通过属性或文本进行操作的示例。其他示例可以在附录A.3中看到,包括可视化注意机制(A.4)。

在这里插入图片描述
图6: 定性结果(256×256分辨率)。 左上和中上:两步生成,带有属性和实例的操纵。 右上:通过文本操作样式(上下文和实例)。 下:通过文本操作全局样式。

作为消融实验,在两步模型(#6)中,我们从第一个生成器G1的Savg块中删除了前景信息(我们在S和Savg中两次提供了背景蒙版)。 我们观察到FID分数从20.83上升到25.16,这意味着G1有效地利用了前景信息来偏向结果。

最后,我们在图7中观察到一些故障情况(右)。 由于不精确或虚假的检测,某些输入蒙版可能会产生噪声,从而导致场景不连贯。 但是,这可以通过使用更好的对象检测器轻松解决,而不是我们方法的限制。 总的来说,我们还观察到我们的设置在室外场景下通常会更好地工作,有时会在室内场景或近距离拍摄的照片中遇到几何细节的困扰。
在这里插入图片描述
图7 左:稀疏蒙版中较大的一组标签可改善细节。 使用半监督物体探测器很容易获得这些掩模,否则很难手工标记。 右:我们口罩中的一些故障案例,主要是由于嘈杂的检测

5.结论

我们为条件生成复杂图像引入了一种弱监督方法。 可以通过对稀疏语义图进行各种操作以及通过文本描述或属性标签来控制生成的场景。 我们的结果在视觉上可以与完全监督的方法进行比较,同时可以实现更高水平的语义和样式控制。 从定性的角度来看,我们已经展示了可应用于图像的多种操作。 此外,我们的弱监督设置为未标记数据集的大规模培训以及混合评估(训练和测试不同的数据集)提供了机会。

可以采取几种方法来进一步丰富用于操纵生成过程的工具集。例如,我们关注机制的当前版本无法区分属于同一类的实例,并且也无法直接访问位置信息。合并此类信息超出了本文的范围,但是我们建议可以通过基于实例而非类生成查询和值,并在查询中附加位置嵌入来实现此目的。在NLP文献中,经常根据单词在句子中的位置来学习后者[39,7],但是图像是2D的,因此不具有这种自然顺序。此外,这还需要比COCO中的标题更具描述性的标题,后者通常侧重于动作而不是风格。最后,为了提高语义图的质量,我们想在高质量,大词汇量的数据集上训练对象检测器,例如[10]。

参考文献

略~~

发布了45 篇原创文章 · 获赞 20 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_38863413/article/details/103537326