2023-01-15 06:53:09 -08:00
<?xml version="1.0"?>
2013-12-11 00:12:44 +00:00
<launch>
2015-01-23 17:22:39 -05:00
<!-- ROBOT MAPPING VERSION: use this with ROS bag demo_mapping.bag -->
<!-- WARNING : Database is automatically deleted on each startup -->
<!-- See "delete_db_on_start" option below... -->
2013-12-11 00:12:44 +00:00
2015-01-23 17:22:39 -05:00
<!-- Choose visualization -->
2015-01-23 17:48:14 -05:00
<arg name= "rviz" default= "false" />
2023-03-04 14:24:18 -08:00
<arg name= "rtabmap_viz" default= "true" />
2023-01-15 07:00:31 -08:00
2013-12-11 00:12:44 +00:00
<param name= "use_sim_time" type= "bool" value= "True" />
2023-01-15 07:00:31 -08:00
2016-03-13 18:05:27 -04:00
<!-- Localization-only mode -->
<arg name= "localization" default= "false" />
<arg if= "$(arg localization)" name= "rtabmap_args" default= "" />
<arg unless= "$(arg localization)" name= "rtabmap_args" default= "--delete_db_on_start" />
2013-12-11 00:12:44 +00:00
2015-01-23 17:22:39 -05:00
<group ns= "rtabmap" >
<!-- SLAM (robot side) -->
<!-- args: "delete_db_on_start" and "udebug" -->
2023-03-04 14:24:18 -08:00
<node name= "rtabmap" pkg= "rtabmap_slam" type= "rtabmap" output= "screen" args= "$(arg rtabmap_args)" >
2016-03-13 18:05:27 -04:00
<param name= "frame_id" type= "string" value= "base_footprint" />
2015-01-30 15:52:40 -05:00
<param name= "wait_for_transform" type= "bool" value= "true" />
2023-01-15 07:00:31 -08:00
2015-01-23 17:22:39 -05:00
<param name= "subscribe_depth" type= "bool" value= "true" />
2016-03-13 18:05:27 -04:00
<param name= "subscribe_scan" type= "bool" value= "true" />
2023-01-15 07:00:31 -08:00
2018-09-28 15:20:55 -04:00
<!-- As /az3/base_controller/odom topic doesn't provide covariances, we use TF to get odom and we fix the covariance -->
<param name= "odom_frame_id" type= "string" value= "odom" />
<param name= "odom_tf_linear_variance" type= "double" value= "0.001" />
<param name= "odom_tf_angular_variance" type= "double" value= "0.001" />
2015-01-23 17:22:39 -05:00
<remap from= "scan" to= "/jn0/base_scan" />
2013-12-11 00:12:44 +00:00
2016-03-13 18:05:27 -04:00
<remap from= "rgb/image" to= "/data_throttled_image" />
<remap from= "depth/image" to= "/data_throttled_image_depth" />
2015-01-23 17:22:39 -05:00
<remap from= "rgb/camera_info" to= "/data_throttled_camera_info" />
2023-01-15 07:00:31 -08:00
2017-01-05 19:29:13 -05:00
<param name= "rgb/image_transport" type= "string" value= "compressed" />
<param name= "depth/image_transport" type= "string" value= "compressedDepth" />
2023-01-15 07:00:31 -08:00
2015-01-23 17:22:39 -05:00
<!-- RTAB-Map's parameters: do "rosrun rtabmap rtabmap (double-dash)params" to see the list of available parameters. -->
2016-02-19 15:12:13 -05:00
<param name= "RGBD/NeighborLinkRefining" type= "string" value= "true" /> <!-- Do odometry correction with consecutive laser scans -->
2016-03-13 18:05:27 -04:00
<param name= "RGBD/ProximityBySpace" type= "string" value= "true" /> <!-- Local loop closure detection (using estimated position) with locations in WM -->
<param name= "RGBD/ProximityByTime" type= "string" value= "false" /> <!-- Local loop closure detection with locations in STM -->
2017-04-26 14:35:51 -04:00
<param name= "RGBD/ProximityPathMaxNeighbors" type= "string" value= "10" /> <!-- Do also proximity detection by space by merging close scans together. -->
2016-03-13 18:05:27 -04:00
<param name= "Reg/Strategy" type= "string" value= "1" /> <!-- 0=Visual, 1=ICP, 2=Visual+ICP -->
2018-09-28 15:20:55 -04:00
<param name= "Vis/MinInliers" type= "string" value= "12" /> <!-- 3D visual words correspondence distance -->
2016-03-13 18:05:27 -04:00
<param name= "RGBD/OptimizeFromGraphEnd" type= "string" value= "false" /> <!-- Optimize graph from initial node so /map -> /odom transform will be generated -->
2021-02-12 18:44:30 -05:00
<param name= "RGBD/OptimizeMaxError" type= "string" value= "4" /> <!-- Reject any loop closure causing large errors (>3x link's covariance) in the map -->
2018-04-30 13:06:25 -04:00
<param name= "Reg/Force3DoF" type= "string" value= "true" /> <!-- 2D SLAM -->
<param name= "Grid/FromDepth" type= "string" value= "false" /> <!-- Create 2D occupancy grid from laser scan -->
<param name= "Mem/STMSize" type= "string" value= "30" /> <!-- increased to 30 to avoid adding too many loop closures on just seen locations -->
<param name= "RGBD/LocalRadius" type= "string" value= "5" /> <!-- limit length of proximity detections -->
2021-02-12 18:44:30 -05:00
<param name= "Icp/CorrespondenceRatio" type= "string" value= "0.2" /> <!-- minimum scan overlap to accept loop closure -->
<param name= "Icp/PM" type= "string" value= "false" />
<param name= "Icp/PointToPlane" type= "string" value= "false" />
2021-06-27 10:07:19 -04:00
<param name= "Icp/MaxCorrespondenceDistance" type= "string" value= "0.15" />
2021-03-01 11:27:43 -05:00
<param name= "Icp/VoxelSize" type= "string" value= "0.05" />
2023-01-15 07:00:31 -08:00
2016-03-13 18:05:27 -04:00
<!-- localization mode -->
<param if= "$(arg localization)" name= "Mem/IncrementalMemory" type= "string" value= "false" />
<param unless= "$(arg localization)" name= "Mem/IncrementalMemory" type= "string" value= "true" />
<param name= "Mem/InitWMWithAllNodes" type= "string" value= "$(arg localization)" />
2016-02-19 15:12:13 -05:00
</node>
2023-01-15 07:00:31 -08:00
2015-01-23 17:22:39 -05:00
<!-- Visualisation RTAB-Map -->
2023-03-04 14:24:18 -08:00
<node if= "$(arg rtabmap_viz)" pkg= "rtabmap_viz" type= "rtabmap_viz" name= "rtabmap_viz" args= "-d $(find rtabmap_demos)/launch/config/rgbd_gui.ini" output= "screen" >
2016-03-13 18:05:27 -04:00
<param name= "subscribe_depth" type= "bool" value= "true" />
<param name= "subscribe_scan" type= "bool" value= "true" />
<param name= "frame_id" type= "string" value= "base_footprint" />
2015-01-30 15:52:40 -05:00
<param name= "wait_for_transform" type= "bool" value= "true" />
2023-01-15 07:00:31 -08:00
2016-03-13 18:05:27 -04:00
<remap from= "rgb/image" to= "/data_throttled_image" />
<remap from= "depth/image" to= "/data_throttled_image_depth" />
2015-01-23 17:22:39 -05:00
<remap from= "rgb/camera_info" to= "/data_throttled_camera_info" />
2016-03-13 18:05:27 -04:00
<remap from= "scan" to= "/jn0/base_scan" />
<remap from= "odom" to= "/az3/base_controller/odom" />
2023-01-15 07:00:31 -08:00
2016-03-13 18:05:27 -04:00
<param name= "rgb/image_transport" type= "string" value= "compressed" />
2013-12-11 00:12:44 +00:00
<param name= "depth/image_transport" type= "string" value= "compressedDepth" />
2015-01-23 17:22:39 -05:00
</node>
</group>
2023-01-15 07:00:31 -08:00
2015-01-23 17:22:39 -05:00
<!-- Visualisation RVIZ -->
2023-03-04 14:24:18 -08:00
<node if= "$(arg rviz)" pkg= "rviz" type= "rviz" name= "rviz" args= "-d $(find rtabmap_demos)/launch/config/demo_robot_mapping.rviz" output= "screen" />
<node pkg= "nodelet" type= "nodelet" name= "points_xyzrgb" args= "standalone rtabmap_util/point_cloud_xyzrgb" >
2015-01-23 17:22:39 -05:00
<remap from= "rgb/image" to= "/data_throttled_image" />
<remap from= "depth/image" to= "/data_throttled_image_depth" />
<remap from= "rgb/camera_info" to= "/data_throttled_camera_info" />
<remap from= "cloud" to= "voxel_cloud" />
2023-01-15 07:00:31 -08:00
2016-03-13 18:05:27 -04:00
<param name= "rgb/image_transport" type= "string" value= "compressed" />
2015-01-23 17:22:39 -05:00
<param name= "depth/image_transport" type= "string" value= "compressedDepth" />
2023-01-15 07:00:31 -08:00
2015-01-23 17:22:39 -05:00
<param name= "queue_size" type= "int" value= "10" />
<param name= "voxel_size" type= "double" value= "0.01" />
2013-12-11 00:12:44 +00:00
</node>
</launch>