Hello,
I am trying to use a Kalman filter to smooth a noisy signal. My signal is actually comprised by two components, i.e., my signal has two dimensions, since it represents the coordinates of a device in movement inside a room. By means of some algorithm, I can estimate the coordinates (x, y) of the device. However, I get some "jitter" that I want to remove in order to get smoother data.
I have employed a simple model for the motion of the device:
r(t2) = r(t1) + u(t1)*(t2-t1),
which in a discrete-time domain is equivalent to:
r[k] = r[k-1] + u[k-1],
where:
"r" is the current position (x, y),
"u" is the instantaneous velocity (ux, uy), measured as: u(k-1) = r(k-1) - r(k-2).
If the time step between consecutive samples is small enough, this model should be rather accurate, even if the motion is not uniform, except for a model noise: "w" with variance "Sw".
Starting from the state and measurement equations:
r[k] = Ar[k-1] + Bu[k-1] + w[k-1] {State equation}
z[k] = Hx[k] + v[k] {Measurements}
where "v" is the measurement noise, with variance "Sv", I have derived the time and measurement update equations, from the theory of Kalman filter.
The results obtained so far are good enough, but I am not sure if I have applied correctly the Kalman filter theory for this particular problem.
My questions are:
- Is this model appropriate?
- Is it correct to say that the velocity "u" is my "driving function" or "model input"?
- Since my measurements are already the current positions except for the noises, i.e., there are no transformations, is it correct to assume matrices A, B and H as identity or unit matrices (A = I, B = I, H = I)?
I am getting better results setting, for example, B = 0.7 * I for some particular "Sw" and "Sv", which means that my model should be actually r[k] = r[k-1] + 0.7*u[k-1].
Please, I am not looking for Kalman filter theory books or papers, since I have plenty of them, I need recommendations for this specific problem.
Thank you very much in advance.
Best regards,
Luis M. Gato