第2章 数学基础回顾:概率论与随机过程
做目标跟踪这些年,我最大的体会是:状态估计的本质,就是跟不确定性打交道。你想想看,雷达回波有噪声,视觉检测有漏检,目标运动还有机动——这些不确定性怎么处理?答案就藏在概率论和随机过程里。
这一章,我们只聊三个核心工具:高斯分布、贝叶斯公式、马尔可夫性质。别小看它们,卡尔曼滤波、粒子滤波、甚至深度学习跟踪,底层逻辑都绕不开这三样。
核心观点:状态估计不是「猜」目标在哪,而是用概率语言描述「目标可能在哪」。高斯分布给形状,贝叶斯公式给更新规则,马尔可夫性质给简化假设。
2.1 高斯分布:状态估计的「默认语言」
为什么高斯分布在跟踪领域这么流行?我个人觉得,原因有三:数学性质好、物理意义明确、计算方便。你想想看,一个目标的位置和速度,用均值表示「最可能在哪」,用协方差表示「不确定度有多大」——这不就是工程师最直观的理解吗?
一维高斯分布的概率密度函数长这样:
p(x) = (1 / √(2πσ²)) · exp(-(x - μ)² / (2σ²))
其中 μ 是均值,σ² 是方差。嗯,这里要注意:方差越大,曲线越「胖」,说明不确定性越高。我在做雷达目标跟踪时,经常用协方差矩阵的对角线元素来评估跟踪质量——对角线越大,说明这个维度的估计越不可信。
扩展到多维,就是多元高斯分布:
p(x) = (1 / √((2π)ⁿ|Σ|)) · exp(-½(x - μ)ᵀΣ⁻¹(x - μ))
这里 Σ 是协方差矩阵,描述各个维度之间的相关性。举个例子,如果目标的位置和速度正相关,说明位置偏大时速度也倾向于偏大——这在匀速运动模型中很常见。
实战技巧:我习惯在初始化跟踪器时,把协方差矩阵设得「宽松」一些。比如位置方差给 10m²,速度方差给 (5m/s)²。这样滤波器一开始不会太「自信」,能更快收敛到真实轨迹。等跟踪稳定了,再让协方差自然收缩。
2.2 贝叶斯公式:状态更新的「灵魂」
贝叶斯公式说白了就是一句话:用观测数据修正先验知识。数学形式很简单:
p(x|z) = p(z|x) · p(x) / p(z)
其中:
- p(x) —— 先验分布:跟踪之前,我们对目标状态的「猜测」
- p(z|x) —— 似然:给定状态 x,观测到 z 的可能性
- p(x|z) —— 后验分布:融合观测后的「修正结果」
- p(z) —— 证据因子:归一化常数,保证概率和为 1
在目标跟踪里,贝叶斯公式的迭代过程就是「预测-更新」循环:
- 预测步骤:用运动模型从 k-1 时刻的后验,推算出 k 时刻的先验
- 更新步骤:用 k 时刻的观测,修正先验得到后验
我曾经在一个多传感器融合项目里踩过坑:两个雷达对同一个目标上报了不同的位置,我直接取平均,结果跟踪效果很差。后来改用贝叶斯融合——把每个传感器的观测建模成似然函数,再乘上先验——效果立竿见影。说白了,贝叶斯公式天然支持多源信息融合,你只需要把每个传感器当成一个独立的似然函数就行。
避坑指南:我曾经在工程中遇到过「先验过于自信」的问题。如果先验协方差设得太小,新观测几乎无法修正状态,导致滤波器对机动目标反应迟钝。建议在初始化时,先验协方差至少比观测噪声大一个数量级。
2.3 马尔可夫性质:让问题「可解」的关键假设
马尔可夫性质的核心思想是:当前状态包含了预测未来所需的全部信息。数学表达为:
p(xₖ | x₁, x₂, ..., xₖ₋₁) = p(xₖ | xₖ₋₁)
换句话说,给定当前状态,过去的历史对未来的预测没有额外帮助。这个假设在目标跟踪中极其重要——它让我们可以把一个复杂的时序问题,拆解成一个个独立的「一步预测」问题。
你想想看,如果没有马尔可夫性质,我们要记住目标从第 1 帧到第 k-1 帧的所有状态,才能预测第 k 帧。这在实际系统中根本不可行。有了这个假设,我们只需要维护当前时刻的状态分布就够了。
在卡尔曼滤波中,马尔可夫性质体现在状态转移方程里:
xₖ = F · xₖ₋₁ + wₖ₋₁
其中 F 是状态转移矩阵,w 是过程噪声。这个方程说:下一时刻的状态,只由当前状态和噪声决定。嗯,这里要注意,马尔可夫性质是一个「近似」——实际目标运动可能有长期相关性(比如规划好的路径),但在大多数跟踪场景下,这个近似足够好。
关键理解:马尔可夫性质 + 贝叶斯公式 = 递归状态估计的基石。前者保证问题可以「递推」,后者给出「如何递推」的数学工具。卡尔曼滤波、扩展卡尔曼滤波、粒子滤波,本质上都是在这个框架下的具体实现。
2.4 三者如何协同工作?
我习惯用一个「三步走」的框架来理解这三者的关系:
| 步骤 | 数学工具 | 作用 |
|---|---|---|
| 1. 状态表示 | 高斯分布 | 用均值和协方差描述「目标在哪」和「有多不确定」 |
| 2. 状态预测 | 马尔可夫性质 | 假设当前状态足以预测未来,简化递推过程 |
| 3. 状态更新 | 贝叶斯公式 | 用观测数据修正预测结果,得到更精确的后验 |
举个例子,假设你在用雷达跟踪一架无人机:
- 高斯分布告诉你:无人机大概在 (100m, 50m) 附近,误差半径约 10m
- 马尔可夫性质让你相信:只要知道当前位置和速度,就能预测下一秒的位置,不需要回看历史轨迹
- 贝叶斯公式帮你把雷达的测距数据融合进来,修正预测结果
这三个工具组合在一起,就构成了状态估计的「黄金三角」。后面的卡尔曼滤波、粒子滤波,本质上都是在这个三角框架下做文章。
个人建议:初学者容易陷入「公式推导」的泥潭,忽略了这些数学工具背后的物理直觉。我建议你先理解「为什么需要这个工具」,再去看「公式怎么推」。比如,先想明白「为什么协方差矩阵能描述不确定性」,再去记多元高斯的表达式——这样学起来事半功倍。
好了,这一章的内容就到这里。数学基础打牢了,后面讲卡尔曼滤波、扩展卡尔曼滤波的时候,你会觉得特别顺畅。