人艰必拆。
发明Photoshop的明明是Adobe,打击PS还要靠Adobe:
官方推出的新杀器充满了恶意,一能识别哪张照片修过了,二能看出修了哪里,三能还原最初的模样:
被修窄的下颌骨,在AI面前完全藏不住。
手动上扬的嘴角,也被AI发现并没收了。
再把AI还原的照片,和没修过的原图对比一下:
不过,“还原”也不一定是“变丑”。
比如,妹子的眼睛不知被谁修过,变得两边上翘,看上去有些刻薄:
△ 修后与修前
这时候,交给AI去还原,眼角就变回了平和的样子,和原图几乎无差:
△ 这是一张动图
这优秀的算法,是Adobe联合加州伯克利一同开发的,代码快要开源了。
让它判断照片有没有修过,准确率高达99.4%。
相比之下,让人类用肉眼判断,准确率只有53.5%,几乎是随机猜的成绩。
那么从识别到还原,是怎样做到的呢?
怎么拉伸的,就怎么复原
首先,要有真图和假图的数据,向AI喂食。
团队给Photoshop写了一个脚本,让系统根据输入的真图,自动生成脸上各种部位被拉伸过的假图:
然后,在真图和假图之间,计算出一个光流场 (Optical Flow Field) 。
这样一来,假图到底假在哪里,自动标注数据就行了 (如上图) 。
然后,把真图和标注好的假图, 拿去训练一个Dilated ResNet网络。
训练完成之后,给网络输入一张假图,它便能自己预测光流场:
(这看上去又是瘦过脸。)
得出光流场,AI就知道了图像被拉伸/扭曲的过程。
然后,就可以用一个相反的过程,把P过的图再扭回去。
那么,也该看一下效果了。
测试图片,是一位职业修图师的手动加工而成,AI需要找出图像本来的样子:
被AI看穿之后,男子的围笑并没有消失,只是脸大了几圈。
然后,把AI还原的图像,和职业修图师加工之前的原图,对比一下:
AI还原的脸型,和原本照片上的脸型,已经十分接近了。
无法阻挡的真相大白。
你也会去玩吧
现在,代码的状态还是“Coming Soon”。
不过等开了源,你也可以训练一只反向PS神器。
没什么事情的时候,逛逛朋友圈,让AI帮你看看里面的自拍,原本都是什么样子。
论文传送门:
https://arxiv.org/abs/1906.05856
GitHub传送门:
https://github.com/peterwang512/FALdetector
— 完 —
诚挚招聘
“