在某些情况下,让我们回到卡尔曼滤波器方程式:
。x(k+1)=F(k)x(k)+G(k)u(k)+w(k)z(k)=H(k)x(k)+v(k)
简而言之,对于普通香草KF:
必须完全定义。这直接来自系统的微分方程。如果没有,您将遇到双重估计问题(即,估计状态和系统模型)。如果您没有系统的微分方程,那么KF不适合您!F(k)
根据定义, x(k )是未知的。毕竟,如果您知道的话,那将不是一个估计问题!x(k)
控制矢量必须完全定义。在没有附加系统建模的情况下,控制矢量的唯一不确定性可能是AWGN,它可能会合并到过程噪声中。已知矩阵G(k )将控制输入与状态相关联-例如,副翼运动如何影响飞机的侧倾。在数学上,这是KF开发的一部分。u(k)G(k)
w(k)Q(k)Q
H(k)z(k)
但是,传感器的测量结果被AWGN破坏了。 v(k), which, being random noise, is by definition unknown. The statistics of the noise must be known, which is zero mean with covariance R(k). Once again, the covariance may change with time, but for many applications, it is a fixed value. Often, your sensors will have known noise characteristics from the datasheet. Otherwise, it's not too hard to determine the mean and variance of your sensors that you need to use. Yes, this can also be "tuned" empirically.
There are a huge number of "tricks" that can be done to work around the restrictions in a plain vanilla KF, but these are far beyond the scope of this question.
Afterthought:
Whilst googling for "Kalman Filter" results in a million hits, there are a couple of things that I think are worth looking at. The wikipedia page is a too cluttered to learn from effectively :(
On AVR Freaks, there is an "equation free" intro to the Kalman Filter that I wrote some time ago to try to introduce where it is used for real.
If you're not afraid of maths, there are several books worth reading that are at the senior undergraduate/early postgraduate level. Try either Brown and Hwang which includes all the theory and plenty of example systems. The other that comes highly recommended but I have not read is Gelb, which has the distinct advantage of being cheap!