给自己多P点头发
把人的眼睛变大、把闭着的嘴合上、转动眼珠:
质量如此逼真、一点糊图的痕迹都没出现——
如果我不说,你知道这其实是GAN自己P的吗?
除了人脸,汽车啊鸟啊猫啊也都可以,比如改改车轮大小、换个车轴样式:
把小鸟的喙部变长、头抬高、胸脯变壮:
用动图展示就更炫酷了:
大点大点,圆点圆点,头发再多一点……
怎么样,这GAN的效果是不是也不输PS?
一个高质量P图GAN
以上这些都来自一个叫做EditGAN的模型,可以对图像实现很多细节上的编辑,同时还能保持原图质量。
研究出自英伟达、多伦多大学以及MIT,相关论文已被NeurIPS 2021接收。
在此之前,大多数基于GAN的图像编辑方法往往都需要大规模数据集上的语义分割注释才能训练,并且也只能做一些有限的修改,有的甚至只是在两张图之间简单地进行插值。
EditGAN作为一种全新方法,只需少量语义标记就能训练。
它会把原图像分割成高度精细的语义块(segmentation mask),有多精细呢?
就比如下面这张人脸图,被足足按30种语义进行了分割:
而在一个交互工具中(还未开放地址),只需操作这些语义块就可以对相应部分进行修改。
EditGAN的关键思想在于利用图像和语义分割的联合分布p(x, y) 。
具体来说就是给定要编辑的新图像x,将其嵌入到EditGAN的潜空间,由于语义分割图和RGB图像共享相同的潜码,所以可以得到相应的分割图y。
接着,使用简单的交互式数字绘画或标签工具,可以根据所需的编辑手动修改分割图y。
然后进行共享潜码的优化,以保持新分割图与真实图像的RGB外观一致,如图所示:
相应的梯度则通过共享生成器反向传播而成。
结果就是潜空间中的编辑向量δw + edit。
此外,EditGAN通过学习提炼各种各样的编辑向量,可以直接应用于新的图像。
还可以泛化到绘画作品上
真实质量如何?
研究人员在在四个不同类别的图像上对EditGAN进行评估:汽车(空间分辨率384×512)、鸟类(512×512)、猫(256×256)和人脸(1024×1024)。
- 定性实验结果
将EditGAN此前学习的编辑向量应用于新图像,经过30个优化步骤的细化,EditGAN的编辑操作保持了原图像的质量。
用它进行高精度细节编辑的效果也很好,比如下面左图对轮轴的旋转,右图对瞳孔大小的修改:
在下面这种高清的图像上效果就更好了:
作者表示,目前其他方法都还不能达到这样的效果。
此外,EditGAN也有很强的泛化能力,比如在下面这种绘画等风格的人像上,做点小表情毫无违和感。
- 定量实验结果
和基于MaskGAN的smile编辑基准的模型相比,EditGAN则实现了最佳属性精度和ID分数。
最后,和所有基于GAN的图像编辑方法一样,EditGAN仅限于应用到由GAN建模的图像上。
作者介绍
一作凌欢,多伦多大学博士生,同时在该校人工智能研究院(Vector Institute)和英伟达做研究。
共同一作Karsten Kreis,英伟达高级研究科学家,2018年以博士学位毕业德国马普高分子所。
其余作者包括:英伟达多伦多AI Lab的Li Daiqing,多伦多大学的Seung Wook Kim,以及MIT教授Antonio Torralba。
通讯作者为一作导师,多伦多大学副教授,英伟达AI总监Sanja Fidler。
论文地址:
https://arxiv.org/abs/2111.03186
项目主页:
https://nv-tlabs.github.io/editGAN/