【论文笔记】:Cascade RetinaNet

&Title

【论文笔记】:Cascade RetinaNet

&Summary:

Motivation
作者认为RetinaNet天真的直接将相同设置的多级串联在一起是没有多大收获,主要是类别的置信度和坐标之间的错误联系,以及不同Stage之间的FeatureMap的联系发生变化。因此,提出Cascade RetinaNet。感觉就得是采用Cascade R-CNN的方法应用在Retina Net 上,再加了点自己的FCM网络。

Contributions

  • 探讨了特征不一致问题,针对级联单阶段目标检测提出了2个设计规则:改进分类置信度和定位表现的一致性,以及保持不同阶段的特征一致性。
  • 为了提高分类置信度的可靠性,在级联中逐渐增加 IoU 阈值。另外提出了FCM来环节不同阶段中的特征不一致问题。
  • Cas-RetinaNet 的表现很稳定,在 RetinaNet 基础上实现了性能提升。

&Problem Statement

在这篇论文中,作者发现单纯地往 RetinaNet 中添加与原始设定一样的级联阶段是无益的。原因主要有2个:

  • 分类置信度和定位表现的不一致性
  • 不同阶段中的特征不一致性

在 RetinaNet 中,如果 IoU 大于某个阈值(如0.5),该预测边框就被认为是 positive。这也就是说,不管实际的 IoU 是0.55还是0.95,要分类的目标是一样的。所以分类置信度就没法反映定位的精度,如 IoU-Net 提到的。作者发现,在训练过程中以级联的方式,逐步提高后续阶段 IoU 的阈值,有助于解决不一致的问题,因为分类目标与实际 IoU 逐渐趋向一致。

&Method:

作者同样用实验说明在不同Stage时,IOU与置信度设置之间的关系:
【论文笔记】:Cascade RetinaNet

又说明了,原anchor box在修正后,与真实ground truth 之间的位置关系,来解释不同stage之间的Feature map 的不相关性。
【论文笔记】:Cascade RetinaNet
因此,引入FCM网络 ,从而构建了Cascade RetinaNet
【论文笔记】:Cascade RetinaNet
为了解决特征不一致性,本文提出了一个简单而有效的特征一致性模块(FCM),使特征可以适应改良后的新位置。特别地,该方法可以预测特征图上每一位置的偏移量,并通过一个简单的 deformable convolution 层为后续阶段生成优化后的特征图。通过级联的方式,检测器的 IoU 会逐渐上升,检测结果逐步得到优化。FCM网络的方法:
【论文笔记】:Cascade RetinaNet
x i 是feature map.

Loss:
和常规的一样,对不同stage的置信度和位置的回归。
【论文笔记】:Cascade RetinaNet
【论文笔记】:Cascade RetinaNet
加入了λ,α默认设为1.

&Notes

不一致的原因:
在大多数的目标检测器中,非极大抑制(NMS)都是去除重复边框的重要手段。它以迭代的方式运行。在每个迭代中,选取分类置信度最高的边框,然后通过一个IoU 阈值来抑制其相邻边框。分类置信度与定位准确度之间的不一致可能导致以下情形,在NMS过程中准确定位的边框被没那么准确的边框抑制。

级联分类和回归:
将多个阶段级联起来是一个非常简单的想法,意图取得更准确的置信度和定位精度。有些工作已经尝试了在早期阶段使用类似级联的方式来排斥容易样本,然后迭代地进行边框回归。但是,传统方法(尤其是单阶段方法)忽视了不同级联阶段中的特征一致性,因为它们中的大多数都是通过全卷积的方式从原始位置上提取特征。双阶段方法利用 RoI-Pooling 或 RoI-Align 提取的特征来生成预测结果。这些操作降低了不同阶段中对不齐的情况,因为特征和边框中心的相关程度没有很强。而在单阶段方法中,滑动窗方式将边框特征和边框中心对齐。下一阶段中改良后的边框与上一阶段提取的特征相关联,这就限制了模型检测的性能。