原文链接:https://arxiv.org/abs/2206.10092

1.引言

        目前的图像3D目标检测方法在深度估计上的效果很差。基于深度3D检测器特点:

  1. 若无真实深度的监督,虽然最终的3D检测结果鼓励模型输出正确的深度,但要学习到精确的深度是很困难的;
  2. 此外,理论上深度子网络应该根据相机内外参推断深度,但目前方法都没有这么做;
  3. 深度估计后的视图转换子网络很低效,比不基于深度的方法有更慢的速度。

      本文的BEVDepth网络使用来自点云的稀疏深度监督;考虑到运动时的外参扰动引起的真实深度扰动,提出深度校正网络;为了在预测深度时利用相机参数,使用了相机感知注意力模块;提出高效体素池化操作,快速将图像特征投影到BEV,减小视图转换的时间和计算量。

3.BEVDepth

3.BEVDepth

        总体结构原始的BEVDepth就是LSS主干加上CenterPoint检测头。如上图所示,BEVDepth包含图像编码器(提取图像特征F^{2d})、DepthNet(用图像特征估计离散的图像深度图D^{pred})、视图转换器(将图像特征按F^{3d}_i=F^{2d}_i\otimes D_i^{pred}转换到3D空间得到F^{3d},并池化为BEV表达)、3D检测头(预测类别、边界框偏差和其他属性)。

        显式的深度监督:使用点云数据P得到深度监督D^{gt}。设R_i\in\mathbb{R}^{3\times3}t_i\in\mathbb{R}^3为自车坐标(点云坐标)到第i个相机坐标的旋转和平移矩阵,K_i\in \mathbb{R}^{3\times3}为该相机的内参。首先计算

\hat{P}^{img}_i(ud,vd,d)=K_i\cdot(R_iP+t_i)

并进一步转化为2.5D图像坐标P_i^{img}(u,v,d)u,v为图像像素坐标)。未投影到图像上的点被丢弃。

      为对齐投影点云和预测深度,在P_i^{img}使用了最小池化和独热编码(记为操作\phi),则真实离散深度图为D_i^{gt}=\phi(P^{img}_i)

        深度估计损失使用二元交叉熵损失。

        深度校正:由于上一步中使用的Rt参数可能由于自车运动而不精确,从而导致F^{2d}D^{gt}不对齐,这在DepthNet的感受野很小的时候存在大问题。深度校正网络通过增大DepthNet的感受野来解决不对齐问题,即在DepthNet中使用多个残差块和可变形卷积,如下图的右下角所示。

        相机感知的深度预测:经典相机模型中,估计深度需要相机内参。首先将相机内参通过MLP放大到特征图的尺寸,然后通过Squeeze-and-Excitation模块(见此文第三点)用其重新加权图像特征。此外,将相机的外参与内参拼接,帮助DepthNet感知在自车坐标系下的空间位置。因此整个相机感知的深度预测可写为

D_i^{pred}=\textup{DepthNet}(\textup{SE}(F_i^{2d}|\textup{MLP}(\textup{Flatten}(R_i)\oplus \textup{Flatten}(t_i)\oplus\textup{Flatten}(K_i))))

        高效体素池化:该模块将3D特征转化为2D BEV特征,即将落在每个BEV网格内的3D特征求和。在LSS中使用累加求和技巧,但其排序操作和累加求和的顺序性都引入了额外计算时间。本文的高效体素池化如下图所示,思想是为每个棱台特征分配一个CUDA线程,将其添加到相应的BEV网格中。

4.实验

4.1 实验设置

        深度估计任务的评价指标为尺度不变对数误差(SILog)、平均相对误差绝对值(Abs Rel)、均方相对误差(Sq Rel)、平均log10误差(log10)和均方根误差(RMSE)。

        使用图像数据增广如随机裁剪、缩放、翻转、旋转,以及BEV特征数据增广如随机缩放、翻转和旋转。

4.2 消融研究

        显式深度监督和深度校正:原始的BEVDepth的深度估计误差很大;增加显式深度监督和深度校正后,总体和各项检测精度均有所提升,且深度估计误差大幅减小。

   相机感知:引入相机内外参的编码后,检测精度和深度估计精度也都有一定提升。

        高效体素池化:该操作使得训练和推断速度均能加快到3至4倍。

        多帧融合:直接拼接相邻两帧的BEV特征会导致自车运动带来的空间不对齐;本文通过对齐中间的点云(即将上一帧的点转换到当前帧的自车坐标下:P^{cur}=T^{global2cur}\cdot T^{prev2global}\cdot P^{prev},其中T为平移-旋转矩阵),然后进行体素池化,得到对齐的BEV特征。

        实验表明多帧方法能减小速度/属性估计误差,并提高检测精度。

4.3 主要结果

        相比于其余方法,本文的定位误差大幅下降,表明深度预测的精度高。