学界 | 康奈尔&英伟达提出多模态无监督图像转换新方法

百家 作者:机器之心 2018-06-11 04:01:41

选自arXiv

作者:Xun Huang 等人

机器之心编译

参与:Tianci LIU、李泽南


计算机可以学习并建立从输入图像到输出图像的映射,对图片进行多种类型的风格转换。近日,康奈尔大学和英伟达的研究人员提出了多模态、无监督的风格转换新方法,其抛弃了以往方法的确定性假设条件,可让模型生成多样性的输出结果。据称,该方法已经达到了和当前最佳监督方法相当的表现。


Demo:


<iframe class="video_iframe" data-vidtype="2" allowfullscreen="" frameborder="0" data-ratio="1.7647058823529411" data-w="480" data-src="http://v.qq.com/iframe/player.html?vid=j1341ywkrez&width=368&height=207&auto=0" width="368" height="207" data-vh="207" data-vw="368" style="display: none; width: 368px !important; height: 207px !important;"></iframe>


论文:Multimodal Unsupervised Image-to-Image Translation



论文地址:https://arxiv.org/pdf/1804.04732.pdf


摘要:无监督 Image-to-Image 变换是计算机视觉领域一个重要而富有挑战的问题:给定源域(source domain)中的一张图像,需要在没有任何配对图像数据的情况下,学习出目标域(target domain)中其对应图像的条件分布。虽然条件分布是多模态的,但现有方法都引入了过于简化的假设,而将其作为一个确定性的一对一映射。因此,这些模型都无法在特定的源域图像中生成富有多样性的输出结果。为突破这一限制,我们提出了多模态无监督 Image-to-Image 变换(Multimodal Unsupervised Image-to-image Translation,MUNT)框架。我们假设,图像表征可以分解为一个具有域不变性(domain-invariant)的内容码(content code)和一个能刻画域特有性质的风格码(style code)。为了将图像转化到另一个域中,我们将:1. 原图像的内容码,2. 从目标域中随机抽取的某个风格码 进行重组。(在下文中)我们分析了 MUNT 框架,并建立了相应的理论结果。我们进行了大量实验,将 MUNT 与其他目前最先进方的法进行了比较,结果进一步展现出了 MUNT 的优越性。最后,通过引入一个风格图像(style image)样例,使用者可以利用 MUNT 来控制转化的输出风格。


预训练模型及相关代码可在这里查看:https://github.com/nvlabs/MUNIT


图 1. 方法演示。(a)各个域 Xi 中图像的编码形式为:共享目标空间 C 和域特有的风格空间 Si。每个编码器都有对应的反编码器(未在图中展示)。(b)为了将某个 X1 中的图像(如猎豹)变换到 X2 中(如家猫),我们将输入图像的内容码和目标风格空间中的某个随机风格码进行重组。不同的风格码会得到不同的输出。


图 2. 模型概述。我们的 Image-to-Image 转化模型(MUNT)由分别各属于一个域的两个自编码器组成(在图中分别用红色和蓝色箭头表示),每个自编码器的隐编码由一个内容码 c 和一个风格码 s 构成。我们利用对抗目标(adversarial objectives)(图中点线)和双向重建目标(bidirectional reconstruction objectives)(图中短线)训练模型,其中对抗目标能保证转化的图像和目标域中真实图像难以区分,双向重建目标则用于同时重建图像和隐编码。


实验


实现细节


图 3. 自编码器架构展示:由一个内容编码器、一个风格编码器和一个联合解码器组成。更详细的信息和相关超参数在附录中。我们提供了 PyTorch 下的开源实现


内容编码器:由多个用于对输入降低采样的 Strided Convulsion 层和多个进一步处理输入的 Residual Block 组成,其中所有的 Convulsion 层都进行了 Instance Normalization 处理。


风格编码器:由多个 Strided Convulsion 层、一个全局的 Average Pooling 层和一个全连接(Fully Connected)层组成。在这里我们没有使用 IN 层,因为 IN 会去除原始特征的均值和方差,而很多重要的风格信息都包含在其中。


解码器:我们的解码器根据输入图像的内容码和风格码对其实现了重建。解码器通过一组 Residual Blocks 处理内容码,并最终利用多个上采样和 Convulsion 层来生成重建图像。另外,最近有研究通过在 normalization 层中使用仿射变换(Affine Transformation)来表征风格。受其启发,我们在 Residual Block 中引入了自适应实例标准化(Adaptive Instance Normalization,AdaIN)层,AdaIN 层中的参数可以利用多层感知器(MLP)在风格码上动态生成:



其中 z 是前一个卷积层产生的激活(Activation),µ 和 σ分别表示各个通道的均值和标准差,γ 和 β是 MLP 从风格码中生成的参数。注意:这里的仿射参数是通过训练出的神经网络生成的,而不是像 Huang et al. [53] 研究中一样,根据预训练的神经网络的统计量计算得到的。


判别器:我们使用了 Mao et al. [38] 所提出的 LSGAN 目标,并利用 Wang et al. [20] 提出的多尺度判别器,来确保生成器同时生成了真实细节和正确的全局结构。


具有域不变性的感知损失(perceptual loss):通常,以输出图像和参考图像在 VGG [74] 特征空间中的距离作为感知损失,在有配对图像的监督数据中,这种方法已被证明可以有效地帮助 Image-to-Image 变换;但在无监督场景下,我们并没有目标域中的参考图像。为此,我们提出了一个具有更强的域不变性的修正感知损失,进而可以将输入图像作为参考图像。具体而言,在计算距离前,我们利用 Instance Normalization 处理了 VGG 特征 [70](没有使用仿射变换),去除了原始特征中包含大量域特定信息的均值和方差 [53,57]。我们发现,修正后的感知损失能够加速高分辨率(≥ 512 × 512)数据集上的训练过程,因此在这些数据集上,我们使用的是这一修正感知损失。


图 4. 线图→鞋子变换的定性比较。第一列展示了输入和对应输出的真实图像。第二列开始每一列展示从某种方法中得到的 3 个随机的输出结果。


表 1. 线图→鞋子/手提包变换的定量分析。多样性得分使用的是 LPIPS 距离均值,质量评分使用的是「人类偏好得分」:人们相较于 MUNIT 更偏好该方法的百分比。两个指标中,都是数值越高表现越好。


图 5. 例:(a)线图↔鞋子(b)线图↔手提包


图 6. 例:动物图像变换结果


表 2. 动物图像变换的定量分析。这个数据集中共包含 3 个域,我们在任意两个域对之间完成双向变换,共 6 个变换目标。在每个目标上使用 CIS 和 IS 来度量表现效果。


图 7. 示例:街景变换结果


图 8. 示例:约塞米蒂国家公园的夏天↔冬天(HD 分辨率)


图 9. 示例:有引导图像变换。其中每一行内容相同,每一列风格相同


图 10. 现有风格变换方法的比较


结论


我们展示了一个多模态无监督 Image-to-Image 变换框架,我们的模型在(输出图像的)质量和多样性上都超过了现有的无监督方法,达到了和如今最先进的监督方法相当的结果。我们下一阶段的研究方向会是将这一框架推广到其他域,如影像、文本中。


本文为机器之心编译,转载请联系本公众号获得授权

✄------------------------------------------------

加入机器之心(全职记者 / 实习生):hr@jiqizhixin.com

投稿或寻求报道:content@jiqizhixin.com

广告 & 商务合作:bd@jiqizhixin.com

关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接