自动驾驶感知与预测模块存在无法规避的噪声:激光雷达、相机的观测误差,车辆动力学模型与真实驾驶行为的偏差,都会让我们得到的车辆位置、速度、加速度不再是确定数值。绝大多数简易轨迹算法只输出单点预测坐标,完全忽略噪声带来的风险偏差;而卡尔曼滤波依靠高斯分布假设,搭建一套可循环迭代的状态估计框架,完整量化车辆状态的不确定性,是自动驾驶轨迹预测的基础工业方案。
一、核心底层假设:用高斯分布统一描述全部噪声
核心结论:卡尔曼滤波依靠高斯分布建模车辆状态、物理模型的不确定性与噪声。
这里包含两层严谨的数学前提,也是它所有计算成立的根基:
状态服从高斯分布
车辆的二维状态向量
不固定为单一数值,而是一组正态分布随机变量,用均值向量代表最可能的真实状态,协方差矩阵刻画各维度之间的误差波动、相关性。协方差矩阵对角线是各状态自身噪声方差,非对角线元素代表位置、速度之间的耦合误差。
两类噪声均为零均值高斯白噪声
过程噪声Q:车辆动力学模型与真实行驶行为的偏差,对应物理模型不确定性;
观测噪声R:传感器测距、识别带来的观测误差;
高斯分布具备线性变换后仍保持高斯分布的数学特性,因此整套滤波仅通过均值、协方差两个参数,就能完整描述全部状态分布,无需存储海量采样点,计算开销极低,适配车载嵌入式实时推理。
与之对比,蒙特卡洛类方法(粒子滤波)无高斯分布约束,通过大量采样拟合任意分布,但粒子采样带来巨大算力消耗,车载实时场景下延迟更高;卡尔曼以高斯假设为代价,换取轻量化、可实时迭代的状态估计能力。
二、标准双循环框架:预测步+更新步迭代更新状态分布
卡尔曼滤波是闭环迭代算法,每一个时间戳固定执行「预测-更新」两步循环,持续修正车辆状态均值与协方差矩阵,最终输出带不确定性的未来轨迹。
1. 预测步:基于动力学模型推演先验分布
依靠车辆运动学/动力学模型(匀速、匀加速模型),从上一时刻最优状态推演当前时刻预测均值;同时根据过程噪声矩阵Q放大协方差,模拟模型本身带来的不确定性。
这一步仅依靠历史运动规律推演,不引入当前传感器观测,得到的是先验状态分布,协方差会持续变大,代表随时间推移,模型预测的不确定性持续上升。
2. 更新步:融合传感器观测修正后验分布
拿到当前帧相机、雷达观测数据后,计算卡尔曼增益$K$,平衡模型预测与传感器观测两者可信度:观测噪声越小,增益越大,观测值对最终状态修正权重更高;模型噪声越小,则更信任动力学推演结果。
利用卡尔曼增益修正预测均值、收缩协方差矩阵,得到收敛后的后验状态分布,也就是当前时刻最优状态估计。协方差矩阵在更新后缩小,代表观测信息有效降低了状态不确定性。
3. 多步轨迹推演输出不确定性轨迹
若需要预测未来数秒车辆轨迹,仅重复执行预测步:持续基于动力学模型向前推演每一个时间步的均值与协方差矩阵。每向前预测一帧,协方差矩阵持续膨胀,直观体现预测时间越远,车辆行为不确定性越高。最终输出的不是单条轨迹曲线,而是以均值为中心、协方差为置信区间的概率分布带,可直接用于自动驾驶安全风险判定:协方差越大,代表该位置碰撞风险越高。
三、高斯假设的固有边界与工程取舍
卡尔曼滤波整套算法成立的核心前提是所有噪声服从高斯分布,这也是它无法覆盖全部驾驶场景的硬边界:
道路突发切道、急刹、非机动车横穿等非线性突变行为,噪声不再满足高斯分布,卡尔曼滤波会出现严重估计偏差;拓展方案采用扩展卡尔曼EKF、无迹卡尔曼UKF,适配弱非线性场景;强非线性场景则切换粒子滤波等无分布约束算法。
当传感器长时间丢失目标(遮挡、远距离识别失效),更新步无法执行,仅循环预测步,协方差持续无限膨胀,状态估计彻底失效,工程上会设置协方差阈值,超过阈值直接判定目标丢失。
四、工业落地定位
优势:矩阵运算轻量化、无采样开销、内存占用低,完全适配车载MCU、SOC实时计算需求;输出均值+协方差的标准化概率分布,可直接对接风险评估、分位数安全阈值计算模块。
适用场景:高速跟车、常规直行、缓转向等平稳驾驶场景的目标跟踪与短期轨迹预测。
局限:强非线性、极端突变行为下估计精度大幅下降,必须搭配非线性滤波或深度学习轨迹模型做补充。
共勉
所有自动驾驶底层估计算法,本质都是在「算力开销」与「建模精度」之间做取舍。卡尔曼滤波依靠高斯分布的强假设换取实时计算能力,同时用均值、协方差量化不确定性,为安全决策提供概率依据。
学习底层滤波算法不能只背诵五步公式,更要理解假设条件对应的适用边界:清楚高斯假设的优势与短板,才能在工程落地中根据场景选择卡尔曼、UKF或是粒子滤波,避免因模型前提不匹配带来轨迹估计偏差,引发安全隐患。吃透概率化状态估计思路,也是理解自动驾驶风险量化体系的基础。