MODNet:基于目标分解的实时trimap

编程入门 行业动态 更新时间:2024-10-22 22:49:50

MODNet:基于目标<a href=https://www.elefans.com/category/jswz/34/1767758.html style=分解的实时trimap"/>

MODNet:基于目标分解的实时trimap

论文:.11961.pdf

代码:GitHub - ZHKKKe/MODNet: A Trimap-Free Portrait Matting Solution in Real Time [AAAI 2022]

 1. 动机

        这篇文章和PP-Matting是同一时期发表的,因此可认为是两项独立的、探索trimap-free的文章。故而,其动机也有相似之处:此前Matting研究要么基于trimap,要么设计计算复杂的多个阶段,所以都不能在实际场景中实时应用。

        因此,本文提出了一种轻量级、trimap-free的目标分解网络(MODNet),关键思想是通过显式约束同时优化一系列子目标。此外,还提出了一个高效的 空洞空间金字塔池 (e-ASPP) 模块来融合多尺度特征以进行语义估计,一种自监督子目标一致性(SOC)策略,使MODNet适应真实世界的数据,以解决无trimap方法常见的域转移问题。

        相比已有方法,MODNet有三个优点:1),512*512分辨率下在1080Ti上可达67FPS;2),在开源 Adobe Matting 基准和新提出的 PPM-100 基准上都取得了SOTA;3)部署,单模型方便转换到onnx等格式。

2. 方法

2.1. 整体描述

        网络结构如图:

图 2:MODNet 架构

         网络结构简单描述一下:

  • 输入一幅图像I,送入三个模块:S、D、F;
    • S模块:在低分辨率分支进行语义估计,在backbone最后一层输出接上e-ASPP得到语义feature map Sp;
    • D模块:在高分辨率分支进行细节预测,通过融合来自低分辨率分支的信息得到细节feature map Dp;
    • F模块:融合来自低分辨率分支和高分辨率分支的信息,得到alpha matte ap;
  • 对S、D、F模块,均使用来自GT的显式监督信息进行监督训练。

2.2. 关键技术

Semantic Estimation(S模块):S模块使用Encoder的高级语义feature map,接上卷积层、sigmod激活得到一个1channel的feature map,然后使用GT的缩略图进行监督训练,使用L2作为loss(其中G是通过高斯模糊进行16倍下采样):

e-ASPP:在S模块中,提出了一个高效的空洞空间金字塔池化(e-ASPP),如图3所示,先将原feature map压缩到1/4,并在输出时恢复;然后将空洞卷积分解为depth-wise空洞卷积和逐点卷积以降低计算量;最后,切换通道间融合的顺序并进行多尺度融合,这样就只需以此通道间融合,且将多尺度特征融合转换为更便宜的深度操作。相比原始ASPP,e-ASPP只有其1%的参数量与计算开销,且能达到相当的性能。

Detail Prediction(D模块):D模块主要处理前景肖像周围的过渡区域,输入是原图、S模块中间feature map及最终feature map。D模块有三种策略来进行简化:1)相比S模块,D中卷积层更少;2)D中卷积层的channel更少;3)D中的feature map也没有保持原始分辨率,而是一开始做了1/4下采样,并在最后恢复;D模块的训练使用“GT进行膨胀腐蚀后再与GT相乘得到的信号”进行监督,仅包含边界部分(边界部分为1,其余地方为0),loss如下:

Semantic-Detail Fusion(F模块):F模型直接用卷积模块将来自S、D的feature map进行融合,用来预测最终的alpha matte:

 MODNet通过联合S/D/F三个模块的损失,可进行end-to-end训练:

sub-objectives consistency (SOC):之前为了克服数据缺少的问题,DIM提出了使用背景替换的方式合成数据,这也成了当前流行的方式,但这也会让模型对训练数据过拟合而在实际应用中表现较差。作者提出了子目标一致性约束来解决这个问题。

关于子目标一致性,以S模块为例,其输出S(I)是F模块的alpha matte F (S(I), D(S(I)))先验,因此S需要和F保持一致性,也即,其对某一块像素的预测,它们需要保持一致。这在源域是没问题的,但在未知域可能会出问题。因此,作者提出使用自监督的SOC策略,来对子目标增加一致性约束。对于未知域的图像I,经过MODNet后得到三个输出:

 将alpha matte中的语义强加给S、D的输出:

 然而,在公式(7)后半部分会使alpha matte的边界变平滑,所以增加了一个损失,在自监督训练时,创建模型M的副本M',用M'预测提花(7)后半部分中的:

3. 实验结果

更多推荐

MODNet:基于目标分解的实时trimap

本文发布于:2023-11-15 21:50:39,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1606878.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:分解   实时   目标   MODNet   trimap

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!