在阳台上给小姐姐拍个视频:
再把她P到喷泉广场:
需要几步?
现在,无需绿幕,AI 就能搞定这件事。
就像这样,随便用手机给小姐姐拍张照片,再在同一地点拍张不带人像的背景图。
深度神经网络就能自动分析出 alpha 遮罩和前景色,把小姐姐的发丝都抠得根根分明。
视频也是如此。
让憋着笑的同事在实验室白板前表演一段广播体操,再给背景板单独来一张,就可以无中生有把同事“转移”到大厅里,引来路人围观了。
这是来自华盛顿大学的一项最新研究,无需绿幕,无需手动创建 Trimap,一个具有对抗性损失的深度神经网络,就能准确预测遮罩,给照片和视频抠图。
论文已经中了 CVPR 2020,代码即将开源。
深度抠图网络 + 鉴别器网络
那么,这样的抠图特技是如何炼成的?
研究人员表示,是具有对抗性损失的深度网络 + 判断合成质量的鉴别器。
深度抠图网络
研究人员先在 Adobe Matting 数据集中的非透明对象子集上对深度神经网络 G 进行了监督训练。
输入是带人像的照片 I 和照片中的背景 B’,以及人像软分割 S 和 运动先验 M(仅对视频而言)。
需要注意的是,在真实环境中,B’ 是通过在真实背景的前景区域随机加入噪声而生成的。
依据输入,网络会预测出 alpha 遮罩 α 和前景图像 F。
研究人员提出用背景切换块(Context Switching block,CS block)来取代基于残差块的编码器-解码器。
有什么不同?
举个例子,当人的一部分与背景相匹配的时候,网络会将更多精力放在该区域的细分线索上。
G 网络有四个不同的编码器,分别适用于 I,B’,S 和 M 四种输入。每个编码器分别生成256个通道的特征图。
通过 1×1 卷积,BatchNorm 和 ReLU,I 中的图像特征分别与 B’,S 和 M 结合,每一对组合都会生成 64 通道特征。
最后,将这 3 个 64 通道特征与原始的 256 通道图像特征组合在一起,生成编码后的特征,并传递到由残差块和编码器组成的其余网络。
在未标记真实数据上的对抗训练
CS block 和数据增强的结合,可以有效弥合真实图像与 Adobe数据集创建的合成图像之间的差距,但真实图像中仍然有存在一些难点:
-
将手指、手臂、头发周围的背景痕迹复制到遮罩中;
-
分割失败;
-
前景色的重要部分与背景颜色接近;
-
人像照片和背景照片之间没有对准。
为了应对这些问题,研究人员还提出了一种自监督方案,从未标记的真实数据(真实图像 + 背景)中学习。
用深度抠图网络 G 的单独副本 GReal 组成对抗网络,对抗网络会生成类似于 GAdobe 输出的遮罩,而鉴别器网络 D 会判别结果的真假。
研究人员使用真实输入(手机拍摄)联合训练 GReal 和 D,并用 GAdobe 来提供监督。
与SOTA方法的对比
研究人员将新方法与以下几种 SOTA 方法进行了定性比较:
-
基于 Trimap 的 Context Aware Matting (CAM)和 Index Matting(IM);
-
自动遮罩算法 Late Fusion Matting(LFM);
不难看出,效果改进着实明显。
你觉得怎么样?不妨mark一下,坐等开源。
毕竟有些大胆的想法,可能已经在酝酿了,是吧?