大数据文摘作品
编译:小鱼
不久前,文摘菌给大家分享了一篇Ian Goodfellow的论文,教大家如何把一张哈士奇的图像硬生生的AI成一只猫咪,论文的结果确实会让人傻傻分不清楚,点击这里查看相关内容。
然而,今天的这篇论文效果更棒!先上两张图片:
当你养了一只哈士奇觉得不过瘾的时候,你可以AI出四只小猫咪,让它们一起陪你玩耍。
用一张猫咪的图像生成老虎、狮子或者豹子等其他猫科动物的图像!
用一张猫咪的图像生成小柯基、萨摩耶或者二哈的图像!
当然你也可以用豹子的图像生成萨摩耶、二哈或者小柯基的图像……
这种连PS大师都没见过的方法就是由康奈尔大学的Xun Huang(他同时在英伟达实习)等人提出的多维无监督图像迁移网络框架实现的。
在大数据文摘后台回复“迁移”下载论文~
以下是论文部分内容,文末有代码链接哦~
无监督图像迁移网络是计算机视觉领域的一个技术难题,即给定一张源域图像,如何在没有其他图像样本的情况下,学习相应目标域图像的条件分布。当处理多维条件分布时,现有的方法是在过度简化的假设条件下,通过绘制源域图像和确定的、一对一的目标图像来进行建模。
然而,上述方法无法用来生成给定源域图像的多种多样的目标图像。因此,本文提出了一种多维无监督图像迁移网络框架。
本文中假定代表图像可以被分解成域不变的内容代码,并能捕获特定于域的属性。为了能将图像迁移到另一个域中,本文通过对任意目标域图片的风格空间进行采样,并利用获得的风格代码生成内容代码。
论文方法
▲论文方法
上图说明了论文提出方法,首先将每个域Xi中的图像进行编码后放入一个共享的内容空间C和特定于域的风格空间Si,每个编码器还有逆向解码功能。
其次,为了把域X1中的图像(例如一只美洲豹)迁移到域X2中(例如各种家猫),我们在目标风格空间(家猫风格)使用随机的风格代码重组了输入图像的内容代码,不同的风格代码生成不同的输出结果。
相关算法
为了实现上述随机风格迁移,本文参考了下列相关算法:
- 生成对抗网络(GANs)
本文中,通过参考目标域的真实图像,使用GANs调整了迁移图像的分布细节。
- 图像迁移
在计算出每个域中图像的风格和每个风格对应的样本个数后,我们将每种风格作为一个单独的域进行处理。并使用多域图像迁移学习绘制每个风格对图像,进而实现多维迁移。
- 风格迁移
本文借助图像的内容特征和风格特征,提出的模型解决了单一样本的目标风格迁移和由图像集才能生成目标风格的弊端。
- 非耦合表示学习
本文受到了最近兴起的非耦合表示学习(disentangled representation learning)框架的启发。虽然很难定义图像的内容和风格,而且不同的图像要使用不同的定义,因此,我们将内容定义为下属空间,将风格定义为底层空间。
论文模型
▲论文模型
本文图像迁移由两个自动编码器组成(上图中分别用红色和蓝色箭头标注),每个域中都有这两个自动编码器。每个自动编码器的隐式代码分别由内容代码c和风格代码s组成。
用对抗对象(上图中的虚线)对模型进行训练以保证生成的迁移图像和目标域的真实图像别无二致。同时也用双向重构对象(上图中的点滑线)对模型进行了训练,以保证图像和隐式代码之间的双向重构。
▲自动编码器的结构
上图为本文中自动编码器的结构。它由内容编码器、风格编码器和联合编码器组成。
评价指标
论文中使用了下列指标来评估模型性能:
- 个人偏好
- LPIPS距离
- 条件初始得分(Conditional Inception Score,CIS)
实验结果
此外,该方法还能根据图像中物体的轮廓生成迁移图像。
▲轮廓迁移(拯救淘宝卖家的神器!)
上图中,输入图像为一只女士皮鞋的轮廓,GT是皮鞋的真实图像,该模型可以根据图像中物体的轮廓进行图像迁移。
在第三行,当输入一张皮鞋的真实图像,该模型可以生成皮鞋的轮廓,即实现逆向迁移。
▲动物图像迁移
视频中,该模型成功的实现了一类动物向另一类动物的图像迁移。当输入一张给定图像时,可以生成多种迁移图像。生成的迁移图像中动物的形状发生了明显的改变,但是它们的表情保持一致。
该模型还可以实现高分辨率的风景图像迁移。
▲风景图像迁移
代码下载链接:
https://github.com/nvlabs/munit