You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
And then it is used as timestamp for published messages in the following callbacks:
in publishPose (timer callback)
in callbackCloud (lidar sensor data callback)
Since everything runs in parallel in multiple thread, you get a race condition. For example, by the time the latest LIDAR scan has been processed and is ready to be published, many IMU messages may have been received already, thus causing the published LIDAR stamp look further in time than it actually is.
The consequence is that some of the data DLIO publishes is not reliable.
The text was updated successfully, but these errors were encountered:
For example, let's focus on
this->imu_stamp
:Its value is set in
callbackImu
here:direct_lidar_inertial_odometry/src/dlio/odom.cc
Line 866 in bed8ae3
And then it is used as timestamp for published messages in the following callbacks:
publishPose
(timer callback)callbackCloud
(lidar sensor data callback)Since everything runs in parallel in multiple thread, you get a race condition. For example, by the time the latest LIDAR scan has been processed and is ready to be published, many IMU messages may have been received already, thus causing the published LIDAR stamp look further in time than it actually is.
The consequence is that some of the data DLIO publishes is not reliable.
The text was updated successfully, but these errors were encountered: