【Image Matting】 Deep Image Matting

【CVPR 2017】Deep Image Matting

摘要

  • 需要输入原图和Trimap。
  • 使用Two Stage的方法。Stage One是一个Encode Decode的结构,预测出粗略的aplha matte。Stage Two是一个小型的卷积网络,对上阶段生成的aplha matte进行refine,得到更加准确的alpha values和sharper edges。
  • 公开了一个数据集,包含49300个训练图片和1000个测试图片

新数据集

alphamatting.com中的数据仅包括27张训练图片和8张测试图片。
【Image Matting】 Deep Image Matting

作者通过分离前景再融合到背景上得到新的数据集:

  1. 从alphamatting和video的数据集中每5帧选取背景简单的图片(a)
  2. 利用PS抠图得到alpha matte(b),只有前景的图片( c ),作为Groud Truth
  3. 随机从COCO 和VOC数据集中选出N个背景图片,将前景融合进去,得到(d、e、f)

最终生成的训练集有493个前景,49300张合成图片(N=100)。
测试集当中50个前景,1000张合成图片(N = 20)。

方法

【Image Matting】 Deep Image Matting

1. Matting encoder-decoder stage

网络结构

  1. 输入:3通道的RGB图和1通道的Trimap,concat到一起组成4-channel输入
  2. Encoder: 14个卷积层,5个Max Pooling。取VGG16上的前14个卷积层,fc6改为卷积层。输入多一维,第一个卷积层额外多一个通道,初始化为0。
  3. Decoder: 6个反卷积层,5个Unpooling层。Xavier初始化。

Loss

alpha loss: 计算Groud True alpha的值和预测alpha的差的绝对值,由于绝对值的差不可导,改为下面的形式:
L α i = ( α p i − α g i ) 2 + ϵ 2 , α p i , α g i ∈ [ 0 , 1 ] . \mathcal L^{i}_{\alpha} = \sqrt{(\alpha^{i}_{p} - \alpha^{i}_{g})^2 + \epsilon^2} , \alpha^{i}_{p} , \alpha^{i}_{g} \in [0,1]. Lαi=(αpiαgi)2+ϵ2 ,αpi,αgi[0,1].

  • α p i \alpha^{i}_{p} αpi表示预测的alpha在第i个像素的值,值域在0-1之间
  • α g i \alpha^{i}_{g} αgi表示GT的alpha在第i个像素的值

compositional loss: GT RGB图和预测的RGB图(由GT的前景图和GT的背景图和预测的alpha图组合而成)绝对值的差
L c i = ( c p i − c g i ) 2 + ϵ 2 . \mathcal L^{i}_{c} = \sqrt{(c^{i}_{p} - c^{i}_{g})^2 + \epsilon^2}. Lci=(cpicgi)2+ϵ2 .

最终的损失是以上两个损失的加权和
L o v e r a l l = w l ∗ L α + ( 1 − w l ) ∗ L c \mathcal L_{overall} = w_l* \mathcal L_{\alpha} + (1 - w_l) * \mathcal L_c Loverall=wlLα+(1wl)Lc

注意的是:只在Trimap中Unknow区域计算Loss。

2. Matting encoder-decoder stage

上一阶段生成的alpha会比较平滑,通过refine阶段边缘更加明显。

网络结构

  • 输入:原图和上一阶段生成的alpha(缩放到0-255),组成4通道。
  • 共有4个卷积层,前三个包括ReLU,没有下采样
  • Skip Model: 4通道的输入scale到[0,1]之间,加到网络的输出

训练方法

  1. 先训练Encoder-decoder部分
  2. 收敛后固定Encoder-decoder的部分,更新refine的部分,只使用alpha prediction loss
  3. 二者都收敛后,fine tune整个网络

实验结果

在3个数据集上进行测试:

  1. alphamatting.com,包括8个测试图片
  2. 自己提出的Composition-1K 测试集
  3. Natural images,包括31张图片

评价指标

前两个是数学上的损失评价,后面两个是人视觉上的感知损失。

  1. SAD:绝对值误差和
  2. MSE:平均平方误差
  3. Connectivity: https://www.cnblogs.com/lart/p/10627821.html
  4. Gradient: https://www.cnblogs.com/lart/p/10627821.html

Alphamatting

The Composition-1k testing dataset

量化指标:
【Image Matting】 Deep Image Matting
Figure 7 : 对Trimap进行膨胀d个像素对SAD的影响。
【Image Matting】 Deep Image Matting
视觉效果展示:
【Image Matting】 Deep Image Matting

Natural images

自然场景效果展示:
将计算出来的alpha matte融合到一个纯黑的背景和纯白的前景中
【Image Matting】 Deep Image Matting
User study:
【Image Matting】 Deep Image Matting