ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
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