首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

照片闭眼也无妨,Facebook黑科技完美补全大眼睛

来源:TechCrunch,arXiv

编辑:文强,克雷格

现在有很多方法可以美化照片,让你看起来更好看,简单的,比如消除红眼或者镜头眩光,复杂的,甚至可能让你看起来变了一个人。

但是,到目前为止,还没有一个很好的办法处理照相时眨眼的问题:当拍照的那一瞬间眼睛正好闭上了,那么……就只能重新拍一张。

不过,现在好了,Facebook的一项最新研究可以很好地解决这个问题,而且效果惊艳。

Facebook的新技术让你完美睁眼:第一列和第二列是ground truth(分别对应正常和闭眼的情况);第三列是目前商用软件中效果最好的Adobe Photoshop Elements的结果;第四列是Facebook这次新提出的技术ExGAN。来源:研究论文

深度学习让计算机“脑补”,风格转移合成逼真细节

Facebook在他们发表于CVPR 2018的论文“Eye In-Painting with Exemplar Generative Adversarial Networks”中描述了这项工作。

这里提到的“In-Painting”,也即图像补全,最初是一个传统图形学的问题,在一幅图像上挖一个洞,看如何利用其他的信息将这个洞补全,并且让人眼无法辨别。

这个问题对人类来说似乎很容易,只要稍微想象一下,大家很容易就能脑补出洞里应该有什么。但是,这个任务对于计算机而言却十分困难,因为这个问题没有唯一确定的解,如何利用其他的信息,如何判断补全的结果是否足够逼真,都是要考虑的问题。

近来,深度学习的发展,得益于神经网络对图像中高层特征(high-level feature)的提取能力,研究人员可以将大数据和high-level feature组合起来,使这个十分困难的问题得到了比较好的解决。

例如,2017年,来自伯克利和Adobe等机构的研究人员提出了一种混合优化方法(joint optimization),利用编码器 - 解码器CNN的结构化预测和神经补丁的力量,成功合成了实际的高频细节。

对于给定的一张带有孔洞(256×256)的图像(512×512),算法可以合成出更清晰连贯的孔洞内容(d)。上图展示了混合优化方法与用Context Encoders(b)、PatchMatch(c)这两种方法产生的结果的比较。

类似于风格转移(style transfer),他们的方法将编码器-解码器预测作为全局内容约束,并且将孔洞和已知区域之间的局部神经补丁相似性作为风格(style)约束。

补全眼睛,还是个大问题

但是,上述方法还是存在种种局限,其中之一就是对眼睛的补完。

这并不是说眼睛——“人类心灵的窗口”很难模拟。实际上,目前的深度网络已经能在语义上产生逼真的、令人信服的结果。

但是,大多数方法并不能保留照片中人物的“身份”(identity)。DNN可以学习“打开”一双闭合的眼睛,但是模型本身并不能保证新的眼睛对应于这个人的特定眼睛结构。

DNN只会插入一双与训练集中相似的脸相对应的眼睛。这时候,如果一个人有一些明显的特征,比如眼睛的形状比较特别,就不会在生成的部分中得到体现。

Facebook提出ExGAN,比cGAN更具表现力

Facebook作为全球最大的社交网络,每天乃至每一分钟都有大量用户将自己的照片上传,而其中就有很多是闭眼的照片。

坐拥可能是全球最大的闭眼照片数据集,Facebook的研究人员自然会想,能不能在这个基础上做些什么。

于是,有鉴于生成对抗网络(GAN)在生成逼真图像中的应用,Facebook的Brian Dolhansky和Cristian Canton Ferrer提出了一个Exemplar GANs (ExGANs)。

ExGAN是条件GAN(cGAN)的扩展,利用示例信息,生成高质量、个性化的图像补全。

与以前的条件GAN不同,在判别器网络里插入了额外的参考信息(参考图片或者感知代码),因此ExGAN有更强的表现力。

ExGANs的总体训练流程可以概括为:

从输入图像中标出眼睛;

以参考图像(reference image)或感知代码(perceptual code)为指导,对图像进行补全;

通过输入图像和补全图像之间的内容/重构损失,计算生成器参数的梯度;

用补全图像、另一个ground truth图像和参考图像或感知代码,计算鉴别器参数的梯度;

通过生成器反向传播鉴别器的误差。还有可选的一步,用感知损失对生成器的参数进行更新。其中,函数C(I)是身份函数。

ExGAN,让闭眼照片完美“开眼”

ExGAN从样例中,不仅了解了这个人的眼睛看的是什么,还了解了这个人的眼睛的结构、瞳孔的颜色,等等。最终补全的结果非常逼真而且自然。

在测试中,人们误把假眼睛睁开的照片当成真实的,或者有超过一半的时间他们不能确定哪个是哪个。看了上面的实例,除非我知道照片肯定是被篡改过的,不然我在信息流中滚动浏览时我可能根本就不会注意到。

在下图中,左边第一列是ground truth,第二列是其他方法,第三列和第四列都是ExGANs的结果。其中,第三列是使用了参考图像的结果,第四列是使用了感知代码的结果。(图片可以点击放大查看。)

在某些情况下,ExGANs仍然会失败,比如当一个人的眼睛被一缕头发遮住了一部分,或者有时不能正确地着色,就会产生一些奇怪的人工痕迹。但这些都是可以解决的问题。

研究者表示,Exemplar GANs是一个通用的框架,因此可以拓展到其他计算机视觉任务乃至其他领域的问题上。

在这次的研究中,基于参考图片和基于感知代码的两种方法是分开的,因为他们想展示这两种方法都是可行的。未来,他们会研究将这两种方法结合在一起,比如在生成器里使用参考图片,在判别器里使用感知代码,从而生成更加逼真可信的眼睛补全。

不论如何,我们的照片将变得更加自然和漂亮,而鉴别“换脸”或者假视频的任务,也将更具挑战。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180617A1ESSP00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券