Navigation

    Gpushare.com

    • Register
    • Login
    • Search
    • Popular
    • Categories
    • Recent
    • Tags

    CVPR2022| Mask Transfiner:基于Transformer的高精度实例分割

    CV领域
    1
    1
    107
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • 189****6672
      189****6672 last edited by

      CVPR2022| Mask Transfiner:基于Transformer的高精度实例分割

      论文标题:Mask Transfiner for High-Quality Instance Segmentation

      论文地址: https://arxiv.org/pdf/2111.13673.pdf

      论文代码: http://vis.xyz/pub/transfiner

      img

      先上几张效果图(图片均来自论文地址)

      img

      img

      img

      img

      摘要

      1. 现存问题: 实例分割是计算机视觉中的一个基础任务,用于识别每个像素点的实例标签。现有实例模型在目标高频区域仍然比较粗糙,大量的边缘像素点被错分。
      2. 解决方法: 为了解决以上问题,该论文提出基于Transformer的高质量实例分割算法Mask Transfiner。只处理检测到的容易出错的像素节点,并有效纠正错误。虽然这些稀疏的像素仅占总数的一小部分,但它们对最终的掩码质量至关重要。这使得Mask Transfiner能够以较低的计算成本预测高度精确的实例掩码。
      3. 实验结果: 大量的实验表明,Mask Transfiner 算法在三个基准上都优于现有的实例分割算法,分别在COCO数据集和BDD100K数据集上提高3.0mask AP,在Cityscapes 数据集上提高了6.6boundary AP。

      算法

      img

      我们先简要看看上图简要流程

      1. 使用一个基础Detector检测出粗掩码
      2. 根据粗掩码和Detector的层级特征使用一个Incoherence检测器得到Incoherent区域(容易出错的像素点),并根据层级生成一个四叉树
      3. 将四叉树序列输入到一个Transformer编码器和一个简易的解码器对其每个像素点进行分类得到精细的mask

      接下来对每一个模块进行讲述

      Incoherent Regions

      先介绍什么是Incoherent Regions

      img

      作者认为,实例分割的边缘错误多是由于空间分辨率过低产生的,例如对物体标注mask的下采样、过小的RoI池化、和基于PCA/DCT的系数压缩等。

      所以提出了Incoherent Regions,即计算物体Mask由于空间分辨率降低而信息损失的区域。

      上图中介绍Incoherent Regions的定义过程

      1. GT Mask经过下采样和上采样得到Recovered Object Mask,会丢失一部分信息
      2. 通过前后两个Mask作差就能得到Incoherent Regions

      下图就是得到的Incoherent Regions

      img

      刚刚介绍了Incoherent Regions的定义,接下来介绍模型是如何检测Incoherent Regions的

      img

      如上图最右侧就是Detected Incoherent Masks模块

      信息损失区域的检测遵循由低到高的级联设计(cascaded design)。如图5右侧,为了检测RoI金字塔上的不同层级上信息损失节点,

      1. Transfiner先将最低层的RoI Feature(28x28)和物体Coarse Masks预测作为输入,采用一个简单的全卷积网络(四个3×3 卷积)预测四叉树的根节点。
      2. 每个根结点会分解到上一层4个子节点,结合相应的RoI Feature,并使用单个1×1卷积层预测更精细的信息损失节点,以保持检测模块的轻量化。
      3. 直到生成最高层mask

      Node Encoder

      上述过程已经获取了所有节点的位置,接下来需要对其进行特征编码

      Node Encoder使用三种不同的信息对每个四叉树节点进行编码:

      1. Fine: 从 FPN 金字塔的相应位置和层级提取的细粒度深度特征
      2. Coarse: 初始检测器的粗略掩码预测提供的语义信息
      3. Context: 每个节点的周围临近点信息来补充局部细节(从 3×3 邻域中提取特征,再经全连接层压缩到原特征维度)

      所有特征进行fusing embedding融合,并添加位置编码,就得到节点特征。

      Sequence Encoder & Pixel Decoder

      Sequence Encoder就是一个Transformer模块,每层由多头自注意力模块和全连接的前馈网络(FFN)组成。

      为了给输入序列补充足够的前景和背景信息,还将RoI金字塔中最低层大小为14x14的196个特征点输入。

      Transfiner 的解码器(Pixel Decoder)是一个简单的两层 MLP,不具有多头注意力模块。它对树中每个节点的输出查询进行解码,以预测最终的实例标签。

      实验

      在COCO、Cityscapes和BDD100K数据集上进行实验

      消融实验

      Effect of the Incoherent Regions

      image-20220421204652889

      image-20220421204826187

      Ablation on the Incoherent Regions Detector

      image-20220421204915647

      Effect of Incoherent Points Encoding

      image-20220421204953724

      Comparison with State-of-the-art

      COCO数据集

      image-20220421205205091

      Cityscapes

      image-20220421205302062

      BDD100K数据集

      image-20220421205320675

      可视化

      image-20220421205413700

      1 Reply Last reply Reply Quote 1
      • Referenced by  Alice_恒源云 Alice_恒源云 
      • Referenced by  Alice_恒源云 Alice_恒源云 
      • First post
        Last post