I'm using the LEO rover gazebo simulator, to simulate the robot on Marsian terain. I'm running rtabmap, to map the world around the rover. The problem I'm running into, is that rtabmap sometimes finds loop closures in wrong locations, which than means, that the map is, on some points wrong, as in, multiple layers and levels,.. Uneven and wrong multiple layer terain

I can also see on the rtabmap graph view, that the robot, on some points, jump to wrong locations for a brief moment.

Jumping on graph

Are there any parameters, that you think could help with this problem, or which parameters should I start with tuning? Maybe, "max distance between points", so that there are no sudden jumps? I was looking at the output of "rtabmap --params", and I couldn't find any that would help.

So far, I have tried: without much success. The output seemed similar to before.

"Odom/FilteringStrategy": "1", (0=No filtering 1=Kalman filtering 2=Particle filtering.)
"Odom/GuessSmoothingDelay": "2",
"Optimizer/Robust": "true",
"RGBD/MaxLoopClosureDistance": "1.0",

Another problem, that is maybe connected to this: In Rviz2, the robot is mapping the world, however, sometimes it goes under the map, As in, the map is generated, and when I drive it over there, it goes under it (it is generated too high). This happens mostly when the robot drives down (in a crater).

Thanks for your help!


1 Answer 1


Just in case somebody has the same problem. It turned out that the problem was the fact that 2 seperate topics were publishing on /odom topic. Namely, rtabmap (the one we want) and diff_drive_controller. Just disabling /tf publishing for it solved the issue.


Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.