【发布时间】:2016-04-20 07:12:28
【问题描述】:
我最近一直在研究卡尔曼滤波器。肯定涉及很多术语,需要彻底理解才能实现它并很好地优化它。在决定过程误差协方差、过程噪声协方差和测量噪声协方差时,我没有清楚的理解。 误差协方差仍然可以使用,因为它们基本上定义了实际状态和假设/估计状态的不确定性以及状态向量分量的不确定性之间的相关性。这些协方差在每次连续迭代中都会被计算出来,并随着随着时间的推移与实际状态相比估计变得更加准确,逐渐合并到最小值。
对于过程噪声和测量噪声协方差矩阵,我从假设值 3 x 3 单位矩阵作为 Q(HIT AND TRIAL)开始。结果看起来不太乐观,所以我尝试插入这个矩阵:
Q = [(T^5)/20, (T^4)/8, (T^3)/6;
(T^4)/8, (T^3)/3, (T^2)/2;
(T^3)/6, (T^2)/2, T];
(在一些论文中找到了这个矩阵,T是采样时间)
这似乎工作正常并提供了良好的结果。它起作用了,但我不清楚它背后的原因。还尝试了各种其他矩阵,例如:
Q = 0.0001*diag([0.1 0.1 0.1]);
即使这样似乎也取得了不错的效果。我在网上的一些地方读到,为 Q 选择过大的值会导致过滤器行为不端。
请帮助我如何选择“Q”矩阵。是否有一些相同的指导方针。
来到测量噪声协方差矩阵 R,在网上阅读了一下,我决定选择计算噪声协方差作为测量噪声协方差。这又导致了不准确的结果。所以,我不得不屈服于 hit and trial 方法,最终选择 R 作为 [1] 现在这很好用,但我对这种选择值的反复试验方法不满意。
如果有人可以帮助我进行澄清,那就太好了。
谢谢
【问题讨论】:
标签: covariance noise kalman-filter