I am new to SLAM-Toolbox, and seeing the volume of parameters and options is a bit daunting. I have managed to find async map creation parameters for a non-complex area of my home that appear to create a reasonable 1 cm resolution map (moving at 0.05m/s and turning at 0.5rad/s running ROS 2 Humble on Raspberry Pi4 2GB)

(My encoder derived odometry heading is pretty bad, and I have not figured out how to EKF with my MPU9250 IMU.)

SLAM-Toolbox async map of home foyer

I have started to investigate localization in that map, but have the following questions:

  1. slam-toolbox with default params does not output pose very often, and when I return to x,y:0,0 heading:0 I cannot figure out how to obtain the localization pose estimate.
    (My odometry on return to 0,0 h0 is 0.314,-0.448 heading 41 deg)

  2. If I set ceres_loss_function: HuberLoss (suggested for poor odometry) how do I test that it improves my localization?

  3. And more generally, what should I expect for localization accuracy?
    Is 3 or 4 cm position error with 5 to 10 degree heading error an unreasonable goal?

  4. Which are the parameters that control the desired localization accuracy?

Test out and back to 0,0 heading 0 showing last pose and last odometry:

Out and back to 0,0 h0



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.