谷歌AI秀神技:大脸畸变一键还原,拍照无需抢C位,实时运行毫无PS痕迹

栗子 发自 凹非寺 本文转载自:量子位(QbitAI)

合照的时候,没有谁喜欢站在最边上。

因为脸会被镜头无情地拉扯,不止变得宽广,还会有些歪斜:

97°视场角

不过,谷歌刚刚推出了一门法术,可以让广角照片里的人脸,不用再扭曲变形:

左一的妹子,右一的妹子,脸型都显得更加对称自然了。

那么,增加一波难度。

带上墨镜,带上帽子,拉长的脸依然可以复原:

103°视场角

用手挡住半张脸,AI还是没有被迷惑:

103°视场角

不止是这样,AI把人脸调正的同时,也不会扭曲了背景

比如下图,中间是DxO Viewpoint的人脸修正,后面的栏杆被挤成了一条弧线;而右边是谷歌算法,修好了人脸,栏杆依然直挺:

团队说,整个修复过程都是AI自动完成,并且在移动端也可以运行。

这只善良又聪颖的AI,登上了顶会SIGGRAPH 2019

也在Reddit论坛收获了1.9k的热度:

有人说,Pixel的广角前置镜头已经用上了这个算法,拍完之后点开照片预览,发现自己的脸已经收窄了。

现在就来看看,人物和背景,到底是怎样兼顾的吧。

互补才是完美

谷歌说,从前想要纠正镜头畸变,总是需要职业的修图士。

因为,让机器自动完成的话,常常是修好了一处扭曲,又制造了另一处新的扭曲。

不过,团队也正是从这些不完美的算法之间,发现了新世界的大门

先看透视投影 (Perspective Projection) 。从一个投射中心出发,把一个3D物体投在2D表面上。忠于透视原理,近大远小

这种投影一定有失真,比如站在边上的人,离投射中心比较远,脸就大了起来。不过,它拉伸的主要是人脸,背景并不容易发生扭曲

球极平面投影 (Stereographic Projection) 就不同了。把一个球面投射到平面上,并不忠实反映距离,却十分忠实地反映角度。就像这张地图。

这种投影也一定有失真,但对一张照片来说,主要是背景里的直线会变弯,而人脸不易被拉伸

如此说来,两种投影愉快地互补了

观察到这个美丽的现实,研究人员当然要把它们的优点,用优雅的方式结合起来。

一句话概括,就是让透视投影去处理背景,球极平面投影去处理局部 (人脸) 。

当然,要让两种原本冲突的投影方式和平共处,并不是一句话的事。具体说来:

97°视场角

输入的照片如上,已经先用透视投影处理过。

第一步,找出目标区域:人脸,包括头发。

这里,要用人物分割算法,给输入图像里的人类做个Mask;再用人脸检测器,标出脸部的边界框。最后,把Mask和边界框的交集,用绿色标注出来。

第二步,为输入的 (透视投影) 照片,算出一个球极平面投影。

如果把这个投影可视化,会发现边角的人脸已经修好,只是背景里,左边的窗棱和右边的墙弯了 (下图) 。

所以就有了关键的下一步:

第三步,用上前两步的数据,算出一个网格 (Mesh) 。这个网格依然是做球极平面投影,但只要调整人脸区域,背景尽量保持原样。

为了不影响背景,这里用到了能量最小化 (Energy Minimization) 方法,来平息两种投影之间的冲突,促成更加平滑的过渡。

这样,就有了一个兼顾人脸和背景的、优化过的网格:

第四步,用这个网格来捏那张输入的照片,得到的就是最终答案:

右下角的人脸自然了,背景里的直线也还是直线。

团队说,这个方法可以胜任70°-120°的视场角。

并且,几乎不受场景的限制

单人自拍可以,多人合照可以。

103°视场角
97°视场角

室内户外都表现稳定;光线明暗也不影响AI的发挥。

114°视场角
104°视场角

除了开头提到的帽子墨镜手遮脸,这些没有难倒AI的因素之外,脸朝侧面也不会给算法造成困惑。

103°视场角

还要注意的是,团队是为了移动端的应用,才开发了这只AI。它的运行速度,足以支持手机上相机App的正常交互:即时修图,即时分享。

如果说有什么缺憾,大概就是在捏脸的同时,还不能把身体一起捏好。

而人在角落,身体也可能被拉伸,如果只把脸修到正常的形状和大小,身体有时候就显得太大:

即便这样,AI也已经满足了广角人像拍摄的大部分需求。

大家一起自拍的时候,就算拿着手机的那个人是你,也不用再担心自己的脸被拉宽拉长了。

三个少年

AI的爸爸,三位谷歌少年,全部来自宝岛。

一作名叫施易昌 (YiChang Shih) ,本科念台大,硕博都在麻省理工,实习经历遍布Adobe、谷歌研究院、微软研究院等等。

2015年,从闪耀的CSAIL实验室拿到博士学位,如今已是谷歌的高级软件工程师 (Senior Software Engineer) ,主攻移动设备上的计算摄影。

二作是赖威昇 (Wei-Sheng Lai) ,本科硕士都在台大,现在是加州大学默塞德分校博四的学生。曾经在Adobe和英伟达实习,不久前刚刚结束在谷歌作为学生研究员的历程。

三作叫梁家恺 (Chia-Kai Liang) ,本科和博士都在台大。2008年博士毕业,现在是谷歌的高级专家软件工程师 (Senior Staff Software Engineer) 。

One More Thing

虽然,三位作者里有两位都曾经在Adobe实习。

但这支团队孕育的AI,画风温柔善解人意。

比起一周前Adobe发布的“反向PS”利器,那只能把P过的美照打回原形的AI (如下) ,这广角人像的修复师AI,大概算得上爱的奉献了。

论文传送门: https://people.csail.mit.edu/yichangshih/wide_angle_portrait/shih_sig19_lowres.pdf

项目主页: https://people.csail.mit.edu/yichangshih/wide_angle_portrait/

包含网格的效果展示: https://people.csail.mit.edu/yichangshih/wide_angle_portrait/webpage/main-results/index.html

前人算法比较: https://people.csail.mit.edu/yichangshih/wide_angle_portrait/webpage/academic-results/index.html

市面产品比较: https://people.csail.mit.edu/yichangshih/wide_angle_portrait/webpage/manual-results/index.html

作者系网易新闻·网易号“各有态度”签约作者

原文发布于微信公众号 - CVer(CVerNews)

原文发表时间:2019-06-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券