Slow LIDAR

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

Slow LIDAR

brosnanyuen
This post was updated on .
Hello,
I have an orbbec persee outputting a RGBD at 30 Hz. The odometry on the robot is 100 Hz. However, the LIDAR is quite slow. The LIDAR is 1 Hz. If I use the LIDAR with the other sensors will rtabmap publish the /odom to /map transform more slowly?
Is there any other penalties for a slow laser?

I want the /odom to /map transform rate to be at 20 Hz. Is this possible?

Thanks.
Reply | Threaded
Open this post in threaded view
|

Re: Slow LIDAR

matlabbe
Administrator
Hi,

/tf between /map and /odom is published at 20 Hz by default (tf_delay=0.05) independently of the input rate of the topics. The map is however updated at 1 Hz by default (Rtabmap/DetectionRate=1). If the LIDAR publishes slower than 1 Hz, then map update rate will decrease at this rate.

The real problem with a slow LIDAR is that it will be difficult to have a good synchronization between all the input topics. At least if RGBD data is published a lot faster than LIDAR, I recommend to use a rgbd_sync nodelet and use subscribe_rgbd=true for rtabmap node, to make sure that rgb and depth images are precisely synchronized before rtabmap node.

If LIDAR rotation is slow and the robot moves, the resulting scan may drift from the first point and the last point of the scan. rtabmap can use laser_geometry package to interpolate the displacement between the beginning and the end of the scan, parameter "odom_sensor_sync" should be set to true.

cheers,
Mathieu
Reply | Threaded
Open this post in threaded view
|

Re: Slow LIDAR

brosnanyuen
Hi Mathieu,

RGBD is synced since they come from the same node. I am using the Orbbec Persee for 3D mapping.

How exactly does the rgbd_sync nodelet work? What inputs does it take and what parameters does it need?

Even when LIDAR is at 1 Hz rtabmap complains about the laser scan data not being available. How do I sync LIDAR and RGBD?


Thanks
Brosnan Yuen.
Reply | Threaded
Open this post in threaded view
|

Re: Slow LIDAR

matlabbe
Administrator
Hi,

The doc is indeed not up to date for rgbd_sync nodelet. See directly in the rgbd_sync code or this example for usage.

The goal of rgbd_sync is to synchronize camera topics before rtabmap node if rtabmap has to subscribe to other topics not synchronized (like a scan topic), to make sure rgb and registered depth are correctly synchronized. The output is a rtabmap_ros/RGBDImage topic and it would have around the same framerate as the input camera topics. If the frame rate is high (e.g., 30 Hz) and lidar frame rate is low (1 Hz), you should increase queue_size parameter of the nodes subscribing to rgbdimage and lidar (e.g., >30 in case of a 30 Hz->1 Hz ratio). See this page for a brief overview of the ROS synchronization algorithm.

cheers,
Mathieu