How can I estimate the probability of a partial state from a Kalman filter?

835 views Asked by At

I have a Kalman filter tracking a point, with a state vector (x, y, dx/dt, dy/dt).

At a given update, I have a set of candidate points which may correspond to the tracked points. I would like to iterate through these candidates and choose the one most likely to correspond to the tracked point, but only if the probability of that point corresponding to the tracked point is greater than a threshold (e.g. p > 0.5).

Therefore I need to use the covariance and state matrices of the filter to estimate this probability. How can I do this?

Additionally, note that my state vector is four dimensions, but the measurements are in two dimensions (x, y).

2

There are 2 answers

0
Ben Jackson On BEST ANSWER

When you predict the measurements with y = Hx you also compute the covariance of y as H*P*H.T. This property is why we use variance in the Kalman Filter.

The geometrical way to understand how far a given point is from your predicted point is a error ellipse or confidence region. A 95% confidence region is the ellipse scaled to 2*sigma (if that isn't intuitive, you should go read about normal distributions, because that is what the KF thinks it is working on). If the covariance is diagonal, the error ellipse will be axis aligned. If there are co-varying terms (which there may not be if you have not introduced them anywhere via Q or R) then the ellipse will be tilted.

The mathematical way is with the Mahalanobis distance, which just directly formulates the geometrical representation above as a distance. The distance scale is standard deviations, so your P=0.5 corresponds to a distance of 0.67 (again, see normal distributions if this is surprising).

2
Andrey  Smorodov On

The most probable point (I suppose from detections) will be the nearest point to filter prediction.