实例分割算法综述

实例分割

概述

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

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

简介

双阶段的Mask R-CNN

在这里插入图片描述

结构:

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

缺陷

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

YOLACT

在这里插入图片描述
在这里插入图片描述

结构:

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

PolarMask

在这里插入图片描述

结构:

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

优点:

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

SOLO

在这里插入图片描述

结构:

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

在这里插入图片描述

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

损失函数:

在这里插入图片描述

  • focal loss
  • DICE loss

实验结果:

在这里插入图片描述

RDSNet

结构:

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

损失函数:

实验结果:

在这里插入图片描述

PointRend

特点:

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

核心思想:

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

损失函数:

  • 交叉熵损失函数

实验结果:

在这里插入图片描述

BlendMask

在这里插入图片描述

结构:

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

实验结果:

在这里插入图片描述

CoCo数据集上的表现

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq128252/article/details/127733954