论文地址:arXiv:1812.09877
原文没给代码,发了邮件给作者也石沉大海了,自己复现了一份代码,还没有调试出原文的效果,过段时间再来更新。这里先记录一下理论部分。
网络结构如图:

这篇论文的大概思想就是让latent code作为卷积核的修改器,在保持传统的对抗损失,且不添加任何额外的损失的情况下,产生了多峰的输出。除此之外,还顺带可以做到源域和目标域风格之间的disentanglement。它不修改GAN的损失,同时开销最小(不需要任何自编码或重建损失)。基本避免了image2image任务中的模式坍塌,在质量和变换之间的权衡中有更大的自由度。
论文的目标是要进行一个多输出的image2image translation,给出一张原图像x作为源域X的输入,我们想要将它转换到目标域Y,为了产生多个输出,我们需要接收一个latent code作为描述输出之间差异的z,z是从正态分布中随机取样的。
所以我们的任务就是寻找一个函数G使得:

也就是最上面结构图中z1z2z3的含义。
传统的做法是将latent code和输入图片直接concat串联起来,或者通过自编码压缩进特征空间,这些都是将latentcode作为编码数据转换到全大小的图像上去。但这篇论文是将latentcode作为输入图像局部变化的调制器。
具体操作就是:给出一个k维的latent code,和一张输入图像,将latentcode送入一个全连接网络来为每一个卷积层产生一个scaler(这个scaler应该就是一个标量,来调节卷积核的尺度)。然后将图像送入卷积网,每一个卷积核都被对应的lantentcode所缩放。简单的说,就是让k*1维的标量z,每一个维度都与featuremap相乘。

:CVPR2019-Latent Filter Scaling for Multimodal Unsupervised Image-to-Image Translation&spm=1001.2101.3001.5002&articleId=90677705&d=1&t=3&u=c0136ed39a8b41eb9b4d586ae7db0ffd)
917

被折叠的 条评论
为什么被折叠?



