编者按:本文来自微信公众号“量子位”(ID:QbitAI),作者郭一璞。36氪经授权转载。
端午的三天假期,你们是不是都穿得帅帅美美的出去浪了?
既然出门了,一定要拍照发朋友圈(尤其是拍女朋友,要修图,划重点)。
想象一下,当你带着貌若天仙的女友在海边,她穿着飘逸的波西米亚大摆长裙,海风吹着裙子飞舞,蓦然回首的一刻,露出新垣结衣般的笑容。
△等下一个天亮,把偷拍我看海的照片送我好吗
你抓拍下了这一刻,然后发现:哎呀,眨眼了。
可是,那一刻的姿势和美感再也无法复刻。
这下瞎了,等着回去打开PS把眼睛放上去吧。拍照5秒钟,P图两小时。
毕竟,P一双眼睛上去,这是多么不自然的一件事情。虽然Adobe也提供了算法来帮你P眼睛,但是似乎还不如手动抠图来的真实。
所以,Facebook帮你做了一个开眼AI,专治眨眼照片。
首先,找到一个GAN,由GAN来负责找一双眼睛,抠图抠出来放到你女朋友闭眼的照片上。系统中的一部分需要找到人脸,以及识别面部表情;另一部分根据表情的反馈,重复创建有眼睛的图像。
但是,此时生成的照片过于不自然了。
于是,Facebook的研究人员灵机一动:我们的用户不是会在Facebook上发很多自己的照片吗?拿没P过的睁眼照片来当例子试试。
现在,看过“标准答案”的AI越发聪明了,它已经可以生成一些毫无PS痕迹的照片。
第一列是“标准答案”,日常睁眼照片;
第二列是眨眼图原图;
第三列是Adobe算法抠图贴上去的效果;
第四列是学习了标准答案之后GAN的作品。
效果惊人,第四列中没有出现颜色不匹配的情况,也没有不自然的过渡痕迹,就好像照片中的人物睁眼了一样。
这个AI在测试中效果拔群。超过一半的测试中,人类测试员搞错了照片的真假。
一个照片的开眼效果,既要考虑AI奋斗,也要考虑数据的质量。
比如说,如果刘海挡住了眼睛,或者飞扬的头发遮住了眼睛的一部分:
那对不住,总会产生一些阴影之类的效果,影响“开眼”质量。
另外,还需要你的其他睁着眼睛的照片,Facebook做这件事就有一个天生的好处:很多用户都会在Facebook上传一些自己的照片,这些照片一方面可以拿来给AI做范例,另一方面还可以与贴完眼睛的照片对比,检验生成的质量和效果。
他们的这项研究,就叫做ExGANs。别想歪了,不是用了这个GAN就变Ex,这里的Ex是Exemplar,范例的意思。
从此以后,闭着眼睛也能自拍发Facebook了。
哦对了,这个社交网站并不存在,不是么?
最后,附论文传送门~
Eye In-Painting with Exemplar Generative Adversarial Networks
作者:Brian Dolhansky, Cristian Canton Ferrer
发表于CVPR 2018
arXiv:https://arxiv.org/abs/1712.03999
代码:https://github.com/bdol/exemplar_gans