【导读】你一定记得非常热门的加州大学伯克利分校在CVPR2017上提出的图片翻译 pix2pix,它使用GAN方法可以将白马“转化”为斑马,可以把积木“转化”为建筑,可以把线条“转化”为猫咪、鞋子、挎包,可以把白天转化为黑夜。而最近伯克利AI研究实验室与Adobe公司朱俊彦等人提出新的BicycleGAN,解决pix2pix生成图像模式单一的问题,比如BicycleGAN可以跟你给出的一张鞋的草图在保持确定的前提下,生成出各式各样不同纹理风格的图像。 朱俊彦同时也是pix2pix的第二作者。
▌视频
BicycleGAN论文解读视频(英文字幕)
▌作者
论文:Toward Multimodal Image-to-Image Translation
▌摘要
很多图像到图像的转换方法是带有歧义的,因为单个输入图像可能对应于多个可能的输出。在本文的工作中,我们的目标是在条件生成建模设置下对可能的输出分布进行建模。映射的模糊性是在潜在的低维向量中进行的,因此可以在测试时随机抽样。在生成器学习时,将给定的输入与隐编码结合起来并映射到输出,且输出和隐编码之间的联系是可逆的。
这有助于防止在训练期间从隐编码到输出之间形成多对一映射(也称为模式崩溃问题),导致产生更多不同的结果。我们通过利用不同的训练目标、不同的网络结构和不同的隐编码注入方式,来探索这种方法的几种不同的变体。我们提出的方法激励隐编码和输出模式之间的双射一致性(bijective consistency)。我们提出了一个系统的比较方法来将我们的方法及其变种进行视觉真实性和多样性评估。
▌详细内容
深度学习技术已经使条件图像生成领域取得了快速发展。例如,这些网络已经被用来修复丢失的图像区域,生成句子相关的图像,给灰度图像上色,草图生成照片等。然而,该领域的大部分技术都专注于根据输入生成单个结果。本文中,我们专注于建模结果的潜在分布,实际上,这类问题可能是多模态且模糊不清的。例如,在夜晚到白天的转换任务中(如图1所示),由于照明、天空、云的类型不同,在夜晚拍摄的图像可能对应很多种白天拍摄的图像。这种条件生成问题有两个主要目标:
这种从高维输入到高维输出分布的多模式映射,导致条件生成模型具有非常大的挑战性。在已有的方法中,这种挑战导致常见的模式崩溃问题,即生成器只生成唯一的输出。我们系统地研究了这个问题的解决方案,对每个可能的输出学习一个低维的隐编码,该隐编码不存在输入图像中。然后生成器根据所有隐编码以及输入来生成输出结果。
我们从pix2pix框架开始,该框架被认为可以提高各种图像对图像转换任务的转换质量。生成器网络在输入图像的条件下有两个损失:
作者指出,随意抽出一个随机的隐编码对产生不同的结果没有帮助,而在测试时使用dropout只能提供少量的帮助。因此,我们提出在输出和隐空间之间使用双射(bijection)变换。我们不仅直接执行从输入和隐编码到输出的映射任务,同时还学习从输出回到隐空间的编码器,这抑制两个不同的隐编码产生相同的输出(非单射映射)。
在训练期间,通过学习编码器来发现对应于ground truth输出图像的隐编码矢量,同时将足够的信息传递给生成器以解决不同模式输出的模糊性。例如,当从夜晚图像(图1)产生白天图像时,隐编码可以编码关于天空颜色,地面上的照明效果以及云的密度和形状的信息。在这两种情况下,以不同顺序应用编码器和生成器应该是一致的,都可以得到相同的隐编码或相同的图像。
在本文工作中,我们通过实例化无条件生成建模任务相关文献中的几个目标函数来实现这个想法:
图1:我们提出的多模式图到图转换方法效果:给定一幅输入图片(某场景的夜景图),我们目标是建模一个潜在输出的分布(场景对应的白昼图片),生成逼真的和多样的结果。
▌方法:
本文提出的混合模型:BicycleGAN
式中G为生成器,D为判别器,E为编码器。这里的主要贡献是利用两个cycles进行性能的提升(B->z->B^和z->B^->z^)。这两个cycles主要通过后面两项实现:
这里A是输入图片,B是得到的生成图片,z是隐编码。
图2:概览:(a)所用方法的测试时的流程。为了生成一个样例输出,首先从一个已知分布中随机采样隐编码z(例如,标准正态分布)。生成器将输入图像(蓝色)和隐编码样本z映射到生成的输出样本(黄色)。(b)pix2pix+noise基准方法,包含一个与A对应的额外的输入B。(c)cVAE-GAN (and cAE-GAN)首先从ground truth目标图像B开始并将它编码到隐空间中。然后生成器试图将输入图像A连同样本z逆映射到原始图像B。(d)cLR-GAN从一个已知的分布中随机采样隐编码,利用这个编码将A映射到输出B,然后试图从输出中重建隐编码。(e)我们的混合BicycleGAN方法综合考虑了两个方面的约束。
图3:将z注入到生成器的可选方案。隐编码z通过空间复制和连接被注入到生成器网络中。我们有两个选择:左边是注入到输入层,右边是注入到编码器的每一个中间层。
图4:结果输出样例,展示了我们的混合BicycleGAN的输出结果。左边一列展示了输入图像。第二列展示了ground truth 输出。最后四列展示了随机生成的样例。我们在下列情况下展示该方法的输出结果:夜景->白天,边缘->鞋子,边缘->手包,地图->卫星图。模型和更多示例可从下面链接中获得:https://junyanz.github.io/BicycleGAN.
图5:方法的定性对比。我们将输出结果与不同方法在lables->facades数据集上的实验效果对比。BicycleGAN方法提供的结果是逼真且多样的。
图6:真实性与多样性。我们使用VGG-16空间中的平均特征距离来测量多样性,使用在五层之间的余弦距离进行求和,真实性通过在Google maps-> satellites 任务中使用real vs. faske Amazon Mechanical Turk进行测试。Pix2pix+noise基准方法的产生结果多样性差。只用cAE-GAN方法在采样期间生成大量人工的结果。混合BicycleGAN方法融合了cVAE-GAN 和Clr-GAN,产生了更加逼真的效果并保持了多样性。
表1:不同方法和编码器结构对于注入z的编码性能。这里展示的是重建损失的值。
图7:不同隐编码z的长度在label->facades上的结果。
▌结论
总之,针对在条件生成环境下的模式崩溃问题,我们已经评估了一些解决方法。我们发现,通过结合多个目标来鼓励隐空间和输出空间之间的双射映射,我们获得了更加逼真和多样化的结果。
我们看到很多在未来工作中有趣的方向,包括强制在隐空间上的分布形式,这些分布能对语义上有意义的属性进行编码,以允许用户控制参数进行图像到图像的转换
▌效果对比
特别提示-Toward Multimodal Image-to-Image Translation论文下载:
请关注专知公众号