In the field of engineering, when it comes to signal processing, we always think of Kalman. Although it’s been nine decades since the estimation theory was proposed by Kalman, in today’s information era, Kalman Filtering Algorithm is still the most common algorithm in robot navigation.
We all know that both autonomous vehicles and autonomous unmanned aerial vehicles need to know their position, speed, heading and other information to realize autonomous and autonomous flight. Then how do we get the information of these positions, speeds and heading? Generally, there are two forms: one is measured by sensors, and the other is estimated by motion state model.
There are many ways of sensor measurement, such as GPS, Vision Sensor, radar and so on. However, we all know that there is an error in the data measured by the sensor. If you have a sensor GPS, the GPS information you get at this time: longitude, latitude, height and actual value are in error, however, if this error just conforms to the normal distribution, an optimal solution can be obtained through Kalman estimation.
If you have two sensors that measure the same position signal, but their readings are different every time, what should you do? The most intuitive method is to take the average value, but if you know that one of the sensors is much more expensive and the measured value should be more accurate, is it unfair to the expensive sensor to take the average value? Is there a better way? Of course, that is the average of different weights, that is, the weighted average.
How to weight? We still assume that the errors of the two sensors conform to the normal distribution, and you know the variance of the two normal distributions through measurement, using the difference between the two, we can get an “optimal” weight distribution. When we have multiple sensors to measure the same state, the method is the same.
As mentioned above, in addition to sensors that can measure our state quantity, there is another way to estimate by motion model, for example, knowing the position of the plane in a second, and the movement speed of the aircraft in this second, can we get the position change of the aircraft in this second according to the simplest δ p = v * t, you can know the current position information of the plane by stacking the position of the plane for one second. However, the values calculated by the mathematical model are not so accurate. At this time, we can carry out Weighted average between the values calculated by the mathematical model and those measured by sensors.
Kalman filtering is a kind of minimum variance unbiased estimation, which requires noise error to meet normal distribution. However, in actual environment, most noise errors can be approximately normal distribution, this is also the reason why Kalman filter works well. The biggest defect of Kalman filter is that it is only applicable to linear systems, while most of the actual objects are nonlinear systems. For nonlinear systems, on the basis of Kalman filtering, an Extended Kalman filtering algorithm is derived. The two algorithms are basically the same in principle, and the two algorithms are basically the same in principle.