BEVDet4D: Exploit Temporal Cues in Multi-camera 3D Object Detection 论文笔记

发布于:2022-08-08 ⋅ 阅读:(521) ⋅ 点赞:(0)

原文链接:https://arxiv.org/pdf/2203.17054.pdf

1.引言

        目前的视觉检测方法在速度的估计上存在较大误差,因此本文引入时间信息来提高精度。

        BEVDet4D通过保留过去帧的中间BEV特征来扩展BEVDet,然后通过与当前帧对齐和拼接来融合特征,从而可以通过查询两个候选特征来获取时间线索,而仅需要可忽略的计算增加。BEVDet4D的其余部分与BEVDet相同。

2.相关工作

2.2 视频目标检测

        目前的方法主要在结果或中间特征两处使用时间线索。前者使用后处理方法,以跟踪的方式优化检测结果;后者利用LSTM、注意力或光流重新利用过去帧的图像特征。

3.方法

3.1 网络结构

        如下图所示,BEVDet4D仍包含BEVDet的4个基本结构。此外,考虑到视图转换器的输出特征较为稀疏,增加了额外的BEV编码器(由两个残差单元组成)。

3.2 简化速度学习任务

        预测目标在相邻帧之间的平移而非直接预测速度,这样任务转化为预测目标在相邻两帧中的移位,这可根据BEV特征图的差异来测量。

        设相邻两帧中的某物体在全局坐标系下的坐标为P_s^g(T)P_s^g(T-1),则由于自车运动,直接拼接特征图(如上图的右上子图所示)得到的位置差为

\begin{aligned} &P^{e(T)}_s(T)-P^{e(T-1)}_s(T-1)\\=&T^{e(T)}_gP^g_s(T)-T^{e(T-1)}_gP^g_s(T-1)\\=&T^{e(T)}_gP^g_s(T)-T^{e(T-1)}_{e(T)}T^{e(T)}_gP^g_s(T-1) \end{aligned}

其中上标e(T)表示T时刻的自车坐标系,非上标的(T)表示T时刻的物体;T_{src}^{dst}表示从源坐标系到目标坐标系的变换。可见,如果直接拼接两个特征图,会导致目标移位与自车运动相关。

        若先使用T_{e(T-1)}^{e(T)}来移动前一帧到当前帧的自车坐标系下再拼接(如上图的右下子图所示),则目标位置差为

\begin{aligned} &P^{e(T)}_s(T)-T_{e(T-1)}^{e(T)}P^{e(T-1)}_s(T-1)\\ =&T^{e(T)}_gP^g_s(T)-T_{e(T-1)}^{e(T)}T^{e(T-1)}_{e(T)}T^{e(T)}_gP^g_s(T-1) \\ =&T^{e(T)}_gP^g_s(T)-T^{e(T)}_gP^g_s(T-1)\\ =&P^{e(T)}_s(T)-P^{e(T)}_s(T-1) \end{aligned}

此时目标的位置差就等于实际的目标移位。

        实际上上式是通过特征对齐来实现的,即若F(T,P^{e(T)})表示T时刻在自车坐标系下的特征图,则对齐后的特征为:

F'(T-1,P^{e(T)})=F(T-1,T_{e(T)}^{e(T-1)}P^{e(T)})

        本文使用双线性插值从F(T-1,P^{e(T-1)})中获取特征,但该方法是次优方法,会导致性能下降,且该下降程度与BEV特征分辨率反相关。更精确的方法是在视图变换器中调整提升操作生成的点云坐标,但这样做会破坏BEVDet中使用的加速方法的前提条件(见BEVDet 4.3节最后)。

4.实验

        数据增广方法与BEVDet相同。

4.2 结果

        在nuScenes验证集上,BEVDet4D的高速版本BEVDet4D-Tiny就超过了BEVDet的性能,主要是在朝向、速度和属性的估计上,甚至速度的估计精度超过了基于相机和雷达融合的方法CenterFusion。总的来说,BEVDet4D以可忽视的额外推断时间为代价换来了较大的性能提升。

        在nuScenes测试集上,BEVDet4D超过了一些训练时需要额外数据的方法;此外,验证集和测试集的性能差异表明,引入时间线索可以提高模型的泛化性能。

4.3 消融研究

4.3.1 建立BEVDet4D的过程

        在BEVDet的基础上,首先直接拼接相邻帧的BEV特征图。此操作会导致性能下降,特别是在位置和速度估计上。这可能是因为自车运动导致的物体移位会迷惑后续模块对物体位置的判断,且速度的判断需要从物体位置差中找到与自车运动无关的实际移位。

        加入对齐操作后,位置和速度误差均减小,且位置误差小于BEVDet,但速度误差仍大于BEVDet。这可能是由于相邻帧时间的不一致性导致物体位置分布和速度分布不同。

        从直接预测速度改为预测偏移量,简化了速度预测任务、极大提高了速度估计精度,且使训练结果更加鲁棒。

        拼接前使用额外的BEV编码器能以极少的计算代价换来进一步的性能提升。

        此外调整损失函数中的速度权重也能提高性能。

4.3.3 时间融合的位置

        若在额外的BEV编码器前进行时间融合,性能相比在额外的BEV编码器前进行时间融合会有下降,这说明视图转换器的输出特征较为粗糙,不适合直接使用。如果在原来的BEV编码器后进行时间融合,则性能与BEVDet几乎相同(其中速度精度略有提高,但位置精度略有下降)。这说明BEV编码器能抵抗过去帧带来的位置误导,并从位置偏移估计速度。

本文含有隐藏内容,请 开通VIP 后查看