Rethinking the Route Towards Weakly Supervised Object Localization笔记

Rethinking the Route Towards Weakly Supervised Object Localization笔记_第1张图片
CVPR2020
本文提出伪监督目标定位方法(PSOL)解决弱监督目标定位问题。将定位与分类分为两个独立的网络,在训练集上使用DDT生成伪ground truth,通过回归与真实GT box对比, 整体效果达到SOTA。在不同数据集上,PSOL方法不需要fine-tuning也具有很好的定位能力,迁移能力。


由于训练集数据大量标注困难,成本高。很多开始研究如何使用弱监督方法来学习 目标定位。弱监督训练数据只包含image-level标签,没有具体目标定位信息或者语义标签。弱监督目标定位(WSOL)实际上只需要定位 给定标签的目标位置即可。(与WSOD弱监督目标检测不一样,WSOL是假设图片中只有一个目标,需要额外方法生成region proposal)
下图WSOL输入图片,经过CNN得到feature map,然后分类,之后给出定位
PSOL是可以将分类和定位分开,也可以联合训练。输入图像经过CNN,回归器,得到定位,(循环训练)不需要知道类别标签
下面之路是直接给出分类结果
Rethinking the Route Towards Weakly Supervised Object Localization笔记_第2张图片

作者认为WSOL中的定位应该是不需要类别支撑的,与分类无关。所以将WSOL分类两个部分,一部分是目标定位,一部分是目标分类。算法先通过DDT生成伪监督GT box,然后对这些bbox进行回归。

Weakly supervised object localization(WSOL)通过图像标签来定位目标,
WSOD方法计算量大,需要对众多region proposal进行筛选。

3 WSOL到PSOL方法

WSOL方法有几个缺陷:

  • 学习目标不明确,导致定位准确度下降。独立的CNN模型,分类和定位不能同时进行(需要先分类在定位),定位需要全局特征,需要将整个目标表示出来而分类只需要目标最需要判断性的地方,即局部特征。
  • CAM(class activation mapping,base model+CAM就能得到热力图)会存储一个三维特征图,并且计算heatmap,在用阈值过滤的时候,阈值非常难确定。这也导致它不适合迁移到其他数据集。(这里阈值是过滤什么的?)

由于faster rcnn两阶段网络和selective search启发,把WSOL分为了两个子任务:类不可知目标定位任务和目标分类任务。提出PSOL模块,生成伪gt box,并在上面定位优化。
Rethinking the Route Towards Weakly Supervised Object Localization笔记_第3张图片
关键步骤是1-6:
1.在训练集图片上生成伪bbox,
2.3.使用CNN得到分类和位置信息,(学习分类器和回归器)
4,5用分类和位置信息预测测试图片
6.最终得到测试图片的定位和标签

bounding box generation

PSOL和WSOL最大的区别就是给无标签的训练图片生成伪Bbox。(detection实际上也可以,单数需要大量的计算资源,并且输入大尺寸图片,在大规模数据集上使用效率比较低)

** 先介绍WSOL方法:**
首先通过预训练网络F得到的输入图片I卷积后的特征图在这里插入图片描述然后通过全局池化和最后的全连接层得到最终的标签 L p r e d L_{pred} Lpred。根据 L p r e d L_{pred} Lpred得到特定类别在全连接中的权重 W ∈ R d W\in R^d WRd(h,w,d分别是高度,宽度,深度,即权重是通道方向,有点类似1*1卷积),对G的空间位置进行 channel-wise通道方向的加权求和,得到特定类别的heatmap:在这里插入图片描述,然后H上采样到输入尺寸,用阈值过滤,得到最终的bounding box(为什么要过滤,这里就是说先通过判断类别,生成热力图,然后根据热力图才能定位,而PSOL不需要分类标签)。

** DDT recap:**
DDT是一种协同监督方法,并且在定位中计算量少,有较好的表现。
对于含有n张相同标签的图片集合S,使用预训练网络F得到特征图在这里插入图片描述这些特征图集合得到一个大的特征集在这里插入图片描述。在深度d上使用PCA主成分分析,得到最大特征值的特征向量P,然后对G进行channel-wise加权求和得到最终的heatmap:在这里插入图片描述,然后再将H上采样的原图大小。最后零过滤和最大连通区域分析得到bbox。
根据heatmap如何确定bbox,

** 定位方法 **
生成bbox后,使用回归精调。这里使用单类别回归(SCR-single class regression,overfeat曾经对比过PCR和SCR,SCR是用一个回归函数预测所有类别的bounding box,而PCR是说每个类别都有自己单独的回归函数;overfeat结果中SCR是模型要好于PCR的)。假设bbox是(x,y,w,h)表示,x,y表示左上角坐标,wh表示宽和高。将值转化在这里插入图片描述,这里wi和hi表示输入图片的宽和高(把bbox坐标除以图片宽度和高度,比率)。然后使用两个全连接层以及ReLU进行回归,最终用sigmoid进行激活。回归任务使用最小平方差MSE。
(上下左右移动,伸缩变化,学习一组参数,是回归任务)

实验部分

实验数据集:

  • ImageNet-1k:1000个类别,128197张图片。做分类,单目标
  • CUB-200:200类别,5994训练图片,5794测试图片。

训练集上的bbox是用伪bbox生成的。测试数据是准确标注。

指标:

  • GT类别已知的定位准确率( ground truth class,GT-konwn Loc)
  • Top-1定位accuracy
  • Top-5定位accuracy

base model

  • VGG16
  • inceptionV3
  • ResNet50
  • DenseNet16

Joint and Separate Optimization

  • joint联合优化,加入bbox回归,同时训练分类和定位
  • sep独立优化,单独训练分类和回归

1.GT类别已知情况下的定位准确率:

Rethinking the Route Towards Weakly Supervised Object Localization笔记_第4张图片
上面是弱监督WSOL,下面是DDT的方法,CUB数据集明显好于imageNet
但是下面实验都选用VGG162.

2.Comparison with State-of-the-art Methods

Rethinking the Route Towards Weakly Supervised Object Localization笔记_第5张图片

  • 先看PSOL方法中sep和joint对比,所有的sep方法要比joint联合训练好,说明分类和定位学到的东西不一样。所以还是要分开训练。
  • 对比DDT和其他方法,在CUB数据集上类别相似度极大,类别标签不一定能起到作用,因此DDT更有效。
  • 最后一列,GT-known Loc比起top1 top5 ,都有更高的准确率,实际上是CNN可以去除一定的噪声。
  • 第一组实验中,VGG16比VGG-GAP好,说明去掉三层全连接层会影响准确率。(VGG16是原始模型,VGG-GAP是去掉三层全连接层,用GAP global average pooling全局平均池化代替全连接,最后通过一个全连接实现分类)
    Rethinking the Route Towards Weakly Supervised Object Localization笔记_第6张图片

对比CAM和DDT方法:
Rethinking the Route Towards Weakly Supervised Object Localization笔记_第7张图片

  • CAM中黄色是预测box,红色是GT box
  • DDT中蓝色是预测box,绿色是回归后的box,红色是GT box。这里使用DenseNet151-sep,明显要好于CAM

3.Transfer Ability on Localization

Rethinking the Route Towards Weakly Supervised Object Localization笔记_第8张图片
PSOL方法不需要任何监督信息就可以从imageNet上迁移的CUB,可以说明定位和类别关联是没有必要的

总的来说,这篇文章是关于单类别的弱监督定位,确实可以说明分类和定位是需要不同的feature map,但是如何扩展到多类别,甚至是有遮挡、密集度高的图片。

你可能感兴趣的:(计算机视觉,机器学习)