一、自动驾驶分级

级别名称描述责任方
L0无自动化全部由人驾驶
L1辅助驾驶单功能自动化(ACC/车道保持)
L2部分自动多功能协同(需手扶方向盘)
L3条件自动系统驾驶,人可接管系统(限定场景)
L4高度自动全无人(限定区域)系统
L5完全自动全场景无人系统

二、感知模块 ⭐

2.1 传感器配置

传感器优势劣势典型厂商
摄像头低成本/颜色识别/车道线受光照/天气影响车载
LiDAR精确3D/全天候昂贵/稀疏点云Velodyne, Hesai
毫米波雷达速度检测/全天候分辨率低Bosch, Continental
超声波短距离精确范围短倒车雷达
IMU+GPS定位漂移/精度导航定位

2.2 纯视觉方案 (Tesla vs 多传感器)

方案代表特点
纯视觉Tesla低成本,靠大量数据+大模型
多传感器融合Waymo, 百度LiDAR+Radar+Camera,精确安全
低成本组合MobileyeCamera+Radar

2.3 3D目标检测

模型输入特点
PointPillarsLiDAR点云柱子化,速度快
VoxelNetLiDAR点云体素化3D卷积
CenterPointLiDAR点云中心点检测
Frustum-PointNetRGB+LiDAR融合方案
BEVDetCamera鸟瞰图检测
BEVFormerCameraTransformer BEV
LSS (Lift-Splat-Shoot)Camera深度估计+BEV

2.4 BEV感知 ⭐

核心: 将多个摄像头视角融合到鸟瞰图统一空间

前视相机 ──┐
侧前相视 ──┤                   ┌─────────────────┐
侧后相机 ──┼── Transformer ──→│   BEV空间       │
后视相机 ──┤                   │  (统一鸟瞰图)   │
环视相机 ──┘                   └─────────────────┘
                                    ├── 3D检测
                                    ├── 车道线
                                    ├── 可行驶区域
                                    └── 运动预测
BEV模型年份创新
LSS2020Lift-Splat深度估计
BEVDet2022高效BEV检测
BEVFormer2022时空Transformer注意力
PETR2022位置编码增强
UniAD2023端到端自动驾驶(感知→规划)
SparseBEV2023稀疏query BEV

2.5 车道线检测

模型方法特点
LaneNet实例分割经典
UFLD无分割极快
CLRNet曲线回归SOTA
RESA循环特征长距离依赖

2.6 可行驶区域/语义分割

  • 城市环境分割 (Cityscapes)
  • 全景驾驶分割 (BDD100K)

三、预测与规划

模块任务代表方法
运动预测预测其他物体的未来轨迹Transformer, VectorNet
路径规划本车路径生成RRT, A*, Hybrid A*
行为规划变道/减速决策规则引擎, RL

端到端驾驶

# UniAD: 感知→预测→规划端到端
# 1. 特征提取 → BEV特征
# 2. 3D检测 + 跟踪
# 3. 地图理解
# 4. 运动预测
# 5. 轨迹规划

四、自动驾驶数据集

数据集年份规模特点
KITTI201215K最早的自动驾驶标准
Cityscapes201625K城市街景分割
BDD100K2018100K大规模+多任务
nuScenes20191.4M多模态+多任务
Waymo Open20191.1K最高质量LiDAR
Argoverse 220221K运动预测
ONCE202115K中国路况
SODA10M202210M大规模半监督

📺 推荐视频

  • Tesla AI Day (每年): YouTube
  • Waymo技术报告: YouTube
  • BEVFormer论文精讲: B站
  • 自动驾驶感知综述: B站搜索

📚 论文必读

领域论文年份
3D检测PointPillars2019
3D检测CenterPoint2021
BEVBEVDet2022
BEVBEVFormer2022
端到端UniAD2023
3D检测3D Multi-Object Tracking近年
运动预测Waymo Motion2022
规划ChauffeurNet2019

🔗 资源链接


附录:深层补充

一、BEV 感知详解

1.1 LSS(Lift-Splat-Shoot)视锥投射

LSS 是 BEV 感知的奠基性工作,核心分为三步:

Step 1: Lift(提升 → 视锥点云)

对每个相机,为像素 ( u , v ) (u,v) (u,v) 预测深度分布 α u v ∈ R D \boldsymbol{\alpha}_{uv} \in \mathbb{R}^{D} αuvRD D D D 个离散深度 bin),结合图像特征 f u v ∈ R C \mathbf{f}_{uv} \in \mathbb{R}^{C} fuvRC,构造视锥点云
p u v , d = α u v , d ⋅ f u v ∈ R C \mathbf{p}_{uv,d} = \boldsymbol{\alpha}_{uv,d} \cdot \mathbf{f}_{uv} \in \mathbb{R}^{C} puv,d=αuv,dfuvRC
每个像素产生 D D D 个带特征的点,位于相机坐标系下沿射线的不同深度。利用相机内参 K K K 和外参 [ R ∣ t ] [R|t] [Rt] 将相机坐标 ( u , v , d ) (u,v,d) (u,v,d) 变换到自车坐标系:
[ x y z ] = R ⋅ d ⋅ K − 1 [ u v 1 ] + t \begin{bmatrix} x \\ y \\ z \end{bmatrix} = R \cdot d \cdot K^{-1} \begin{bmatrix} u \\ v \\ 1 \end{bmatrix} + t xyz =RdK1 uv1 +t

深度分布预测:对特征图施加分割式深度预测——对 H × W H\times W H×W 空间的每个位置,用 softmax 归一化后获得 D D D 个深度概率值,求和为1。这是一个分类任务(深度属于哪个 bin),而非回归任务。

Step 2: Splat(溅射 → BEV 栅格池化)

将大量带特征的点云投影到定义好的 BEV 栅格(如 200×200,每个栅格对应 0.5m×0.5m)。由于多相机点云重叠,使用 cumsum trick(基于排序的累积求和)高效实现:

  1. 将所有视锥点按 BEV 栅格索引排序
  2. 在每个栅格内对特征求和
  3. 最终每个栅格得到一个聚合特征向量

Step 3: Shoot(射击 → 端到端规划/检测)

BEV 特征图可直接输入检测头(分类 + 回归)或规划头。

关键创新:LSS 将 2D 图像特征与可微深度预测结合,实现了端到端的 2D→3D→BEV 转换,为后续 BEV 感知奠定了基础。

1.2 BEVFormer 的时空注意力

BEVFormer 使用 Transformer 的注意力机制替代 LSS 的显式几何投射,核心包含两种注意力:

空间交叉注意力(Spatial Cross-Attention, SCA)

  • BEV query Q p ∈ R H B E V × W B E V × C Q_p \in \mathbb{R}^{H_{BEV} \times W_{BEV} \times C} QpRHBEV×WBEV×C 的每个栅格在 3D 空间中采样 N r e f N_{ref} Nref 个参考点(通常沿高度轴采样 4 个平面)

  • 参考点通过相机内外参投影到多相机图像平面

  • 每个参考点在图像特征图上采样变形注意力(Deformable Attention)

  • 公式:
    SCA ( Q p ) = 1 ∣ V ∣ ∑ v = 1 V ∑ k = 1 K A p v k ⋅ W ⋅ F v ( Proj v ( p , k ) ) \text{SCA}(Q_p) = \frac{1}{|V|} \sum_{v=1}^V \sum_{k=1}^{K} A_{pvk} \cdot W \cdot \mathbf{F}_v(\text{Proj}_v(p, k)) SCA(Qp)=V1v=1Vk=1KApvkWFv(Projv(p,k))
    其中 V V V 是相机数, K K K 是采样点数, Proj v ( p , k ) \text{Proj}_v(p,k) Projv(p,k) 将 BEV 位置 p p p 的 3D 参考点投影到相机 v v v 的像素坐标。

时间自注意力(Temporal Self-Attention, TSA)

  • 将上一时刻的 BEV 特征 B t − 1 \mathbf{B}_{t-1} Bt1 对齐到当前时刻(通过 ego-motion 进行 3D 空间变换)
  • 当前 BEV query 与历史 BEV 特征做自注意力,捕获时序信息
  • 对静止物体和移动物体都能利用时间上下文确定深度和速度

BEVFormer 的整体流程

  1. 初始化 BEV query
  2. 先做时间自注意力(对齐历史 BEV 特征)
  3. 再做空间交叉注意力(从多相机图像聚合特征)
  4. 经过 FFN 和残差连接得到当前 BEV 特征
  5. 叠加 6 层 Encoder

BEVFormer 与 LSS 的本质差异

维度LSSBEVFormer
空间交互显式投影+池化可变形注意力隐式学习
时序融合无专门处理显式时序注意力
灵活性依赖精确标定端到端学习投影关系
速度快(纯卷积/池化)慢(注意力计算)
1.3 Transformer 统一 BEV 范式

当前 BEV 感知已进入 Transformer 统一范式的阶段,核心趋势:

  • 统一 query 设计:利用可学习的 object query(如 PETR、SparseBEV)替代密集 BEV 栅格,降低计算量
  • 跨模态融合到 BEV:Lidar + Camera 在 BEV 空间中统一表示
  • 端到端可微:从原始传感器到最终检测/规划全程可导

二、端到端自动驾驶(UniAD)

2.1 UniAD 的感知-预测-规划联合框架

UniAD 是第一个将全部驾驶模块整合为端到端可微框架的方法,摒弃了传统分离式 pipeline,包含 5 个核心模块:

模块一:TrackFormer

  • 输入:多帧 BEV 特征
  • 输出:3D 目标检测 + 多目标跟踪(检测即跟踪的范式)
  • 使用 query 从时间维度跟踪每个物体实例
  • 输出每个物体的类别、位置、尺寸、速度

模块二:MapFormer

  • 输入:BEV 特征
  • 输出:地图元素(车道线、人行道、路缘等)的矢量化表示
  • 使用 point query 逐点预测地图元素的顶点坐标
  • 输出变为自动驾驶可用的结构化地图(非栅格化)

模块三:MotionFormer

  • 输入:TrackFormer 检测到的物体 + MapFormer 的地图
  • 输出:每个物体的多模态未来轨迹(通常 K=6 条候选轨迹)
  • 关键设计:交互注意力(Interaction Attention)——代理-代理、代理-地图之间的相互影响
  • 每条轨迹附带置信度分数

模块四:OccFormer

  • 输入:BEV 特征 + 运动预测结果
  • 输出:未来时刻的 3D 语义占用预测
  • 建模其他交通参与者的形状占用,用于碰撞检测

模块五:Planner

  • 输入:上述所有模块的中间特征
  • 输出:自车未来 N 秒的规划轨迹( τ p l a n \tau_{plan} τplan 个 waypoint)
  • 最小化规划路径的碰撞代价 + 舒适代价 + 交通规则代价
2.2 梯度传播关系

UniAD 的核心优势在于梯度在各模块间全流通

Planner ← MotionFormer ← TrackFormer ← BEV Encoder
    ↕                    ↕
  OccFormer           MapFormer
  • Planner 的损失反向传播到所有下游模块
  • MotionFormer 的损失影响 TrackFormer 的检测效果
  • 感知误差通过梯度信号自动校正(例如:Detector 漏检车辆 → 规划路径变差 → loss 增大 → 更新检测器提高召回)

这种 End-to-End 训练方式相比分离式训练(每个模块独立训练,后融合)能提升约 12% 的规划安全性。


三、Occupancy Network

3.1 OccNet(3D 语义占用预测)

OccNet 将自动驾驶感知从 3D BBox 检测扩展到3D 占用网格预测,将自车周围空间划分为 X × Y × Z X\times Y\times Z X×Y×Z 体素网格,为每个体素预测:

  • 是否被占用(二值分类)
  • 占用物体的语义类别(语义分类)
  • 速度/流向(运动场)

输出格式 O ∈ R H × W × Z × ( 1 + C + 3 ) \mathcal{O} \in \mathbb{R}^{H\times W\times Z \times (1 + C + 3)} ORH×W×Z×(1+C+3)(占用标志 + 语义 logits + 速度向量)

优势

  • 能检测任意形状的物体(不限于标准 3D 框的矩形假设)
  • 对行驶区域的可通行性提供体素级判断
  • 对长尾形状物体(如施工障碍物、不规则车辆装载)有效
3.2 OCC 的监督信号构建

占用网格的 ground truth 来自激光点云的体素化

  1. 将当前帧 LiDAR 点云 P = { p 1 , . . . , p n } \mathcal{P} = \{p_1, ..., p_n\} P={p1,...,pn} 转换为 XYZ 坐标
  2. 体素化: v i j k = 1 v_{ijk} = 1 vijk=1 当且仅当 ∃ p ∈ P \exists p \in \mathcal{P} pP 落在体素 ( i , j , k ) (i,j,k) (i,j,k) 范围内
  3. 语义标签:通过点云的语义分割标签映射到体素类别
  4. 时间积累:将前后多帧 LiDAR 点云通过 ego-motion 变换对齐后联合体素化,填充更多体素

稀疏监督问题

  • LiDAR 点云仅覆盖物体的暴露表面(外表面),内部体素无监督信号
  • 解决方案:使用**射线投射(ray casting)**推断——从传感器原点沿射线判断体素是被遮挡(occupied)还是自由(free)
3.3 Occ vs 检测的互补性
特性3D 目标检测Occupancy 预测
输出形式稀疏 3D BBox稠密体素网格
物体形状假设矩形框无限制(任意形状)
远距离性能降级(框回归不稳定)相对稳定(二分类)
运动预测附加轨迹预测头体素级速度场
可行驶区域间接推断直接预测(free voxels)
与规划接口后处理碰撞检测直接占用损失

实际系统通常两者混合:检测负责精准的物体识别和跟踪,Occ 负责通用形状的空间占用建模。


四、多传感器融合

4.1 前融合 vs 特征融合 vs 后融合
融合层级融合时机对齐方式典型方式优缺点
前融合(Early Fusion)原始数据/低层特征像素/体素精对准RGB + LiDAR 体素对齐输入信息最完整,但计算量最大,对时空间对准要求极严
特征融合(Feature Fusion)中等层特征特征图空间对齐BEV 特征相加/拼接平衡信息量和计算量,当前主流
后融合(Late Fusion)各模态独立推理后的决策检测框/分割图层面NMS / IoU 一致解耦合,容错好,但丢失低级特征交互

特征融合是当前主流,典型架构:

  1. Camera 分支:2D→BEV 转换(LSS/BEVFormer)
  2. LiDAR 分支:点云→BEV 转换(PointPillars/VoxelNet)
  3. 在 BEV 空间中对齐并融合两路特征
4.2 BEVFusion(Lidar + Camera 异源融合)

BEVFusion 是异源融合的里程碑工作:

LiDAR 分支

  • 点云 → Pillar VFE(PointNet 编码每个 pillar 内的点)
  • Pillar scatter → 2D BEV 特征

Camera 分支

  • 多相机图像 → 2D 骨干网络 → 通过 LSS 深度估计转换为 BEV 特征

融合策略

  • BEV 空间中的通道拼接 + 卷积融合
  • 更优方案:自适应融合(Attention-based)——学习每个位置对不同模态的注意力权重
  • 消融实验表明:Camera BEV 特征主要贡献语义信息(车道线/交通标志),LiDAR BEV 特征主要贡献几何定位(精确的物体边界)
4.3 融合的对齐问题

空间对齐

  • Camera 2D→3D 的多义性(深度不确定性大)
  • LiDAR 3D→BEV 的下采样丢失细节
  • 解:通过可变形注意力(deformable attention)引入学习能力,使模型自适应调整对应关系

时间同步

  • 不同传感器采集帧率不同(Camera 30fps, LiDAR 10fps, Radar 50fps)
  • 融合时需基于硬件时间戳对齐到同一时刻
  • 大时间差下的物体移动导致空间位置错位(motion compensation):使用 IMU 或卡尔曼滤波外推/插值

五、自动驾驶数据集详解

5.1 nuScenes
属性数值
Scenes(场景)1000
Key frames40K
Annotations1.4M 3D BBox
类别23 类
Cameras6 (前/后/左前/右前/左后/右后)
Radars5
LiDAR1 (32-beam)
地点波士顿 + 新加坡

特有评估指标

  1. NDS(nuScenes Detection Score):综合指标,将 mAP 与 5 个 true positive 指标(ATE/ASE/AOE/AVE/AAE)加权:
    NDS = 1 6 [ mAP + ∑ m TP ∈ { ATE , . . . } ( 1 − m TP ) ] \text{NDS} = \frac{1}{6} \left[ \text{mAP} + \sum_{m_{\text{TP}} \in \{\text{ATE}, ...\}} (1 - m_{\text{TP}}) \right] NDS=61 mAP+mTP{ATE,...}(1mTP)

  2. mAP:使用 2D 中心距离(0.5m/1.0m/2.0m/4.0m 四个阈值)而非 IoU 匹配(因为 LiDAR 稀疏导致 IoU 不稳定)

5.2 Waymo Open Dataset
属性数值
Scenes1150 (1000 train + 150 val)
Frames230K (每 scene 200 frames, 20s)
Annotations12M 3D BBox
类别4 类 (Vehicle/Pedestrian/Cyclist/Sign)
LiDAR5 (1 Top + 4 Side)
Cameras5

特有评估指标

  • mAP / mAPL(mAP with heading accuracy)
  • 按距离分组:LEVEL_1(0-30m)和 LEVEL_2(30-50m)
  • IoU 匹配:Vehicle 用 0.7, Pedestrian 用 0.5, Cyclist 用 0.5

Waymo 的优势

  • 最高质量的 LiDAR(5 个激光雷达,高密度点云)
  • 长时域(20s/scene),适合运动预测
  • 具有全面的场景标注(包括行人、被遮挡物体)
5.3 Argoverse 2
属性数值
Scenes1000
传感器2 LiDAR (中/长距) + 7 环视相机 + 2 立体相机
矢量地图✅(高精度 HD Map)
运动预测✅(多模态轨迹标注)

特有评估指标

  • minADE(最小平均位移误差):在 K 个预测轨迹中,与 ground truth 最近的那条轨迹的平均 L2 距离
  • minFDE(最小最终位移误差):在 K 个预测轨迹中,最终位置的最短 L2 距离
  • Miss Rate:最终位移 > 2m 的比例

最大特色

  • 提供矢量地图(车道中心线、道路边界、交通灯)
  • 专注运动预测任务的多模态评估
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐