Weakly Supervised Instance Segmentation using the Bounding Box Tightness Prior 论文笔记

  • 一、摘要
  • 二、引言
  • 三、相关工作
    • 3.1 Weakly supervised semantic segmentation
    • 3.2 Fully supervised instance segmentation.
    • 3.3 Weakly supervised instance segmentation
  • 四、方法
    • 4.1 Overview
    • 3.2 Proposed MIL formulation
    • 3.3 MIL loss
    • 4.4 DenseCRF for object instance refinement
    • 4.5 Implementation details
  • 五、实验结果
    • 5.1 Dataset and evaluation metrics
    • 5.2 Comparison with the state-of-the-art methods
    • 5.3 Ablation studies
  • 六、Conclusion
  • 写在后面

写在前面

  这是第一篇实例分割的文章,而且是弱监督实例分割,预感未来的工作,弱监督或者无监督会是主流吧?

  论文地址:Weakly Supervised Instance Segmentation using the Bounding Box Tightness Prior
  代码地址:Github

  收录于NeurlPS 2019

一、摘要

  弱监督实例分割的主要难点在于:每一个BBOX内,没有任何信号监督框内不确定图形的分布。本文将这个难点视作多实例学习(MIL\text{MIL}MIL)任务,并在每一个BBOX的扫线(纵横方向上的像素)下产生正负bags,从而解决该问题。本文提出的模型能够将MIL\text{MIL}MIL整合到全监督实例分割网络中,其核心思想为“Unary term”和“Pairwise term”(一元 & 成组),前者评估每一个前景和背景区域,后者使得评估出的目标mask成一个整体。
  数据集采用PASCAL VOC\text{PASCAL VOC}PASCAL VOC,这个数据集类别少,效果好,搁在COCO数据集上就够呛。

二、引言

  第一段讲述下实例分割的概念,第二段讲述一般实例分割的处理方法流程,点处了标注实例部分代价很大。因此第三段本文提出只采用BBOX标注的情况下进行实例分割。

[17] A. Khoreva, R. Benenson, J. Hosang, M. Hein, and B. Schiele. Simple does it: Weakly supervised instance and semantic segmentation. In CVPR, 2017.
[18] C. Rother, V. Kolmogorov, and A. Blake. GrabCut - Interactive foreground extraction using iterated graphcuts. TOG, 2004.
[19] J. Pont-Tuset, P. Arbelaez, J. Barron, F. Marques, and J. Malik. Multiscale combinatorial grouping for image segmentation and object proposal generation. TPAMI, 2017.

  之前的文章(参考文献[17])采用了参考文章[18、19]中的方法提前构建伪标签训练一个全监督网络,因此非端到端训练。
  相比之下,作者将MIL\text{MIL}MIL整合到全监督中,实现了端到端训练。由于在推理阶段不需要使用proposal,因此能够加速分割。
  想法来源:参考文献[20],09年的文章,真是好文章什么时候都不会过时。

[20] V. Lempitsky, P. Kohli, C. Rother, and T. Sharp. Image segmentation with a bounding box prior. In ICCV, 2009.

  因为目标Instance会触及到BBOX的四条边,利用这点设计了MIL\text{MIL}MIL,训练MIL\text{MIL}MIL需要正负bags,正的bags为至少包含一个正Instance的bag,负的bags为至少包含一个负Instance的bag。如下图所示:

  其中,黄色框中的横纵绿色线表示为正的bag,而在框外的红色线为负的bag,这些线在原图中对应的为一行或者一列像素。具体来说,正的bag:在一个BBOX内至少覆盖了Instance一个像素的线;负的bag:并未穿过BBOX的线都为负的bag。
  本文的主要贡献:
  1、通过MIL\text{MIL}MIL来从BBOX推理目标,是第一个提出使用BBOX的端到端的弱监督实例分割算法;
  2、能够同时得到像素级别的ground truth、目标实例特征表示、以及分割的模型;
  3、采用 DenseCRF\text{DenseCRF}DenseCRF 微调Instance mask,在PASCAL VOC 2012\text{PASCAL VOC 2012}PASCAL VOC 2012数据集上的分数超过了现有的方法。

三、相关工作

3.1 Weakly supervised semantic segmentation

  基于CNNs\text{CNNs}CNNs,不同的弱监督标注,例如合成标注,BBOX标注,下标标注,点标注和图像级别的标注用于语义分割,本文采用BBOX标注用于实例分割(逼格高一级)。

3.2 Fully supervised instance segmentation.

  主要是Faster-RCNN、Mask-RCNN\text{Faster-RCNN、Mask-RCNN}Faster-RCNN、Mask-RCNN等。

3.3 Weakly supervised instance segmentation

  利用BBOX、Image、Image Groups的标注进行实例分割。

四、方法

  先给出整体预览,其次描述提出的MIL\text{MIL}MIL方法,然后是网络优化器,最后是分割微调的细节部分。

4.1 Overview


  训练数据:D={In,Bn}n=1N\mathcal D={{\{}{I_{n},B_{n}}{\}}_{n=1}^{N}}D={In​,Bn​}n=1N​,其中NNN为图像的数量,InI_{n}In​为第nnn张图像,BnB_{n}Bn​为InI_{n}In​的BBOX标注。假设InI_{n}In​包含KnK_{n}Kn​个BBOX,Bn={bnk,ynk}k=1KnB_{n}={\{}{\text b}_n^{k},{\text y}_{n}^{k}{\}}_{k=1}^{K_{n}}Bn​={bnk​,ynk​}k=1Kn​​,bnk{\text b}_n^{k}bnk​为第kkk个向量的4维度位置向量表示,ynk{\text y}_{n}^{k}ynk​为对应于BBOX的CCC维度的种类表示,CCC为类别的数量。
  在分割分支,首先评估每个检测到的BBOX的目标实例图,然后产生正负bags,通过MIL\text{MIL}MIL的损失Lmil\mathcal L_{\text {mil}}Lmil​函数进行优化,最终的损失函数为:
L(w)=Lcls(w)+Lreg(w)+Lmil(w){\mathcal L}(\text w)=\mathcal L_{\text {cls}}(\text w)+\mathcal L_{\text {reg}}(\text w)+\mathcal L_{\text {mil}}(\text w)L(w)=Lcls​(w)+Lreg​(w)+Lmil​(w)
  其中,Lcls\mathcal L_{\text {cls}}Lcls​为BOX分类损失,Lreg\mathcal L_{\text {reg}}Lreg​为BOX回归损失,Lmil\mathcal L_{\text {mil}}Lmil​为提出的MILMILMIL损失。

3.2 Proposed MIL formulation

  BBOX为目标Instance的最小外界矩形,因此可以利用到的两个属性:1、Instance一定会触及到BBOX的四条边;2、除了Instance,没有其他区域和BBOX有重叠部分,这两条属性将要用来构建正负bags。
  对于每一个BBOX,由于穿过BBOX的线至少有一个像素落在Instance上,这样的线就组成了对应BBOX类别的bags。同理,若没有像素落在 Instance上,那么这样的线就组成了负的bags。
  本文中,对于每一个BBOX,收集所有的在BBOX内的纵横线为正的bags,用符号表示一个正的bag:b^+={pi}\hat b^{+}={\{}{\text p_{i}}{\}}b^+={pi​},{pi}{\{}{\text p_{i}}{\}}{pi​}为线上的第iii个像素。负的bags数量与正样本数量,为随机选取的靠近BBOX外侧的线,用符号表示一个负的bag:b^−={pi}\hat b^{-}={\{}{\text p_{i}}{\}}b^−={pi​}。
  至此,就可以用产生的bags数据来增强D={In,Bn}n=1N\mathcal D={{\{}{I_{n},B_{n}}{\}}_{n=1}^{N}}D={In​,Bn​}n=1N​,新的训练集为D^={In,Bn,B^n}n=1N\hat \mathcal D={{\{}{I_{n},B_{n},\hat B_{n}}{\}}_{n=1}^{N}}D^={In​,Bn​,B^n​}n=1N​,B^n={b^n,k+,b^n,k−}k=1Kn\hat B_{n}={\{}{{\hat \text b}_{n,k}^{+},{\hat \text b}_{n,k}^{-}{\}}_{k=1}^{K_{n}}}B^n​={b^n,k+​,b^n,k−​}k=1Kn​​,包含了所有在图像InI_nIn​上的第kkk个BBOX bnk\text b_n^kbnk​所有正负bags。具体来说,正样本集合B^n,k+={b^n,k,l+}l=1Hn,k+Wn,k\hat B_{n,k}^{+}={\{}{\hat b_{n,k,l}^{+}}{\}_{l=1}^{H_{n,k}+W_{n,k}}}B^n,k+​={b^n,k,l+​}l=1Hn,k​+Wn,k​​,Hn,k+Wn,k{H_{n,k}+W_{n,k}}Hn,k​+Wn,k​为所有正的bags数量,Hn,k,Wn,k{H_{n,k},W_{n,k}}Hn,k​,Wn,k​为第kkk个BBOX bnk\text b_n^{k}bnk​的高宽。同理,负的bags为B^n,k−={b^n,k,l−}l=1Hn,k+Wn,k\hat B_{n,k}^{-}={\{}{\hat b_{n,k,l}^{-}}{\}_{l=1}^{H_{n,k}+W_{n,k}}}B^n,k−​={b^n,k,l−​}l=1Hn,k​+Wn,k​​。

3.3 MIL loss

  对于每一个BBOX bnk\text b_n^{k}bnk​,分割分支预测出的Instance得分图为Sn,k∈[0,1]Wn,k×Hn,kS_{n, k} \in[0,1]^{W_{n, k} \times H_{n, k}}Sn,k​∈[0,1]Wn,k​×Hn,k​。为了训练该分支,设计了损失函数基于MIL\text{MIL}MIL的损失函数Lmil\mathcal L_{\text {mil}}Lmil​以及增强的bag数据 B^+&B^−\hat B^{+}~\&~\hat B^{-}B^+ & B^−。Lmil\mathcal L_{\text {mil}}Lmil​定义为:
Lmil (S;B^+,B^−)=ψ(S;B^+,B^−)+ϕ(S)\mathcal{L}_{\text {mil }}\left(S ; \hat{B}^{+}, \hat{B}^{-}\right)=\psi\left(S ; \hat{B}^{+}, \hat{B}^{-}\right)+\phi(S)Lmil ​(S;B^+,B^−)=ψ(S;B^+,B^−)+ϕ(S)
  其中,“Unary” ψ\psiψ通过限制训练bags中的得分图 SSS 中的 B^+&B^−\hat B^{+}~\&~\hat B^{-}B^+ & B^− 来启动MIL\text{MIL}MIL,“Pairwise” ϕ\phiϕ 对 SSS 施加结构化的限制来维持目标的整体性。具体来说:
  Unary term:给予一组正负bags B^+&B^−\hat B^{+}~\&~\hat B^{-}B^+ & B^−,“Unary” 强迫BBOX在预测图 SSS 上收紧,同时也能够帮助预测出更好的masks。用公式表示为:
ψ(S;B^+,B^−)=∑b^∈B^+−log⁡P(b^)+∑b^∈B^−−log⁡(1−P(b^))\psi\left(S ; \hat{B}^{+}, \hat{B}^{-}\right)=\sum_{\hat{b} \in \hat{B}^{+}}-\log P(\hat{b})+\sum_{\hat{b} \in \hat{B}^{-}}-\log (1-P(\hat{b}))ψ(S;B^+,B^−)=b^∈B^+∑​−logP(b^)+b^∈B^−∑​−log(1−P(b^))
  其中,P(b^)=maxp∈b^S(p)P(\hat{b})=\text {max}_{\text p \in \hat b}S(\text p)P(b^)=maxp∈b^​S(p),在不改变网络结果的情况下可以通过逐行/列的最大池化操作进行。
  Pairwise term:
使用“Unary term”仅仅只能够分割出显著的部分而不是整个Instance,因此“Pairwise term”利用结构化的限制来强制预测出的Instance masks更加平滑。以这种方式,显著性区域的高分区域能够被投影到周围区域。用公式表示如下:
ϕ(S)=∑(p,p′)∈ε∥S(p)−S(p′)∥2\phi(S)=\sum_{\left(\mathbf{p}, \mathbf{p}^{\prime}\right) \in \varepsilon}\left\|S(\mathbf{p})-S\left(\mathbf{p}^{\prime}\right)\right\|^{2}ϕ(S)=(p,p′)∈ε∑​∥S(p)−S(p′)∥2
  其中ε\varepsilonε为包含所有邻域像素对的集合。
  MIL\text{MIL}MIL的损失函数Lmil\mathcal L_{\text {mil}}Lmil​可微分且为凸函数,因此能够采用SGD优化。

4.4 DenseCRF for object instance refinement

  为了加强目标定位的准确性,采用 DenseCRF\text{DenseCRF}DenseCRF 用于微调。在使用平均field近似后,DenseCRF\text{DenseCRF}DenseCRF 输出最后的Instance mask。
实验表明,DenseCRF\text{DenseCRF}DenseCRF 补偿了目标检测器的不精确情况。

4.5 Implementation details

  ResNet-101\text{ResNet-101}ResNet-101,1080Ti\text{1080Ti}1080Ti,ADAM\text{ADAM}ADAM,Mask R-CNN\text{Mask R-CNN}Mask R-CNN

五、实验结果

  数据集和评估指标→\rightarrow→方法性能→\rightarrow→消融实验,实验推荐不用看了,毕竟方法确实有点老了,理解核心思想就可~

5.1 Dataset and evaluation metrics

  Pascal VOC 2012\text{Pascal VOC 2012}Pascal VOC 2012、MS COCO\text{MS COCO}MS COCO
  mean average precision (mAP)\text{mean average precision (mAP)}mean average precision (mAP),0.25,0.5,0.7 & 0.75

5.2 Comparison with the state-of-the-art methods

5.3 Ablation studies

  4种消融实验:1、baseline;2、每一个组成部分;3、不精确的annotations的鲁棒性研究;4、不同annotations cost性能;

六、Conclusion

  提出了一种仅采用BBOX标注的弱监督实例分割方法,将MIL\text{MIL}MIL整合进全监督实例分割网络中,进一步采用 DenseCRF\text{DenseCRF}DenseCRF 取得更好的性能。

写在后面

这是19年的一篇采用BBOX作为标注的弱监督实例分割文章,虽说目前的性能有些看不上,但是其设计理念还是值得一看的。

推荐一篇21年的弱监督实例分割文章,效果非常好。
论文链接:BoxInst: High-Performance Instance Segmentation with Box Annotations
代码链接:GitHub
收录于 CVPR 2021

Video Demo链接:Youtube
B站视频讲解链接:【极市】田值:BoxInst,使用外接框标注的高性能实例分割

Ps:由于这篇21年的文章已经有不少大神写过博客了,而且写得很好,我就不做重复工作了。
参考博文:
【1】BoxInst: High-Performance Instance Segmentation with Box Annotations 论文学习
【2】论文笔记:BoxInst
【3】沈春华组最新论文BoxInst:只需要box标注的实例分割模型

Weakly Supervised Instance Segmentation using the Bounding Box Tightness Prior 论文笔记相关推荐

  1. Weakly Supervised Instance Segmentation using Class Peak Response

    据说是第一篇关于图像级实例分割的文章... 看了很多关于这篇文章的博客和知乎,总觉得他们没有写清楚最关键的几个问题:例如,怎么从局部极大值点中筛选出峰值?怎么从MCG等传统图像处理方法获得的图像边缘中 ...

  2. Weakly Supervised Semantic Segmentation list

    Weakly Supervised Semantic Segmentation list 文章转自Github:https://github.com/JackieZhangdx/WeakSupervi ...

  3. Weakly Supervised Semantic Segmentation with Boundary Exploration

    Weakly Supervised Semantic Segmentation with Boundary Exploration 摘要 1 Introduction 2 Related Work 3 ...

  4. Non-Salient Region Object Mining for Weakly Supervised Semantic Segmentation

    Non-Salient Region Object Mining for Weakly Supervised Semantic Segmentation 摘要 1. Introduction 2. R ...

  5. 阅读笔记:Self-supervised Equivariant Attention Mechanism for Weakly Supervised Semantic Segmentation

    Self-supervised Equivariant Attention Mechanism for Weakly Supervised Semantic Segmentation 基于等变注意力机 ...

  6. 【论文阅读】Online Attention Accumulation for Weakly Supervised Semantic Segmentation

    一篇弱监督分割领域的论文,其会议版本为: (ICCV2019)Integral Object Mining via Online Attention Accumulation 论文标题: Online ...

  7. 【论文阅读】Regional Semantic Contrast and Aggregation for Weakly Supervised Semantic Segmentation

    论文标题: Regional Semantic Contrast and Aggregation for Weakly Supervised Semantic Segmentation 作者信息: 代 ...

  8. 机翻《C-CAM: Causal CAM for Weakly Supervised Semantic Segmentation onMedical Image 》

    前言 <C-CAM: Causal CAM for Weakly Supervised Semantic Segmentation onMedical Image>CVPR2022,有源码 ...

  9. 【cvpr2022-论文笔记】《Multi-class Token Transformer for Weakly Supervised Semantic Segmentation》

    目录 MCTformer-V1 Class-specific multi-class token attention Class-specific attention refinement Class ...

最新文章

  1. 软件测试之移动应用的压力和性能测试
  2. 说说 Spring 事务管理的实现类
  3. RHEL在戴尔系统上p1p1 ......命名规则
  4. 网易有道2017内推编程题
  5. 机器学习A-Z~简单线性回归
  6. 笔记本键盘维修[原创]
  7. 2.1.1Remove Duplicates from Sorted Arr
  8. ubuntu 12.04 /sbin/ldconfig.real: /usr/local/lib/*.so.8 不是符号连接 解决办法
  9. 容器技术之Dockerk8s知识笔记
  10. 将 LDAP 目录用于 Samba 认证
  11. Kettle行列转换
  12. RSync实现文件备份同步,rsync服务器
  13. mysql手册06_触发器
  14. 资源下载网站整站资源|建站6万资源数据32G整站下载
  15. 中国石油大学《近代炼油技术》第二阶段在线作业
  16. 学习 stm32 无线蓝牙模块HC05配置与应用(手机蓝牙连接发送参数)
  17. 基于CC2430的Zigbee的第一个实验
  18. 常用的Windows命令提示符
  19. 新浪微博授权登录 文件不存在C8998
  20. 得力计算机怎么把小数化成分数,判断分数能否化成有限小数的方法.ppt

热门文章

  1. Python使用pip安装报错ModuleNotFoundError: No module named ‘pip._internal.cli.main‘的解决方法
  2. Ubuntu apt install / update错误前因后果: 连接失败 [IP: 91.189.91.* 80]
  3. 渡阡科技Edu——梦开始的地方
  4. 【论文阅读】UNet-2022: Exploring Dynamics in Non-isomorphic Architecture
  5. 学习Python第四天
  6. 头条搜索官网认证说明
  7. 剥茧抽丝,细数模块化的前世今生
  8. php提交道不同,【后端开发】php引用和拷贝的区别
  9. java控制台输入 scanner_java控制台输入Scanner、InputStreamReader、Console说明
  10. 【ROM制作工具】合并分割system.img和userdata.img文件修改教程