# Does position error from accelerometer still build up quadratically when using Kalman filtering?

I want to implement an inertial navigation system that uses a basic IMU for indoor position tracking. From all the things I've read you need to assist the IMU with something like GPS or other means of position sensing since the error in position grows quadratically with time.

I looked into Kalman filtering and am confused why this doesn't fix the issue of quadratic position error. Since youre sensors only measure acceleration and gyro (and maybe magnetic field), you must get position from your estimated state, not from your estimated sensor reading. If this is the case then you update your position state with only the error on the accelerometer each time and not the double integration of the accelerometers past errors, right?

I may be just confused but I feel like Kalman should get rid of the quadratic error.

If this is not the case, then why? And what techniques do people use for reliable indoor position tracking with IMUs?

• It's because you have to double-integrate the sensor data. You have acceleration. You integrate that to get velocity, and then integrate that to get displacement. Any small bias in your data is quadratically compounded. How would a Kalman filter fix that? How could it distinguish between constant, minor acceleration and sensor bias? Jul 10, 2015 at 20:39
• I'm not sure, I have just a basic understanding of Kalman. Jul 10, 2015 at 21:11
• This might be a better fit for dsp.stackexchange.com. I've seen more Kalman filter hits there than here. Jul 10, 2015 at 22:36
• by any chance do you have constant acceleration? are you applying the Kalman filter on the original data THEN integrating that?
– user16222
Jul 10, 2015 at 23:30

No amount fo filtering can correct a contant error that is inherit in your input data.

Assume you are in rest, but your accelerometer gives a reading of a very low constant value X (its error). No amount of filtering will change this.

Integrating this X over time gives your 'speed' t * X, which increases linearly.

Intergrating this speed over time gives your 'position' (1/2) * t^2 * X, which grows quadraticly.

• And, as follows the error in position grows quadratically over the acceleration error, not over time. Jul 10, 2015 at 20:30
• So Kalman filters do not correct for this quadratic error over time? Jul 10, 2015 at 20:31
• How could it? The input data is constant, so how would you filter change that? Jul 10, 2015 at 20:32
• Give it some additional, more precise sensor data, even just part of the time, and the properly designed KAlman filter will correct itself. Jul 10, 2015 at 20:34
• Adding additional data changes the playingfield, the question was "Does position error from accelerometer still build up quadratically when using Kalman filtering?". No additional data mentioned. Jul 10, 2015 at 21:56