实例分割算法综述

实例分割算法综述

  • 实例分割
    • 概述
    • 简介
      • 双阶段的Mask R-CNN
        • 结构:
        • 缺陷
      • YOLACT
        • 结构:
      • PolarMask
        • 结构:
        • 优点:
      • SOLO
        • 结构:
        • 损失函数:
        • 实验结果:
      • RDSNet
        • 结构:
        • 损失函数:
        • 实验结果:
      • PointRend
        • 特点:
        • 核心思想:
        • 损失函数:
        • 实验结果:
      • BlendMask
        • 结构:
        • 实验结果:
    • CoCo数据集上的表现

实例分割

概述

  • 自上而下:首先通过目标检测,再对检测框进行语义分割

  • 自下而上:首先进行语义分割,再用聚类、度量学习进行实例间的区分

简介

双阶段的Mask R-CNN

实例分割算法综述_第1张图片

结构:

  • 基础网络采用ResNet-FPN结构。
  • 利用RoI Align代替ROI pooling。(ROI pooling中有取整操作,这对像素的分类不友好,RoI Align去掉取整,采用双线性插值,获得多个点。)
  • 在原先分类和回归的基础上增加了一个Mask分支,用于语义分割。

缺陷

  • 对框的精度要求高。
  • 对非方正物体不友好。

YOLACT

实例分割算法综述_第2张图片
实例分割算法综述_第3张图片

结构:

  • backbone:Resnet101 + FPN
  • 通过Protonet网络,为每张图片生成K个原型掩模
  • 通过Prediction Head 预测掩模系数
  • 通过掩模系数和原型掩模进行线性组合生成实例Mask

PolarMask

实例分割算法综述_第4张图片

结构:

  • backbone + FPN
  • 把fcos的Bbox分支替换为mask分支(channal=36,相当于36根射线的长度)
  • 使用Polar Centerness 替换 fcos中的bbox centerness

优点:

  • anchor free 和bbox free
  • 全卷积网络

SOLO

实例分割算法综述_第5张图片

结构:

  • backbone + FPN
  • Category Branch:预测物体的语义类别(SXSXC),采用的损失函数是focal loss
  • Mask Branch:预测物体的mask,采用CoordConv,归一化(x,y)坐标到[-1,1],然后和输入特征concat。

实例分割算法综述_第6张图片

CoordConv:在featuremap 后面增加了两个通道,一个用来表示x坐标,一个用来表示y坐标

损失函数:

在这里插入图片描述

  • focal loss
  • DICE loss

实验结果:

实例分割算法综述_第7张图片

RDSNet

实例分割算法综述_第8张图片

结构:

  • backbone + FPN
  • 双流结构:目标流和像素流
  • 目标辅助实例分割
  • 掩模辅助目标检测

损失函数:

实验结果:

实例分割算法综述_第9张图片

PointRend

实例分割算法综述_第10张图片

特点:

  • 资源消耗低
  • 精确度提高
  • 抗锯齿
  • 模块可拓展

核心思想:

  1. 在粗糙的Mask上选取若干个点(一般选取边缘的点,因为边缘的点最容易出错)
  2. 融合这些点的高层特征和低层特征。
  3. 经过MLP得到新的预测。

损失函数:

  • 交叉熵损失函数

实验结果:

实例分割算法综述_第11张图片

BlendMask

实例分割算法综述_第12张图片

结构:

  • 检测网络:图中橙色部分,采用的是FCOS
  • 掩码分支1:图中的BOttom Module,用于预测得分图
  • 掩码分支2:图中的Boxes Attns,用于预测实例注意力的顶部模块
  • 掩码分支3:图中的Blender,用于将得分和注意力融合的模块

实验结果:

实例分割算法综述_第13张图片

CoCo数据集上的表现

实例分割算法综述_第14张图片

你可能感兴趣的:(算法,计算机视觉,深度学习,图像分割,实例分割)