当物体运动遵循非线性状态方程或测量值是状态的非线性函数时,使用扩展卡尔曼滤波器。一个简单的例子是在球坐标中计算物体的状态或测量值,例如方位角、仰角和距离。
扩展卡尔曼滤波公式使状态方程线性化。更新后的状态和协方差矩阵仍然是前状态和协方差矩阵的线性函数。然而,线性卡尔曼滤波器中的状态转换矩阵被状态方程的雅可比矩阵所代替。雅可比矩阵不是常数,而是取决于状态本身和时间。要使用扩展卡尔曼滤波器,必须指定状态转换函数和状态转换函数的雅可比矩阵。
假设有一个预测状态的封闭表达式,它是前一个状态、控件、噪声和时间的函数。
预测状态相对于前一状态的雅可比矩阵为
预测状态相对于噪声的雅可比矩阵为
当噪声线性进入状态更新方程时,这些函数的形式更简单:
在这种情况下,F(w)= 1米。
在扩展卡尔曼滤波器中,测量可以是状态和测量噪声的非线性函数。
关于状态的测量的雅可比矩阵是
测量值相对于测量噪声的雅可比矩阵为
当噪声线性进入测量方程时,这些函数的形式更简单:
在这种情况下,H(v)= 1N。
这个扩展的卡尔曼滤波回路几乎是相同的不同之处在于线性卡尔曼滤波器环:
尽可能使用精确的非线性状态更新和测量函数,用状态雅可比矩阵代替状态转换矩阵
测量矩阵被适当的雅可比矩阵所代替。
Sensor Fusion and Tracking Toolbox™提供了扩展卡尔曼滤波中使用的预定义状态更新和测量功能。
运动模型 | 函数名 | 函数的目的 |
---|---|---|
恒定的速度 | constvel |
等速状态更新模型 |
constveljac |
恒定速度状态更新雅可比矩阵 | |
cvmeas |
常速测量模型 | |
cvmeasjac |
常速测量雅可比矩阵 | |
恒定的加速度 | constacc |
恒定加速状态更新模型 |
constaccjac |
恒定加速度状态更新雅可比矩阵 | |
cameas |
恒定加速度测量模型 | |
cameasjac |
恒定加速度测量雅可比 | |
不断的周转周期 | constturn |
恒定转速状态更新模型 |
constturnjac |
恒定转速状态更新雅可比矩阵 | |
ctmeas |
恒转率测量模型 | |
ctmeasjac |
Constant-turnrate测量雅可比矩阵 |