截至目前,我们已经讲述了预测部分的算法,即两个卡尔曼滤波预测方程:
现在开始,我们将讲述当前时刻的算法。先从测量方程开始。
在“一维卡尔曼滤波”一章中,我们把测量值记为 .
测量值表示一个真实系统状态值和测量设备引入的随机测量噪声 的叠加。
测量噪声方差 对每次测量可以是常量 - 比如,精度为0.5kg的秤(标准差)。另一方面方差也可能是变化的 - 例如一个0.5%精度的温度计,其测量噪声方差依赖于当前的测量值(越大越不准)。
矩阵形式的一般情况测量方程如下:
是测量向量 | |
是真实系统状态量(隐藏状态) | |
是随机噪声向量 | |
是 观测矩阵 |
在许多场景中,测量值不是希望获取的系统状态。例如一个数字电子温度计测量到是电流,而系统状态是温度,这隐含了一个从系统状态(输入)到测量值(输出)的变换。
观测矩阵 的意义就是以线性变换的形式,将系统状态变换到测量输出。后面章节会涉及到观测矩阵的使用。
测距仪向目标发射一个信号并接收对应的回波,测量值是发送和接收之间的时间差,系统状态是距离。
这个场景中,我们需要对状态做比例运算(乘以系数):
式中:
是光速
是距离
是测量的时间差
有时只有部分状态可被测量(能观测),而其余的不行。例如下面例子中,第1、3、5个状态是可观的,而第2、4个状态不可观:
有时只能测量部分状态的组合,而不能单独测量每一个状态。例如,一个三角形的三边长是系统状态,但只有其周长可以被测量:
下表明确了测量方程中各个量的维度:
变量 | 描述 | 维度 |
---|---|---|
状态向量 | ||
输出向量 | ||
观测矩阵 | ||
测量噪声向量 |