【实例分割】5、Look Closer to Segment Better


在这里插入图片描述
Paper: https://arxiv.org/abs/2104.05239
Code: https://github.com/tinyalpha/BPR

一、背景

实例分割:

  • 给图片中的每个目标生成一个带有类别信息的 pixel-wise 的 mask
  • 目前比较流行的是 Mask RCNN 系列,也就是使用 Faster-RCNN 检测目标,然后使用 mask 分支来对box内部进行二类别的分割。

现有的实例分割的mask的质量仍然不尽如人意(图1左),边界很粗糙,而且没有对齐目标边界。原因主要有两个

  • 特征图的分辨率太小,mask rcnn 的是 28x28,[38][43]的是输入图像的1/4,导致细小的边界都消失了,预测出来的都是粗糙或不明确的。
  • 边界像素所占的比例太少,少于 1% [18],而且本来就很难分类,所以,同等的看待所有的pixels可能会导致优化偏向于目标内部区域,边界区域效果较差。

在这里插入图片描述

如果能提升目标边界附近的效果,那么可以较大的提升实例分割的效果。

作者做了一个上限实验,在边界附近特定距离时(1px/2px/3px),使用真实的标签来代替预测的结果,AP 有较大的提升。
在这里插入图片描述

二、动机

现有方法中,也有很多通过引入边界分支来提升对边界分割的效果,但这些也依赖于对边缘的准确预测,作者认为实例的边界预测和实例分割的复杂度是不相上下的。

受启发于分割真值的标注,标注人员在标注局部细小边界时,需要放大原图进行标注,在标注大边缘时,不需要放大即可标注。

故本文提出了一个在概念上很简单,但很有效的方法:crop-then-refine。

  • 得到一个粗糙的mask后,首先沿着 boundaries 抽取一系列的子块
  • 将mask的patch和抽取出来的boundaries patch进行concat,共同送入 refinement 网络(BPR, boundary patch refinement)。

上述方法可以解决:

  • 1、小的patch就可以保存高分辨率
  • 2、小的patch中的边界像素占比会提升,缓解之前的极度不平衡

三、方法

在这里插入图片描述

3.1 Boundary Patch Extraction

作者使用 sliding window 的方法提取边界 patch,即以边界为中心,密集的生成正方形框,然后使用 NMS 滤掉部分框

3.2 Boundary Patch Refinement

Mask Patch:
在这里插入图片描述
Boundary Patch Refinement Network:

该网络的目的是实现对每个 boundary patch 的二类分割,只要使用任意一个语义分割网络,实现输入4路(RGB+1 binary mask patch),输出2类即可。

作者选择了 HRNetV2 来作为 refinenet,可以保证高分辨率的保持。

Reassembling: refine 之后,使用这些patch来代替没有refine之前的patch,对于重叠的相邻区域,对其取均值后,使用阈值判断,如果大于0.5则判断为前景,否则判断为背景。

3.3 Learning and Inference

训练时,作者仅仅抽取那些预测的mask和gt的iou大于0.5的实例的boundary patch。但所有预测的实例在 inference 阶段都会保留。

模型输出是被从 gt 中提取出的 mask patch 监督的,之后做逐点的二分类cross-entropy损失。

训练时,作者的 NMS 阈值设置为 0.25,inference 时会根据速度的需要来选择不同的阈值。

四、实验

经过消融实验后,作者使用如下的超参数:

  • 使用mask patch
    在这里插入图片描述

  • boundary patch 抠图大小为 64x64,且无 padding
    在这里插入图片描述

  • 送入 refinement network 的patch被resize为 256x256的效果最好
    在这里插入图片描述

  • NMS:0.55时取得了好的效果
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

呆呆的猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值