女神被打码了?一笔一划脑补回来,效果超越Adobe | 已开源
- 2019 年 11 月 13 日
- 筆記
本文经AI媒体量子位(公众号ID: QbitAI)授权转载,转载请联系出处。
女神的照片花得像个二维码,心不心痛,着不着急?
你需要一位PS高手。
或者,一只AI。
上面这个毫不违和的修复成果,就出自一个今年新诞生的图像修补算法之手。
和完好的原图比一比,还原度99+%,一眼望去,都是安吉丽娜·朱莉。
和从前的图像修复AI不同,它在补图的时候没指望一步登天:
△ 蓝色轮廓是猜的
而是先勾出残存部分的轮廓,再猜出整张图的轮廓,最后把颜色填进去。
这个算法来自加拿大的安大略理工大学,叫做EdgeConnect,修复效果甚至超越了Adobe登上CVPR 2018的算法。
另外,名义上是修复图像,事实上可以有很多有趣的用法。先举一个栗子为敬:
你不想看到哪个人,用橡皮擦一擦,他就融化在背景里。
不过,最重要的是,它已经开源了。
描边大法的胜利
先集中观察一下修补效果。
首先,是人类与人类最好的朋友:
人类的朋友变成了大小眼,除此之外一切近乎完美,顺便让金发妹子的苹果肌立体了一些。
然后,是人文景观与大自然:
一切恢复了安静祥和,与橡皮擦侵袭之前的景象,并没有太大的不同。
只是最后这一张,牛顿的棺材板悬空的柱子,不知道能支撑多久。但对一只没有学过经典力学的AI来说,也是合理的修复方案了。
跟原图比过之后,再和其他图片修复选手比一场。其中一道题是:
选手们的表现是这样的:
其中,c是Adobe团队入选CVPR 2018的方法,e和f是本文的描边大法。
有趣的用法
有了这样优质的方法,当然要拓展一下用途才好。
就像开头提到的,把抢镜的人类踢出去,是其中一种思路。
想把眼镜摘掉的话,也是同样的道理:
要让两座山看起来更般配,还是这个思路:
停,换一个思路。
把两张图拼起来怎么样?
比如有两只木屋,一个像夏天,一个像冬天。
把夏天的左边和冬天的右边拼到一起,夏天的画风,便可以温暖冬天的冷。
两个肤色不同、脸型不同的妹子,也可以合体:
AI小画家:先构图后上色
如果说以前那些修补图像的GAN只是用训练数据填充,那EdgeConnect就是在模仿画家的思路。
画家作画时,总是先把不同物体、不同颜色的部分用线条分割开来。先用线条构图,然后再填充颜色。
以前面的花瓣为例,以前的算法在恢复图片时边缘出现了扭曲,因为它们只是对图像进行平滑过渡或者模糊处理,所以在色差变化明显的边缘不能很好地与背景区分。
但是,一张图中不止有颜色变化平滑的部分,也包含不同颜色区域的边缘。以往的GAN难以准确地重建这些物体边缘。
而EdgeConnect是先把图片已知部分转换成一幅“白描画”,用神经网络补全残缺的笔画,然后在此基础上填充颜色。
EdgeConnect将图像修复模型分为两大部分:边缘生成器(edge generator)和图像补全网络(image completion network)。
边缘生成器的作用,就是脑补缺失区域里物体的描边,生成幻觉边缘(hallucinated edges)。
要脑补空白部分的描边,直接输入残缺的彩色照片是不行的。需要先用边缘探测器 (Edge Detector) 把照片变成不完整的白描稿,再让生成器把这它补全。
探测器观察的是已知区域。它对色彩区分越仔细,给已知区域描出的边缘线,就越密集。
△ 黑线是描的,蓝线是脑补的 (不适用于下图)
已知区域的线条密了,边缘生成器为空白部分脑补的边缘线,也就密了。
△ σ越小,探测越灵敏,脑补线条越密集
而线条过于稀疏的话,图像修复的质量就不会太好 (比如,只描出了右眼的轮廓↑↑↑) 。
那么,如果一条边缘线也没有呢:
AI几乎是完全依赖从前见过的人脸特征,想象出一张脸来。额头显得有些空旷了。
完成白描图以后,我们就能给图片上色,这一步类似于之前Philip Isola等人提出了的条件GAN框架pix2pix。
如果你还有印象,应该记得它能把抽象的简笔画变成一只可爱的猫咪。
而图像补全网络与pix2pix不同之处在于,除了补全的边缘信息外,它还有一个残缺的彩色图像作为输入。
图像补全网络能根据已有的色彩信息,预测出缺失区域的颜色,并且要保证颜色变化不至于太突兀。
除了以上两个部分外,EdgeConnect还包含一个端到端的可训练网络,作用是结合前面的边缘生成和图像补全,进一步填补缺失区域的细节。
传送门
开源PyTorch实现: https://github.com/knazeri/edge-connect
论文地址: https://arxiv.org/abs/1901.00212
— 完 —
我爱小詹
/ 今日互动 /
留言主题 : 看了本文 ,你有什么想法可以应用呀哈哈 ?
留言格式 —— Day xx : blablabla ;这里强调下 ,不符合主题和格式的打卡不移入精选,打卡无效噢 !兑换的时候会核实打卡情况 ,断打卡的记得从 Day.01 开始 ~
推荐阅读:
这么硬的干货,不给个好看?!