Context-Aware Image Matting for Simultaneous Foreground and Alpha Estimation

Context-Aware Image Matting for Simultaneous Foreground and Alpha Estimation


论文链接:https://arxiv.org/abs/1909.09725
发表出处:2019 ICCV

1.背景
自然图像抠图是计算机视觉和图形学中的一个重要问题。当只有输入图像可用而没有任何外部信息时,这是一个不适定问题。虽然最近的深度学习方法已经显示出有希望的结果,但它们只估计alpha matte。
传统方法通过从已知区域中推断未知区域中的alpha matte信息来解决抠图问题,但是依赖于前景和背景区域的独特外观。

2.内容
文章提出了一种同时进行前景和alpha matte估计的上下文感知自然图像抠图方法。
(1)使用两个编码器网络来提取抠图的基本信息:使用抠图编码器来学习局部特征;使用上下文编码器来获得更多的全局上下文信息。
(2)连接这两个编码器的输出,并将它们输入解码器网络,以同时估计前景和alpha matte。
(3)使用了标准Laplacian损失和特征损失:前者有助于实现高数值性能,而后者导致感觉上更可信的结果。
(4)提出了一些数据增强策略。

3.网络结构
概述:
将图像I和用户指定的Trimap T作为输入,经过两种编码器结合了局部传播和全局采样策略以实现鲁棒的图像抠图,具体而言,抠图编码器旨在学习提取最终图像结构(例如头发)所需的局部特征,而上下文编码器则学习估计更多的全局上下文信息。
两个编码器的输出被串联并馈送到两个解码器以生成前景和alpha matte
使用Laplacian损失和特征损失实现较好的量化性能和视觉感知。
在这里插入图片描述
Matting encoder:
使用deeplab v3 + 中Xception 65体系结构的修改版本(将entroy flow’s block2和block3的stride设置为1来将下采样因子设置为4)作为其backbone
其中stride设置较小是因为使用较小的下采样因子可以使得特征图有较大的分辨率从而保留足够的空间信息,这对于完成捕获精细的图像结构的抠图任务至关重要。
同时,在计算/存储器成本和空间分辨率之间需要权衡,文章发现下采样系数为4可以获得良好的抠图效果,并且花费相对较少的计算和内存。
使用skip连接来使用早期图层中的特征
Context encoder:
采用了deeplab v3 + 中的Xception 65体系结构。与Matting encoder相比,使用更大的下采样因子16来捕获更多全局上下文信息。
将最终特征双线性上采样4倍,以便上下文特征的大小与Matting encoder中的局部抠图特征大小相同。
Alpha decoder和foreground decoder:
二者有相同的网络结构,
具体来说,首先对来自编码器的级联特征进行两倍的上采样,然后使用如图所示的skip连接将它们与来自Context encoder的中间特征组合在一起。
接下来是两个3 × 3的卷积层,有64个通道。我们重复这个过程两次,以便每个解码器输出和原图尺寸相同的结果

4.损失函数
(1)alpha matte损失函数
文章对于alpha图的监督使用的是Laplacian loss的形式,将alpha图分解到多个(5层)高斯金字塔层级上,之后再在各个层级上做L1损失,用于监督局部与全局alpha输出,还通过加权的形式进行组合,数学表达形式为:
在这里插入图片描述
其中,Li(α)表示高斯金字塔的第i层,α^,α分别代表GT与预测alpha图
在完成对alpha的监督之后,文章还需要对视觉直观的效果进行度量,但是,很难直接测量alpha map的视觉直观的效果。文章的解决方案是使用alpha map将真实的前景图像合成到黑色背景上,然后按以下方法测量合成结果的视觉直观的效果的测量:
在这里插入图片描述
其中,F ^代表的是前景GT,F就是预测出来的了,ϕ layer代表的是在预训练的VGG16网络中该图层输出的特征图(使用[conv1_2,conv2_2,conv3_3,conv4_3]来计算特征)。
(2)前景损失函数
对于前景图使用的是L1损失函数(只在GT alpha图大于0的部分计算):
在这里插入图片描述
文章对于预测前景特征图使用下面的损失进行监督:
在这里插入图片描述
5.数据增广
文章除了使用COCO数据集作为背景填充之外,还使用了一一些其它的策略用于有效的数据增广
(1)借用NMS的思想进行patch采样,这里采样的分数使用的是不确定像素占整体的百分比,这样就可以通过NMS去掉那些价值较低的patch。
具体实现:
选择在Trimap中包含未知区域的图像补丁。特别地,在整个图像上以固定像素(5)的步幅滑动尺寸固定的窗口(600X600),以获取大量的候选窗口,并删除未知像素少于10%的色块。此外,由于许多补丁之间存在明显的重叠,因此采用非最大抑制(NMS)来消除重叠的补丁。
在这里插入图片描述
(2)使用一些图像“滤波”的操作完成数据的增广,具体的文章使用re-JPEGing和高斯模糊实现,见下图所示:
在这里插入图片描述
在没有任何数据增强的合成图像中(a),前景图像包含一些JPEG伪像,而背景平滑,这会产生偏差,从而影响网络的训练。 Re-JPEGing将伪像引入到前景和背景中,以减少偏差,而高斯模糊则通过平滑高频伪像来减少偏移。

6.实验结果
(1)Composition-1K数据集:
在这里插入图片描述
(2)视觉效果
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/balabalabiubiu/article/details/115022877