IoU-aware single-stage object detector for accurate localization论文阅读笔记
IoU-concious fully automation-based object detection model aimed at precise object positioning论文阅读笔记
-
-
(一) 标题
- (二) 摘要
- (三) 研究对象
- (四) 问题陈述
- (五) 方法
5.1 损失函数
- 5.2 Inference 阶段
- (六)Experiment
-
- 6.1 实验设置
- 6.2 我们和state-of-art的比较
- 6.3 我们的Ablation Studies
- 6.4 在PASCAL VOC上的Ablation 实验
- 6.5 关于我们网络的一些讨论情
-
(七)Conclusion
(一)Title

前言:本文探讨了 classification score 和 IoU 之间不相关的问题,并提出了一种基于预测 detec ted boxes 和 Ground Truth 之间 IoU 的新方法,在推理阶段利用预测的 IoU 和 classification score 得到新的检测置信度,并在此基础上计算 NMS 和 AP 的值。
(二)Summary
作者强调目前single-stage检测器存在的局限性:分类分数与定位精度之间的低相关性导致模型性能难以提升 。针对这一缺陷,在此基础上提出了IoU-aware single-stage object detector。该方法的核心在于结合IOU损失函数进行优化。
对于每个被预测的bounding box而言,请确保同时也估计其对应的IoU值。随后将该IoU与分类得分相乘得到最终的检测置信度,并以此作为基础来进行后续的操作:利用这一检测置信度进行后续的NMS(非最大值抑制)操作;借助这一IoU评估标准来提高整体预测精度;作者通过实验也说明了这一点。
性能表现:
在COCO test-dev上AP检测性能提升了1.7%-1.9%,AP75提升了2.2%-2.5%。同时在PASCAL VOC上AP提升了 2.9%–4.4% ,AP80, AP90 by 4.6%–10.2%。从后面COCO的实验结果上Table4 来看,我们发现AP升了,AP50降了,AP70,80,90之间的差距变小了,作者提出的方法能够提升网络更加准确的框选目标 的能力
本文的主要贡献是:
- 开发一种IoU(交并比)感知的一阶目标检测器以解决分类得分与定位精度间的不匹配问题(通过独立的目标函数分别处理分类与定位问题:高分类得分对应低IoU值而低分类得分对应高IoU值导致检测结果经NMS处理后性能有所下降),该模型在保证效率的同时定位精度能够得到显著提升。
- 本研究通过系统性的实验研究深入探讨了所提方法的工作机制、性能边界以及预测IoU值与实际值间的偏差。
(三)Research Object
作者认为single-stage网络在性能方面不及multi-stage网络,然而其简洁高效的特点在实际应用中广受欢迎,因此希望增强single-stage检测器的性能水平。具体而言,在此研究中发现单阶段检测器的分类分数与定位准确性之间存在较低的相关性,这一现象一定程度上影响了整体效果。至于造成这种低相关性的原因及其对性能影响的具体分析,则将在后续Notes 8.1部分进行详细阐述。
该作者基于RetinaNet架构,在其基础上引入了 novel IoU prediction head (IoU预测头) 一节中详细阐述了该技术方案。具体而言,在回归分支的最后一层后方新增了一个IoU预测头 (IoU预测头与回归头协同工作) 。这使得整个网络架构中总共拥有三个预测分支:分类分支、回归分支及其内部的IoU预测子分支。在实际应用中,在进行目标检测时将分类置信度与预测的IoU值相乘作为最终的目标置信度指标 (通过此方法增强了定位精度与分类置信度之间的关联程度) 。
(四)Problem Statement
在执行inference任务时,默认采用单阶段模型会直接处理神经网络输出的所有bounding boxes;传统的筛选策略通常仅关注于分类得分;然而由于我们在训练分类器与定位器时采用了分离优化策略;这可能导致两种极端情况:一方面可能出现具有高分类置信度但iou较低的对象;另一方面也可能存在iou高但分类置信度较低的情形;这种不平衡会导致分类器输出与定位质量之间的估计值相关性显著降低;从而使得模型在平均精度(AP)指标上的预测效果大打折扣
为了解决该问题,在本研究中作者提出了一种新方法:计算每个检测框与真实框的最大重叠度(IoU),并在此基础上乘以对应的分类得分作为非极大值抑制(NMS)最终筛选依据的标准。这种方法在一定程度上提升了平均精度(AP)。
(五)Method

该研究采用与RetinaNet相似的backbone架构以及特征金字塔网络,并在此基础上增添了一个IoU预测头用于预测IoU。并在推理阶段中将分类置信度与预测的IoU相乘作为最终筛选候选框的标准。
5.1 损失函数
分类损失使用Focal Loss
L_{c l s}=\frac{1}{N_{P 0 S}}\left(\sum_{i \in P o s}^{N} \mathrm{FL}\left(p_{i}, \hat{p}_{i}\right)+\sum_{i \in N e g}^{M} \mathrm{FL}\left(p_{i}, \hat{p}_{i}\right)\right)
回归损失使用smooth L1 Loss
L_{l o c}=\frac{1}{N_{P 0 S}} \sum_{i \in P_{0}}^{N} \sum_{m \in C X, c, w, h} \text { smooth }_{\mathrm{L} 1}\left(l_{i}^{m}-\hat{\mathrm{g}}_{i}^{m}\right)
重头戏:IoU prediction loss 使用的是BCE(但是Ground Truth不是0,1)
并且仅仅对正样本计算损失
L_{l o U}=\frac{1}{N_{P o s}} \sum_{i \in P_{0} S}^{N} \mathrm{BCE}\left(I o U_{i}, I \hat{O} U_{i}\right) = \frac{1}{N_{P o s}} \sum_{i \in P_{0} S}^{N}[- I \hat{O} U_{i}*log(1-I o U_{i})-(1-I \hat{O} U_{i})*log(1-I O U_{i})]
其中这个I \hat o U_{i}表示的是预测bounding box和Ground Truth之间真正的IoU,这个值是[0,1]之间的,而I {O} U_{i}是网络输出的预测IoU值。
计算BCE Loss对I \hat{O} U_{i}的梯度结果为:
\frac{\partial \mathrm{BCE}\left(I o U_{i}, I \hat{O} U_{i}\right)}{\partial I \hat{U} U_{i}}=\log \frac{1-I o U_{i}}{I o U_{i}}
这里有一点疑问就是:一般的BCE损失是-y*log(\hat y)-(1-y)*log(1-\hat y),其中y为真实值,\hat y为预测值,上文中给出的BCE,这边的符号有一点乱用了,一般I \hat O U表示预测值,作者这里却用来表示真实的IoU。
对应的梯度图像为:

作者从这个图中指出两个发现为:
- 对于正样本而言,在预测时IoU值通常不低于0.5的情况下(如图所示),梯度呈现非正特性;沿着这一梯度方向将导致真实IoU值(即I \hat O U)朝着增大趋势发展。
- 当预测的IoU(即I O U)增加时,在损失函数下降的过程中网络会相应地调整参数;这样会导致真实IoU值(即I \hat O U)也增加;可以看出这种调整有助于缩小预测与真实IoU之间的差距,并提升两者之间的相关性。
在训练阶段中,IoU预测模块与分类模块以及回归模块同时参与训练的过程
5.2 Inference 阶段
在推理阶段(Inference),我们采用预测得到的空间分辨率较高的IOU值IoU_i与分类得分p_i相乘的方式计算出最终置信度分数S_{det}即为:
S_{det}= p_i^{\alpha}\cdot IoU_i^{(1-\alpha)}
其中\alpha是一个用于平衡分类得分与预测交并比之间关系的重要参数系数。
(六)Experiment
6.1 实验设置
基于数据集MS COCO和PASCAL VOC开展实验研究,并对所有实验涉及的评估指标进行分析
6.2 我们和state-of-art的比较

其中符号+代表,在计算L_{IOU}梯度的过程中,同时对真实IoU值I \hat O U进行梯度计算。这有助于提升性能表现。相较于baseline方法,在AP指标上实现了1.7%1.9%的提升,在AP75上则显著提高至2.2%2.5%,而AP50指标同样取得了0.7%~2.3%的提升范围
6.3 我们的Ablation Studies
IoU 预测损失的选择

通过观察上图中的数据分布情况,我们能够发现该模型在分类任务中展现出最佳的效果;在后续的研究过程中作者采用了该方法作为基准模型进行对比分析
确定关键检测信心水平的超参数 \alpha

计算出L_{IOU}关于真实IOU I \hat O U的梯度后,发现IoU预测头所生成的梯度将反向传递至回归头

6.4 在PASCAL VOC上的Ablation 实验

在PASCAL VOC上同样验证了我们的实验结果。
6.5 关于我们网络的一些讨论情
我们模型的上限采用真实IoU值替代预测IoU值,并实现了该网络在理想条件下能够实现的情况

可以看出,在预测得到的IoU指标与真实值之间存在明显的性能差距。研究者进一步分析认为:主要原因是由于我们预测得到的IoU指标在精度方面与真实值之间存在明显差距;通过缩小这一差距将有助于提高网络的整体性能水平。
基于 IoU- aware 的 RetinaNet 架构设计旨在优化目标检测性能。在 Inference 阶段, 我们将每个检测到的边界框与其所属类别下的所有真实框之间的交并比(IoU)进行比较, 并记录每个检测框与其对应的真实框的最大 IoU 值作为 IoU_{eval} 。

通过查看上图可知, 提出预测 IoU 与真实 IoU 之间存在显著差异. 比较而言,在 b 部分相对于 a 的变化较为有限. 这一发现为模型性能带来了显著的提升空间.

(七)Conclusion
该研究指出,在单阶段检测中存在Classification Score与Localization Quality之间较低的相关性会导致模型性能(mAP)显著下降。为此,
本研究提出了一种IoU意识的单阶段物体检测器,
其核心在于向回归分支的最后一层引入IoU预测头,
从而使得模型能够识别每个检测到的目标框的目标定位质量。
具体而言,
在推理过程中将分类分数与预测的IoU相乘作为最终检测置信度,
并在随后进行非最大值抑制(NMS)及平均精度(AP)计算以排序所有目标框。
(八)Notes
由于分类分数与定位精度之间存在较低的相关性;其主要原因在于该模型在分类任务与定位任务之间缺乏充分的关联性
分类子网络和localization子网络采用相互独立的目标函数分别进行训练 ,当无法得知预测的bounding box与真实Ground Truth之间的IoU时,则会得出相应的分类置信度得分。这种情况下常出现IoU分数较低但分类置信度较高的检测目标;或者出现IoU分数较高却分类置信度较低的情况;从而引发了下图所示的问题:

在模型推断过程中,在具有高分类分数但较低IoU的目标检测中,
我们筛选出其预测classification score均高于该阈值的所有bounding boxes。
此时可能存在一些bounding boxes虽然其预测classification score低于该阈值,
但它们与目标Ground Truth之间的IoU依然较大。
当我们在网络中进行目标检测并获得这些结果后,
根据其分类Score对这些超过阈值的bounding boxes进行排序,
并利用这个排序顺序筛选出那些与前面 bounding boxes IoU较小的 bounding boxes。
这样处理有助于平衡分类准确性与定位精度。
8.2 classification score和localization accuracy相关性的研究工作
解决两者之间低相关性的一些方法:
设计额外的子网络
- Fitness NMS按照localization accuracy划分为五个等级,并将其定位精度预测问题转化为分类任务。
- 进而,在推理阶段,
- IoU-Net提出了IoU预测头与R-CNN并行预测每一个RoI的回归IoU。
- 在推理阶段,
- MS R-CNN增加了MaskIoU头并平行于Mask头一起用于预测mask与真实mask之间的IoU。
- 在融合过程中,
- Precise detection引入了一个Soft-IoU层用于质量分数预测。
设计更好的损失函数
在调整分类损失方面,PISA采用了IoU-HLR方法来确定一个权重系数,并将其应用于分类损失的加权计算。对于回归损失部分,则采用类评分(class score)对回归损失进行加权处理,并将此新型损失命名为classification-aware regression loss(CARE)。这种做法旨在增强分类器与回归器之间的关联性。通过引入这种加权策略,在优化过程中使模型更加注重提升高iou值样本的分类准确性。
在此基础上,在平衡类别分布的同时引入了回流iou(regressed IoU)的概念,在传统的iou平衡分类损失中实现了改进。
采用回流iou值作为新的权重因子,并结合传统iou平衡的框架设计出了一个新的loss函数。
该改进方法通过将高iou值样本赋予更高的权重,在优化过程中使模型能更好地关注那些具有较高交并比的样本。
8.3 更加精确的目标定位
- Multi-region detector
single-stage在定位一个精确位置时存在局限性;为此,我们提出了一种迭代更新机制用于 bounding box 的优化,通过动态调整 bounding box 的坐标以提高检测精度
Cascade R-CNN模型 通过训练多个递增IoU阈值的R-CNN实现多级目标检测架构。
-
RefineDet
借助两阶段Bounding Box回归方法显著提高了单阶段检测器的空间定位精度。首先利用Anchor Refinement Module(ARM)对人工设计的基础锚框进行优化细化;随后基于改进后的锚框框架采用Object Detection Module(ODM)对Bounding Boxes进行精确回归。- Libra R-CNN
designs balanced L1 loss
- Libra R-CNN
通过回归算法计算得到的IoU指标被用于对localization loss进行加权分配。这种加权策略使得inliers样本获得更高的权重值,从而减少了outlier样本对整体损失函数的影响。
8.4 Anchor-free single-stage 检测器的研究情况
- FCOS 是一种基于像素级预测的卷积神经网络(FCN),其架构包含三个核心组件:分类头(classification head)、回归头(regression head)以及中心性头(centerness head)。在推理阶段,中心性头将分类得分与之相乘以获得最终得分。我们的IoU预测采用的是基于锚框的方法(anchor-based method),而FCOS所采用的方式则为锚框自由方法(anchor-free approach)。
