Rosanswers logo


I have been using RTABMAP for SLAM with a stereo_camera, and it is working very well. It seems well maitained by the activity on the github page.

Now I am looking to perform the same task with a 3D LIDAR, but I cannot find a package that seems to be maintained. I checked: BLAM (last update 2016) and SegMatch (last update 2017).

Does anyone has a suggestion of a package that I can use? I am using ROS Melodic , but I am willing to migrate to Noetic.

Originally posted by czr on ROS Answers with karma: 5 on 2020-05-12

Post score: 0


1 Answer 1


Rosanswers logo

Rtabmap can use 3D Lidar pretty ok. Cartographer, LegoLoam or hdl_graph_slam are maybe other options for you as they are a bit more up to date.

<node pkg="rtabmap_ros" type="rtabmap" name="rtabmap" output="screen" args="-d">
  <param name="subscribe_rgbd"       type="bool" value="false"/>
  <param name="frame_id"             type="string" value="$(arg frame_id)"/>
  <param name="subscribe_depth"      type="bool" value="false"/>
  <param name="subscribe_rgb"        type="bool" value="false"/>
  <param name="subscribe_scan_cloud" type="bool" value="true"/>
  <param name="approx_sync"          type="bool" value="true"/>
  <remap from="scan_cloud" to="/os1_cloud_node/points"/>
  <remap from="grid_map" to="/map"/>

  <!-- RTAB-Map's parameters -->
  <param name="Rtabmap/DetectionRate"          type="string" value="1"/>
  <param name="RGBD/NeighborLinkRefining"      type="string" value="false"/>
  <param name="RGBD/ProximityMaxGraphDepth"    type="string" value="0"/>
  <param name="RGBD/ProximityPathMaxNeighbors" type="string" value="1"/>
  <param name="RGBD/AngularUpdate"             type="string" value="0.05"/>
  <param name="Mem/NotLinkedNodesKept"         type="string" value="false"/>
  <param name="Mem/STMSize"                    type="string" value="30"/>

  <param name="Reg/Strategy"                   type="string" value="1"/>
  <param name="Grid/CellSize"                  type="string" value="0.2"/>
  <param name="Grid/RangeMax"                  type="string" value="20"/>
  <param name="Grid/ClusterRadius"             type="string" value="1"/>
  <param name="Grid/GroundIsObstacle"          type="string" value="false"/>
  <param name="Grid/RayTracing"                type="string" value="true"/>
  <param name="Grid/3D"                        type="string" value="false"/>
  <param name="Grid/MaxObstacleHeight"         type="string" value="1.5"/>


Originally posted by bob-ROS with karma: 525 on 2020-05-12

This answer was ACCEPTED on the original site

Post score: 4

Original comments

Comment by stevemacenski on 2020-05-12:
I've heard recommendations for HDL.

Comment by czr on 2020-05-12:
Thank you. Can I use a LIDAR standalone on Rtabmap? I though that I needed a stereo camera or a depth camera in parallel.

Comment by bob-ROS on 2020-05-13:
I updated my answer with the config I used for a OS1-16 channel LiDAR.

Comment by czr on 2020-05-25:
Thanks for your answer, I created a launch file based on your example, but I cannot get the /cloud_map and /cloud_ground topics. They get published but /cloud_ground yields an empty cloud while /cloud_map seems to have data, but nothing shows up in Rviz. I used the same RTAB-Map's parameters that I used for my stereo camera setup.

Comment by bob-ROS on 2020-05-25:
Hm, I dunno. Should probably ask a new question, I've never used the ground from rtabmap, only the 2D grid_map.


Your Answer

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