论文总结之FCIS:Fully Convolutional Instance-aware Semantic Segmentation(附基于代码的网络结构)

[论文地址]:FCIS:Fully Convolutional Instance-aware Semantic Segmentation
[源代码](基于MXNet)

出发点

FCN在语义分割上取得了很好的效果,但是不适用于实例分割,因为卷积具有平移不变性,不能区分同一类型不同位置的不同个体。

当时流行的实例分割的步骤:
1)利用FCN生成一组共享的特征
2)利用ROI Pooling得到一组固定的ROI特征图
3)连接一个或多个全连接层用于拟合每个ROI内mask(gt在ROI内的特征图)
最后一步引入了平移不变性

具体来说有以下缺点:

  1. ROI pooling的变换和resize丢失了特征细节,但是为了于全连接层连接又不可或缺(产生固定尺寸的特征),减低了预测准确性(尤其是对较大的物体——损失的细节更多)。
  2. 缺少局部权重正则化的全连接层容易过拟合
  3. 全连接层要一个一个拟合ROIs来实现高准确率,但对于过多的候选区域而言,计算代价过大。
==> 能否挖掘FCN优点,构建一个端到端的实例分割网络?

InstanceFCN提出了中全卷积的实例分割网络,但是不是端到端的,需要额外的downstrem网络用于检测;同时为了查找多尺度的实例,采用了耗时的图像金字塔操作。

方法概述

通过一种新的无附加参数的联合公式,充分共享了目标分割和检测子任务的卷积模块特征表达和分数图;每个ROI不需要wrap和resize。
同一组分数图用来进行目标分割和检测

在这里插入图片描述在这里插入图片描述对于ROI内的每个像素点,有两个学习任务
1)检测:该像素点在相对位置是否属于对象边界框;(分别标记为检测+, 检测-)
2)分割:该像素点是否在实例的边界内部;(分别标记为分割+和分割-)

对上述学习任务,论文中综合两个(通道上的)输出特征图来给出答案,
1)内部分数高 且 外部分数低:检测+ 且 分割+
2)内部分数低 且 外部分数高:检测+ 且 分割-
3)内部分数低 且 外部分数低:检测- 且 分割-

这里的分数通过将softmax和max作用在特征图的深度方向上产生,具体看下面的网络结构。

整体结构

  1. 使用resnet作为backbone来提取特征,去掉末尾1000个神经元的全连接层,仅训练前面的卷积层,同时末尾添加1024d的1x1卷积层用来将原始为2048通道的输出降维;同时原来的resnet的输出特征图下采样了32x,对于语义分割来说太粗糙,在最后一层使用了空洞卷积替代下采样的卷积步长(conv5第一个block中步长为2的卷积核改步长为1,dilation设为2)。
  2. 使用一个RPN去产生ROIs, 接在resnet的conv4之后。
  3. 在conv5输出的特征图之后,连接一个1x1的卷积核输出2K^2*(C+1)通道的分数图(C个对象类别,附加一个背景类别,k默认为7(表示从不同的k个通道上按位置取样),代码中表示为group_size=7,roi的长宽方向上bins设置为21(因此每个通道上的采样被划分为3x3大小), 2表示每个类别的内部分数图和外部分数图)
  4. 然后该分数图作为输入,得到前述两个学习任务的答案。
  5. 此外,参照检测任务,在conv5特征图后并联一个4k^2-d的1x1卷积,用于回归RPN生成ROIs(平移缩放)
    在这里插入图片描述训练:
    和最近的gt_bbox IOU>0.5时,ROI被认为是正,其他为负。每个ROI由三个权重相等loss项:
  6. C+1类别的softmax类别检测loss
  7. 被预测为前景的softmax分割loss
  8. 边框的回归loss
    后两项只有在ROI为正时才参与计算

初始权重为ImageNet分类权重,没有该权重的剩余层被随机初始化。
所有输入图像的短边被resize为600
SGD优化器,在8GPU上训练,每个GPU设置mini-batch为1张图像,因此整个网络训练时的mini-batch为8
对于VOC 数据集,前20k次迭代学习率为0.001, 后10k次迭代为0.0001
对于COCO数据集,迭代次数x8

可应用OHEM在线困难样本挖掘(Training region-based object detectors with online hard example mining. ),对前向传播为300个ROIs,选中losses最高的128个ROIs反向传播。

RPN默认使用9个anchors,但是对于COCO数据集,采用了额外的3个anchor(Microsoft COCO: Common objects in context.), RPN和FCIS采用联合训练。
在这里插入图片描述

推理:

RPN产生300个置信度最高的ROIs,然后通过位置回归分支,产生微调后的300个ROIs;
对每个ROI,为每个类别获取类别分数和前景mask
设置IOU阈值为0.3,使用NMS滤除部分ROIs,对保留的ROIs,将其归为类别分数较高的类,同时对每个ROI,找出300个ROIs中与之IOU大于0.5的ROIs, 对每个像素点,按照该类别的置信度加权平均得到该ROI内的前景mask,二值化后输出。

在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值