background
任务:目标检测任务中,去除不可训练的NMS,实现端到端的训练
关键词:POTO,3DMF
Introduction
传统的目标检测会用到不可训练的NMS,严重阻碍了端到端的训练。之后提出的 Learnable NMS , Soft NMS等,也没有提供有效的端到端的训练策略。DETR将transformer带入到目标检测中,并且去除了NMS,但是对小目标的训练效果较差。
本文基于提出的标签分配和网络结构,去除NMS,提供一个全卷积的端到端的目标检测方式。
Model
整体结构
主要介于FCOS框架,利用POTO,提出一对一的标签分配策略做回归,在图中的Conv+
σ
\sigma
σ之后加入辅助损失,利用Focal loss来做回归,中间的3DMF,用于对重复预测的删除。
POTO
主要通过匈牙利算法,将预测的标签与truth-ground的标签进行一对一的分配:
最终的损失函数:
p
^
π
(
i
)
^
\hat{p}_{\hat{\pi(i)}}
p^π(i)^为预测的对应的目标的概率
b
^
π
(
i
)
^
\hat{b}_{\hat{\pi(i)}}
b^π(i)^为预测的对应目标的坐标
c
i
c_{i}
ci为truth-ground中的目标种类
b
i
b_{i}
bi为truth-ground中的目标的坐标
Ψ
\Psi
Ψ为所有预测集的索引
R
(
π
^
)
R(\hat{\pi})
R(π^)为前景样本的索引
通过匈牙利算法的选取规则如下,因为训练样本不平衡等需要将多个因素进行“加权”(对于预测中多余项,不进行训练)
上式中
Q
i
,
π
(
i
)
Q_{i,\pi(i)}
Qi,π(i)表示第i个truth-ground与第
π
(
i
)
\pi(i)
π(i)的预测的匹配质量
spatial prior:
Ω
i
\Omega_i
Ωi表示第i个truth-ground的候选预测区域
3D Max Filtering
作者实验发现,重复预测主要来自最可信的区域的临近空间,所以通过3DMF,去除重复预测
如上图,主要通过Bilinear,将FPN中各种分辨率的feature maps映射到一分辨率下,然后通过3D max pooling,生成该分辨率下的feature maps,其他分辨率下的图片依次类推。
Bilinear公式:
3D MAX POOLING:
实验中发现
ϕ
\phi
ϕ=3,
τ
\tau
τ=2,的实验效果较好。
Auxiliary Loss
如上图所示,在使用POTO,3DMF的情况下,性能没有达到baseline水平,原因是监督较少,使得网络很难学习强而鲁棒的特征表示,所以提出辅助损失来增强监督。
主要在FCOS框架下,将每一个分辨率下的对应的候选区选择9个最高分区域,然后设定阈值,区分前景,背景,通过Focal loss做回归。
Experiment
可视化
在p5,p6,p7的分辨率下的预测可视化
上图在使用POTO+3DMF+Aux后,重复预测的区域明显减少。
结果
在没有NMS的情况下,性能得到不错的提升
Learn from paper
对于不可训练的NMS,本文提出了很好的解决方案,通过POTO,3DMF,成功去除了重复预测的问题(可视化中显而易见),对于因去除重复预测而导致的监督下降,提出了辅助损失来增强监督,实现了在没有nms的情况下,性能堪比甚至超过传统模型。