Rtabmap not working
I'm using a realsense d435 on a raspberry pi 4 running ROS melodic. If follow the rtabmap tutorials I am able to perform handheld mapping successfully. Now I am trying to set this up on my turtlebot. I have installed the realsense-ros package on the raspberry pi. I imagine that I would run the realsense node on the pi, and then the rtabmap launch file on my remote pc. This results in an error:
rtabmap/rtabmapviz: Did not receive data since 5 seconds! Make sure the input topics are published ("$ rostopic hz mytopic") and the timestamps in their header are set. If topics are coming from different computers, make sure the clocks of the computers are synchronized ("ntpdate"). Parameter "approxsync" is false, which means that input topics should have all the exact timestamp for the callback to be called. /rtabmap/rtabmapviz subscribed to (exact sync): /rtabmap/odom \ /camera/color/imageraw \ /camera/aligneddepthtocolor/imageraw \ /camera/color/camerainfo \ /rtabmap/odom_info
This warning repeats and no map is generated.
I can view the pointcloud data in rviz, so data is definitely being published. Also when I echo the topics I can view the data (not the rtabmap topics but the camera topics). Is there something I am missing?
Asked by liambroek on 2021-02-23 11:10:30 UTC
Answers
try setting approx_sync to true. Could be some of the topics don't have sync'd timesteps. I had an easier time by using rgbd_sync to avoid synchronization issues further.
http://wiki.ros.org/rtabmap_ros#rtabmap_ros.2Frgbd_sync
Asked by mugetsu on 2021-02-23 13:26:17 UTC
Comments
Thanks that helped. Turns out it was a data transfer issue which was causing synchronization issues. Lowered the FPS of the camera, set enable_sync:=true, initial_reset:=true, and increased the queue size of rtabmap and it started to work. It's not great, still some issues, but I think if I mess around with the parameters a little more I should get it running smoothly. This link also helped a bit.
Asked by liambroek on 2021-02-24 05:37:35 UTC
Hello, I'm facing the exact same issue. Ubuntu 18.04 on a remote PC and a raspberry pi 4 communicating through WiFi and a roscore master running on the PC. @liambroek could you please provide some details of how you solve your issue.
Thanks
Asked by bdz on 2021-09-19 15:07:47 UTC
I suggest to use rostopic hz
on topics that are subscribed remotly to see if there is a framerate issue, or just to see if the remote pc can subscribe and receive data from them. Sometimes, if you don't set ROS_IP
properly on both computers, one computer can see the topic in rostopic list
but won't receive data from it.
Asked by matlabbe on 2021-09-20 07:28:01 UTC
Comments