End-to-End Object Detection with Fully Convolutional Network阅读笔记

(一)Title

在这里插入图片描述
首个端到端的全卷积训练网络,这篇文章在POTO以及3DMF上的数学功底让我望尘莫及,作者对深度学习框架模型的理解也很深入。文章思路和实验设计上都非常清晰。在大佬面前,深感自己的弱小呢。


(二)Summary

基于全卷积网络的主流目标检测器大多数仍然需要非最大抑制(NMS)后处理,在这篇文章中,我们不再使用NMS,为此,对于完全卷积检测器,我们引入了Prediction-aware One-To-One:POTO label assignment for classification,以实现端到端检测,获得与NMS相当的性能。此外,提出了一种简单的3D Max Filtering(3DMF),利用多尺度特征,提高局部区域卷积的可分辨性。通过这些技术,我们的端到端框架在COCO和CrowdHuman数据集上实现了与NMS的许多最先进的检测器相媲美的性能

此外,作者介绍了目前目标检测中一些state of art的方法:

  • eliminate the pre-defined set of anchor boxes(取消预先设定anchor boxes) by using distance-aware and distribution-based label assignments.
  • many approaches based on recurrent neural networks have been introduced to predict the bounding box使用RNN来预测bounding boxes) for each instance by using an autoregressive decoder.
  • DETR] introduces a bipartite matching based training strategy and transformers with the parallel decoder to enable end-to-end detection.

作者在这里提出的问题是:如何在全卷积的网络中来实现端到端的目标检测任务?。

想要实现端到端,必须取消掉NMS,NMS是由于a one-to-many label assignment rule(也就是一个真实的box在网络输出会预测多个预测框,然后使用NMS来对真实标签做简化。)首先需要解决掉这个问题,解决这个问题的方法也很简单,我们让一个Groud Truth网络只生成一个Prediction,也就是 one-to-one label assignment

性能表现:在COCO数据集上,我们基于FCOS backbone和ResNeXt-101 backbone的端到端检测器显著优于NMS baseline 1.1%的mAP。并且在拥挤场景下检测更加具有健壮性和灵活性。ResNet-50主干网下,我们的端到端检测器实现了3.1%的AP50和5.6%的mMR绝对增益,超过了基于NMS的FCOS baseline。


(三)Research Object

利用POTO解决one-to-many label assignment存在的NMS后处理过程,作者同时提出3DMF来抑制重复的预测。但是使用上面两个技巧,依旧达不到NMS FCOS baseline。为了提升网络的特征表示能力,作者引入auxiliary loss。最终达到了FCOS的性能,同时,在拥挤人群检测中具有较好的性能以及较高的recall。


(四)Problem Statement

如何实现全卷积网络中取消掉NMS的端到端训练?采用one-to-one label assignment.

在使用hand-designed one-to-one label assignment时,存在的问题是我们固定选取的这个区域(这里我的理解是feature map上某一个特定的location)可能不是我们训练的最佳选择,也就是说,使用这个location预测的bounding boxes很可能不是可以通过NMS保留下来的那个(使用one-to-many带NMS的方法),作者这里给的解释是The fixed assignment could cause ambiguity issues and reduce the discriminability of features,

因此,作者这里利用分类和回归的质量动态地assigns the foreground samples ,也就是作者提出的prediction-aware one-to-one (POTO) label assignment,

大量实验表明,这些重复的框,主要来自于不同scales(不同大小上)上的具有较高置信度的预测值,作者使用一个简单的可微分3D max filtering operator嵌入到FPN头中。

此外作者修改one-to-many assignment 作为辅助损失,用于给特征表示学习提供足够多的监督信息、


(五)Method

取消掉one-to-many的label prediction,作者提出的方法的两个关键是:

  • a mixture label assignment (Prediction-aware one-to-one label assignment以及a modified one-to-many label assignment(auxiliary loss))
  • a 3D Max Filtering(3DMF)
    实现了取消掉NMS后处理,同时保证较强的特征表示能力。

得到的整体网络框架为:
在这里插入图片描述

5.1 Prediction-aware One-to-one Label Assignment

使用固定的hand-designed one-to-one label assignment得到的location往往不是最优的,因此,这种强迫式地分配会使得网络收敛难度增加,同时造成更多的False-positive预测。作者这里根据Prediction的质量来进行label assignment。

目标检测的损失函数为
在这里插入图片描述
其中, Ψ \Psi Ψ表示所有预测的索引集(the index set of all the predictions), N 和 G N和G NG分别表示Prediction bounding boxes的数量,Ground Truth bounding boxes 的数量, L f g L_{fg} Lfg表示前景损失, L b g L_{bg} Lbg表示背景损失。 c i , b i c_i,b_i ci,bi分别是Ground Truth的类别标签以及回归坐标,与之对应着的 p ^ π ^ ( i ) \hat{p}_{\hat{\pi}(i)} p^π^(i) b ^ π ^ ( i ) \hat{b}_{\hat{\pi}(i)} b^π^(i)是预测类别分数以及预测的bounding boxes坐标。

作者这里选取label assignment的指标为
π ^ = arg ⁡ min ⁡ π ∈ Π G N ∑ i G L f g ( p ^ π ^ ( i ) , b ^ π ^ ( i ) ∣ c i , b i ) \hat{\pi}=\underset{\pi \in \Pi_{G}^{N}}{\arg \min } \sum_{i}^{G} \mathcal{L}_{f g}\left(\hat{p}_{\hat{\pi}(i)}, \hat{b}_{\hat{\pi}(i)} \mid c_{i}, b_{i}\right) π^=πΠGNargminiGLfg(p^π^(i),b^π^(i)ci,bi)

前人的工作中通过使用foreground loss将其看成是一个biparticle matching problem(二分匹配问题),使用Hungarian algorithm求解,但是foreground loss通常需要额外的权重来减轻优化问题,例如,不平衡的训练样本和多个任务的联合训练。在实验6.1部分中的表现在mAP上没能达到baseline。

这里,作者采用的方式是(POTO)来获得一个更好的assignment
π ^ = arg ⁡ max ⁡ π ∈ Π G N ∑ i G Q i , π ( i )  where  Q i , π ( i ) = 1 [ π ( i ) ∈ Ω i ] ⏟ spatial prior  ⋅ ( p ^ π ( i ) ( c i ) ) 1 − α ⏟ classification  . ( IoU ⁡ ( b i , b ^ π ( i ) ) ) α ⏟ regression  \begin{aligned} \hat{\pi} &=\underset{\pi \in \Pi_{G}^{N}}{\arg \max } \sum_{i}^{G} Q_{i, \pi(i)} \\ \text { where } Q_{i, \pi(i)}=& \underbrace{1\left[\pi(i) \in \Omega_{i}\right]}_{\text {spatial prior }} \cdot \underbrace{\left(\hat{p}_{\pi(i)}\left(c_{i}\right)\right)^{1-\alpha}}_{\text {classification }} . \\ & \underbrace{\left(\operatorname{IoU}\left(b_{i}, \hat{b}_{\pi(i)}\right)\right)^{\alpha}}_{\text {regression }} \end{aligned} π^ where Qi,π(i)==πΠGNargmaxiGQi,π(i)spatial prior  1[π(i)Ωi]classification  (p^π(i)(ci))1α.regression  (IoU(bi,b^π(i)))α
其中, Q i , π ( i ) ∈ [ 0 , 1 ] Q_{i, \pi(i)} \in [0,1] Qi,π(i)[0,1]表示第i个Ground-Truth 和我们选择的作为第i个label assignment π ( i ) \pi(i) π(i)之间的匹配质量。其中考虑了空间先验,分类的置信度以及回归的质量。 Ω i \Omega_{i} Ωi表示第i个地面真值的候选预测集,即空间先验,同时对classification和regression利用 α \alpha α进行了加权几何平均数,从6.1的实验中POTO不仅减小with/without NMS之间的差异,同时提升了性能。

5.2 3D Max Filtering

首先,作者弄清楚重复预测究竟是来自何处?进行了实验
在这里插入图片描述
从这个表中,作者给出的分析是:when applying the NMS to each scale separately.性能有明显的退化,重复的预测主要来自于nearby spatial regions of the most confident prediction。对于上图没有看明白。
接着作者提出使用3DMF来抑制重复的Predictions
作者这里的3DMF思路来自于CornerNet和CenterNet中max filter,将其从single-scale扩展到多尺度版本。它能够变换FPN多个尺度的特征,特征图中的每一个通道分别采用3D最大值滤波。
x ~ s = { x ~ s , k : = Bilinear ⁡ x s ( x k ) ∣ ∀ k ∈ [ s − τ 2 , s + τ 2 ] } \tilde{x}^{s}=\left\{\tilde{x}^{s, k}:=\underset{x^{s}}{\operatorname{Bilinear}}\left(x^{k}\right) \mid \forall k \in\left[s-\frac{\tau}{2}, s+\frac{\tau}{2}\right]\right\} x~s={x~s,k:=xsBilinear(xk)k[s2τ,s+2τ]}
给定一个输入feature x s x^s xs,在FPN中尺度为s,首先采用bilinear运算符 to interpolate the features from τ adjacent scales as the same size of input feature x s x^s xs,3DMF图示如下
在这里插入图片描述
等式:
y i s = max ⁡ k ∈ [ s − τ 2 , s + τ 2 ] max ⁡ j ∈ N i ϕ × ϕ x ~ j s , k y_{i}^{s}=\max _{k \in\left[s-\frac{\tau}{2}, s+\frac{\tau}{2}\right]} \max _{j \in \mathcal{N}_{i}^{\phi \times \phi}} \tilde{x}_{j}^{s, k} yis=k[s2τ,s+2τ]maxjNiϕ×ϕmaxx~js,k
对于比例尺度s的空间位置i,最大值 y i s y_i^s yis是通过临近tube尺度以及 ϕ × ϕ {\phi \times \phi} ϕ×ϕ的空间距离上。这个操作可以通过3D max-pooling 运算符高效实现。
并且在这个过程中,所有模块都是由简单的可微算子构造的,并且只有很小的计算开销。

5.3 Auxiliary Loss(辅助损失)

使用了POTO以及3DMF得到的表现性能依旧不如FCOS baseline,这种现象可能是由于一对一的标签分配提供较少的监督,使得网络难以学习强有力的特征表示造成的.作者这里引入auxiliary loss来增强学习特征表示的能力。
auxiliary loss采用Focal loss和改进的一对多标签分配,具体来说,根据之前公式(4) Q i , π ( i ) ∈ [ 0 , 1 ] Q_{i, \pi(i)} \in [0,1] Qi,π(i)[0,1]建议的匹配质量, one-to-many label assignment 首先选出前9个预测作为每个FPN阶段的候选,然后,它将候选对象指定为匹配质量超过统计阈值的前景样本,这个统计阈值是通过the summation of the mean and the standard deviation of all the candidate matching qualities来计算出来的.


(六)Experiment

在实验实现上的一些细节内容:

  • 采用a pair of -convolution heads分别用于分类和回归
  • 在3DMF中第一个卷积和第二个卷积的输出通道分别为256和1
  • 所有backbone参数是在ImageNet数据集上进行预训练
  • 训练阶段,Image reshape到短边长度为800,所有的训练策略和Detectron2中的2x schedule相同。
  • 冻结主干网first two stage的参数,并微调网络的其余部分
  • 8个GPU上,每个GPU上两个图片,180K迭代,进行多尺度训练。
  • 初始学习率0.01,120K,160K迭代衰减10.
  • 使用Synchronized SGD去优化所有模型。

6.1 label assignment Ablation实验

在这里插入图片描述
在一对多标签分配中,丢弃掉NMS,造成mAP大幅度下降,因此,仅仅依靠一对多分配,很难实现有竞争力的端到端检测同时从前两行的实验中,我们发现:

  • 首先,当应用one to one label assignment时,有和没有NMS的检测器之间的性能差距仍然不可忽略
  • 由于对每个实例的less supervision,一对一标签分配的性能仍然低于FCOS基线

POTO+3DMF+Aux取得了最佳的mAP性能。

6.2 Visualization

在这里插入图片描述
我们展示了来自FCOS基线的分类分数的可视化和我们提出的框架。从上图中可以看出,FCOS baseline有一对多的分配中心输出大量的重复预测,很多位置的置信度分数较高,这些重复的预测被评估为假阳性样本,并极大地影响性能。相反,通过使用所提出的POTO规则,重复样本的分数被显著抑制。在引入3DMF后,达到更好的效果,这是由于3DMF模块引入了多尺度竞争机制,检测器可以在不同的FPN阶段很好地执行独特的预测

6.3 POTO

在这里插入图片描述
Spatial prior上,center sampling策略是要由于inside box和global策略的,它反映了图像的先验知识在现实世界场景中是必不可少的。

Classification vs. regression
超参数 α \alpha α调节分类和回归的比例,当α = 0时,赋值规则只依赖于分类的预测分数。在这种情况下,与NMS的差距被大大消除,但绝对性能仍然不令人满意,通过分类和回归质量的适当融合,绝对性能显著提高。

Quality function上分类和回归混合表现
采用加法时,对应的表达式为:
( 1 − α ) ⋅ p ^ π ( i ) ( c i ) + α ⋅ IoU ⁡ ( b i , b ^ π ( i ) ) (1-\alpha) \cdot \hat{p}_{\pi(i)}\left(c_{i}\right)+\alpha \cdot \operatorname{IoU}\left(b_{i}, \hat{b}_{\pi(i)}\right) (1α)p^π(i)(ci)+αIoU(bi,b^π(i))
采用乘法时,对应的表达式为:
p ^ π ( i ) ( c i ) ( 1 − α ) ⋅ IoU ⁡ ( b i , b ^ π ( i ) ) α {\hat{p}_{\pi(i)}\left(c_{i}\right)}^{(1-\alpha)} \cdot {\operatorname{IoU}\left(b_{i}, \hat{b}_{\pi(i)}\right)}^{\alpha} p^π(i)(ci)(1α)IoU(bi,b^π(i))α
进行的交融实验表现为:
在这里插入图片描述
从图中可以看出使用乘法的效果相比于使用加法的效果要好


6.4 3D Max Filtering

在这里插入图片描述
Components
没有3DMF和Aux loss情况下,在mAP上without NMS方法上有了19% mAP的提升,通过使用所提出的3DMF,性能进一步提高了1.8% mAP,与使用NMS的差距缩小到0.2% mAP,结果显示了多尺度和局部范围抑制对于端到端目标检测的关键作用。加上auxiliary loss使得我们获得了和使用NMS的FCOS相当的性能。

End-to-end.
我们用3DMF取代了CenterNet的2D max filter,作为消除重复预测的新后处理。在性能上有了1.1%的提升。

Kernel size
在这里插入图片描述
ϕ \phi ϕ和$ τ$对于性能的影响

性能和训练迭代的变化关系图示
在这里插入图片描述
一开始,我们的端到端检测器不如带有NMS的检测器,经过180k次训练迭代,我们的方法最终优于其他NMS检测器。这种现象也发生在CrowdHuman val集合上,如图5©所示。此外,由于去除了手工设计的后处理,图5(b)展示了我们的方法在召回率方面相对于基于NMS的方法的优势。

6.5 更大的backbone

在这里插入图片描述
我们提供了具有较大主干的实验。当使用ResNet-101作为主干时,我们的方法比FCOS的方法稍差0.3% mAP。但是,当引入更强的主干时,即带有可变形卷积的ResNeXt-101,我们的端到端检测器实现了1.1%的mAP绝对增益,超过了FCOS和NMS。这可能归因于可变形卷积的灵活空间建模。此外,所提出的3DMF是高效且易于实现的,3DMF模块与带有NMS的基线检测器相比,只有轻微的计算开销。

6.6 在CrowdHuman上评估

在这里插入图片描述
在拥挤人群下有更好的表现,同时具有较高的召回率、相比于NMS方法。

(七)Notes

1. 消除掉预先设定的anchor boxes的方法

by using distance-aware and distribution-based label assignments。真不错,想看看

2. 使用RNN来预测bounding boxes

这些方法存在的问题是:它们仅在小数据集上进行评估,并且迭代方式使得inference过程效率低下。

3. 两种手动设计的one-to-one label prediction方法(确定在特征图上的location)

  • Anchor Rule
    基于RetinaNet的,这里应该是和YOLO相似,在feature map上每一个location处,都存在着多个尺度的anchor,基于多个尺度的anchor和Ground Truth IoU最大的那个anchor对应的location就是我们这次的Prediction。其他的都设置为背景
  • Center Rule
    在特征层上location距离Ground Truth bounding boxes最近的那个位置。其他的都设置为背景。

(八)Conclusion

本文提出了一种POTO标签分配和3DMF,以弥补使用NMS的完全卷积网络和端到端目标检测之间的差距。在有辅助损失的情况下,我们的端到端框架在COCO和CrowdHuman数据集上与NMS的许多最先进的检测器相比实现了卓越的性能。我们的方法在复杂和拥挤的场景中也表现出了巨大的潜力,这可能有利于许多其他实例级任务。


  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值