Closed brayanpa closed 6 months ago
If RGBD/OptimizeMaxError
needs to be 0 to accept the first localization, there is already something wrong. There should be an error/warning about localization rejected because error is too high.
You could play with RGBD/LocalizationPriorError
, RGBD/MaxOdomCacheSize
and RGBD/LocalizationSmoothing
parameters instead. It is strange though that rtabmap would need to be restarted. I've seen this problem when a different robot than the one used for mapping had slightly camera calibration scale issue, then in some spots in the map that error would happen, but the robot would eventually get a localization accepted when moving to another zone.
To disable localization optimization based on multiple constraints, set RGBD/MaxOdomCacheSize
to 0. The robot may jump more though, as it won't be constrained by past odometry and loop closure observations.
Parameter RGBD/LocalizationPriorError
was introduced for a similar error. See comment https://github.com/introlab/rtabmap_ros/issues/1057#issuecomment-1793878306
To debug more, I would need the debug log leading to that error (when rtabmap node is launched with --udebug
argument).
After adding a Lidar and changing Reg/Strategy'
to 1 it has not happened again.
Hi Mathieu,
I'm mapping a large environment using multiple sessions. While I have successfully achieved a good map, I am encountering an issue in localization mode: the robot gets sometimes localized very far from the map. After this happens no new location is accepted even with the RGBD/OptimizeMaxError parameter set to 0.0.
This is the error message I'm encountering:
Unfortunately, replicating this issue is challenging as it occurs approximately after 4 hours, and once it happens, rtabmap needs to be restarted. I'm uncertain if it's related, but our odometry (obtained from TF) is good, so we set the covariance as:
I also don't know if it is related but we are modifying the
RGBD/OptimizeMaxError
parameter, it is 0.0 to obtain the initial location faster and after obtaining it we change it to 3.0. We are also using apriltags, but the times it failed the tags were not visible.The commits we are currently using are:
Let me know what other information might be useful or if you have any ideas how we could replicate it, thanks.