传感器融合
1. 开篇介绍
自动驾驶系统依赖多种传感器来感知周围环境,包括激光雷达(LiDAR)、摄像头(Camera)、毫米波雷达(Radar)以及超声波传感器(Ultrasonic)。然而,单一传感器在面对真实世界复杂场景时往往存在明显的局限性:LiDAR 在雨雾天气下点云质量急剧下降;摄像头在夜间或强逆光条件下几乎失效;毫米波雷达虽然在极端天气下表现稳健,但分辨率低、无法提供语义信息;超声波传感器探测距离极短,仅适用于低速泊车场景。
传感器融合(Sensor Fusion) 的核心思想是将来自多个传感器的信息有机结合,使得系统能够获得比任何单一传感器更加完整、可靠的环境感知能力。通过融合,可以有效解决"感知盲区"问题——即单个传感器因物理原理、天气条件、遮挡关系等因素导致的感知失效区域。
多传感器融合是自动驾驶系统实现高可靠性的基础技术之一,也是 L3 级及以上自动驾驶系统的功能安全(Functional Safety)要求中明确规定的技术手段。
2. 为什么需要传感器融合
2.1 各传感器的优缺点分析
下表总结了主流传感器在不同场景下的表现:
| 场景 / 传感器 | LiDAR | 摄像头 (Camera) | 毫米波雷达 (Radar) | 超声波 (Ultrasonic) |
|---|---|---|---|---|
| 正常天气白天 | 优秀 | 优秀 | 良好 | 仅近距离 |
| 雨天 | 较差(水滴散射) | 较差(雨滴遮挡) | 优秀 | 受影响较小 |
| 浓雾天气 | 差(激光散射严重) | 差 | 优秀 | 较差 |
| 夜间弱光 | 优秀(主动发射) | 差(依赖外部光源) | 优秀 | 不受影响 |
| 遮挡场景 | 较差(无法穿透) | 差 | 一定穿透能力 | 差 |
| 测距精度 | 极高(厘米级) | 差(需额外算法) | 良好(分米级) | 较高(近距离) |
| 语义理解 | 无 | 极强 | 无 | 无 |
| 速度测量 | 需多帧估计 | 需光流算法 | 直接测量(多普勒) | 无 |
| 成本 | 高 | 低 | 中 | 低 |
| 分辨率 | 中(线束数决定) | 高 | 低(角分辨率差) | 低 |
2.2 互补性原则
不同传感器在物理原理上天然互补,融合后可以形成"1+1>2"的效果:
- LiDAR + Camera:LiDAR 提供精确的三维空间坐标和距离信息,但没有颜色和纹理语义;Camera 提供丰富的颜色、纹理、语义信息,但无法直接获得精确深度。两者融合可以实现带语义的精确三维感知。
- LiDAR + Radar:LiDAR 提供精确点云形状,Radar 提供直接速度测量(多普勒效应)和极端天气下的稳定性,融合后在恶劣天气下仍能保持较好的目标检测与速度估计能力。
- Camera + Radar:成本最低的融合方案,Radar 补充深度和速度信息,Camera 提供语义,常见于 ADAS 系统(如特斯拉早期方案)。
2.3 冗余性原则
除互补性外,多传感器还提供了系统级冗余:
当任意一个传感器发生故障、遮挡或信号质量下降时,系统可以降级运行(Graceful Degradation),依靠其他传感器维持基本感知能力,而不是完全失效。这对于满足 ISO 26262 功能安全标准至关重要。
例如,当 LiDAR 因强日光干扰或雨水积尘导致点云质量下降时,Radar 和 Camera 的融合结果可以保证系统继续以较低速度安全行驶,直到 LiDAR 恢复正常工作。
3. 融合层次(Fusion Levels)
根据融合发生的信息层次,传感器融合可以分为三个主要层次:
3.1 早期融合(Early Fusion / Raw Data Fusion)
定义:将各传感器的原始数据在处理管线最前端直接融合,之后送入统一的感知算法进行处理。
典型实现:将激光雷达点云与摄像头图像进行像素级对齐——将点云投影到图像平面,为每个像素赋予深度值;或反向将图像特征提升到三维点云空间。
优点: - 信息损失最小,保留了所有原始传感器信息 - 模型可以从融合后的原始数据中学习更丰富的跨模态特征
缺点: - 对传感器标定精度要求极高(亚毫米级外参误差会导致对齐偏差) - 计算量巨大,对实时处理系统压力较大 - 一个传感器故障可能影响整个感知流程
3.2 中期融合(Middle Fusion / Feature Fusion)
定义:各传感器独立提取特征后,在特征空间进行融合,再送入下游检测/分割头。
典型实现:各传感器分别提取 BEV(Bird's Eye View,鸟瞰视角)特征图,然后在 BEV 空间进行通道维度拼接(Concatenation)或注意力融合。
优点: - 在精度与计算效率之间取得较好平衡 - 各传感器特征提取可以并行进行,适合多核/多加速器架构 - 目前学术界和工业界主流的融合方案
缺点: - 特征对齐需要良好的 BEV 投影方法(LSS、BEVFormer、GKT 等) - 异构特征(点云稀疏特征 vs. 图像稠密特征)融合存在模态间鸿沟
3.3 晚期融合(Late Fusion / Object-Level Fusion)
定义:各传感器独立完成检测,输出目标列表(Bounding Box + 属性),再在目标级别进行关联与融合。
典型实现:LiDAR 检测器输出 3D 检测框,Camera 检测器输出 2D 检测框,通过投影关系或特征距离进行匹配,合并得到最终目标列表。
优点: - 实现简单,各传感器感知模块相互独立,易于维护和升级 - 单个传感器故障不影响其他传感器的检测结果 - 工程落地成熟度高
缺点: - 在目标级融合前已损失大量原始特征信息 - 对困难目标(遮挡、小目标)的融合效果有限 - 多次独立检测存在重复计算
3.4 三级融合对比
| 融合层次 | 信息损失 | 计算量 | 容错性 | 实现难度 | 代表方法 |
|---|---|---|---|---|---|
| 早期融合 | 最小 | 最大 | 较低 | 高 | PointPainting, MVX-Net |
| 中期融合 | 中等 | 中等 | 中等 | 中高 | BEVFusion, TransFusion |
| 晚期融合 | 最大 | 最小 | 最高 | 低 | CenterFusion(部分), 传统 ADAS |
4. 经典卡尔曼滤波融合
卡尔曼滤波(Kalman Filter,KF)是传感器融合领域最经典的数学工具,广泛用于目标状态估计与多传感器数据融合。
4.1 状态向量定义
对于一个在二维平面运动的目标,定义状态向量为:
其中 \(x, y\) 为目标位置,\(v_x, v_y\) 为目标速度。若需要更精确的建模,可以扩展为:
4.2 预测步骤(Prediction)
给定状态转移矩阵 \(\mathbf{F}\)(基于匀速运动模型)和过程噪声协方差矩阵 \(\mathbf{Q}\),预测下一时刻的状态均值与协方差:
对于匀速运动模型,状态转移矩阵为:
4.3 更新步骤(Update)
收到传感器观测值 \(\mathbf{z}_k\) 后,计算卡尔曼增益(Kalman Gain):
其中 \(\mathbf{H}\) 为观测矩阵,\(\mathbf{R}\) 为观测噪声协方差矩阵。
状态更新:
协方差更新:
创新量(Innovation)\(\mathbf{z}_k - \mathbf{H}\hat{\mathbf{x}}_{k|k-1}\) 衡量了观测值与预测值之间的差异,卡尔曼增益 \(\mathbf{K}_k\) 决定了对观测值的信任程度——当 \(\mathbf{R}\) 很小(传感器很精确)时,\(\mathbf{K}_k\) 较大,更新步骤更倾向于信任观测值。
4.4 扩展卡尔曼滤波(EKF)
标准卡尔曼滤波假设系统是线性的,但实际运动模型(如雷达的极坐标观测)往往是非线性的。扩展卡尔曼滤波(Extended Kalman Filter, EKF) 通过在当前估计点处进行一阶泰勒展开线性化来处理非线性问题:
对于非线性状态方程 \(\mathbf{x}_k = f(\mathbf{x}_{k-1}) + \mathbf{w}\) 和观测方程 \(\mathbf{z}_k = h(\mathbf{x}_k) + \mathbf{v}\),EKF 使用雅可比矩阵(Jacobian Matrix)代替线性系统中的 \(\mathbf{F}\) 和 \(\mathbf{H}\):
EKF 广泛用于 LiDAR-IMU 融合(如 LOAM 类方法)和雷达-GPS 融合定位系统中。
4.5 无迹卡尔曼滤波(UKF)
EKF 的线性化会引入截断误差,在高度非线性系统中精度较差。无迹卡尔曼滤波(Unscented Kalman Filter, UKF) 采用确定性采样策略,通过一组精心选取的 Sigma 点 来捕捉状态分布的统计特性,无需计算雅可比矩阵:
对于 \(n\) 维状态向量,选取 \(2n+1\) 个 Sigma 点:
将每个 Sigma 点通过非线性函数传播,加权求和得到均值和协方差的近似。UKF 能达到三阶精度(对高斯分布),比 EKF 的一阶精度更准确,且避免了雅可比矩阵的计算。
5. 占用栅格地图融合(Occupancy Grid)
占用栅格地图(Occupancy Grid Map)将环境离散化为均匀的栅格,每个栅格存储被障碍物占据的概率,是多传感器融合感知的重要表达形式。
5.1 Dempster-Shafer 证据理论
Dempster-Shafer(DS)证据理论是一种处理不确定性和不完整信息的框架,适用于多传感器融合场景。对于每个栅格,定义三种状态:
- 占据(Occupied):栅格被障碍物占据
- 空闲(Free):栅格是自由可通行区域
- 未知(Unknown):信息不足,无法判断
DS 理论使用以下量描述传感器的信念:
- 信念函数(Belief):\(Bel(A)\),对命题 \(A\) 成立的最小确信度
- 似真函数(Plausibility):\(Pl(A)\),对命题 \(A\) 成立的最大可能性
- 不确定性(Uncertainty):\(Pl(A) - Bel(A)\),表示信息的模糊程度
多个传感器的证据通过 DS 组合规则(Dempster's Rule of Combination)融合。
5.2 贝叶斯更新
更常见的实现采用贝叶斯概率更新方式。对于每个栅格,维护其被占据的后验概率,在收到新的传感器观测 \(z_t\) 时进行贝叶斯更新:
为了计算效率,通常使用对数奇数比(Log-Odds)形式:
对数奇数比的加法操作比概率乘法在数值上更稳定,且避免了概率趋近于 0 或 1 时的数值问题。
5.3 动态占用栅格(DOGMa)
经典占用栅格假设环境是静态的,无法处理动态障碍物。动态占用栅格(Dynamic Occupancy Grid Map, DOGMa) 为每个栅格引入速度状态,通过粒子滤波或卡尔曼滤波追踪栅格的动态变化:
每个栅格维护一个粒子集合 \(\{(\mathbf{x}_i, \mathbf{v}_i, w_i)\}\),表示可能存在于该位置的目标的位置、速度和权重。通过时序更新和多传感器测量更新,可以同时估计静态环境结构和动态目标的速度场。
5.4 多传感器联合概率地图更新
当有多个传感器同时提供观测时,可以进行联合更新:
其中 \(\mathcal{S}\) 为所有传感器的集合。这要求各传感器的传感器模型(Sensor Model)准确描述其在占据和空闲栅格下产生观测的概率分布。
6. 基于深度学习的融合
近年来,深度学习方法极大地推动了传感器融合技术的发展,涌现出一批性能卓越的多模态融合网络。
6.1 BEVFusion(MIT / 北京大学)
BEVFusion 是目前影响力最大的多模态融合框架之一,核心思想是将所有传感器的特征统一变换到 BEV(Bird's Eye View)空间后进行融合:
- LiDAR 分支:使用 VoxelNet 类方法将点云体素化并提取 BEV 特征
- Camera 分支:使用视锥变换(Lift-Splat-Shoot,LSS)将图像特征提升到 BEV 空间
- BEV 特征融合:对 LiDAR BEV 和 Camera BEV 特征进行通道维度拼接(Concatenation),再通过卷积层融合
- 多任务输出头:同时输出 3D 目标检测、BEV 语义分割等任务结果
BEVFusion 在 nuScenes 数据集上大幅超越了此前的单模态和融合方法,尤其是对于骑行者、行人等小目标的检测性能提升显著。
6.2 TransFusion(香港大学)
TransFusion 引入 Transformer 架构实现跨模态注意力融合:
- 以 LiDAR 检测框作为查询(Query),初始化目标候选
- 利用 Transformer 的交叉注意力(Cross-Attention)机制,从图像特征(Key/Value) 中提取与每个候选目标相关的语义信息
- 通过位置编码(Positional Encoding)建立 LiDAR 空间位置与图像特征位置的对应关系
这种设计使得图像特征能够精确地补充 LiDAR 对应区域的颜色和纹理信息,对于提升远距离目标的分类精度尤为有效。
6.3 FUTR3D
FUTR3D 提出了一个统一的多传感器融合查询框架,支持 Camera、LiDAR、Radar 的任意组合输入:
- 核心是一个模态无关的特征采样模块,无论输入何种传感器组合,均通过统一的可变形注意力(Deformable Attention)从各模态特征中采样
- 这使得同一套模型可以在不同传感器配置下运行(例如测试阶段某传感器不可用时),具有良好的鲁棒性
6.4 CenterFusion
CenterFusion 基于 CenterPoint 检测框架,设计了一套雷达-相机融合流程:
- 使用 CenterPoint 在图像上检测目标中心点,生成 2D 检测结果
- 通过将毫米波雷达点云投影到图像平面,与 2D 检测中心点进行关联
- 将关联成功的雷达点的深度和速度信息作为额外特征,增强目标属性估计
CenterFusion 在低成本传感器方案(无 LiDAR)下表现出色,适合量产 ADAS 系统。
6.5 跨模态特征投影
深度学习融合方法中常用的两种特征投影方向:
图像特征投影到 LiDAR 空间(深度补全):
通过稀疏 LiDAR 点云提供深度先验,结合图像上下文信息,使用深度补全网络(Depth Completion)将稀疏深度图补全为稠密深度图,从而将图像像素提升到三维空间。常见方法包括 S-D Fusion、NLSPN 等。
点云投影到图像空间(深度先验):
将 LiDAR 点云通过已知的相机内外参数投影到图像平面,生成深度先验图(Depth Prior Map)。图像特征提取网络可以利用这一先验获得更精确的深度感知能力,常见于 PointPainting、DeepFusion 等方法。
7. 时序融合(Temporal Fusion)
单帧传感器数据往往存在遮挡、稀疏等问题,利用时序信息进行融合可以显著提升感知质量。
7.1 多帧点云累积
将相邻多帧的 LiDAR 点云在补偿自车运动后叠加,可以有效增加点云密度:
其中 \(\mathbf{T}_{ego}^{t \to T}\) 为从时刻 \(t\) 到当前时刻 \(T\) 的自车运动变换矩阵(由 IMU/轮速计/GNSS 估计)。
多帧累积后,原本稀疏的远距离点云变得更加稠密,对于 pedestrian(行人)等小目标的检测效果提升尤为明显。但对高速运动目标,需要精确的目标级运动补偿,否则会产生"鬼影"(Ghost Points)。
7.2 BEV 特征时序融合
BEVFormer 引入时间自注意力(Temporal Self-Attention),将历史帧的 BEV 特征与当前帧对齐融合:
- 将历史 BEV 特征根据自车运动进行空间对齐(Spatial Alignment)
- 通过可变形注意力从历史 BEV 特征中查询与当前 BEV 位置相关的信息
- 将时序信息与当前帧特征融合,使得模型对被遮挡物体仍有"记忆"
时序融合使得纯视觉方案(Pure Camera)在速度估计和遮挡目标检测上的性能大幅提升。
7.3 障碍物历史轨迹融合
在目标追踪层面,卡尔曼追踪器为每个目标维护历史轨迹,并通过预测步骤填充短暂的检测缺失(如遮挡帧)。历史轨迹信息还可以:
- 提供速度和加速度的平滑估计,减少单帧噪声影响
- 预测目标的未来位置,支持后续路径规划模块
7.4 时序融合解决的核心问题
| 问题 | 时序融合解决方案 |
|---|---|
| 单帧遮挡(瞬间被其他物体遮挡) | 历史帧信息 + 预测填充 |
| 稀疏点云(远距离 LiDAR 点极少) | 多帧点云累积增密 |
| 速度估计噪声大 | 卡尔曼滤波平滑 |
| 纯视觉深度模糊 | BEV 时序特征融合 |
| 夜间弱纹理场景 | 历史高质量帧特征复用 |
8. 目标级融合与多目标追踪(MOT)
8.1 检测-追踪关联(匈牙利算法)
多目标追踪(Multi-Object Tracking, MOT)的核心任务是将当前帧的新检测结果与已有追踪轨迹进行关联(Data Association)。最经典的方法是匈牙利算法(Hungarian Algorithm),它求解最小代价二分图匹配问题。
构造代价矩阵 \(\mathbf{C}\),其中每个元素衡量第 \(i\) 个检测结果与第 \(j\) 条追踪轨迹之间的关联代价:
对于三维目标追踪,常使用 3D IoU 或中心点距离作为代价度量。匈牙利算法以 \(O(n^3)\) 时间复杂度求解全局最优匹配,返回检测-追踪对的一一对应关系。
8.2 代价度量方法
不同的代价矩阵计算方式适用于不同场景:
- IoU(Intersection over Union):\(IoU = \frac{|A \cap B|}{|A \cup B|}\),适用于目标不重叠、尺寸相近的场景
- GIoU(Generalized IoU):\(GIoU = IoU - \frac{|C \setminus (A \cup B)|}{|C|}\),处理无重叠框时的梯度消失问题,\(C\) 为最小包围框
- 中心点距离(Mahalanobis Distance):考虑追踪器预测不确定性的距离度量,适用于预测框与检测框位置偏移较大的场景
- 外观特征距离(ReID Distance):利用目标外观嵌入向量的余弦距离,用于长时遮挡后的重识别
8.3 跨传感器检测结果关联
当 LiDAR 和 Camera 各自独立输出检测结果时,需要将两个检测列表进行关联:
- 投影关联:将 LiDAR 3D 检测框投影到图像平面,计算与 Camera 2D 检测框的 2D IoU
- 空间距离关联:使用 Camera 单目深度估计将 2D 检测框提升到 3D,计算 3D 距离
- 特征距离关联:利用多模态特征网络提取统一的目标嵌入,计算特征相似度
8.4 追踪器状态管理
每条追踪轨迹的生命周期管理:
- 新建(Birth):检测结果无法与任何现有轨迹匹配,新建一条"待确认"(Tentative)轨迹
- 确认(Confirmed):轨迹连续若干帧都有匹配检测结果,升级为"确认"(Confirmed)状态,开始输出
- 更新(Update):已确认轨迹与检测成功匹配,使用卡尔曼滤波更新状态
- 预测(Predict):轨迹在当前帧未能匹配,使用卡尔曼预测维持状态,进入"丢失"(Lost)状态
- 删除(Delete):轨迹连续若干帧未能匹配,超过最大丢失帧数,删除轨迹
8.5 主流开源追踪器
| 追踪器 | 特点 | 适用场景 |
|---|---|---|
| AB3DMOT | 简洁的 3D 卡尔曼 + 匈牙利算法框架 | 离线评测基线 |
| SimpleTrack | 统一 3D MOT 框架,支持多数据集 | 快速验证 |
| CasTrack | 级联匹配策略(高/低置信度分层匹配) | 高遮挡场景 |
| ImmortalTracker | 长时追踪,抗长时遮挡 | 城市复杂场景 |
| StrongSORT | 集成 ReID 和运动模型的增强版 DeepSORT | 行人追踪 |
9. 融合系统标定
传感器融合的基础是精确的外参标定(Extrinsic Calibration),即确定不同传感器坐标系之间的变换关系(旋转矩阵 \(\mathbf{R}\) 和平移向量 \(\mathbf{t}\))。标定误差直接影响融合精度,是工程落地中最关键的环节之一。
9.1 相机-LiDAR 外参标定
基于棋盘格的联合标定是最常见的相机-LiDAR 外参标定方法:
- 在场景中放置棋盘格标定板,从多个位置和角度采集数据
- 在图像中提取棋盘格角点(像素坐标),使用
cv2.findChessboardCorners - 在点云中提取标定板平面(通过平面拟合),确定棋盘格在三维空间中的位置
- 通过最小化点云平面上的点到图像投影对应点的重投影误差,求解外参矩阵
优化目标:
其中 \(\pi(\cdot)\) 为相机投影函数,\(\mathbf{p}_i^{cam}\) 和 \(\mathbf{p}_i^{lidar}\) 为对应点的图像和 LiDAR 坐标。
9.2 相机-Radar 标定
毫米波雷达的角分辨率低,无法直接提取几何特征,通常采用目标级联合标定:
- 使用强反射角反射器(Corner Reflector)作为标定目标,其在雷达和摄像头中均易于识别
- 在不同位置采集雷达点(距离、方位角)和图像目标位置的对应数据
- 通过最小化投影误差求解外参
9.3 时间同步
时间同步(Time Synchronization)是多传感器融合中常被忽视但至关重要的因素:
- 硬触发(Hardware Trigger):通过硬件电路同步信号(如 GPIO 脉冲)同时触发多个传感器采集,时间对齐精度可达微秒级。常见于高端自动驾驶研究平台。
- PTP(Precision Time Protocol, IEEE 1588):通过以太网协议对多设备的系统时钟进行对齐,典型精度为亚毫秒级,适合车载以太网架构。
- GPS/GNSS 授时:利用 GPS 信号提供的 PPS(Pulse Per Second)信号作为时间基准,驱动各传感器的时钟同步,精度可达纳秒级。
- 软件时间戳插值:当硬件同步无法实现时,记录各传感器的软件时间戳,在数据处理时根据时间戳差值进行插值对齐,精度较低(毫秒级),在高速场景下会引入显著的位置对齐误差。
对于以 \(v = 30 \text{ m/s}\)(约 108 km/h)行驶的车辆,\(10 \text{ ms}\) 的时间同步误差会导致约 30 cm 的目标位置偏差,因此精确的时间同步对融合精度至关重要。
9.4 在线标定(Online Calibration)
受温度变化、车辆振动、传感器老化等因素影响,传感器外参在使用过程中会发生漂移。在线标定(Online Calibration) 旨在车辆行驶过程中持续监测和修正外参:
- 基于运动估计的在线标定:分别估计各传感器坐标系下的自车运动,通过最小化多传感器运动估计的不一致性来修正外参
- 基于特征对应的在线标定:在正常行驶过程中持续提取环境特征(如车道线、路边建筑物角点)的跨传感器对应关系,实时优化外参
- 基于深度学习的隐式标定:端到端训练融合网络时将外参作为可学习参数,允许网络根据任务损失自适应调整标定参数
10. 参考资料
-
Liu, Z., Tang, H., et al. "BEVFusion: Multi-Task Multi-Sensor Fusion with Unified Bird's-Eye View Representation." ICRA 2023. arXiv:2205.13542
-
Bai, X., Hu, Z., et al. "TransFusion: Robust LiDAR-Camera Fusion for 3D Object Detection with Transformers." CVPR 2022. arXiv:2203.11496
-
Chen, T., et al. "FUTR3D: A Unified Sensor Fusion Framework for 3D Detection." CVPR 2023 Workshop. arXiv:2203.10642
-
Nabati, R., Qi, H. "CenterFusion: Center-based Radar and Camera Fusion for 3D Object Detection." WACV 2021. arXiv:2011.04841
-
Li, Z., Wang, W., et al. "BEVFormer: Learning Bird's-Eye-View Representation from Multi-Camera Images via Spatiotemporal Transformers." ECCV 2022. arXiv:2203.17270
-
Weng, X., Wang, J., et al. "AB3DMOT: A Baseline for 3D Multi-Object Tracking and New Evaluation Metrics." ECCV 2020 Workshop. arXiv:2008.08063
-
Thrun, S., Burgard, W., Fox, D. Probabilistic Robotics. MIT Press, 2005. — 贝叶斯占用栅格与卡尔曼滤波的经典教材参考。