“Issue: RTAB-Map halts mid-run on rosbag playback (3× D455 + LiDAR)

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

“Issue: RTAB-Map halts mid-run on rosbag playback (3× D455 + LiDAR)

GGYU
multi_robot_mapping_launch.py

The attached file contains the materials I used when running RTAB-Map on rosbag data.




Hello Mathieu,

I’m using ROS 2 Humble. Recently, I’ve been running experiments with RTAB-Map using three Intel RealSense D455 cameras and a LiDAR sensor.

I recorded only the sensor topics into a rosbag file over a large area, then replayed that bag to run RTAB-Map. However, RTAB-Map always stops unexpectedly—often before the bag file finishes—without any clear error. RViz also freezes: the RTAB-Map visualization stops updating the camera topics, although the odometry keeps publishing.

If I run RTAB-Map on the rosbag for each camera individually, all three cameras complete without issue. But as soon as I try two cameras at once, the same stoppage happens. Do you have any suggestions for what might be causing this or how I can work around it?

Thank you for your help!

Best regards,
GGYU
Reply | Threaded
Open this post in threaded view
|

Re: “Issue: RTAB-Map halts mid-run on rosbag playback (3× D455 + LiDAR)

matlabbe
Administrator

Could the timestamps of the cameras drift from each other over time? making impossible to synchronize them after a while. If the cameras were plugged all on same computer, I think realsense has an option to use system time to stamp the frames. Not sure if it should have been enabled by default or explicitly.

Do you have warnings about "Didn't receive frames for 5 seconds" at some point? If the topics are still published, that could indicate that the timestamps drifted apart.

As you have the bag, one manual way to compare timestamps is to open 3 terminals and do `ros2 topic echo /camera1/rgb/image_rect --field header` for each camera, play the bag and when rtabmap starts to hang, pause the bag and check if the last timestamp shown by each camera is close or not.

cheers,
Mathieu