图像抠图Image Matting算法调研

article/2025/9/28 4:32:17

目录

1.Trimap和Strokes

2. 相关数据集

3.论文算法调研

3.1 Deep Image Matting

3.2 Semantic Image Matting

3.3 Background Matting

3.4 Background Matting V2

3.5 Semantic Human Matting

3.6 HAttMatting

3.7 MMNet:Towards Real-Time Automatic Portrait Matting on Mobile Devices

3.8 Fast Deep Matting for Portrait Animation on Mobile Phone

3.9 MODNet: Trimap-Free Portrait Matting in Real Time


1.Trimap和Strokes

Trimap和Strokes都是一种静态图像抠图算法,现有静态图像抠图算法均需对给定图像添加手工标记以增加抠图问题的额外约束。

  1. Trimap,三元图,是对给定图像的一种粗略划分,即将给定图像划分为前景、背景和待求未知区域
  2. Strokes则采用涂鸦的方式在图像上随意标记前景和背景区域,剩余未标记部分则为待求的未知区域

Trimap是最常用的先验知识,多数抠图算法采用了Trimap作为先验知识,顾名思义Trimap是一个三元图,每个像素取值为{0,128,255}其中之一,分别代表前景、未知与背景,如图


2. 相关数据集

  • Adobe Composition-1K
  • matting_human_datasets  : https://github.com/aisegmentcn/matting_human_datasets
  • VideoMatte240K
  • PhotoMatte85
  • RealWorldPortrait-636
  •  https://github.com/thuyngch/Human-Segmentation-PyTorch
  • Automatic Portrait Segmentation for Image Stylization: 1800 images
  • Supervisely Person: 5711 images

3.论文算法调研

3.1 Deep Image Matting

Paper:https://arxiv.org/pdf/1703.03872.pdf 

GitHub: https://github.com/Joker316701882/Deep-Image-Matting

Adobe在17年提出了Deep Image Matting,这是首个端到端预测alpha的算法;整个模型分Matting encoder-decoder stage与Matting refinement stage两个部分,Matting encoder-decoder stage是第一部分,根据输入图像与对应的Trimap,得到较为粗略的alpha matte。Matting refinement stage是一个小的卷积网络,用来提升alpha matte的精度与边缘表现。

说明:网络输入是一个patch图像(经过crop)和相应的 trimap, 通过concat, 共4通道输入网络,推理时也要提供trimap图,现实中不太方便

3.2 Semantic Image Matting

Paper: https://arxiv.org/abs/2104.08201 

Github: https://github.com/nowsyn/SIM

与Deep Image Matting类似,需要加入trimap进行抠图

3.3 Background Matting

Paper:https://arxiv.org/abs/2004.00626

GitHub: https://github.com/senguptaumd/Background-Matting

这篇文章要介绍的是一篇基于深度学习的无交互的抠图方法。它的特点是不需要Trimap图,但要求用户手动提供一张无前景的纯背景图,如图1所示,这个方法往往比绘制三元图更为简单,尤其是在视频抠图方向 。这个要求虽然不适用于所有场景,但在很多场景中纯背景图还是很容易获得的。

说明: 不需要Trimap图,但需要提供一张无前景的纯背景图 

3.4 Background Matting V2

Paper:  https://arxiv.org/abs/2012.07810

GitHub: https://github.com/PeterL1n/BackgroundMattingV2

Background Matting得到了不错的效果,但该项目无法实时运行,也无法很好的处理高分辨率输入。所以项目团队又推出了Background Matting V2,该项目可以以30fps的速度在4k输入上得到不错的结果。

说明: 与Background Matting类似,V2不需要Trimap图,但需要提供一张无前景的纯背景图

3.5 Semantic Human Matting

Paper: https://arxiv.org/pdf/1809.01354.pdf

GitHUb: https://github.com/lizhengwei1992/Semantic_Human_Matting 

阿里巴巴提出的Semantic Human Matting: 

  • 首次实现无需Trimap方式生成alpha图
  • 提出了新的fusion的策略,用概率估计alpha matte
  • 构造了新的数据集

将网络分成两个部分。

  • TNet: 对前景、背景、未知区域做像素级别的分类(相当于预测Trimap了)。
  • MNet: 将TNet的输出当做输入,生成更加精细的alpha matte。
  • 两个网络的输出经过Fusion Module生成最终的结果

T-Net对像素三分类得到Trimap,与图像concat得到六通道输入送入M-Net,M-Net通过encoder-decoder得到较为粗糙的alpha matte,最后将T-Net与M-Net的输出送入融合模块Fusion Module,最终得到更精确的alpha matte。

3.6 HAttMatting

Paper:  https://wukaoliu.github.io/HAttMatting/  

GitHub:https://github.com/wukaoliu/CVPR2020-HAttMatting (仅有效果图,连测试模型都没有,存在很大的质疑)

Attention-Guided Hierarchical Structure Aggregation for Image Matting

这也是一篇不需要提供trimap或者其他交互的抠图方法(可认为是自动化抠图),核心思想是抑制高级特征中的冗余语义,并消除空间线索中无用的背景细节,然后对其进行聚合以预测准确的alpha 通道。

为此,该文使用通道注意力(channel-wise attention)模型来蒸馏金字塔特征,并对空间线索使用空间注意力(spatial attention ),以同时消除前景以外的图像纹理细节。

说明:该文声称可以无trimap或者其他交互辅助的条件下,进行完全自动化抠图!! 实质上,存在很多矛盾,就比如上去,上述效果图,模型怎么知道要抠图是那个球球,而不是那条马呢?

更多质疑:[质疑][CVPR2020]只有强者才能“抠”脚 - 知乎 

3.7 MMNet:Towards Real-Time Automatic Portrait Matting on Mobile Devices

Paper: https://arxiv.org/abs/1904.03816

Github: https://github.com/hyperconnect/MMNet 

Mobile Matting Network (MMNet)采用了标准的编码-解码框架。其中,编码器通过多次下采样,逐步减小输入特征的尺寸,在捕获更高级语义信息的同时,也在丢失空间/位置信息。另一方面,解码器对特征图进行上采样,逐步恢复空间/位置信息,同时使其放大为原先的输入分辨率。另外,作者将来自跳连接的信息与上采样信息相串联,还采用了增强块来改善解码效果。如此,输出的alpha抠图就能与原始图像的尺寸保持一致了。MMNet的具体结构图1所示。

说明:17年的Paper,无需Trimap,在移动设备上实现了实时自动抠图功能,网络的体积较小, 效果有待验证

3.8 Fast Deep Matting for Portrait Animation on Mobile Phone

Paper: https://arxiv.org/abs/1707.08289 

GitHub: https://github.com/huochaitiantang/pytorch-fast-matting-portrait 

网络由两个阶段组成。

第一阶段是人像分割网络,它以一幅图像为输入,获得一个粗二进制mask。第二阶段是feathering模块(羽化模块),将前景/背景mask细化为最终的alpha matte。第一阶段用轻全卷积网络快速提供粗二进制mask,第二阶段用单个滤波器细化粗二进制mask,大大降低了误差。

说明:无需Trimap,输入RGB图像,输出是matte, 效果有待验证

3.9 MODNet: Trimap-Free Portrait Matting in Real Time

Paper: https://arxiv.org/pdf/2011.11961.pdf

Github: https://github.com/ZHKKKe/MODNet 

在线体验:Portrait Matting 

MODNet模型学习分为三个部分,分别为:语义部分(S),细节部分(D)和融合部分(F)

  • 在语义估计中,对high-level的特征结果进行监督学习,标签使用的是下采样及高斯模糊后的GT,损失函数用的L2-Loss,用L2loss应该可以学到更soft的语义特征;
  • 在细节预测中,结合了输入图像的信息和语义部分的输出特征,通过encoder-decoder对人像边缘进行单独地约束学习,用的是交叉熵损失函数。为了减小计算量,encoder-decoder结构较为shallow,同时处理的是原图下采样后的尺度。
  • 在融合部分,把语义输出和细节输出结果拼起来后得到最终的alpha结果,这部分约束用的是L1损失函数。

个人觉得结构设计上较为清晰,监督信息与方式利用合理

 说明:无需Trimap, MODNet整体Matting效果,相当不错


http://chatgpt.dhexx.cn/article/Qn1eKJKt.shtml

相关文章

抠图技术及方法简介(Image Matting Overview)

之前接触过语义分割,所以在刚接触图像抠图时以为两者是差不多。语义分割是端到端的,对像素按照语义进行多分类,而抠图就是按照前景和背景进行二分类嘛?实际上这是错误的理解。语义分割重在对每个像素的语义理解,将相同…

Portrait Matting

文章作者为 Google Research 的软件工程师 Sergio Orts Escolano 和 Jana Ehman,文章发表于 2022 年 1 月 24 日。 Portrait Matting 网络 抠图是提取精确的 alpha 遮罩的过程,抠图假设图像是前景和背景图像的合成,因此每个像素的强度是前景…

Background Matting详解

转自:https://zhuanlan.zhihu.com/p/148265115?from_voters_pagetruehttps://www.aiuai.cn/aifarm1462.html 使用人工智能技术实现类似PhotoShop等工具的抠图功能是一个非常有趣且有科研前景的一个方向。和分割算法只有 和 两个值相比,抠图得到的边缘…

【Matting】MODNet:实时人像抠图模型-onnx python部署

上一篇博客【Matting】MODNet:实时人像抠图模型-笔记分析了MODNet的原理,本篇博客将使用python部署MODNet官方提供的onnx模型,其效果如下: 在线人像抠图体验:CV案例 相关部署链接: 【Matting】MODNet&…

【笔记】Robust High-Resolution Video Matting with Temporal Guidance

Robust High-Resolution Video Matting with Temporal Guidance算法笔记 一、算法简介二、网络结构三、训练1、数据集2、训练过程3、损失函数 Robust High-Resolution Video Matting with Temporal Guidance 论文地址 RobustVideoMatting 代码地址 Robust High-Resolution Vide…

【Matting】MODNet:实时人像抠图模型-笔记

paper:MODNet: Real-Time Trimap-Free Portrait Matting via Objective Decomposition (AAAI 2022) github:https://github.com/ZHKKKe/MODNet 抠图在线体验:CV案例 部署教程: 【Matting】MODNet:实时人像抠图模型…

Image Matting 客观评价指标、数据集及主观评价

Image Matting 客观评价指标、数据集及主观评价 2021.7更新 PPM-100数据集已经开放,GitHub,详情见下文章节2.4 目录 Image Matting 客观评价指标、数据集及主观评价2021.7更新 客观评价指标1. 精度1.1 SAD1.2 MSE 均方误差1.3 Gradient error1.4 Conne…

深度学习(7)之图像抠图 Image Matting算法调研

目录 1.Trimap和Strokes 2. 相关数据集 3.论文算法调研 3.1 Deep Image Matting 3.2 Semantic Image Matting 3.3 Background Matting 3.4 Background Matting V2 3.5 Semantic Human Matting 3.6 HAttMatting 3.7 MMNet:Towards Real-Time Automatic Portrait Matt…

【SHM】Semantic Human Matting抠图算法调试

前言: 2018年阿里的论文《Semantatic Human Matting》给出了抠图领域的一个新方法,可惜阿里并没有公布源码,而牛人在Github上对这个论文进行了复现,我也是依赖Github上的工程进行钻研,而在调试的过程中,发…

[Matting]论文阅读:Deep Image Matting 详细解读

[Matting]论文阅读:Deep Image Matting 详细解读 一 、摘要 任务二、方法2.1 第一部分(Matting encoder-decoder stage)2.2 第二部分(Matting refinement stage)2.3 数据部分(Composed Datasets&#xff09…

【CVPR2022】MatteFormer: Transformer-Based Image Matting via Prior-Tokens

MatteFormer: Transformer-Based Image Matting via Prior-Tokens 中文题目: 借助先验Token的基于Transformer的图像抠图 paper:https://arxiv.org/pdf/2203.15662v1.pdf code:https://github.com/webtoon/matteformer 摘要 本文提出了一个基于Tran…

Image Matting代码和算法效果总结

本文参考了:http://blog.leanote.com/post/610167078qq.com/Image-Matting。作者给出了大部分matting-code的链接,说明也比较细致、系统,在这里向作者表示由衷地感谢!以下是博客的原文: 肖总博客:http://3…

matting笔记_一周小结

去年刚入坑的旧笔记,刚翻出来… 1. 利用神经网络做抠图的入坑之作《Deep Image Matting》 详情见之前的笔记 matting系列论文笔记(一):Deep Image Matting 由于image matting的工作没有特别好的综述,有的综述也不是…

Matting 基于DeepLearning 入门

前言 是比较清晰的用思维导图的形式介绍了一些Matting 基于DeepLearning 的经典论文,如 Deep Image matting可以通过这篇初步了解深度学习Matting领域该篇论文可以看作是基于深度学习研究Matting的开山之作,之后的许多有效、可行度高的做法都是基于这篇…

Matting和Segmentation区别及模型概述

一、两者区别 Segmentation:常被认为是硬分割(Hard Segmentation),就是将图片中的像素分成多个类别,如果是前背景分割,那么就是分成两个类别,一个类别代表前景,一个类别代表背景。而…

如何清除Safari,Chrome和Firefox中的缓存,历史记录和Cookie

如何清除浏览器的cookie缓存?许多网站的通知,用户记住账号密码登录状态,都是通过浏览器cookie缓存,定期清理Safari,Chrome和Firefox中的缓存,历史记录和Cookie,可以让浏览器保持一个良好的状态,也可以保护我们的隐私。…

Nginx缓存服务

文章目录 一、缓存概述(1)缓存的作用(2)缓存常见的类型(3)Nginx缓存的原理 二、配置Nginx缓存(1)主配置文件中缓存的语法(2)配置Nginx缓存-实验环境-实验目的…

android7.0清除缓存,iPhone7如何清理应用缓存 iphone7清理应用缓存教程

手机使用后会留下一些缓存垃圾,那么 iPhone7如何清理应用缓存? 下面就带来iphone7清理应用缓存教程,一起来学习下。 方法1:强行重启 强行重启(也叫冷重启)能够帮助iOS的设备清理一下临时文件,定期强行重启一下设备&…

Chrome Edge Firefox Safari 如何清除 DNS 缓存

Chrome Edge Firefox Safari 如何清除 DNS 缓存 如何清除浏览器的 DNS 缓存 (Chrome, Firefox, Safari) Chrome Chromium Edge Firefox Safari clear DNS Cache, flush DNS cache 请访问原文链接:https://sysin.org/blog/clear-browser-dns-cache/,查…

苹果电脑怎么清理垃圾和缓存文件,mac如何清理系统缓存文件

电脑使用的时间越久,系统运行就会变得越来越卡,这是Windows和Mac系统都会出现的现象。为了提高系统运行速度,我们有必要清理一下电脑缓存。那么苹果电脑怎么清理垃圾和缓存文件?本指南将详细讲解清理Mac缓存的技巧,还补…