利用循环一致对抗网络的非配对图像对图像转换
摘要
图像到图像的转换其目标是使用配对图像对的训练集来学习输入图像和输出图像之间的映射。然而,对于许多任务,配对训练数据是不现实的。我们提出了一种方法来学习在非配对例子的情况下将图像从源域X转换到目标域Y。我们的目标是学习映射G: X→Y,这样G(X)的图像分布与Y的分布就无法区分了,其中存在对抗性损失。因为这个映射是不足约束的,我们将它与一个逆映射F: Y→X耦合,并引入循环一致性损失来强制F(G(X))=X(反之亦然)。
一.介绍
在本文中,我们提出了一种方法,可以捕获一个图像集合的特殊特征,并找出这些特征如何可以转换到另一个图像集合,所有这些都是在非配对训练示例的情况下。
这些问题需要为我们的目标增加更多的结构。因此,我们利用了循环一致性,也就是说,如果我们把一个句子从英语翻译成法语,然后再从法语翻译成英语,我们应该回到原来的句子。数学上,如果我们有一个转换函数G: X→Y和另一个转换函数F: Y→X,那么G和F应该互为倒数。我们应用这种结构同时训练映射G和F,并添加一个周期的一致性损失,激励F(G (x))=x 和G(F (y))=y。
ER相关工作
生成对抗网络 (GANs):GANs成功的关键在于“对抗性损失”的理念,这迫使生成的图像原则上与真实的照片难以区分。我们采用对抗性损失学习映射,使翻译后的图像无法与目标域的图像区分开来。
图像到图像的转换: 我们的方法建立在pix2pix框架上,它使用条件生成对抗网络来学习从输入到输出图像的映射。类似的想法已经被应用到各种任务中,例如从草图到生成照片。然而,与上面的工作不同,我们不需要成对的训练示例来学习映射。
非配对图像到图像转换: 我们的公式不依赖于任何任务特定的、预定义的输入和输出之间的相似函数,也不假设输入和输出必须位于同一个低维嵌入空间。这使得我们的方法成为许多视觉和图形任务的通用解决方案。
循环一致性: 在这项工作中,我们引入了一个循环一致损失来推动G和F相互一致。
神经风格转移: 是另一种进行图像到图像转换的方法,它基于对预先训练好的深度特征的Gram矩阵统计进行匹配,将一幅图像的内容与另一幅图像的风格相结合,合成一幅新的图像。我们主要关注的是学习两个图像集合之间的映射,而不是两个特定的图像之间的映射,通过尝试捕获高级外观结构之间的对应关系。
三.公式
我们的目标是学习两个域X和Y之间的映射函数,给定训练样本{xi},{yj},其中xi∈X, yj∈Y。如图3 (a)所示,我们的模型包含两种映射G: X→Y和F: Y→X。此外,我们引入了两个对抗性鉴别器DX和DY,其中DX旨在区分图像{X}和转换图像{F(Y)}; 同样的,DY旨在区分{Y}和{G(X)}。我们的目标包含两个:用于将生成图像的分布与目标域中的数据分布进行匹配的对抗性损失,循环一致性损失,以防止学习到的映射G和F相互矛盾。
3.1对抗损失
我们将对抗性损失应用于两个映射函数。对于映射函数G: X→Y及其鉴别器D(Y),我们将目标表示为:
G试图生成图像G(x), 类似于图像域Y, D(y)旨在区分转换样本G(x)和真实样本y。G的目标是最小化L,而对抗的D则试图最大化L,即minG maxDY L(G, D(Y), X, Y)。
3.2循环一致性损失
为了进一步减少可能的空间映射函数,我们认为学习映射函数应该周期一致:如图3所示(b),对于每一个图像从域X,转换周期应该能够把x回到原始图像,例如,x->G (x)->F(G(x)) ≈ x。我们称之为循环的一致性。我们使用循环一致性损失来激励这种行为:
3.3 Full object
λ控制两个目标的相对重要性。我们的目标是:
四.实现
网络体系结构: 我们采用的网络包含三个卷积,几个残差块,两个小步卷积stride 1/2,一个卷积将特征映射到RGB。我们对128 × 128的图像使用了6块,对256 × 256和更高分辨率的训练图像使用了9块。我们使用实例归一化。对于鉴别器网络,我们使用70 × 70 patchgan,其目的是区分70 × 70个重叠的图像patch是真实的还是虚假的。这种补丁级鉴别器架构比全图像鉴别器参数更少,并且可以以完全卷积的方式处理任意大小的图像。
训练细节:
首先,对于Lgan,我们用最小二乘损失代替负对数似然目标。这种损失在训练中更稳定,产生更高质量的结果。特别地,对于GAN损失Lgan(G, D, X, Y),我们训练G最小化Ex ~ pdata(X)[(D(G(X))−1)2],训练D最小化Ey ~ pdata(Y)[(D(Y)−1)2]+ Ex ~ pdata(X)[D(G(X))2]。
其次,为了减少模型振荡,我们使用历史生成的图像而不是最新生成器生成的图像来更新判别器。我们保留了一个图像缓冲区,用于存储之前创建的50个图像。
对于所有的实验,我们在设λ = 10。我们使用批量大小为1的Adam求解器。所有网络都是从零开始训练的,学习速率为0.0002。我们在前100个epoch保持相同的学习速率,在接下来的100个epoch线性衰减到零。
五.实验结果
5.1评价指标
AMT perceptual studies地图与遥感图像迁移:
在地图↔航拍任务中,我们对AMT进行“真实vs虚假”的感知研究,以评估输出的真实性。
5.2各种方法比较