(四十)论文阅读 | 密集目标检测之OPMP


简介

在这里插入图片描述

图1:论文原文

该论文的标题是一个建议区域负责多个目标,通过该思路可以有效缓解目标检测中密集检测的难题。实验结果为在基于 F P N {\rm FPN} FPN- R e s 50 {\rm Res50} Res50的基础网络上可以获得 4.9 % A P {\rm 4.9\%AP} 4.9%AP的提升。论文原文


0. Abstract

论文提出一种高效的基于区域的目标检测器,旨在解决目标密集的检测问题。该论文的核心点时使用一个建议区域预测多个目标实例,加上 E M D   L o s s {\rm EMD\ Loss} EMD Loss S e t   N M S {\rm Set\ NMS} Set NMS等的应用,该检测器可以有效克服目标检测中的目标重叠问题。

论文贡献:(一)论文提出一种密集目标检测的算法,使用一个建议区域预测多个目标实例;(二)提出针对原始非极大值抑制的改进;(三)可以集成到大多数基于区域的目标检测算法中。


1. Introduction

基于区域的目标检测器主要分为两个步骤:首先,基于手工或学习产生大量建议区域;然后,基于每个建议区域预测相对应的目标。为了去除重复的预测,通过使用非极大值抑制等后处理手段。虽然这类算法在公开数据上取得了比较大的成功,但仍不能满足密集预测的场景(图中的虚线框表示遗漏的检测结果):

在这里插入图片描述

图2:检测结果可视化1

造成上图中结果的原因主要来自两点:(1)高度重叠的目标之间往往具有非常相似的特征,这就使得检测器无法有效区分两个检测框是否表征的是同一个目标;(2)非极大值抑制等后处理过程可能滤除重叠目标的检测结果。

该论文提出一种新的解决机制:对于每一个建议区域,它不再仅仅预测一个目标实例,而是有可能同时对应多个。基于这种机制,处于密集目标处的建议区域负责一组实例的预测。此外,在该机制中引入了其他相关技术: E M D   L o s s {\rm EMD\ Loss} EMD Loss用于监督模型产生一组针对目标实例的预测; S e t   N M S {\rm Set\ NMS} Set NMS用于抑制重复的检测结果; R M {\rm RM} RM模块用于处理假阳性样本。


2. Background

为了处理目标检测中的密集重叠检测问题,以前工作提出的改进有:

Advanced NMS 原始的 N M S {\rm NMS} NMS主要处理的场景是假设在同一位置处不存在多个目标实例,但这种假设在密集检测的场景中不成立,因此存在许多针对原始 N M S {\rm NMS} NMS的改进: S o f t   N M S {\rm Soft\ NMS} Soft NMS S o f t e r   N M S {\rm Softer\ NMS} Softer NMS通过降低相邻预测结果的得分来抑制结果而非直接丢弃;基于标注目标大小的先验信息使用二次型优化来预测目标实例,但这种方法的过拟合现象比较严重;其他还有如使用神经网络产生更加复杂和基于数据的去重方法;在 N M S {\rm NMS} NMS中针对不同的边界框使用不同的阈值。虽然这些方法都是对原始 N M S {\rm NMS} NMS的改进,但同时也增大了模型的复杂度。

Loss functions for crowded detection 使用一些新的损失函数来解决密集检测的问题: A g g r e g a t i o n   L o s s {\rm Aggregation\ Loss} Aggregation Loss使得预测框更加密集; R e p u l s i o n   L o s s {\rm Repulsion\ Loss} Repulsion Loss对与多个真实框有重叠的检测结果添加惩罚。

Re-scoring 在众多检测器中,只要建议区域与某个真实框的交并比大于设定的阈值,则该建议区域负责该目标的检测,但同时也会出现多个建议区域负责一个目标的情况,因此通常需要 N M S {\rm NMS} NMS等后处理操作去除重复的检测。然而,如果设计的损失函数使建议区域和真实框一对一关联,使用 N M S {\rm NMS} NMS后会遗漏检测结果。使用再得分思路的一些方法:每个真实框对应于一个建议区域,但由于缺少建议区域间的关联,由此可能产生模糊的预测结果。因为对于一个建议区域来说,并不清楚是否还有其他的建议区域与此真实框对应; R e l a t i o n N e t {\rm RelationNet} RelationNet建立了建议区域间的联系以此来克服上述问题,在 C O C O {\rm COCO} COCO数据集上得到了良好的结果,但在 C r o w d H u m a n {\rm CrowdHuman} CrowdHuman数据集上的表现不好,可能是由于后者目标的密集程度大于前者。


3. Our Approach: Multiple Instance Prediction

论文的思路来自于:存在许多目标高度重合的场景,如果一个建议区域对应了目标,那么它也有可能与其他目标重叠。因此,对于这样的建议区域,是否有可能负责这部分所有密集目标的预测。对于建议区域 b i b_i bi,该机制提出预测一组相对应的真实框 G ( b i ) G(b_i) G(bi) G ( b i ) = { g i ∈ G ∣ I o U ( b i , g i ) ≥ θ } (1) G(b_i)=\{g_i\in\mathcal G|{\rm IoU}(b_i,g_i)\geq\theta\}\tag{1} G(bi)={giGIoU(bi,gi)θ}(1)

其中, G \mathcal G G表示一组真实框, θ \theta θ表示设定的交并比阈值。

在这里插入图片描述

图3:密集检测场景

如左图,刀和叉子的边界框几乎重合,三个预测结果也高度重合。假如每个建议框只预测一个结果(可能为空),由于每个区域内的特征也高度相似,这很难实现。此外,在 N M S {\rm NMS} NMS后可能仅存在一个检测结果。右图是论文中的方法,每个建议区域预测一组目标实例,然后使用 N M S {\rm NMS} NMS去除重复检测。

Instance Set Prediction 对于每个建议区域,大多数基于区域的检测为每个建议区域预测一对参数 ( c i , l i ) (\bold c_i,\bold l_i) (ci,li),其中 c i \bold c_i ci表示类别得分, l i \bold l_i li表示相对坐标。在该论文中,则是预测一组参数: P ( b i ) = { ( c 1 ( 1 ) , l 1 ( 1 ) ) , ( c i ( 2 ) , l i ( 2 ) ) , . . . , ( c i ( K ) , l i ( K ) ) } (2) {\rm P}(b_i)=\left\{(\bold c_1^{(1)},\bold l_1^{(1)}),(\bold c_i^{(2)},\bold l_i^{(2)}),...,(\bold c_i^{(K)},\bold l_i^{(K)})\right\}\tag{2} P(bi)={(c1(1),l1(1)),(ci(2),li(2)),...,(ci(K),li(K))}(2)

其中, G G G表示最大的预测真实框数。 P ( b i ) {\rm P}(b_i) P(bi)可以通过额外引入一个预测分支实现。在这里插入图片描述

图4:预测分支

EMD Loss 旨在设计一个损失函数 L ( b i ) {\mathcal L}(b_i) L(bi)来最小化预测 P ( b i ) {\rm P}(b_i) P(bi) G ( b i ) {\rm G}(b_i) G(bi),由此可以定义为集合间距离最小化的问题。因此论文设计的损失函数如下: L ( b i ) = min ⁡ π ∈ Π ∑ k = 1 K [ L c l s ( c i ( k ) , g π k ) + L r e g ( l i ( k ) , g π k ) ] (3) \mathcal L(b_i)=\min_{\pi\in \Pi}\sum_{k=1}^K\left[\mathcal L_{cls}(\bold c_i^{(k)},g_{\pi_k})+\mathcal L_{reg}(\bold l_i^{(k)},g_{\pi_k})\right]\tag{3} L(bi)=πΠmink=1K[Lcls(ci(k),gπk)+Lreg(li(k),gπk)](3)

其中, π \pi π表示 ( 1 , 2 , . . . , K ) (1,2,...,K) (1,2,...,K)的一种特定组合,第 k k k项为 π k \pi_k πk g π k ∈ G ( b i ) g_{\pi_k}\in{\rm G}(b_i) gπkG(bi)表示第 π k \pi_k πk个真实框; L c l s \mathcal L_{cls} Lcls L r e g \mathcal L_{reg} Lreg为分类损失和回归损失。同时,假设 ∣ G ( b i ) ∣ = K |{\rm G}(b_i)|=K G(bi)=K;如果不满足,则添加一些背景样本。直观上,上述损失函数会搜寻所有的一对一组合,然后通过最小化损失函数值找到最佳的匹配。同时注意到如果 K = 1 K=1 K=1,上述函数即为普通的损失函数。

Set NMS 在该机制中,虽然每个建议区域可以预测多个目标,如果仍使用原始的 N M S {\rm NMS} NMS,则仍不能满足密集检测的场景。使用 R M D   L o s s {\rm RMD\ Loss} RMD Loss后,重复的检测结果只可能来自于不同的建议区域。因此,论文基于此提出对原始 N M S {\rm NMS} NMS的改进 S e t   N M S {\rm Set\ NMS} Set NMS:每次某个边界框在抑制其他边界框前,添加一个额外的判断来检查这两个预测框是否来自于同一个建议区域;如果是则不产生此次抑制。

Refinement Module 在该机制中,每个建议区域会产生一组针对目标的预测,因此也会带来假阳性样本数量的增加。论文提出一种精修模块 R M {\rm RM} RM,以预测结果和特征作为输入,产生第二次预测结果以丰富预测特征。

Discussion: Relation to Previous Methods D P M {\rm DPM} DPM中检测行人对;自从深度学习以来, M u l t i B o x {\rm MultiBox} MultiBox在一幅图像中预测所有的实例; Y O L O v 1 / Y O L O v 2 {\rm YOLOv1/YOLOv2} YOLOv1/YOLOv2针对每个单元格产生多个预测。与论文最为接近的工作是使用 L S T M {\rm LSTM} LSTM在图像的每个网格内编码目标边界框,使用 H u n g a r i a n   L o s s {\rm Hungarian\ Loss} Hungarian Loss作为损失函数。在后处理阶段,使用连接方法将邻接格子的预测合并。

3.1 Network Architecture

论文提出的机制可以适用于绝大多数基于区域的目标检测器中,论文选用 F P N + R o I A l i g n {\rm FPN+RoIAlign} FPN+RoIAlign作为基础检测器,使用 R P N {\rm RPN} RPN产生建议区域, R C N N {\rm RCNN} RCNN分支基于建议区域产生预测。


4. Experiment

在这里插入图片描述

图5:不同NMS的对比

在这里插入图片描述

图6:各Trick的对比

在这里插入图片描述

图7:CrowdHuman数据集1

在这里插入图片描述

图8:CrowdHuman数据集2

在这里插入图片描述

图9:CityPersons数据集1

在这里插入图片描述

图10:CityPersons数据集2

在这里插入图片描述

图11:COCO数据集


5. Conclusion

该论文提出一种针对密集目标的检测方法,即一个建议区域负责多个目标实例的检测,使用包括 E M D   L o s s {\rm EMD\ Loss} EMD Loss S e t   N M S {\rm Set\ NMS} Set NMS R M {\rm RM} RM等,且该方法可以适用于大多数基于区域的目标检测算法中。由于代码暂时还没有开源,还不清楚基于一个建议区域产生多个预测的具体实现。


6. 参考

  1. Chu X, Zheng A, Zhang X, et al. Detection in Crowded Scenes: One Proposal, Multiple Predictions[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 12214-12223.


  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值