有一个之前大佬写的详解,这里附上网址,下文主要是一些盲区和自己觉得需要注意的地方
基于激光雷达的3D物体检测,主要分为三个独立的模块: 数据表示(SDR)、特征提取 和 核心物体检测
![](https://i-blog.csdnimg.cn/blog_migrate/b9b8f3b61a67c513f9ef85ef67783443.png)
在 Core Detection 阶段如果只用检测网络,叫做单阶段,检测速度较快;如果都用叫做双阶段,检测精度高
数据表示
3D BBox
三维边界框 (3D BBox) 用于定义 3D 空间中对象的位置、大小和方向。 3D BBox 具有适当的尺寸和方向,可以紧密地绑定到对象上。如果对象被部分遮挡或截断,则 3D BBox 具有适当的大小并相应地放置以代表对象的完整大小。 3D BBox 由其 3D 中心坐标 [x, y, z]、尺寸 [l, w, h] 及其偏航方向 θ 编码。
BEV-based
Bird’s Eye View,将来自多个摄像头的图像从透视视图转换到鸟瞰视图
- 输入:来自不同角度相机的多张图像,覆盖360°视野范围。
- 输出:BEV视图下的各种感知结果,比如物体,道路,车道线,语义栅格等。
- 算法:图像到BEV视图转换,包括稠密和稀疏两种方式。
由于Pillar中立柱没有沿Z轴划分,所以Pillar-based的点云表达形式被视为多通道的BEV图像
Projection-based
3D 空间中的点在透视变换下投影到 2D 平面中。给定 2D 平面的透视图,基于投影的表示分为前视图 (FV) 和鸟瞰图 (BEV) 表示
特征提取
3DBN 与 2DBN
第一类在 3D 空间中运行,而第二类在 2D 空间中运。
所选择的LiDAR SDR对所选择的技术有影响,即如果将点云投影到BEV中,则不能使用3DBN,而是仅使用2DBN来进行高维特征提取
3DBN
-
CNN: 相当于2D卷积变成3D应用到立体空间中,卷积运算较慢,空间稀疏卷积 和 子流形稀疏卷积网络 的有效实现被设计和证明可以加速卷积运算。
-
Pointnet++: 用pointnet++作为特征提取器。为了尝试删除 FP 层以节省计算资源,一些相关工作仅使用 PointNet++ 的编码器部分,为了弥补解码器部分的不足,PointNet++的SA层中引入了一种新的点采样算法,称为融合采样(FS)。
-
GNN: 执行固定次数的 T 次迭代,其中第 t 次迭代的节点特征用作第 (t + 1) 次迭代的输入特征。 MLP 和 Max 操作用于提取类似于 PointNet [20] 的节点特征
2DBN
即卷积神经网络基本架构
2DBN 有不同的架构,其中大多数受到特征金字塔网络(FPN)、U-Net 、ResNet 和 VGG 网络四个主要类别的启发
输入和输出数量可能不对应,有多种术语形容
核心物体检测
用于处理从特征提取模块中提取的高维特征,并以 3D BBox 的形式提供有关对象类别以及位置和大小的分类置信度分数和回归值作为输出
检测网络
- 基于锚点的,利用多个预定义大小的锚点来搜索高维特征图。
- 无锚网络利用来自特征提取模块的二进制标记信息来识别
预测细化
PR 从 Detector Networks 接收建议的 3D BBox 作为输入,对其进行细粒度采样并提取特征以提高分类置信度分数以及 3D BBox 位置、大小和方向。