【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation

【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation_第1张图片
CVPR 2018

文章目录

    • 概述
    • 细节
    • Results
    • Conclusion
    • keypoint & problem

概述


  • 要解决的问题
    • 弱监督分割
    • 通过一个object的left-most, right-most, top, bottom pixels作为输入(最初由Papadopoulos等人的Extreme clicking for efficient object annotation提出的做法),来获取精准的目标分割(图片or视频)。
  • 采用的方法
    • 给输入的RGB图增加额外的一个通道构成网络的输入
  • 结果如何
    • 在COCO,PASCAL,Grabcut,DAVIS2016,DAVIS2017表现出了很好的效果。
Dataset Description
Grabcut Link
DAVIS2016/2017 video分割数据集
  • Contribution
    • 文章号称对以下场景可以用统一的方式来处理好:如监督学习里的标签费时费力费钱,弱监督学习的效果无法很好,半监督学习里的需要人来操作一些步骤,即需要人机的一些交互。
    • paper提出的方法DEXTR可以使用很多任务 :Instance/Semantic segmentation, Video, Interactive segmentation
    • 还可以用DEXTR来制作dense annotations to train supervised techniques.

细节


Method

  • Extreme points:弱监督分割,一般是使用目标的bbox来作为先验信息,但是,为了获取这样的bbox信息还是人力上很麻烦,Papadopoulos就提出了使用extreme click来获取bbox的方法,从原来的均时34.5s降到了7.2s。从定义上来看,extreme point可以提供更多的信息,因为除了可以得到很好的bbox之外,还能够提供四个在object边界的点
  • 整个网络的结构示意图
    • 以每个extreme point为中心会是一个高斯heatmap数值,heatmap作为一个channel,与RGB图像形成一个4-channels input。
    • 为了focus on the object of interest,会根据extreme point生成的bbox来进行裁剪
    • 针对一些task,论文使用Resnet-101作为backbone,其中有使用atrous convolution,还有pyramid scene parsing module。对于大多数实验,采用的预训练好的Deeplab-V2模型。
    • 输出的结果是:概率map,表示某个像素是否属于我们想要分割的目标。
    • Loss:权重表示的是类别所占的比例(通常很多方法是background类会很多,但是这里使用的是bbox crop作为sample,所以foreground类会比background多)
      在这里插入图片描述【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation_第2张图片
  • DEXTR的使用样例
    • Class-agnostic Instance Segmentation:只负责分割,不负责分类
    • Annotations标注员只需要对extreme point进行标注,DEXTR就可以产生很很好的分割标签。
    • Video Object Segmentation:半监督,通过一个或者稍微多一些的mask作为输入,从而产生整个video的分割。论文对这个任务要做到的目标是:通过DEXTR来通过标记的extreme point来产生分割效果,从而重新训练出很好的全监督视频分割网络。
    • Interactive Object Segmentation:略

Results


  • 一些对比实验
    • 结构对比:一个是Deeplab-V2结构(输入是around the object of interest的patch),另一个是类似Mask rcnn的二阶段,使用region-based的方法(输入是整张图),使用ResNet-101作为主干。前者效果+3.9% IoU,原因是后者的output分辨率太低,细节信息不够。
    • Bounding box vs. extreme point:使用DeepLab-v2做实验,对于前者,使用bounding box+和周围50pixel填充的patch作为输入,后者是将extreme point作为image的第4个channel合并作为输入,后者效果+3.1% IoU。
    • Loss:加入了类别权重提升了挺多+3.3% IoU
    • Fully image vs. crops:+7.9% IoU
    • ASPP(Atrous spatial pyramid) vs. PSP(pyramid scene parsing module):PSP提升+2.3%
    • Manual vs. simulated extreme points:这里就是对DEXTR输入人工产生的extreme points或是our simulated ones(不太理解这个地方)的对比效果。
    • Distance-map vs. fixed points:Distance-map就是使用distance transform of positive and negative annotations as an input to the network.
      【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation_第3张图片
      【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation_第4张图片
  • SBD:来自Semantic contours from inverse detectors论文的数据集(has object instance boundaries on almost 10, 000 images containing more than 20, 000 objects from 20 categories, using the trainval set of the PASCAL VOC2011 challenge)。
    【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation_第5张图片
  • 在Pascal数据集上,与其他state-of-the-art class-agnostic实例分割方法相比
    【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation_第6张图片
  • 在Grabcut数据集上的实验,在Pascal上训练,在Grabcut上测试,其中grabcut中包含了Pascal中不存在的类别,评估标准是错误了(error rate)
    【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation_第7张图片
  • Annotation:这是一个比较感兴趣的点,就是用来生成Dense annotation,通过只给定extreme points作为输入,然后生成高质量的class-agnostic masks。从而可以利用这些标签去训练其他的网络结构。
    【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation_第8张图片
  • Video object Segmentation & Interactive Object Segmentation:

Conclusion

提出的半自动CNN结构,在各种场景下都获得了非常好的效果。同时DEXTR也可以用作标注工具,减少标注时间,产生高质量class-agnostic seg标注。

keypoint & problem

  • 关于论文Extreme clicking for efficient object annotation提出的extreme point标注方法

    • 一般标注分为3步:1、落下一点(左上)2、拖住框落下第二个端点,形成一个方框 3、调整框。
    • 但是论文提出的方法只需要标注图片left-most, right-most, top, bottom四个点作为bbox。
    • 提出的标注流程
      【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation_第9张图片
    • 第一行是标注的目标四个extreme点,第二行是通过edge detection方法检测出的boundary,第三行是通过四个extreme计算出的bbox,以及object边界框,这个框是通过两个extreme point之间走出一个max(sum(prob))实现的。第四行是把框内物体以及extreme point,boundary给grabcut得到的分割结果,第五行是单纯的将bbox信息给grabcut得到的结果。
      【DEXTR】Deep Extreme Cut:From Extreme Points to Object Segmentation_第10张图片
  • Grabcut:这是对GraphCut的改进,是迭代的Graph Cut,Grabcut是用于分割与抠图,是微软研究院的一个课题。

    • 利用图像的纹理信息、边界信息,只要少量的用户交互操作即可得到比较好的分割效果。
    • (1)只需要在目标外画上一个框,grabcut就可以完成良好的分割,(2)如果增加额外的用户交互(由用户指定一些像素属于目标),那么会产生更好的效果。
    • 但是,(3)如果背景复杂或者是背景与目标很相似,则分割效果不好(4)速度慢

你可能感兴趣的:(论文阅读,Machine,Learning)