通过自适应训练样本选择弥合基于锚点和无锚点检测之间的差距之ATSS论文阅读

发布于:2025-06-17 ⋅ 阅读:(15) ⋅ 点赞:(0)

Config about dense_head(One_Stage) + RoI_head(Two_Stage) #5054

摘要

多年来,对象检测领域一直由基于锚框(anchor-based)的检测器主导。近日,随着特征金字塔网络(FPN)和焦点损失(Focal Loss)的提出,锚框自由(anchor-free)检测器逐渐流行起来。本文首先指出,锚框检测器与锚框自由检测器的本质差异,其实在于训练中正负样本的定义方式,而这也是二者性能差距的根源。如果在训练时采用相同的正负样本定义,无论是从框(box)回归还是从点(point)回归,最终性能并无显著差异。这表明,当前目标检测方法中,正负样本的选取至关重要。基于此,我们提出了一种自适应训练样本选择方法(Adaptive Training Sample Selection, ATSS),其根据目标的统计特性自动选择正负样本。ATSS显著提升了锚框检测器和锚框自由检测器的性能,并缩小了二者之间的差距。最后,我们讨论了在图像每个位置铺设多个锚框以检测目标的必要性。大量在 MS COCO 数据集上的实验验证了我们的分析与结论。应用 ATSS 后,我们在不增加任何计算开销的情况下,将最先进检测器的 AP 提升至 50.7%。
代码已开源于:https://github.com/sfzhang15/ATSS

1. 引言

目标检测是计算机视觉领域的一个长期研究热点,旨在检测图像中预定义类别的物体。准确的目标检测能够对图像识别、视频监控等多种应用产生深远影响。近年来,随着卷积神经网络(CNN)的发展,目标检测领域一直由基于锚框的检测器主导,这些方法可大致分为单阶段(one-stage)方法 [36, 33] 和两阶段(two-stage)方法 [47, 9]。这两类方法均首先在图像上生成大量预设锚框,然后预测这些锚框的类别并多次对其坐标进行回归,最终输出经调整的锚框作为检测结果。由于两阶段方法相较于单阶段方法对锚框进行了更多次的精修,其精度更高,而单阶段方法在计算效率上更具优势。目前在常见检测基准上的最先进结果仍掌握在基于锚框的检测器手中。

近来,由于 FPN [32] 与焦点损失(Focal Loss) [33] 的提出,学术界对锚框自由检测器表现出浓厚兴趣。锚框自由检测器无需在图像上预先铺设锚框,其主要有两种实现思路:

关键点(keypoint)方法:先定位若干预定义或自学习的关键点,再据此界定物体空间范围,我们称之为关键点型检测器 [26, 71]。

中心点(center point)方法:利用物体的中心点或区域定义正样本,然后预测正样本到物体边界的四个距离,我们称之为中心点型检测器 [56, 23]。

锚框自由检测器消除了与锚框相关的诸多超参数,并且已在性能上与锚框检测器相近,展现出更好的泛化潜力。在这两类锚框自由方法中,关键点型方法沿用了标准的关键点估计流程,且与锚框检测器有本质差异;而中心点型方法则与锚框检测器更为相似——仅将点作为预设样本替代预设框。以单阶段锚框检测器 RetinaNet [33] 与中心点型锚框自由检测器 FCOS [56] 为例,它们主要有三处差异:

每位置的锚框/样本数量:RetinaNet 在每个位置铺设多个锚框,而 FCOS 每位置仅使用一个锚点。

正负样本的定义:RetinaNet 依据交并比(IoU)决定正负样本,FCOS 则利用空间与尺度约束进行筛选。

回归起始状态:RetinaNet 从预设锚框开始回归物体框,FCOS 则从锚点处定位物体。

如 [56] 所报道,FCOS 性能远超 RetinaNet。因此,我们有必要研究上述三点中究竟哪一点才是性能差距的关键因素。

本文通过严格消除两类方法在实现上的不一致之处,对比实验验证可得:正负样本的定义方式是锚框检测器与锚框自由检测器性能差异的本质原因。只要训练时正负样本一致,无论从框回归还是从点回归,性能差距均可消除。由此可见,正负样本的选取应成为当前目标检测研究的重点。为此,我们提出了自适应训练样本选择(ATSS),根据物体的统计特性自动划分正负样本,从而有效地弥合了锚框与锚框自由方法之间的差距。通过一系列实验,我们进一步发现,在每位置铺设多个锚框对于检测性能并非必要。大量在 MS COCO 数据集上的实验结果支持了我们的分析与结论。应用 ATSS 后,检测器在无额外开销的情况下达到了 50.7% 的最先进 AP。

主要贡献

指出锚框检测器与锚框自由检测器的本质差异在于正负样本的定义方式。

提出自适应训练样本选择方法,依据物体统计特性自动划分正负样本。

论证每位置铺设多个锚框对检测性能并无必要。

在 MS COCO 上实现了 50.7% AP 的最先进结果,且无需额外计算开销。

2. 相关工作

目前基于卷积神经网络(CNN)的目标检测方法,可分为基于锚框(anchor-based)和锚框自由(anchor-free)两大类。前者又可细分为两阶段和一阶段方法,后者则分为关键点型和中心点型方法。

2.1 基于锚框的检测器

两阶段方法
Faster R-CNN [47] 的提出奠定了两阶段锚框检测器的主导地位。Faster R-CNN 由区域建议网络(Region Proposal Network, RPN)和基于区域的预测网络(R-CNN)[14, 13] 组成,用于生成候选框并进行精细分类与回归。此后,人们从架构设计与改进 [4, 9, 5, 28, 30]、上下文与注意力机制 [2, 51, 38, 7, 44]、多尺度训练与测试 [54, 41]、训练策略与损失函数 [40, 52, 61, 17]、特征融合与增强 [25, 32]、更优候选框生成与样本平衡 [55, 43] 等方面提出了大量改进算法。如今,在标准检测基准上,最先进的结果仍由两阶段锚框方法保持。

一阶段方法
随着 SSD [36] 的问世,一阶段锚框检测器因其高效的计算速度而受到广泛关注。SSD 在不同尺度的特征图上均匀地铺设锚框,直接预测类别与框偏移。随后,研究者从多方面提升了其性能,包括融合不同层的上下文信息 [24, 12, 69]、从头训练 [50, 73]、引入新型损失函数 [33, 6]、锚框精修与匹配 [66, 67]、架构改进 [21, 22]、特征增强与对齐 [35, 68, 60, 42, 29] 等。目前,一阶段锚框方法可在保持更快推理速度的同时,取得与两阶段方法非常接近的检测精度。

2.2 锚框自由检测器

关键点型方法
此类方法先定位若干预定义或自学习的关键点,再基于关键点生成边界框以检测物体。CornerNet [26] 将目标框表示为一对关键点(左上角与右下角),CornerNet-Lite [27] 通过 CornerNet-Saccade 和 CornerNet-Squeeze 提升速度。Grid R-CNN [39] 的第二阶段利用全卷积网络(FCN)的位置信息敏感特性预测网格点,再由网格决定边界框。ExtremeNet [71] 检测目标的四个极值点(最上、最左、最下、最右)及一个中心点以生成框。Zhu 等人 [70] 通过关键点估计获取目标中心,并回归尺寸、三维位置、朝向和姿态等属性。CenterNet [11] 将 CornerNet 扩展为三元组以提升精度与召回。RepPoints [65] 将目标表示为一组样本点,并学习使其排列成能够包裹物体空间范围并指示语义重要区域的形式

中心点型方法
此类方法将物体的中心(例如中心点或中心区域)视为前景以定义正样本,然后预测正样本到目标框四边的距离以完成检测。YOLO [45] 将图像划分为
𝑆
×
𝑆
S×S 网格,含物体中心的网格负责检测该物体。DenseBox [20] 以填充圆定义中心区域正样本,回归到框边界的四个距离以定位目标。GA-RPN [59] 在 Faster R-CNN 中将目标中心区域的像素定义为正样本,以预测候选框的位置、宽度和高度。FSAF [72] 在 RetinaNet 上增加锚框自由分支,并在线选择特征——该分支将目标中心区域定义为正样本,通过回归四个距离进行定位。FCOS [56] 将目标框内的所有位置均视为正样本,回归四个距离并引入 centerness 分数以提升质量。CSP [37] 仅将框中心点定义为正样本,用于检测固定纵横比的行人。FoveaBox [23] 将目标中间区域的位置作为正样本,并回归四个距离以完成检测

3. 锚框检测与锚框自由检测的差异分析

在不失一般性的前提下,本文选取具有代表性的锚框检测器 RetinaNet [33] 和锚框自由检测器 FCOS [56] 来剖析它们之间的差异。本节我们聚焦于后三个差异中的两点:正负样本的定义方式与回归的起始状态。剩余的一点——每位置铺设锚框的数量——将在后续章节中讨论。因此在本节实验中,我们仅在 RetinaNet 中每位置铺设一个方形锚框,这与 FCOS 十分相似。接下来,我们先介绍实验设置,再剔除所有实现上的不一致,最后指出锚框方法与锚框自由方法的本质差异。

3.1 实验设置

数据集
所有实验均在具有挑战性的 MS COCO [34] 数据集上进行,该数据集包含 80 个目标类别。按照常用做法 [33, 56],我们使用 trainval35k(115K 张图像)进行训练,以 minival(5K 张图像)集作为验证集进行分析,并将主要结果提交至线上评测服务器,获得 test-dev 子集的最终性能。

训练细节
主干网络采用在 ImageNet [49] 上预训练的 ResNet-50 [16],并构建 5 级特征金字塔。新增层的初始化方式与 [33] 保持一致。对于 RetinaNet,每个金字塔层配备一个边长为
8
𝑆
8S(
𝑆
S 为该层总步幅)的方形锚框。训练时,将输入图像短边缩放至 800,长边不超过 1333;使用 SGD 优化器进行 90K 次迭代,动量为 0.9,权重衰减为 1e-4,批量大小为 16;初始学习率设为 0.01,并在第 60K 与 80K 次迭代时分别衰减至原来的 0.1 倍。除非另有说明,所有实验均沿用上述设置。

推理细节
推理阶段,输入图像的多尺度缩放方式与训练时一致,网络前向后输出带类别的边界框。首先采用置信度阈值 0.05 筛除大量背景框,再从每个金字塔层留下得分最高的前 1000 个检测结果,最后对每类结果应用 IoU=0.6 的 NMS,输出每图像 100 个最可信的检测框。

3.2 实现不一致的剔除

我们将每位置仅铺设一个锚框的 RetinaNet 称为 RetinaNet (#A=1),其与 FCOS 十分接近。然而如 [56] 报道,FCOS 在 MS COCO minival 上的 AP 为 37.1%,而 RetinaNet (#A=1) 仅为 32.5%,相差甚远。此外,FCOS 后续还引入了将 centerness 分支移至回归支路、采用 GIoU 损失函数、按步幅对回归目标进行归一化等改进,使其 AP 提升至 37.8%,差距进一步扩大。然而,其中有部分 AP 差异源于 FCOS 中采用的一些通用改进手段,如在头部引入 GroupNorm [62]、使用 GIoU 回归损失 [48]、在 GT 框内限定正样本 [56]、新增 centerness 分支 [56] 以及为每级金字塔增加可训练标量 [56]。这些改进同样可以直接应用于锚框检测器,因此并非两类方法的本质区别。我们便将这些改进逐一移植至 RetinaNet (#A=1) 以剔除实现层面的不一致。如表 1 所示,这些与本质无关的改进使 RetinaNet 的 AP 提升至 37.0%,但仍落后于 FCOS 0.8%。至此,所有无关差异已被排除,我们可以在极为公平的条件下,进一步探讨锚框检测与锚框自由检测的本质差异。

3.3 本质差异

在应用了那些通用改进之后,锚框检测器 RetinaNet (#A=1) 与锚框自由检测器 FCOS 仅剩下两点差异:一是检测中分类子任务的不同,即正负样本的定义方式;二是回归子任务的不同,即从锚框还是锚点开始回归。

分类
在这里插入图片描述
图 1:正样本(1)与负样本(0)的定义。蓝框、红框和红点分别表示真值框、锚框和锚点。
(a) RetinaNet 同时在空间和尺度维度上使用 IoU 来选择正样本(1)。
(b) FCOS 先在空间维度上找到候选正样本(?),然后在尺度维度上选出最终正样本(1)。

如图 1(a) 所示,RetinaNet 利用 IoU 将来自不同金字塔层的锚框划分为正样本和负样本。具体做法是:先将每个目标的最佳锚框及 IoU > θₚ 的锚框标记为正样本,再将 IoU < θₙ 的锚框视为负样本,其他锚框在训练时忽略。如图 1(b) 所示,FCOS 则利用空间与尺度约束对不同金字塔层的锚点进行划分。它首先将落在 Ground‑Truth 框内的锚点作为候选正样本,再根据每层金字塔预定义的尺度范围从候选集中选出最终正样本,未被选中的锚点均视为负样本。

从图中可见,FCOS 先在空间维度通过空间约束筛出候选正样本,再在尺度维度通过尺度约束选取最终正样本;而 RetinaNet 则直接使用 IoU 在空间和尺度维度上同时选取最终正样本。这两种不同的样本选择策略导致了不同的正负样本分布。如表 2 第一列所示,对于 RetinaNet (#A=1),将 IoU 策略替换为空间+尺度约束策略后,AP 从 37.0% 提升至 37.8%;对于 FCOS,如第二列所示,若改用 IoU 策略选取正样本,其 AP 则从 37.8% 降至 36.9%。这些结果证明,正负样本的定义方式是锚框检测器与锚框自由检测器的本质差异之一。

回归
在这里插入图片描述

在正负样本确定后,如图 2(a) 所示,检测器会对正样本位置进行回归。RetinaNet 从锚框出发,通过回归框与锚框之间的四个偏移量来预测目标框(图 2(b));而 FCOS 则从锚点出发,通过预测该点到目标框四条边的距离来定位目标(图 2©)。也就是说,对于同一个正样本,RetinaNet 的回归初始状态是一个框,而 FCOS 则是一个点。然而,如表 2 第一、二行所示,当 RetinaNet 与 FCOS 采用相同的样本选择策略以保证正负样本一致时,无论是从点回归还是从框回归,最终性能几乎无差异(37.0% vs. 36.9%,以及 37.8% vs. 37.8%)。这些结果表明,回归的起始状态并非本质差异,而是一种无关差异。
在这里插入图片描述
结论
通过在公平条件下进行的一系列实验,我们指出,一阶段锚框检测器与中心点型锚框自由检测器之间的本质差异,实际上在于如何定义训练时的正负样本。正负样本的选取对当前目标检测方法至关重要,值得进一步深入研究

4. 自适应训练样本选择(ATSS)

在训练目标检测器时,首先要为分类子任务定义正负样本,然后再使用正样本进行回归。根据前文分析,前者(正负样本的定义)至关重要,而锚框自由检测器 FCOS 在这一步进行了改进,引入了一种新的正负样本定义方式,其效果优于传统的基于 IoU 策略。受此启发,我们深入探讨目标检测中最基础的问题:如何定义训练时的正负样本,并提出自适应训练样本选择(ATSS)方法。与传统策略相比,本方法几乎不依赖超参数,对不同设置具有鲁棒性。

4.1 方法描述

以往的样本选择策略普遍存在一些敏感超参数,例如锚框方法中的 IoU 阈值、锚框自由方法中的尺度范围。这些超参数一旦固定,所有真值框都必须按相同规则选择正样本,虽然对大多数目标有效,但会忽略一些特殊目标。不同超参数设置往往导致截然不同的结果。
在这里插入图片描述

为此,我们提出 ATSS 方法,依托目标的统计特性自动划分正负样本,几乎无需超参数。算法 1 给出了对一幅输入图像的处理流程。对于图像中的每个真值框 𝑔
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

4.2 验证

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.3 分析

使用所提自适应训练样本选择方法训练目标检测器,仅涉及一个超参数
k 及一个与锚框相关的设置。本小节依次对它们进行分析。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.4 对比实验

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5. 结论

在本工作中,我们指出,一阶段的基于锚框检测器与基于中心点的锚框自由检测器之间的本质差异,实际上在于训练时正负样本的定义方式。这表明,在目标检测训练中如何选择正负样本至关重要。受此启发,我们深入研究了这一基础问题,提出了自适应训练样本选择方法(ATSS),其根据目标的统计特性自动划分正负样本,从而弥合了锚框检测器与锚框自由检测器之间的性能差距。我们还讨论了在每个位置铺设多个锚框的必要性,并表明在当前情境下这一操作可能并非必需。在具有挑战性的 MS COCO 基准上,大量实验表明,所提方法在不增加任何额外开销的情况下,即可实现最先进的检测性能。


网站公告

今日签到

点亮在社区的每一天
去签到