论文:Bridging the Gap Between Anchor-based and Anchor-free Detection via Adaptive Training Sample Selection
时间及出处:CVPR 2020
1. 出发点
RetinaNet和FCOS具有以下3点不同:
(1)The number of anchors tiled per location(several or one ?)
- RetinaNet tiles several anchor boxes per location.
- FCOS tiles one anchor point per location.
(2)The definition of positive and negative samples(IoU or spatial and scale?)
- RetinaNet resorts to the Intersection over Union (IoU) for positives and negatives.
- FCOS utilizes spatial and scale constraints to select samples.
(3)The regression starting status (box or point ?)
- RetinaNet regresses the object bounding box from the preset anchor box.
- FCOS locates the object from the anchor point.
FCOS的 A P AP AP指标要高于RetinaNet,究竟是哪些差异所导致的呢?ATSS经过对比实验发现,正负样本的定义不同是导致两者性能差异的关键,并提出了Adaptive Training Sample Selection (ATSS),根据物体的统计特性自动选择最合适的训练样本。
2. 对比实验
2.1 消除第1个差异:The number of anchors tiled per location
- 为消除该差异,只在RetinaNet特征图的每个位置放置1个正方形框,每一层特征图的正方形框的面积与其下采样率 s s s有关,即 8 s 8s 8s,简称其为RetinaNet (#A=1),这时 A P = 32.5 AP=32.5% AP=32.5。
- FCOS还采用了多种技巧,将这些技巧一一应用到RetinaNet (#A=1)中,最终得到 A P = 37.0 AP=37.0% AP=37.0,与FCOS的 A P = 37.8 AP=37.8% AP=37.8相当。
2.2 研究第2个差异:The definition of positive and negative samples
RetinaNet和FCOS的正负样本定义:
- RetinaNet根据IoU来定义正负样本:与某一GT框的IoU大于某一上限阈值的anchor box为正样本,与任何GT框的IoU均小于某一下限阈值的anchor box为负样本。
- FCOS首先根据空间位置来选择:落入某一GT框内部(或中心区域)的anchor point为待选正样本,未落入任何GT框内部(或中心区域)的anchor point为负样本。对于待选正样本,根据尺寸限制来决定正负性:4条边中的最大预测值落入该特征层的预设范围内,则为该层的正样本,否则为改层的负样本。
由于anchor box的中心就是anchor point,所以可以直接用FCOS的正负样本定义方法定义RetinaNet的正负样本,相同地,可以在anchor point上设置anchor box,并用RetinaNet的正负样本定义方法定义FCOSd的正负样本。
- 使用FCOS的正负样本定义方法,RetinaNet (#A=1)的 A P AP AP有所提高
- 使用RetinaNet的正负样本定义方法,FCOS的 A P AP AP下降了
2.3 研究第3个差异:The regression starting status
RetinaNet和FCOS的回归方法的对比:
实验结果:
- 回归初始状态对RetinaNet和FCOS均无影响。
3.4 对比实验结论
- 正负样本的定义不同是导致RetinaNet和FCOS性能差异的关键。
4. Adaptive Training Sample Selection (ATSS)
4.1 ATSS算法流程
4.2 ATSS算法关键点说明
4.2.1 基于中心点距离选择候选正样本
- RetinaNet根据IoU阈值来选择正样本,anchor box中心点与GT框中心点之间的距离越小,IoU通常会更大;对于FCOS,anchor point越接近GT框中心点,其得到的预测框的质量会更高。
4.2.2 使用均值和标准差设置IoU阈值
- IoU均值表示该正样本候选集合对某一GT框的平均重叠程度,IoU均值越高,表示该正样本候选集合越合适预测该GT框;IoU标准差表示哪些层的anchor更加适合用于预测该GT框。
- 使用均值和方差,可以更好地将物体assign给某个或某几个特征层。传统的方法中,不同尺度的特征图只负责检测特定范围的物体,这种方法并未考虑不同尺度的特征图是否适合检测某一特定物体(事先认为确定),使用均值和方差来设置预测则可以考虑到这种情况。也就是说,如果某一特征图适合用来检测某一物体,则方差会很大,且平均值偏向于该特征层;如果所有特征图适合用来检测某一物体,则方法会很小,这时物体可能同时由多个特征图共同检测。
4.2.3 根据IoU阈值和中心点位置确定正样本
- 再次使用anchor中心点是否落入GT框内来确定正样本的好处,anchor中心点落入GT框,其感受野与物体区域的重合区域面积越大,于是anchor可以获得物体的更多信息。
5. 实验
(1)ATSS的有效性
-
RetinaNet有anchor box,可以直接使用ATSS来判定正负样本,结果如下表所示,各项指标均有较大提升。该实验指出,在anchor-based模型中,anchor box的数量并不是越多越好,只要正负样本的定义是有效的,那么使用较少的anchor同样可以得到很好(甚至更好)的性能。
-
FCOS只有anchor point,没有anchor box,首先从spatial方面出发,为每一层的每个GT根据中心点距离选择9个正样本(ATSS的步骤1),得到FCOS+Center sampling,相比FCOS的正样本选择方法(anchor point落入GT框的中心区域),FCOS+Center sampling将 A P AP AP提高0.8%。注意:此时仍需要满足不同特征层对应不同大小的物体。
-
为解决FCOS的scale问题(不同特征层对应不同大小的物体),可以使用IoU,并使用ATSS的步骤2和步骤3,于是引入anchor box,即在特征图的每个位置放置1个正方形框,每一层特征图的正方形框的面积与其下采样率 s s s有关,即 8 s 8s 8s。最终得到FCOS+ATSS,其 A P AP AP为39.2%。
(2)参数 k k k -
参数 k k k是一个比较鲁棒的超参数。
(3)所引入的anchor box的shape几乎不影响 A P AP AP等指标 -
正方形anchor box的scale(多少倍下采样率)
-
8 s 8s 8s正方形anchor box的宽高比
(4)最终性能
6. 贡献
- 指出anchor-based和anchor-free detector的关键区别在于正负样本的定义。
- 提出了Adaptive Training Sample Selection (ATSS),根据物体的统计特性自动选择最合适的正负训练样本。
- 指出在特征图的每个位置放置多个anchor的非必要性。