3 ms·
> They all seem to be in the style of 'draw the rest of the owl'. You need a linear discrete-time dynamical system model of your process. With the possible add
by sampo 3y ago
> They all seem to be in the style of 'draw the rest of the owl'.
You need a linear discrete-time dynamical system model of your process. With the possible additions of external control action, and process noise. Your dynamical system has an internal state, described as a vector of values. Then you also need a linear model, of how the internal state translates to your observations, plus observation noise.
x – model state
F – linear state transition model: x(t+1) = F x(t)
Q – covariance matrix for process noise, so actually x(t+1) = F x(t) + N(0,Q)
H – linear observation model
R – covariance matrix for observation noise
u, B – external control vector u, and B for how u acts on the model state. Optional.
N(0,Q) is a normal distribution with 0 mean and covariance Q.
For example, in the case of a moving physical object, the model state is
[ x ]
[ v ]
where x is location and v is velocity. (Earlier I used x for the entire model state. Here I use x just for the location.) Then with radar or whatever, you usually only observe the location, and current velocity is unobservable. So your observation model is
[ 1 0 ]
[ 0 0 ]
so that
[ 1 0 ] [ x ] = [ x ]
[ 0 0 ] [ v ] [ 0 ].
This is the owl you need to have, before doing anything with a Kalman filter. You really need to come up with these things on your own, based on what kind of a process you have.
Then Kalman filter tells you, how to best estimate the real state vector at each time step, when both your state transition model, and your observation contains noise.
You are correct, many Kalman filter tutorials are a mess, where the explanation of the parts of the chosen process model, and parts of the Kalman filter, are blended together and the reader has a hard time telling them apart. And quite often they start with the simplest possible example, where the model state is 1-dimensional, i.e. just one number. And where the process model is a constant (no change): x(t+1) = x(t). So F = 1. This can lead even further confusion, what is the dynamical model and what are the parts of the Kalman filter, when the model is so small that it sort of disappears in the equations.
- sampo 3y ago> x – model state F – linear state transition model: x(t+1) = F x(t) Q – covariance matrix for process noise, so actually x(t+1) = F x(t) + N(0,Q) H – linear observation model R – covariance matrix for observation noise u, B – external control vector u, and B for how u acts on the model state. Optional. Better formatting for this part: x – model state F – linear state transition model: x(t+1) = F x(t) Q – covariance matrix for process noise, so actually x(t+1) = F x(t) + N(0,Q) H – linear observation model R – covariance matrix for observation noise u, B – external control vector u, and B for how u acts on the model state. Optional.