I am trying to understand the implementation of EKF. The one thing that’s confusing is the delayed fusion time horizon. After reading through the code, this is what I came up with. But I want to confirm if it’s in even close to being correct.
_imu_buffer_length is decided based on the maximum of each sensor’s delay.
Current time is when you get a sensor data to fuse. And the
delayed fusion time horizon is when you’re applying the correction to the output states.
Ekf::update() loop the states are predicted using
_output_sample_delayed, then the correction is calculated using
_imu_sample_new which is applied to the