本文主要是介绍Alpha Matte Generation from Single Input for Portrait Matting阅读笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
论文
一、简介
1.背景
传统的方法和大多数现有的工作利用了额外的输入,如三分图(ST-FAM那个),背景图像(BGM-V2),来预测alpha图。但提供额外的输入并不总是可行的,而且模型对这些额外的输入过于敏感。
2.方法
本文使用一种无额外输入且使用GAN的方法进行人像抠图。分为两个网络:一个分割网络用于生成粗略的人物分割mask和一个alpha生成网络用于alpha图预测。
3.贡献
- 提供一种基于GAN的系统,在没有额外输入的情况下从任意输入图像产生alpha图
- 将alpha图预测问题分成两个子任务,可以提高精度
- 对粗略的分割图设计了独立的编码器,对分割模型预测的分割图进行编码可以提供更好的表示
- 提出border loss来惩罚对象边界周围的误差,使用perceptual loss来比较特征空间中的预测和ground truth
- 合并两个不同的训练数据集(AIM,Distinctions646),以提高图像的数量和多样性
4.结果
该方法优于同样采用单一输入的MODNet方法。同时获得了与需要额外输入的BGM-V2和FBA方法相当的结果。
二、网络结构
1.分割网络
生成器网络:编码器,解码器以及残差块和ASPP模块。
鉴别器网络:使用原始图像和下采样2倍和4倍的图像组成图像金字塔,以获得相同图像的不同比例。
损失函数:
- adversarial loss:训练GAN
- perceptual loss:计算对象是预测的分割图和真实的分割图通过VGG提取的所有特征,以及预测的前景对象和真实前景对象通过VGG提取的所有特征。
- segmentation loss:计算预测分割图和地面真实分割图之间的绝对距离。
- compositional loss (foreground loss):计算预测的和真实的前景对象之间的绝对距离。
segmentation loss和compositional loss的组合如公式如下图所示:
- border loss:是下图d图所示的边界分割图,和是边界前景对象。
得到腐蚀分割图(a)和膨胀分割图(b)。然后相减得到边界分割图(d)。
2.alpha生成网络
生成器网络:一个编码器负责编码输入图像以获得其特征图。另一个编码器负责编码由分割网络产生的粗略分割图以获得其特征图;将两个编码器的输出相连,concat之后经过残差模块;最后经过解码器上采样输出最终的alpha图。其中skip-connection促使网络保留来自两个编码器的信息。
鉴别器网络:同分割网络。
损失函数:
adversarial loss:同分割网络(分割图替换为alpha图)
perceptual loss :同分割网络(分割图替换为alpha图)
alpha loss:
border loss:
3.训练过程
输入图像:1280 × 768
生成器学习率:10-4
鉴别器学习率:10-5
batch size:2
优化器:Adam
三、实验
1.数据集
训练集:(AIM的201张+D646的363张)*COCO100张
测试集:(AIM的11张+PM85的85张+D646的11张)*VOC20张
2.定量评价
3.定性评价
3.消融实验
这篇关于Alpha Matte Generation from Single Input for Portrait Matting阅读笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!