Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

There are three covariance matrices. Each with different meanings.
I'm going to use a hypothetical scenario of tracking the 1-D position (left right) of a ball.
Do remember that the value in the cov matrix are standard deviation ^2, or variance, so things look a lot smaller.

  1. Process Noise [input] - This is how uncertain you are about the physical process your kalman filter is estimating. In our example, if the ball is a bowling ball, it's pretty steady, so you'd set this low. If it's a ping-pong ball on sandpaper, you'd set it much higher. If you can take a bunch of really accurate measurements, that's great, but that's not common. It also depends on how many variables you estimate. That example uses position, velocity, and acceleration, so a small uncertainty in each produces a much larger uncertainty in position.
  2. Measurement Noise [input] - This is how accurately you can measure the variables that you measure. In the example, only position is measured. In the ball example, you might be able to track to +/- 1 pixel, so you'd use 1. In the box example, the units are meters, so +/- 1 centimeter isn't very far off.
  3. Covariance [output] - This is how confident the kalman filter is in each estimate that it makes. With every prediction, it grows larger, the amount controlled by the process noise. With every measurement it goes up or down (hopefully down) based on the measurement noise and how close the measurement was to the estimate. You do not set this, except to an initial value.

Hopefully this helps.