Acquisition of Localization Confidence for Accurate Object Detection
获得定位置信度以更精确地检测目标
让目标检测用上定位置信度
目标检测涉及到目标分类和目标定位,但很多基于 CNN 的目标检测方法都存在分类置信度和定位置信度不同的问题。针对这一问题,一种称之为 IoU-Net 的目标检测新方法被提出,在基准方法的基础上实现了显著的提升。该论文已被当地时间 9 月 8日-14 日在德国慕尼黑举办的 ECCV 2018 接收为口头报告。此外,该论文的三位并列一作是在旷视科技实习期间完成并提交的这篇论文。
摘要:
现有先进基于 CNN 的目标检测器依靠边界框回归和非极大抑制(NMS)来定位目标,其对类别标签的预测概率只能反映每个框的分类置信度,然而对框的定位置信度却缺失了。
这使得原本定位准确的边界框会在迭代回归的过程中偏离目标,甚至在NMS 过程中受到抑制。
本文提出IoU-Net,通过学习, 预测算法检测到的每个边界框和与之匹配的目标之间的IoU(IoU反应定位精度)。根据预测得到的定位置信度进行非极大值抑制,提升检测定位精度。
利用这种定位置信度,检测器能确保定位更准确的边界框在 NMS 过程中被保留下来,从而改进了 NMS 过程。
另外,将预测到的IoU作为目标函数,本文提出一种基于优化的边界框修正方法。
1 Introduction
Object detection serves as a prerequisite for a broad set of downstream vision applications, such as instance segmentation [19,20], human skeleton [27], face recognition [26] and high-level object-based reasoning [30].
目标检测是很多下游视觉应用的前提基础,比如实例分割 [19,20]、人体骨架绘制 [27]、人脸识别 [26] 和高级目标推理 [30]。
A broad set of downstream applications such as tracking and recognition will benefit from accurately localized bounding boxes. This raises the demand for improving localization accuracy.
很多应用例如跟踪和识别需要精确的目标检测框,因此提升了提高定位精度的需求。
现代大多数目标检测器的框架是 two-stage [9,8,22,16,10],目标检测被定义为一个多任务学习问题:1)区分前景物体框与背景并为它们分配适当的类别标签(提取候选目标);2)回归一组系数使得最大化检测框和目标框之间的交并比(IoU)或其它指标。最后,通过一个 NMS 过程移除冗余的边界框(对同一目标的重复检测)。
Classification and localization are solved differently in such detection pipeline.
Specifically, given a proposal, while the probability for each class label naturally acts as an "classification confidence" of the proposal, the bounding box regression module finds the optimal transformation for the proposal to best fit the groundtruth. However, the "localization confidence" is absent in the loop.
这样的检测过程用不同的方法进行目标分类和定位。具体来说,给定一个候选目标框(proposal),每个类别标签的概率可自然而然地用作该候选目标框的「分类置信度」,边界框回归模块找到针对该候选目标框的最优变换,以拟合真实目标的位置。然而,这个过程缺失了「定位置信度」。
This brings about two drawbacks. (1) First, the suppression of duplicated detections is ignorant of the localization accuracy while the classification scores are typically used as the metric for ranking the proposals.
The misalignment between classification confidence and localization accuracy may lead to accurately localized bounding boxes being suppressed by less accurate ones in the NMS procedure.
(2)Second, the absence of localization confidence makes the widelyadopted bounding box regression less interpretable.
现有的(两阶段)目标检测算法只有分类置信度。
定位置信度的缺失带来了两个缺点:
(1)分类得分通常用作对候选目标框排序的指标,而根据这种分类得分进行的重复检测框抑制是无效的;
图1(a)分类置信度和定位精度之间不同的案例
黄色框表示目标标注,红色框和绿色框是检测结果,由FPN算法产生。定位置信度是本文所提IoU-Net算法计算得到。在传统的NMS阶段,使用分类置信度作为排序指标会导致精确定位的候选目标框(绿色)被错误的去掉。
在图 1(a) 中,研究者展示了一组案例,其中有较高分类置信度的检测框却与其对应的目标物体有较小的重叠度。就像 Gresham 著名的「劣币驱逐良币」理论一样,分类置信度和定位准确度之间的不匹配可能会导致定位更准确的边界框在 NMS 过程中反而被不准确的边界框抑制了。
由于分类置信度和定位精度的不同,会导致定位更精确的边界框反而被抑制。
(2) 其次,缺乏定位置信度使得被广泛使用的边界框回归方法缺少可解释性或可预测性。
举个例子,之前的研究 [3] 报告了迭代式边界框回归的非单调性。也就是说,如果多次应用边界框回归,可能有损输入边界框的定位效果(见图 1(b))。
(b)在迭代式边界框回归中非单调定位的示例。
为了解决上述问题,本文提出IoU-Net,预测检测到的边界框和对应真实目标框之间的IoU,这样可以使得网络能像其分类模块一样,对检测框的定位精确程度有所掌握。
这种简单的预测 IoU 值能为研究者提供前述问题的新解决方案:
(1)IoU 是定位准确度的一个天然标准。
用预测到的IoU代替分类置信度,作为进行非极大值抑制的排序依据,将这项技术称为IoU引导式非极大值抑制,这可消除由于分类置信度误导引起的抑制错误。
(2)提出一种基于优化的边界框修正过程,与传统的基于回归的边界框修正方法平分秋色。在推理期间,预测到的IoU被用作优化目标函数,同时用作定位置信度的可解释性指示量。本文所提精准的RoI池化层(Precise RoI Pooling layer)可通过梯度上升法求解IoU优化问题。相比于基于回归的方法,基于优化的边界框修正方法在实验中能实现定位准确度的单调上升。这种方法完全兼容并可整合进不同的基于CNN的检测器。
边界框修正示例:上行是传统方法的效果,下行是本文所提方法的效果
2 Delving into object localization
First of all, we explore two drawbacks in object localization: the misalignment
between classification confidence and localization accuracy and the non-monotonic
bounding box regression.
现有目标定位算法有两大缺点:
分类置信度和定位精度的不同,边界框回归的非单调性。
FPN是本文所提算法对比的基准。在MS-COCO trainval35k上进行训练,在minival上测试。
2.1 Misaligned classification and localization accuracy 分类置信度和定位精度的不同
NMS从HOG+SVM分类器开始就是目标检测常用的一个技巧:
At each iteration, the bounding box with the maximum classification confidence is selected and its neighboring boxes are eliminated using a predefined overlapping threshold.
However, these parameter-based methods require more computational resources which limits their real-world application.
In the widely-adopted NMS approach, the classification confidence is used for ranking bounding boxes, which can be problematic.
图2 检测框与对应目标的IoU和分类/定位置信度之间的关系。对那些与目标框的IoU高于0.5的检测框,其Pearson相关系数(衡量两个数据集合是否在一条线上,衡量定距变量间的线性关系https://baike.baidu.com/item/Pearson%E7%9B%B8%E5%85%B3%E7%B3%BB%E6%95%B0/6243913?fr=aladdin)为(a)0.217 和 (b)0.617
(a)分类置信度表示检测框的类别,但不能当作定位精度;
(b)为了解决这个问题,作者提出IoU-Net来为每个检测框预测定位置信度,即其与对应的目标框的IoU。
大多数基于CNN的目标检测器区分前景(正样本)和背景(负样本)时用的目标函数是如果一个候选目标框与gt的IoU大于某个阈值,则是正样本,反之,则是负样本,这个目标函数不能反映定位精度,致使定位精度和分类置信度没有多大关系,Pearson相关系数表明了这一点。
This objective can be misaligned with the localization accuracy.
具有高分类置信度的的检测框有时反而定位不准。如图1(a)
Recall that in traditional NMS, when there exists duplicated detections for a single object, the bounding box with maximum classification confidence will be preserved.
However, due to the misalignment, the bounding box with better localization will probably get suppressed during the NMS, leading to the poor localization of objects.
The bounding boxes are grouped by their IoU with the matched ground-truth. For multiple detections matched with the same ground-truth, only the one with the highest IoU is considered positive.
Therefore, No-NMS could be considered as the upper-bound for the number of positive bounding boxes.
在传统的非极大值抑制过程中,当一个目标存在重复多个检测框时,只保留分类置信度最大的框。
然而,由于上述分类置信度和定位置信度的不同,具有较好定位精度的检测框在进行非极大值抑制时可能会被抑制,导致检测定位精度变差。如图3所示。
图3:经过NMS之后得到的正例边界框数量。在传统NMS中(蓝色条形图),定位准确的边界框中有很大一部分会被错误抑制,这是由于分类置信度和定位精度的不同造成的,而IoU引导式NMS(黄色条形图)则能保留定位更准确的边界框。在传统的NMS中,IoU>0.9时,超过一半的检测框被抑制,降低了检测结果的定位质量。
2.2 Non-monotonic bounding box regression 非单调的边界框回归
In general, single object localization can be classified into two categories: bounding box-based methods and segment-based methods.
通常来说,单目标定位能够被分为两类:基于边界框的的方法和基于分割的方法。
Single object localization is usually formulated as a bounding box regression task.
单目标定位通常被定义为边界框回归任务。这种算法的核心思想是训练一个网络,直接将一个候选目标框转换为对应的目标。
迭代边界框回归
In a series of object detectors [31,7,6,21],refined boxes will be fed to the bounding box regressor again and go through the refinement for another time. This procedure is performed for several times,
namely iterative bounding box regression.
在很多目标检测器中,微调的目标框被送入边界框回归器中,再次进行精调。这个过程执行数次,叫作迭代边界框回归。
图4 基于优化的和基于回归的精调
(a)在FPN中比较。当迭代地应用回归时,检测结果:精度(AP)一开始提升,但在随后的迭代过程中迅速下降。
(b)在Cascade R-CNN中比较。迭代0,1,2表示其中的第1,第2和第3次回归阶段。当迭代次数i≥3时,采用第三阶段的回归器精调边界框。经过多次迭代,AP轻微降低,而本文基于优化的方法将精度AP进一步提升了0.8%。
3 IoU-Net
为了定量的分析IoU预测的高效性,作者首先在3.1节展示了一个用于训练IoU预测器的方法,随后在3.2节和3.3节,作者分别展示了怎样将IoU预测器用于NMS和边界框精调。最后在3.4节,作者将IoU预测器集成到现存的目标检测器中,如FPN。
3.1 Learning to predict IoU
Shown in Figure 5, the IoU predictor takes visual features from the FPN and
estimates the localization accuracy (IoU) for each bounding box.
如图5所示,IoU预测器读取FPN提取的视觉特征,估计每个边界框的定位精度(IoU)
图5 本文所提IoU-Net的完整结构,详见3.4节。首先,将输入图像输入到一个FPN骨干网络。然后,IoU预测器读取这个FPN骨干网络输出的特征。作者用PrRoI池化层代替了RoI池化层,详见3.3节。这个IoU预测器与R-CNN分支有相似的结构。虚线框内的模块构成一个单独的IoU-Net。
3.2 IoU-guided NMS
We resolve the misalignment between classification confidence and localization
accuracy with a novel IoU-guided NMS procedure, where the classification con-dence and localization confidence (an estimation of the IoU) are disentangled.
In short, we use the predicted IoU instead of the classification confidence as
the ranking keyword for bounding boxes.
作者用新的IoU引导的非极大值抑制过程解决分类置信度和定位精度之间的不同,将分类置信度和定位精度解开。简言之,作者使用预测的IoU而不是分类置信度作为检测框的排序依据。
算法1 IoU引导式NMS。在这个算法中,分类置信度和定位置信度是解开的(disentangled)。研究者使用定位置信度(预测到的IoU)对所有检测到的边界框排序,然后基于一个类似聚类的规则来更新分类置信度。
输入:
是一组检测框。
和
是函数(神经网络),通过检测框分别得到其分类置信度和IoU估计(定位置信度)。
是NMS阈值。
输出:
,一组带有分类得分的检测框。
3.3 Bounding box refinement as an optimization procedure 边界框修正作为优化过程
目标函数:
其中
是检测到的边界框,
是目标的真实位置,
是参数为
的转换函数,对进行
转换。
是一个评估准则,评估两个框之间的距离。
基于回归的算法用前向传播神经网络的输出直接估计最优解
。然而这种迭代边界框回归方法容易受到输入分布改变的攻击,导致定位性能提升是非单调的。为了解决这些问题,作者提出了基于优化的边界框修正方法,使用IoU-Net作为鲁棒的定位精度评估准则。进一步的,IoU评估准则可以作为迭代修正过程的提前终止条件,自适应迭代次数。
作者引入精准RoI池化(Precise RoI Pooling),因为Precise RoI Pooling层允许计算IoU的梯度,所以可以直接使用梯度上升法计算上述公式的最优解。
如算法2所示,将IoU的估计作为优化目标函数,作者用计算到的梯度迭代地修正边界框的坐标,最大化检测框和对应真实目标间的IoU。另外,预测到的IoU作为每个边界框定位置信度的可解释性指标。有助于解释执行转换的操作。
算法2:基于优化的边界框修正
Precise RoI Pooling.
We introduce Precise RoI Pooling (PrRoI Pooling, for short) powering our bounding box refinement∗.
作者引入了精准RoI池化(简写为PrRoI池化),有助于边界框修正。这种做法没有任何坐标量化,而且在框的边界坐标上有连续梯度。给定RoI/PrPoI池化之前得到的特征图(比如,来自ResNet-50中的Conv4),令
表示该特征图上一个离散位置