ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Rtabmap reads private parameters and write back public parameters for convenience so that other nodes don't need to know rtabmap node name to modify parameters (at least nodes should be in the same namespace). Rtabmap should copy your private parameters in the public ones. I tried your example:

$ roslaunch test.launch

SUMMARY
========

PARAMETERS
 * /rosdistro: indigo
 * /rosversion: 1.11.21
 * /rtabmap/Grid/DepthMax: 20.0
 * /rtabmap/Grid/DepthMin: 1.0

NODES
  /
    rtabmap (rtabmap_ros/rtabmap)
...
[ INFO] [1509548641.907457423]: Setting RTAB-Map parameter "Grid/DepthMax"="20.0"
[ INFO] [1509548641.908350452]: Setting RTAB-Map parameter "Grid/DepthMin"="1.0"

We can see that rtabmap set the correct parameters. Now for the private and public parameters:

$ rosparam get /Grid/DepthMax
'20.0'

$ rosparam get /rtabmap/Grid/DepthMax
'20.0'

Both are 20. Note that if we want to change this value online, we should change the public one, then call service update_parameters.

The rtabmap_ros/MapCloud plugin has its own parameters, totally independent of rtabmap. Also, Grid/DepthMax will affect cloud_map (PointCloud2) topic, not the cloud shown by rtabmap_ros/MapCloud plugin.

cheers

Mathieu