不用GAN,照片生成简笔画,效果惊艳
如何基本不用GAN把照片生成简笔画?这个项目就做到了。
机器之心报道,机器之心编辑部。
先前,机器之心报道过简笔画生成人脸。而 AI 从人脸生成简笔画的效果如何呢?
先看几张效果图!
《老友记》多人照片转换效果:
还有男神基努 · 里维斯
效果是不是出奇的好?更有意思的是,这种创作线稿的方法并没有使用大多数类似工具会用到的生成对抗网络 GAN。
目前,该项目在 Reddit 上已经有超高热度,项目名为 ArtLine,github star 量也已经超过 700。如果你想尝试一下自己的照片,项目作者 Vijish Madhavan 也把代码放在了 Google Colab 上,运行即可。
- 项目链接:
- https://github.com/vijishmadhavan/ArtLine
- Colab 地址:https://colab.research.google.com/github/vijishmadhavan/Light-Up/blob/master/ArtLine(Try_it_on_Colab).ipynb
技术细节
效果惊艳的 ArtLine 都用到了什么技术呢?这里有详细的技术细节介绍,包括自注意机制、逐步调整图片大小以及生成器损失函数。
自注意机制借鉴的相关研究是 Ian Goodfellow 等人的论文《Self-Attention Generative Adversarial Networks 》。
论文:https://arxiv.org/pdf/1805.08318.pdf
项目作者介绍,生成器是经过频谱归一化和自注意机制预训练的 UNET,也借鉴了 Jason Antic 的 DeOldify 项目,从而获得有关面部特征的适当细节。
DeOldify 项目地址:https://github.com/jantic/DeOldify
看到这里,也许有读者会质疑,不是说没有用到 GAN 吗?项目作者给出的解释是,GAN did not make much of a difference so I was happy with No GAN.
在逐步增加图片大小上,作者分别借鉴了英伟达与首尔国立大学的两项相关研究:
在这个项目中,图像尺寸逐渐增加,学习率也得到了调整。逐步调整图片大小,可以帮助模型更好地泛化,因为它可以看到更多不同的图像。
该项目使用到的最后一项技术源于 2016 年斯坦福大学李飞飞团队的研究论文《Perceptual Losses for Real-Time Style Transfer and Super-Resolution》。
论文链接:https://arxiv.org/pdf/1603.08155.pdf
这项研究提出利用感知损失函数来训练图像转换中的前馈网络,结果表明,在风格迁移任务中,该研究得到了与其他方法类似的效果,但运行速度提升了数个数量级。
转换效果虽好,但项目作者表示,该项目依然存在着以下一些局限:
- 获得良好的输出效果取决于灯光、背景、阴影和照片质量。一开始通常会获得好的输出效果,但也可能出现问题。模型需要调整以适应所有用户;
- 模型会混淆阴影与头发,这也是项目作者正努力解决的问题;
- 500px 以下的低质量图片输出效果不佳;
- 由于项目作者并非码农,代码和实现会比较困难,未来更新版本将会改进。
关于 ArtLine 转换中未用到 GAN,网友表达了惊叹赞许之词!