未配对的图像-图像转换是一类视觉问题,其目标是利用未配对的训练数据找到不同图像域之间的映射。循环一致性损失是这类问题中广泛使用的约束条件。然而,由于严格的像素级约束,它不能进行形状改变,去除大型物体,或忽略不相关的纹理。在本文中,我们提出了一种新的对抗性一致性损失,用于图像到图像的翻译。这种损失不要求翻译后的图像被翻译成特定的源图像,但可以鼓励翻译后的图像保留源图像的重要特征,并克服上述循环一致性损失的缺点。我们的方法在三个具有挑战性的任务上取得了最先进的结果:摘除眼镜、男性到女性的翻译和自拍到动漫的翻译。
本文是CycleGAN的一种改进。CycleGAN可以认为是一种自监督的图像风格转换网络,主要不足在于难以去改变图像的几何性质(风格转换可以认为只改了颜色),因此在一些需要改变形状的场景上表现不佳。用高级的一些话来说,就是风格转换任务实际上存在一个"循环一致性"假设,因此不满足这一假设的任务是无法直接去套用循环一致性损失的。事实上,对于许多任务,源域的某些特征是没必要保留的,保留的话反而会导致生成结果中存在伪像(artefact),此时就不能去用像素级的损失函数来进行约束。
本文的框架如下所示:
左图对于输入的源域图像
x
S
x_S
xS,加入一定的噪声
z
3
z_3
z3后,首先经过源域本身的生成器
G
S
G_S
GS,能够得到一组与原始图像
x
S
x_S
xS十分相似的图像
x
~
S
\tilde{x}_S
x~S。相较于传统的直接将原图像
x
S
x_S
xS输入目标域生成器
G
T
G_T
GT已获得翻译后的结果,本文将原始图像的邻域
x
~
S
\tilde{x}_S
x~S输入
G
T
G_T
GT(这里加入了噪声
z
1
z_1
z1以实现多样化结果生成),得到翻译后的一组结果
x
ˉ
T
\bar{x}_T
xˉT。
x
ˉ
T
\bar{x}_T
xˉT再经过源域生成器重建回原始图像邻域
x
~
S
\tilde{x}_S
x~S。
这么做从两个层面放松了严格的一致性约束。首先,只需要两个邻域(原始图像邻域与重建图像邻域)相近即可,而非严格的单张原始图像与单张重建图像相近;第二,衡量两个邻域是否相近是使用一个额外的判别器来完成的,而非CycleGAN中使用的像素级L1损失。
右图 对于输入的单张源域/目标域图像,相应的生成器要能够对其进行重建。即源域=>源域,目标域=>目标域这两个过程对图像的修改应该尽可能有限,这样就能保证上面所生成的邻域不会过于宽泛。注意,这一步是没有向生成器加入噪声的,所以理想状态下输入输出图像应该是完全一致的。