论文地址:https://arxiv.org/abs/1703.03872 
TF复现地址:https://github.com/Joker316701882/Deep-Image-Matting

领域

主题

主要思想

实践

数据集

49300张训练图像和1000张测试图像

当前基于抠图的数据集太小,alphamatting.com数据集只有27张训练图片和8张测试图片,训练出来的模型泛化能力较差。

针对该问题,作者将前景抠出来,并放入到不同的背景下,从而构建一个大规模抠图数据集。

模型

深度模型分为两个阶段。

Matting encoder-decoder stage

该神经网络将原图和对应的trimap作为输入,并预测图像的alpha matte。

网络:输入图像块和对应的trimap,输出是alpha预测。编码阶段是14个卷积层和5个池化层,得到低分辨率的特征图,解码阶段是6个卷积层的小网络,5次unpooling得到原图大小的alpha prediction.
Loss: 使用了两个loss,第一个是alpha-prediction loss,是预测的alpha values 和ground truth的alpha values的绝对差。第二个loss是compositional loss,预测的RGB颜色值和对应的ground truth绝对差。两个loss以0.5加权得到最终的loss。
实现:数据处理技巧有随机裁剪(320*320),不同尺度输入(resize到320*320),图片翻转等;编码加载VGG16模型的前面,译码阶段使用Xavier随机初始化。

Matting refinement stage

该网络对第一个网络预测的alpha matte进行精炼,从而拥有更准确的α值和锐化边缘。

网络:4个卷积层,输入是图像块和预测的alpha prediction。 
实现:先训练编解码网络,待其收敛后用于更新refine网络,第二个网络只使用alpha-prediction loss。

理论

主要解决传统方法中只有low-level features和缺乏high-level context的问题。

一是当前方法将抠图方程设计为两个颜色的线性组合,即将抠图看做一个染色问题,这种方法将颜色看做是一个可区分的特征。但是当前景和背景的颜色空间分布重叠时,这种方法的效果就不是很好了。使用深度学习不首要依赖色彩信息,它会学习图像的自然结构,并将其反映到alpha matte。

二是

Deep Image Matting的更多相关文章

  1. Matting任务里的Gradient与Connectivity指标

    Matting任务里的Gradient与Connectivity指标 主要背景 Matting任务就是把α(不透明度, 也就是像素属于前景的概率).F(前景色)和B(背景色)三个变量给解出来. C为图 ...

  2. Alpha matting算法发展

    一.抠图算法简介 Alpha matting算法研究的是如何将一幅图像中的前景信息和背景信息分离的问题,即抠图.这类问题是数字图像处理与数字图像编辑领域中的一类经典问题,广泛应用于视频编缉与视频分割领 ...

  3. CVPR 2017 Paper list

    CVPR2017 paper list Machine Learning 1 Spotlight 1-1A Exclusivity-Consistency Regularized Multi-View ...

  4. zz视频分割在移动端的算法进展综述

    视频分割在移动端的算法进展综述 语义分割任务要求给图像上的每一个像素赋予一个带有语义的标签,视频语义分割任务是要求给视频中的每一帧图像上的每一个像素赋予一个带有语义的标签. 视频分割是一项广泛使用的技 ...

  5. Background removal with deep learning

    [原文链接] Background removal with deep learning   This post describes our work and research on the gree ...

  6. Deep Photo的TensorFlow版本

    Prisma这个应用,你可能很熟悉.这是一个能将不同的绘画风格,迁移到照片中,形成不同艺术风格的图片. 2017年4月,美国康奈尔大学和Adobe的一个研究团队在arvix上通过论文“Deep Pho ...

  7. On-Demand Learning for Deep Image Restoration

    摘要 论文来源:ICCV 2017 之前的缺点:目前的机器学习方法只专注于在特定困难程度的图像损坏(如一定程度的噪声或模糊)情况下进行良好的训练模型. 改进的方法:提出了一种基于深度卷积神经网络的按需 ...

  8. Deep learning:五十一(CNN的反向求导及练习)

    前言: CNN作为DL中最成功的模型之一,有必要对其更进一步研究它.虽然在前面的博文Stacked CNN简单介绍中有大概介绍过CNN的使用,不过那是有个前提的:CNN中的参数必须已提前学习好.而本文 ...

  9. 图像抠图算法学习 - Shared Sampling for Real-Time Alpha Matting

    一.序言   陆陆续续的如果累计起来,我估计至少有二十来位左右的朋友加我QQ,向我咨询有关抠图方面的算法,可惜的是,我对这方面之前一直是没有研究过的.除了利用和Photoshop中的魔棒一样的技术或者 ...

随机推荐

  1. 大话设计模式--适配器模式 Adapter -- C++实现实例

    1.适配器模式: 将一个类的接口转换为客户希望的另一个接口,使得原来由于接口不能一起工作的那些类一起工作. 适配器模式一般用于希望复用一些现存的类,但是接口又与复用环境要求不一致的情况. 适配器模式分 ...

  2. python爬取某个网站的图片并保存到本地

    python爬取某个网站的图片并保存到本地 #coding:utf- import urllib import re import sys reload(sys) sys.setdefaultenco ...

  3. table+css与xhtmL+css实现同一登陆框(代码片段)

    1.从网上下载了一个不错的登录框样式(table结合css布局): 2.初学xhtmL,自己改写了一下,希望有用 3. 我怎么不会上传截图呢?  ​1. [代码]xhtml_css组合    < ...

  4. BZOJ 3357 [Usaco2004]等差数列:map优化dp

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3357 题意: 给你n个数a[i],让你找出一个最长的是等差数列的子序列. 题解: 表示状态 ...

  5. JQUERY Uploadify 3.1 C#使用案例

    近来因为要做一个上传功能,而firefox又不能直接使用file这样的标签,所以试着用js来写了一个,结果发现代码太多,验证太复杂,而且效果也不理想. 相对的,jquery提供的这一套uploadif ...

  6. Tomcat_异常_01_Setting property 'source' to 'org.eclipse.jst.jee.server:AWeiXin_QiYe_Demo' did not find a matching property

    关于解决方法: 1.解决Setting property 'source' to 'org.eclipse.jst.jee.server的问题 2.eclipse中server location为灰色 ...

  7. java 任务调度实现的总结

    Timer Timer的核心是Timer和TimerTask,Timer负责设定TimerTask的起始与间隔执行时间,使用者需要建立一个timeTask的继承类,实现run方法,然后将其交给Time ...

  8. 重写ScrollView实现两个ScrollView的同步滚动显示

    1.背景介绍 最近项目用到两个ScrollView的同步显示,即拖动左边的ScrollView滚动的同时,实现右边的ScrollView同步滚动.此种情形常用在复杂界面布局中,比如左边的ScrollV ...

  9. 迁移学习-微调(fine-tune)的注意事项:

    选取微调形式的两个重要因素:新数据集的大小(size)和相似性(与预训练的数据集相比).牢记卷积网络在提取特征时,前面的层所提取的更具一般性,后面的层更加具体,更倾向于原始的数据集(more orig ...

  10. bzoj 4066 简单题——KDtree(带重构)

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4066 带部分重构的KDtree.就是那个替罪羊树思想的. 写了对拍,调了半天,发现忘了 re ...