编辑 | CVer
点击下方卡片,关注“自动驾驶之心”公众号
ADAS巨卷干货,即可获取
点击进入→自动驾驶之心【3D目标检测】技术交流群
后台回复【3D检测综述】获取最新基于点云/BEV/图像的3D检测综述!
一句话总结
本文基于Range Image图像提出了一种的简洁而有效的全卷积单阶段3D目标检测器FCOS-LiDAR,并提出模态卷积和用于解决Range View下多帧融合的多轮距离视图投影机制,表明了基于RV的3D检测器可以取得与当前主流的基于BEV的3D检测器相当的效果,速度优于CenterPoint。
我们基于雷达点云提出了一种的简洁而有效的全卷积单阶段3D目标检测器FCOS-LiDAR。不同于使用鸟瞰图(BEV)的主流方法,我们提出的检测器从激光雷达的距离视图(Range View,也叫Range Image)检测物体。由于距离视图的紧凑性和激光雷达传感器采样过程的兼容性,基于距离视图的目标检测器可以通过仅使用普通2D卷积来实现,而基于BEV的方法往往需要复杂的体素化操作和稀疏卷积。
在本文中,我们首次表明,仅使用标准2D卷积的基于距离视图的3D检测器可以实现与当前最先进的基于BEV的3D检测器相当的性能,同时速度更快、更简洁。更重要的是,因为将多帧点云融合到单个距离视图中富有挑战性,几乎以前所有的基于距离视图的检测器都只关注单帧点云。在本文中,我们使用一种新颖的距离视图投影机制来解决这个具有挑战性的问题,并首次证明了基于距离视图的检测器也可以从多帧点云融合中获益。在nuScenes数据集上的丰富实验展示了我们提出的方法的优越性,我们的工作强有力地表明了基于RV的3D检测器可以取得与当前主流的基于BEV的3D检测器相当的效果。
2.1 距离视图表示
图1 点云距离图像(Range Image)
在笛卡尔坐标系中给定一个激光雷达点(x、y、z),z轴朝上,它可以唯一地转换为球坐标(r,θ,φ),各参数由公式1计算可得。
其中,r、θ和φ分别是距离、方位角和倾角(参见图1左)。激光雷达使用固定数量的光束(即垂直分辨率为m)对点进行采样,每个光束有一个固定的倾角。这些激光雷达光束围绕z轴同步旋转统一获得360o水平视野,激光雷达每帧测量固定的次数(以n表示)。因此,相邻测量值的差异方位角为360o/n。
给定激光雷达方位角和倾角的规律性,我们可以离散化方位角为n个bins,倾角为m个bins。让(i,j)表示方位角和倾角的bins索引。通过计算在单个扫描周期内的所有点对(i,j),我们可以将这些点填充到2D图像I∈Rm x n x C(range image),其中C=9由原始笛卡尔坐标(x,y,z),球坐标(r,θ,φ),反射强度i,点的存在e,以及相对时间戳t组成。e点的存在表示位置是否由点填充,相对时间戳t仅在多帧点云输入中有效,表示此点和当前帧的时间差。实际中,由于车辆本身经常处于运动状态,导致某些点可能投影到图像上相同的bins里面。在这种情况下,我们保留与车辆距离最近的那个点。
2.2 Multi-round Range View投影(MRV)
单帧点云在3D空间中通常稀疏且有着较低的分辨率。为了提高检测性能,一些方法通常将当前帧与前几帧相结合作为网络的输入。在融合多帧的时候,上述距离视图投影过程中会遇到大量的碰撞,即在多帧情况下多个点落入同一个bins的情况要频繁得多。这使得多帧点云并不能比单帧点云包含太多的有效点。这是基于RV的方法不能从多帧输入中受益的主要原因。
为了解决这一关键问题,我们提出了Multi-round Range View(MRV)投影机制。具体来说,我们使用上述的方法对点进行投影。但是对于那些由于碰撞被丢弃的点,我们使用相同的过程再次投影它们,并将它们放入另一组的九个通道。重复此投影过程,直到有足够数量的点保留。最后,将五轮投影结果的距离图像沿通道串联起来,并用作输入(图2)。此外,需要注意的是,无论什么情况下,如果发生碰撞,当前帧的点都具有最高优先级,。因为以前的帧已过时,可能无法反映当前世界的状态。尽管MRV是一个简单的处理,它会显著提升多帧融合的效果,参见实验3.1。
图2 多帧距离图像的模态卷积
2.3 模态卷积
如前所述,单帧Range Image上的每个像素包含九个通道。不同于 RGB图像,其三个通道具有相同的模态(均在颜色空间中)。但Range Image的九个通道并非如此,而是包含五种模态,即[x,y,z],[r,θ,φ],[i],[e]和[t],其中一对方括号具有相同的模态。我们通过使用分组卷积实现对于距离图像的不同通道单独处理,被称作模态卷积,因为它基于 “模态”。一旦这些模态的高级语义特征被单独获得,我们可以使用1×1卷积层(即逐点卷积)聚合这些模态的特征,用于进一步的抽象分析。
虽然模态卷积类似于广泛使用的深度卷积,但本质不同。我们的模态卷积基于不同模态相关性较小的先验知识,整合了一种合理的归纳偏置。因此,模态卷积只能放在网络的起点,在这里通道是可解释的,具有明确的模态。最后,对于多帧点云,来自不同帧的相同模态应该一起处理。这个模态卷积的整个过程如图2所示,实验结果参见3.2。
2.4 总体架构
图3 FCOS-LiDAR总体架构
FCOS-LiDAR的总体结构如图3所示。FCOS-LiDAR跟随无锚检测器FCOS这一全卷积网络结构。拍摄(多帧)距离图像I∈Rm x n x (T xC) 作为示例,其中T是使用的帧的数量,我们首先通过称为LiDAR-Net的骨干网络对距离图像提取特征。然后,遵循FCOS,将四个级别的特征映射发送到特征金字塔网络(FPN)中以获得金字塔特征图。然后,类似FCOS,分类和回归头,并将最终预测卷积层(用于分类或回归)附加到这些特征级别上进行回归。与基于图像的检测器中的头部不同,它们的头部的权重在这些特征层之间共享,在基于激光雷达的检测中,由于目标的大小是由目标中的3D点的坐标值决定的,并且对距离图像进行下采样不能改变它们在3D空间中的真实大小,因此不能用这种方法对目标的大小进行归一化。因此,在这些FPN特征层之间检测头不是共享的,我们的实验也证实了这一点,参见实验3.3。
训练目标计算:与FCOS类似,我们需要将训练目标分配给距离图像上的每个像素。在nuScenes上,GT的3D框通过以下方式进行参数化: (cx,cy,cz,w,h,l,α),其中(cx,cy,cz) 是框的3D中心,w、h、l和α分别是宽度、高度、长度和绕z轴的航向角。如果距离图像上的像素的原始3D点包含在目标的3D框中,该像素负责目标回归并预测其类别等。这里,像素的3D框回归目标是相对于距离图像像素的原始3D坐标,定义为
其中 (x0,y0,z0) 是距离图像像素的原始3D坐标。同样,回归航向角α的目标也是相对于像素的方位角。
损失函数:分类预测采用交叉熵(CE)损失进行监督。对于3D框回归,我们同时使用IoU损失和L1损失。与FCOS类似, IoU预测使用二值交叉熵(BCE)损失进行惩罚,因为其范围为[0, 1]。
3.1 MRV投影
表1 MRV映射结果
表2 是否当前帧具有最高优先级的结果
3.2 模态卷积
表3 模态卷积
3.3 解耦检测头权重
表4 是否解耦检测头
3.4 推理时间比较
表5 推理时间
3.5 和SOTA方法比较
表6 与SOTA方法的对比
往期回顾
NIPS2022 | 港大最新Sparse2Dense:通用点云3D检测稠密模块!
【自动驾驶之心】全栈技术交流群
自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多传感器融合、SLAM、光流估计、深度估计、轨迹预测、高精地图、规划控制、模型部署落地、自动驾驶仿真测试、硬件配置、AI求职交流等方向;
添加汽车人助理微信邀请入群
备注:学校/公司+方向+昵称
自动驾驶之心【知识星球】
想要了解更多自动驾驶感知(分类、检测、分割、关键点、车道线、3D目标检测、多传感器融合、目标跟踪、光流估计、轨迹预测)、自动驾驶定位建图(SLAM、高精地图)、自动驾驶规划控制、领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球(三天内无条件退款),日常分享论文+代码,这里汇聚行业和学术界大佬,前沿技术方向尽在掌握中,期待交流!