当我得到测量噪声为零时,扩展卡尔曼滤波器(EKF)奇异性问题

时间:2018-11-07 08:13:54

标签: matlab noise kalman-filter measurement

我的扩展卡尔曼滤波器(EKF)程序运行良好:即使我给R给出10 ^ -14,当我给测量噪声R任何正定数时,我的估计状态矢量与真实状态矢量相同。

但是我要进行协方差分析,因此我需要将协方差分析的一部分设置为零测量噪声。当我这样做时,我从K= (H*P*H'+R)^-1得到奇异警告(卡尔曼增益是EKF的测量校正部分)。

我检查了特征值和等级。当我得到R = 0时,一些特征值在几秒钟后变成负值,等级从15降低到1。当我得到R> 0时,所有特征值都是正定的,等级变成15到7。如何解决问题,我无法检测到此问题的原因。

我该怎么办?

1 个答案:

答案 0 :(得分:0)

我的意思是给出了初始协方差矩阵和过程噪声矩阵,但测量矩阵为零,以观察测量噪声对估计的协方差矩阵总误差的影响。另外,我用2个选项解决了我的问题。第一个是测量噪声应大于零,也可以接近零。因此,增益不会达到无限。第二个是,如果Gain计算的H P H'部分足够接近零,则无需对Gain进行校正,因为我们不需要对协方差矩阵进行校正,它们非常接近(先验和后验)如果H P H'为零。简要地说,我解决了我的问题。谢谢。