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

Is it possible to add some extra features on the map developed by the rtabmap_ros package from sensor details.

asked 2016-07-08 07:51:43 -0500

Rohan gravatar image

I am working on a robot to build a map of the indoor environment and i want to add details like(room temperature, gas concentration ) to the 2D map formed in order to to decide the environment of the different parts of the map.

It should be like if the gas sensors sensed some fluctuations in gas level it should note the place where the change took place.

I will get the data published from arduino . I want to know i can add these features to the data so that they can be displayed.

I want to stick with the rviz GUI.

edit retag flag offensive close merge delete


A hacky and unnecessarily expensive solution is to store that kind of data in a costmap (instead of obstacle cost, it would encode the information you want, such as gas concentration). You would then visualize the costmap on top of the actual map in RViz. A simple Occupancy Grid might also work.

spmaniato gravatar image spmaniato  ( 2016-07-08 15:00:48 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2016-07-08 13:28:01 -0500

matlabbe gravatar image

With some coding, you could add these informations in user data field of the nodes. For example, if you set the userDataRaw variable here (cv::Mat myData = ....; data.setUserDataRaw(myData)), it will be saved in the database and sent in output mapData topic. The mapData topic contains the corrected graph and data of the latest node added to map (including your userData, the compressed user data).

Note that user data cannot be used for loop closure detection. To do so, it would require a deep change of the rtabmap library.


edit flag offensive delete link more

Question Tools


Asked: 2016-07-08 07:51:43 -0500

Seen: 191 times

Last updated: Jul 08 '16