7

In what ways is a Kalman filter a filter? I think about a filter like a system that takes an input signal and outputs a signal with certain missing components from the input. With this understanding of a filter, I don't quite understand why a Kalman filter is a filter. What exactly is being filtered by a Kalman filter?

TheBaj
  • 195
  • 3
    It's supposed to remove noise. I think that sounds quite like a filter. – Tunococ Sep 29 '15 at 12:38
  • 1
    the word filter in "Kalman filter" is because under certain conditions, the solution really is a filter (linear and time-invariant) – reuns May 27 '16 at 16:38

5 Answers5

4

A Kalman Filter is a filter in the same sense as that used by the air defence system for the UK in the WW2 "filter room" where radar data from multiple sources was combined to form a tactical picture.

From the relevant Wikipedia page:

Radar detection of objects at that time was at its early stages of development and there was a need for a method to combine the different radar information gathered from different stations.

Accurate details of incoming or outgoing aircraft were obtained by combining overlapping reports from adjacent radar stations and then collating and correcting them. This process of combining information was called "filtering" and took place in seven Filter Rooms.

  • So it has nothing to do with a traditional signal filter? – TheBaj Sep 29 '15 at 12:45
  • 3
    Yes and no, A filter room (and a Kalman filter) is a mixer, it combines information to obtain a better estimate of the state of the world. In doing so it at the same time rejects noise. I'm afraid natural language is usually ambiguous like that. – Conrad Turner Sep 29 '15 at 12:48
3

An elementary way of seeing it is that the Kalman Filter smoothes the trajectory of the variable given by the noisy measurements to make it approximate the real (non-zigzagging) trajectory. The spectrum of the Kalman-Filtered variable will be attenuated for higher frequencies, just as it will be after using a low-pass filter.

Kalman Filter predction of the variable

0

For a system $\dot{x}=Ax + Bu, y=Cx$, it simply creates a linear filter (or generally linear system) to fuse the two signals $u$ and $y$ to create an estimate of $x$. If you transform the resulting state-space description of the Kalman filter, you can write it in the form $\hat{X}(s) = F(s)Y(s) + H(s)U(s)$, and look at $F(s)$ and $H(s)$ the way you probably are accustomed to (low-pass, notch etc. depending on the noise model)

Johan Löfberg
  • 9,497
  • 1
  • 15
  • 15
0

The Kalman filter processes noisy data and provides an estimated state that is more accurate than any single measurement (when the filter is working properly). It does this by combining the measurements coming into the filter with a pre-chosen model for the time-evolution of the state. Although a couple of answers here talk about multiple sensors, the Kalman filter works just fine for a single sensor and is still a "filter" in the sense of reducing noise. It can be used for multiple sensors, but that's not really the main point for answering your question.

In signal processing terminology, it is also a filter in the sense that it uses data from past time to estimate current and future states. This would be in contrast to, say, smoothing, which attempts to refine an estimate in the past using data that arrive before and after the time where you're doing the smoothing.

Brick
  • 1,345
0

The noise is filtered out when using Kalman filters.

EDIT with more details:

A covariance matrix of a column vector is always symmetric (see proof here).

This means that it can be diagonalised using an orthonormal basis.

This applies also to error covariance matrices as used in the Kalman filter algorithm.

By changing coordinates through a rotation a decoupling of error contributions is achieved. The basis vectors are the eigenvectors and form the axes of error ellipses.