|
rtabmap_ros package from rtabmap_ros reportabmap_ros |
Package Summary
| Tags | No category tags. |
| Version | 0.17.6 |
| License | BSD |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/introlab/rtabmap_ros.git |
| VCS Type | git |
| VCS Version | melodic-devel |
| Last Updated | 2018-09-29 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
Package Description
Additional Links
Maintainers
- Mathieu Labbe
Authors
- Mathieu Labbe
rtabmap_ros
RTAB-Map's ROS package.
For more information, demos and tutorials about this package, visit rtabmap_ros page on ROS wiki.
For the RTAB-Map libraries and standalone application, visit RTAB-Map's home page or RTAB-Map's wiki.
Installation
ROS distribution
RTAB-Map is released as binaries in the ROS distribution. * Lunar
$ sudo apt-get install ros-lunar-rtabmap-ros
- Kinetic
$ sudo apt-get install ros-kinetic-rtabmap-ros
- Jade
$ sudo apt-get install ros-jade-rtabmap-ros
- Indigo
$ sudo apt-get install ros-indigo-rtabmap-ros
- Hydro:
$ sudo apt-get install ros-hydro-rtabmap-ros
* Note that rtabmap_ros Hydro binaries are stuck at version 0.8.12. To use the latest version, see [Build from source](https://github.com/introlab/rtabmap_ros#build-from-source) below.
When launching rtabmap_ros's nodes, if you have the error error while loading shared libraries..., add the next line at the end of your ~/.bashrc to fix it:
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ros/kinetic/lib/x86_64-linux-gnu
Build from source
This section shows how to install RTAB-Map ros-pkg on ROS Hydro/Indigo/Jade/Kinetic/Lunar (Catkin build). RTAB-Map works only with the PCL >=1.7, which is the default version installed with ROS Hydro/Indigo/Jade/Kinetic/Lunar (Fuerte and Groovy are not supported).
- The next instructions assume that you have set up your ROS workspace using this tutorial. I will use kinetic prefix for convenience, but it should work with Hydro, Indigo, Jade and Lunar. The workspace path is
~/catkin_wsand your~/.bashrccontains:
$ source /opt/ros/kinetic/setup.bash
$ source ~/catkin_ws/devel/setup.bash
- Required dependencies
- The easiest way to get all them (Qt, PCL, VTK, OpenCV, ...) is to install/uninstall rtabmap binaries:
$ sudo apt-get install ros-kinetic-rtabmap ros-kinetic-rtabmap-ros
$ sudo apt-get remove ros-kinetic-rtabmap ros-kinetic-rtabmap-ros
- Optional dependencies
- If you want SURF/SIFT on Indigo/Jade (Hydro has already SIFT/SURF), you have to build OpenCV from source to have access to nonfree module. Install it in
/usr/local(default) and the rtabmap library should link with it instead of the one installed in ROS.- On Indigo/Jade, I recommend to use latest 2.4 version (2.4.11) and build it from source following these instructions. RTAB-Map can build with OpenCV3+xfeatures2d module, but rtabmap_ros package will have libraries conflict as cv-bridge is depending on OpenCV2. If you want OpenCV3, you should build ros vision-opencv package yourself (and all ros packages depending on it) so it can link on OpenCV3.
- On Kinetic/Lunar, I recommend to use OpenCV3+xfeatures2d module already installed by ROS. You can also install OpenCV2, but rtabmap_ros package will have libraries conflict as cv-bridge is depending on OpenCV3. Thus if you want OpenCV2 on Kinetic/Lunar, you should build ros vision-opencv package yourself (and all ros packages depending on it) so it can link on OpenCV2.
- If you want SURF/SIFT on Indigo/Jade (Hydro has already SIFT/SURF), you have to build OpenCV from source to have access to nonfree module. Install it in
* g2o: Use directly the binaries `ros-kinetic-libg2o`. However, [this g2o version](https://github.com/felixendres/g2o/tree/c++03) (c++03 branch) built from source may be faster than the binaries (install `libsuitesparse-dev` before building `g2o`) and would be [required to avoid some crashes](http://official-rtab-map-forum.67519.x6.nabble.com/ROS-2D-occupancy-grid-tp1204p1215.html). To build RTAB-Map against [latest official g2o version](https://github.com/RainerKuemmerle/g2o) built from source, g2o should be built with `-DBUILD_WITH_MARCH_NATIVE=OFF` to avoid some segmentation faults caused by Eigen.
* [GTSAM](https://collab.cc.gatech.edu/borg/gtsam): Follow installation instructions from [here](https://collab.cc.gatech.edu/borg/gtsam/#quickstart). RTAB-Map needs latest version from source, it will **not build** with 3.2.1. Set cmake variable `GTSAM_USE_SYSTEM_EIGEN=ON` to make sure the same Eigen version is used across all dependencies to avoid crashes.
git clone https://bitbucket.org/gtborg/gtsam.git
- Install RTAB-Map standalone libraries. Add
-DCMAKE_INSTALL_PREFIX=~/catkin_ws/develtocmakecommand below if you want to install in your Catkin's devel folder withoutsudo. Do not clone in your Catkin workspace.
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake .. [<---double dots included]
$ make
$ sudo make install
- Install RTAB-Map ros-pkg in your src folder of your Catkin workspace.
$ cd ~/catkin_ws
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
$ catkin_make -j1
* Use `catkin_make -j1` if compilation requires more RAM than you have (e.g., some files require up to ~1.8 GB to build).
Build from source for Nvidia Jetson with OpenCV 4 Tegra
To use rtabmap_ros on Jetson, you can follow the instructions above if you don't care if OpenCV is built for Tegra. However, if you want rtabmap to use OpenCV 4 Tegra, we must re-build vision_opencv stack from source too to avoid conflicts with vision_opencv stack binaries from ros (which are linked on a not optimized version of OpenCV). Here are the steps:
1. Install JetPack with OpenCV on the Jetson.
2. Do steps 1.2 and 1.3 from http://wiki.ros.org/kinetic/Installation/Ubuntu
3. Install non-opencv dependent ros packages:
* `sudo apt-get install ros-kinetic-ros-base ros-kinetic-image-transport ros-kinetic-tf ros-kinetic-tf-conversions ros-kinetic-eigen-conversions ros-kinetic-laser-geometry ros-kinetic-pcl-conversions ros-kinetic-pcl-ros ros-kinetic-move-base-msgs ros-kinetic-rviz ros-kinetic-octomap-ros ros-kinetic-move-base libhdf5-openmpi-dev libsuitesparse-dev`
- Do step 1.6 from http://wiki.ros.org/kinetic/Installation/Ubuntu
- Create your catkin workspace
- Optional: Install g2o and/or GTSAM dependencies as above (increase visual odometry and graph optimization accuracy).
- To avoid libGL undefined errors:
$ cd /usr/lib/aarch64-linux-gnu/
$ sudo ln -sf tegra/libGL.so libGL.so
- To avoid libvtkproj4 errors:
$ sudo ln -s /usr/lib/aarch64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/libvtkproj4.so
$ sudo ln -s /usr/lib/aarch64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/aarch64-linux-gnu/libvtkproj4-6.2.so.6.2.0
- Install RTAB-Map standalone libraries. Add
-DCMAKE_INSTALL_PREFIX=~/catkin_ws/develtocmakecommand below if you want to install in your Catkin's devel folder withoutsudo. Do not clone in your Catkin workspace.
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake .. [<---double dots included]
$ make
$ sudo make install
- Clone vision_opencv, image_transport_plugins and
rtabmap_rospackages in your catkin_ws:
$ cd ~/catkin_ws
$ git clone https://github.com/ros-perception/vision_opencv src/vision_opencv
$ git clone https://github.com/ros-perception/image_transport_plugins.git src/image_transport_plugins
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros src/rtabmap_ros
$ catkin_make -j2
Update to new version
###########
# rtabmap
###########
$ cd rtabmap
$ git pull origin master
$ cd build
$ make
$ make install
# Do "sudo make install" if you installed rtabmap in "/usr/local"
###########
# rtabmap_ros
###########
$ roscd rtabmap_ros
$ git pull origin master
$ roscd
$ cd ..
$ catkin_make -j1 --pkg rtabmap_ros
Wiki Tutorials
Source Tutorials
Package Dependencies
System Dependencies
| Name |
|---|
| libpcl-all-dev |
Dependant Packages
Launch files
- launch/demo/demo_two_kinects.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- strategy [default: 0]
- feature [default: 6]
- nn [default: 3]
- max_depth [default: 4.0]
- min_inliers [default: 20]
- inlier_distance [default: 0.02]
- local_map [default: 1000]
- odom_info_data [default: true]
- wait_for_transform [default: true]
- launch/demo/demo_turtlebot_mapping.launch
-
- database_path [default: rtabmap.db]
- rgbd_odometry [default: false]
- rtabmapviz [default: false]
- localization [default: false]
- simulation [default: false]
- sw_registered [default: false]
- args [default: ]
- args [default: --delete_db_on_start]
- rgb_topic [default: /camera/rgb/image_raw]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth/image_raw]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- wait_for_transform [default: 0.2]
- launch/demo/demo_turtlebot_tango.launch
-
- database_path [default: rtabmap.db]
- tango_odometry [default: true]
- localization [default: false]
- rtabmapviz [default: false]
- args [default: ]
- args [default: --delete_db_on_start]
- wait_for_transform [default: 0.2]
- launch/demo/demo_stereo_outdoor.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- local_bundle [default: true]
- stereo_sync [default: false]
- launch/demo/demo_multi-session_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- rtabmap_args [default: ]
- launch/demo/demo_appearance_mapping.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_hector_mapping.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- hector [default: true]
- launch/demo/demo_turtlebot_rviz.launch
- Used for visualising the turtlebot while building a map or navigating with the ros navistack.
-
- launch/demo/demo_data_recorder.launch
- launch/demo/demo_find_object.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- save_objects [default: false]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_robot_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_stereo_pr2.launch
- launch/rgbd_mapping_kinect2.launch
-
- resolution [default: qhd]
- frame_id [default: kinect2_base_link]
- rviz [default: false]
- rtabmapviz [default: true]
- rtabmapviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd.rviz]
- gftt_block_size [default: 5]
- gftt_min_distance [default: 5]
- launch/stereo_mapping.launch
-
- rtabmapviz [default: true]
- rviz [default: false]
- localization [default: false]
- rtabmapviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: base_link]
- database_path [default: ~/.ros/rtabmap.db]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: false]
- stereo_namespace [default: /stereo_camera]
- left_image_topic [default: $(arg stereo_namespace)/left/image_rect_color]
- right_image_topic [default: $(arg stereo_namespace)/right/image_rect]
- left_camera_info_topic [default: $(arg stereo_namespace)/left/camera_info]
- right_camera_info_topic [default: $(arg stereo_namespace)/right/camera_info]
- compressed [default: false]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- odom_frame_id [default: ]
- namespace [default: rtabmap]
- wait_for_transform [default: 0.2]
- launch/azimut3/az3_mapping_robot_kinect_only.launch
- launch/azimut3/az3_nav.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/azimut3/az3_mapping_client_stereo_nav.launch
- launch/azimut3/az3_mapping_client.launch
- launch/azimut3/az3_openni.launch
- launch/azimut3/az3_remote_mapping_robot.launch
- launch/azimut3/az3_remote_mapping_rviz.launch
- launch/azimut3/az3_db_record.launch
- launch/azimut3/az3_nav_client.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- sub_data [default: false]
- launch/azimut3/az3_bag_mapping.launch
- launch/azimut3/az3_mapping_robot_kinect_scan.launch
-
- rtabmap_args [default: ]
- localization [default: false]
- launch/azimut3/az3_nav_kinect_odom.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/azimut3/az3_remote_find_object.launch
- launch/azimut3/az3_mapping_robot_kinect_odom.launch
- launch/azimut3/az3_mapping_robot.launch
- launch/azimut3/az3_bag_record.launch
- launch/azimut3/az3_mapping_robot_stereo_nav.launch
- launch/azimut3/az3_nav_kinect-only.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/rtabmap.launch
-
- stereo [default: false]
- rtabmapviz [default: true]
- rviz [default: false]
- localization [default: false]
- use_sim_time [default: false]
- cfg [default: ]
- gui_cfg [default: ~/.ros/rtabmap_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: camera_link]
- odom_frame_id [default: ]
- map_frame_id [default: map]
- ground_truth_frame_id [default: ]
- ground_truth_base_frame_id [default: ]
- namespace [default: rtabmap]
- database_path [default: ~/.ros/rtabmap.db]
- queue_size [default: 10]
- wait_for_transform [default: 0.2]
- args [default: ]
- rtabmap_args [default: $(arg args)]
- launch_prefix [default: ]
- output [default: screen]
- approx_sync [default: false]
- approx_sync [default: true]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- depth_camera_info_topic [default: $(arg camera_info_topic)]
- stereo_namespace [default: /stereo_camera]
- left_image_topic [default: $(arg stereo_namespace)/left/image_rect_color]
- right_image_topic [default: $(arg stereo_namespace)/right/image_rect]
- left_camera_info_topic [default: $(arg stereo_namespace)/left/camera_info]
- right_camera_info_topic [default: $(arg stereo_namespace)/right/camera_info]
- rgbd_sync [default: false]
- approx_rgbd_sync [default: true]
- subscribe_rgbd [default: $(arg rgbd_sync)]
- rgbd_topic [default: rgbd_image]
- depth_scale [default: 1.0]
- compressed [default: false]
- rgb_image_transport [default: compressed]
- depth_image_transport [default: compressedDepth]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- scan_normal_k [default: 0]
- visual_odometry [default: true]
- icp_odometry [default: false]
- odom_topic [default: odom]
- vo_frame_id [default: $(arg odom_topic)]
- odom_tf_angular_variance [default: 1]
- odom_tf_linear_variance [default: 1]
- odom_args [default: ]
- odom_sensor_sync [default: false]
- odom_guess_frame_id [default: ]
- odom_guess_min_translation [default: 0]
- odom_guess_min_rotation [default: 0]
- imu_topic [default: /imu]
- subscribe_user_data [default: false]
- user_data_topic [default: /user_data]
- user_data_async_topic [default: /user_data_async]
- rgb_topic_relay [default: $(arg rgb_topic)_relay]
- rgb_topic_relay [default: $(arg rgb_topic)]
- depth_topic_relay [default: $(arg depth_topic)_relay]
- depth_topic_relay [default: $(arg depth_topic)]
- left_image_topic_relay [default: $(arg left_image_topic)_relay]
- left_image_topic_relay [default: $(arg left_image_topic)]
- right_image_topic_relay [default: $(arg right_image_topic)_relay]
- right_image_topic_relay [default: $(arg right_image_topic)]
- launch/tests/test_rgbd_image.launch
-
- compressed [default: false]
- launch/tests/test_laser_assembler.launch
-
- rtabmap_args [default: --delete_db_on_start --Rtabmap/DetectionRate 0 --RGBD/ProximityBySpace false --RGBD/LinearUpdate 0 --RGBD/AngularUpdate 0 --RGBD/ProximityPathMaxNeighbors 0]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- rtabmapviz [default: true]
- rviz [default: false]
- launch/tests/test_prior.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/tests/test_two_kinects_one_map.launch
- launch/tests/euroc_datasets.launch
-
- args [default: -d --RGBD/CreateOccupancyGrid false]
- cfg [default: ]
- MH_seq [default: false]
- rtabmapviz [default: true]
- rviz [default: false]
- launch/tests/sensor_fusion.launch
-
- frame_id [default: base_link]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- imu_topic [default: /imu/data]
- imu_ignore_acc [default: true]
- imu_remove_gravitational_acceleration [default: true]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/tests/bumblebee.launch
-
- gen_depth [default: false]
- launch/tests/test_icp_odometry.launch
-
- rgbd [default: false]
- pm [default: false]
- nodelet [default: false]
- launch/tests/test_obstacles_detection.launch
- launch/tests/test_rtabmap_nodelets.launch
-
- frame_id [default: camera_link]
- rtabmap_args [default: --delete_db_on_start]
- odom_args [default: $(arg rtabmap_args)]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- launch/tests/sensor_fusion_kinect_brick.launch
-
- localization [default: false]
- uid
- launch/tests/test_pointxyzrgb.launch
- launch/tests/test_undistort_depth.launch
-
- depth [default: /camera/depth_registered/image_raw]
- model [default: $(find rtabmap_ros)/launch/calibration/distortion_model_PS1080.bin]
- launch/tests/test_map_optimizer.launch
- launch/tests/rgbdslam_datasets.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/data_recorder.launch
-
- subscribe_odometry [default: false]
- subscribe_depth [default: true]
- subscribe_stereo [default: false]
- subscribe_rgbd [default: false]
- subscribe_scan [default: false]
- subscribe_scan_cloud [default: false]
- approx_sync [default: false]
- approx_sync [default: true]
- frame_id [default: camera_link]
- odom_frame_id [default: ]
- ground_truth_frame_id [default: ]
- ground_truth_base_frame_id [default: ]
- output_path [default: output.db]
- record_in_RAM [default: false]
- queue_size [default: 10]
- max_rate [default: 0]
- rgb_topic [default: camera/rgb/image_rect_color]
- rgb_info_topic [default: camera/rgb/camera_info]
- depth_topic [default: camera/depth_registered/image_raw]
- left_topic [default: camera/left/image_rect_color]
- left_info_topic [default: camera/left/camera_info]
- right_topic [default: camera/right/image_rect]
- right_info_topic [default: camera/right/camera_info]
- rgbd_topic [default: camera/rgbd_image]
- odom_topic [default: odom]
- scan_topic [default: scan]
- scan_cloud_topic [default: scan_cloud]
- rgb_image_transport [default: raw]
- depth_image_transport [default: raw]
- launch/rgbd_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- localization [default: false]
- rtabmapviz_cfg [default: ~/.ros/rtabmap_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: camera_link]
- database_path [default: ~/.ros/rtabmap.db]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: true]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_registered_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- compressed [default: false]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- odom_frame_id [default: ]
- namespace [default: rtabmap]
- wait_for_transform [default: 0.2]
Messages
Services
Plugins
Recent questions tagged rtabmap_ros at answers.ros.org
|
rtabmap_ros package from rtabmap_ros reportabmap_ros |
Package Summary
| Tags | No category tags. |
| Version | 0.17.6 |
| License | BSD |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/introlab/rtabmap_ros.git |
| VCS Type | git |
| VCS Version | lunar-devel |
| Last Updated | 2018-09-29 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
Package Description
Additional Links
Maintainers
- Mathieu Labbe
Authors
- Mathieu Labbe
rtabmap_ros
RTAB-Map's ROS package.
For more information, demos and tutorials about this package, visit rtabmap_ros page on ROS wiki.
For the RTAB-Map libraries and standalone application, visit RTAB-Map's home page or RTAB-Map's wiki.
Installation
ROS distribution
RTAB-Map is released as binaries in the ROS distribution. * Lunar
$ sudo apt-get install ros-lunar-rtabmap-ros
- Kinetic
$ sudo apt-get install ros-kinetic-rtabmap-ros
- Jade
$ sudo apt-get install ros-jade-rtabmap-ros
- Indigo
$ sudo apt-get install ros-indigo-rtabmap-ros
- Hydro:
$ sudo apt-get install ros-hydro-rtabmap-ros
* Note that rtabmap_ros Hydro binaries are stuck at version 0.8.12. To use the latest version, see [Build from source](https://github.com/introlab/rtabmap_ros#build-from-source) below.
When launching rtabmap_ros's nodes, if you have the error error while loading shared libraries..., add the next line at the end of your ~/.bashrc to fix it:
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ros/kinetic/lib/x86_64-linux-gnu
Build from source
This section shows how to install RTAB-Map ros-pkg on ROS Hydro/Indigo/Jade/Kinetic/Lunar (Catkin build). RTAB-Map works only with the PCL >=1.7, which is the default version installed with ROS Hydro/Indigo/Jade/Kinetic/Lunar (Fuerte and Groovy are not supported).
- The next instructions assume that you have set up your ROS workspace using this tutorial. I will use kinetic prefix for convenience, but it should work with Hydro, Indigo, Jade and Lunar. The workspace path is
~/catkin_wsand your~/.bashrccontains:
$ source /opt/ros/kinetic/setup.bash
$ source ~/catkin_ws/devel/setup.bash
- Required dependencies
- The easiest way to get all them (Qt, PCL, VTK, OpenCV, ...) is to install/uninstall rtabmap binaries:
$ sudo apt-get install ros-kinetic-rtabmap ros-kinetic-rtabmap-ros
$ sudo apt-get remove ros-kinetic-rtabmap ros-kinetic-rtabmap-ros
- Optional dependencies
- If you want SURF/SIFT on Indigo/Jade (Hydro has already SIFT/SURF), you have to build OpenCV from source to have access to nonfree module. Install it in
/usr/local(default) and the rtabmap library should link with it instead of the one installed in ROS.- On Indigo/Jade, I recommend to use latest 2.4 version (2.4.11) and build it from source following these instructions. RTAB-Map can build with OpenCV3+xfeatures2d module, but rtabmap_ros package will have libraries conflict as cv-bridge is depending on OpenCV2. If you want OpenCV3, you should build ros vision-opencv package yourself (and all ros packages depending on it) so it can link on OpenCV3.
- On Kinetic/Lunar, I recommend to use OpenCV3+xfeatures2d module already installed by ROS. You can also install OpenCV2, but rtabmap_ros package will have libraries conflict as cv-bridge is depending on OpenCV3. Thus if you want OpenCV2 on Kinetic/Lunar, you should build ros vision-opencv package yourself (and all ros packages depending on it) so it can link on OpenCV2.
- If you want SURF/SIFT on Indigo/Jade (Hydro has already SIFT/SURF), you have to build OpenCV from source to have access to nonfree module. Install it in
* g2o: Use directly the binaries `ros-kinetic-libg2o`. However, [this g2o version](https://github.com/felixendres/g2o/tree/c++03) (c++03 branch) built from source may be faster than the binaries (install `libsuitesparse-dev` before building `g2o`) and would be [required to avoid some crashes](http://official-rtab-map-forum.67519.x6.nabble.com/ROS-2D-occupancy-grid-tp1204p1215.html). To build RTAB-Map against [latest official g2o version](https://github.com/RainerKuemmerle/g2o) built from source, g2o should be built with `-DBUILD_WITH_MARCH_NATIVE=OFF` to avoid some segmentation faults caused by Eigen.
* [GTSAM](https://collab.cc.gatech.edu/borg/gtsam): Follow installation instructions from [here](https://collab.cc.gatech.edu/borg/gtsam/#quickstart). RTAB-Map needs latest version from source, it will **not build** with 3.2.1. Set cmake variable `GTSAM_USE_SYSTEM_EIGEN=ON` to make sure the same Eigen version is used across all dependencies to avoid crashes.
git clone https://bitbucket.org/gtborg/gtsam.git
- Install RTAB-Map standalone libraries. Add
-DCMAKE_INSTALL_PREFIX=~/catkin_ws/develtocmakecommand below if you want to install in your Catkin's devel folder withoutsudo. Do not clone in your Catkin workspace.
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake .. [<---double dots included]
$ make
$ sudo make install
- Install RTAB-Map ros-pkg in your src folder of your Catkin workspace.
$ cd ~/catkin_ws
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
$ catkin_make -j1
* Use `catkin_make -j1` if compilation requires more RAM than you have (e.g., some files require up to ~1.8 GB to build).
Build from source for Nvidia Jetson with OpenCV 4 Tegra
To use rtabmap_ros on Jetson, you can follow the instructions above if you don't care if OpenCV is built for Tegra. However, if you want rtabmap to use OpenCV 4 Tegra, we must re-build vision_opencv stack from source too to avoid conflicts with vision_opencv stack binaries from ros (which are linked on a not optimized version of OpenCV). Here are the steps:
1. Install JetPack with OpenCV on the Jetson.
2. Do steps 1.2 and 1.3 from http://wiki.ros.org/kinetic/Installation/Ubuntu
3. Install non-opencv dependent ros packages:
* `sudo apt-get install ros-kinetic-ros-base ros-kinetic-image-transport ros-kinetic-tf ros-kinetic-tf-conversions ros-kinetic-eigen-conversions ros-kinetic-laser-geometry ros-kinetic-pcl-conversions ros-kinetic-pcl-ros ros-kinetic-move-base-msgs ros-kinetic-rviz ros-kinetic-octomap-ros ros-kinetic-move-base libhdf5-openmpi-dev libsuitesparse-dev`
- Do step 1.6 from http://wiki.ros.org/kinetic/Installation/Ubuntu
- Create your catkin workspace
- Optional: Install g2o and/or GTSAM dependencies as above (increase visual odometry and graph optimization accuracy).
- To avoid libGL undefined errors:
$ cd /usr/lib/aarch64-linux-gnu/
$ sudo ln -sf tegra/libGL.so libGL.so
- To avoid libvtkproj4 errors:
$ sudo ln -s /usr/lib/aarch64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/libvtkproj4.so
$ sudo ln -s /usr/lib/aarch64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/aarch64-linux-gnu/libvtkproj4-6.2.so.6.2.0
- Install RTAB-Map standalone libraries. Add
-DCMAKE_INSTALL_PREFIX=~/catkin_ws/develtocmakecommand below if you want to install in your Catkin's devel folder withoutsudo. Do not clone in your Catkin workspace.
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake .. [<---double dots included]
$ make
$ sudo make install
- Clone vision_opencv, image_transport_plugins and
rtabmap_rospackages in your catkin_ws:
$ cd ~/catkin_ws
$ git clone https://github.com/ros-perception/vision_opencv src/vision_opencv
$ git clone https://github.com/ros-perception/image_transport_plugins.git src/image_transport_plugins
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros src/rtabmap_ros
$ catkin_make -j2
Update to new version
###########
# rtabmap
###########
$ cd rtabmap
$ git pull origin master
$ cd build
$ make
$ make install
# Do "sudo make install" if you installed rtabmap in "/usr/local"
###########
# rtabmap_ros
###########
$ roscd rtabmap_ros
$ git pull origin master
$ roscd
$ cd ..
$ catkin_make -j1 --pkg rtabmap_ros
Wiki Tutorials
Source Tutorials
Package Dependencies
System Dependencies
| Name |
|---|
| libpcl-all-dev |
Dependant Packages
Launch files
- launch/demo/demo_two_kinects.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- strategy [default: 0]
- feature [default: 6]
- nn [default: 3]
- max_depth [default: 4.0]
- min_inliers [default: 20]
- inlier_distance [default: 0.02]
- local_map [default: 1000]
- odom_info_data [default: true]
- wait_for_transform [default: true]
- launch/demo/demo_turtlebot_mapping.launch
-
- database_path [default: rtabmap.db]
- rgbd_odometry [default: false]
- rtabmapviz [default: false]
- localization [default: false]
- simulation [default: false]
- sw_registered [default: false]
- args [default: ]
- args [default: --delete_db_on_start]
- rgb_topic [default: /camera/rgb/image_raw]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth/image_raw]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- wait_for_transform [default: 0.2]
- launch/demo/demo_turtlebot_tango.launch
-
- database_path [default: rtabmap.db]
- tango_odometry [default: true]
- localization [default: false]
- rtabmapviz [default: false]
- args [default: ]
- args [default: --delete_db_on_start]
- wait_for_transform [default: 0.2]
- launch/demo/demo_stereo_outdoor.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- local_bundle [default: true]
- stereo_sync [default: false]
- launch/demo/demo_multi-session_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- rtabmap_args [default: ]
- launch/demo/demo_appearance_mapping.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_hector_mapping.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- hector [default: true]
- launch/demo/demo_turtlebot_rviz.launch
- Used for visualising the turtlebot while building a map or navigating with the ros navistack.
-
- launch/demo/demo_data_recorder.launch
- launch/demo/demo_find_object.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- save_objects [default: false]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_robot_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_stereo_pr2.launch
- launch/rgbd_mapping_kinect2.launch
-
- resolution [default: qhd]
- frame_id [default: kinect2_base_link]
- rviz [default: false]
- rtabmapviz [default: true]
- rtabmapviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd.rviz]
- gftt_block_size [default: 5]
- gftt_min_distance [default: 5]
- launch/stereo_mapping.launch
-
- rtabmapviz [default: true]
- rviz [default: false]
- localization [default: false]
- rtabmapviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: base_link]
- database_path [default: ~/.ros/rtabmap.db]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: false]
- stereo_namespace [default: /stereo_camera]
- left_image_topic [default: $(arg stereo_namespace)/left/image_rect_color]
- right_image_topic [default: $(arg stereo_namespace)/right/image_rect]
- left_camera_info_topic [default: $(arg stereo_namespace)/left/camera_info]
- right_camera_info_topic [default: $(arg stereo_namespace)/right/camera_info]
- compressed [default: false]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- odom_frame_id [default: ]
- namespace [default: rtabmap]
- wait_for_transform [default: 0.2]
- launch/azimut3/az3_mapping_robot_kinect_only.launch
- launch/azimut3/az3_nav.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/azimut3/az3_mapping_client_stereo_nav.launch
- launch/azimut3/az3_mapping_client.launch
- launch/azimut3/az3_openni.launch
- launch/azimut3/az3_remote_mapping_robot.launch
- launch/azimut3/az3_remote_mapping_rviz.launch
- launch/azimut3/az3_db_record.launch
- launch/azimut3/az3_nav_client.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- sub_data [default: false]
- launch/azimut3/az3_bag_mapping.launch
- launch/azimut3/az3_mapping_robot_kinect_scan.launch
-
- rtabmap_args [default: ]
- localization [default: false]
- launch/azimut3/az3_nav_kinect_odom.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/azimut3/az3_remote_find_object.launch
- launch/azimut3/az3_mapping_robot_kinect_odom.launch
- launch/azimut3/az3_mapping_robot.launch
- launch/azimut3/az3_bag_record.launch
- launch/azimut3/az3_mapping_robot_stereo_nav.launch
- launch/azimut3/az3_nav_kinect-only.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/rtabmap.launch
-
- stereo [default: false]
- rtabmapviz [default: true]
- rviz [default: false]
- localization [default: false]
- use_sim_time [default: false]
- cfg [default: ]
- gui_cfg [default: ~/.ros/rtabmap_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: camera_link]
- odom_frame_id [default: ]
- map_frame_id [default: map]
- ground_truth_frame_id [default: ]
- ground_truth_base_frame_id [default: ]
- namespace [default: rtabmap]
- database_path [default: ~/.ros/rtabmap.db]
- queue_size [default: 10]
- wait_for_transform [default: 0.2]
- args [default: ]
- rtabmap_args [default: $(arg args)]
- launch_prefix [default: ]
- output [default: screen]
- approx_sync [default: false]
- approx_sync [default: true]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- depth_camera_info_topic [default: $(arg camera_info_topic)]
- stereo_namespace [default: /stereo_camera]
- left_image_topic [default: $(arg stereo_namespace)/left/image_rect_color]
- right_image_topic [default: $(arg stereo_namespace)/right/image_rect]
- left_camera_info_topic [default: $(arg stereo_namespace)/left/camera_info]
- right_camera_info_topic [default: $(arg stereo_namespace)/right/camera_info]
- rgbd_sync [default: false]
- approx_rgbd_sync [default: true]
- subscribe_rgbd [default: $(arg rgbd_sync)]
- rgbd_topic [default: rgbd_image]
- depth_scale [default: 1.0]
- compressed [default: false]
- rgb_image_transport [default: compressed]
- depth_image_transport [default: compressedDepth]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- scan_normal_k [default: 0]
- visual_odometry [default: true]
- icp_odometry [default: false]
- odom_topic [default: odom]
- vo_frame_id [default: $(arg odom_topic)]
- odom_tf_angular_variance [default: 1]
- odom_tf_linear_variance [default: 1]
- odom_args [default: ]
- odom_sensor_sync [default: false]
- odom_guess_frame_id [default: ]
- odom_guess_min_translation [default: 0]
- odom_guess_min_rotation [default: 0]
- imu_topic [default: /imu]
- subscribe_user_data [default: false]
- user_data_topic [default: /user_data]
- user_data_async_topic [default: /user_data_async]
- rgb_topic_relay [default: $(arg rgb_topic)_relay]
- rgb_topic_relay [default: $(arg rgb_topic)]
- depth_topic_relay [default: $(arg depth_topic)_relay]
- depth_topic_relay [default: $(arg depth_topic)]
- left_image_topic_relay [default: $(arg left_image_topic)_relay]
- left_image_topic_relay [default: $(arg left_image_topic)]
- right_image_topic_relay [default: $(arg right_image_topic)_relay]
- right_image_topic_relay [default: $(arg right_image_topic)]
- launch/tests/test_rgbd_image.launch
-
- compressed [default: false]
- launch/tests/test_laser_assembler.launch
-
- rtabmap_args [default: --delete_db_on_start --Rtabmap/DetectionRate 0 --RGBD/ProximityBySpace false --RGBD/LinearUpdate 0 --RGBD/AngularUpdate 0 --RGBD/ProximityPathMaxNeighbors 0]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- rtabmapviz [default: true]
- rviz [default: false]
- launch/tests/test_prior.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/tests/test_two_kinects_one_map.launch
- launch/tests/euroc_datasets.launch
-
- args [default: -d --RGBD/CreateOccupancyGrid false]
- cfg [default: ]
- MH_seq [default: false]
- rtabmapviz [default: true]
- rviz [default: false]
- launch/tests/sensor_fusion.launch
-
- frame_id [default: base_link]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- imu_topic [default: /imu/data]
- imu_ignore_acc [default: true]
- imu_remove_gravitational_acceleration [default: true]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/tests/bumblebee.launch
-
- gen_depth [default: false]
- launch/tests/test_icp_odometry.launch
-
- rgbd [default: false]
- pm [default: false]
- nodelet [default: false]
- launch/tests/test_obstacles_detection.launch
- launch/tests/test_rtabmap_nodelets.launch
-
- frame_id [default: camera_link]
- rtabmap_args [default: --delete_db_on_start]
- odom_args [default: $(arg rtabmap_args)]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- launch/tests/sensor_fusion_kinect_brick.launch
-
- localization [default: false]
- uid
- launch/tests/test_pointxyzrgb.launch
- launch/tests/test_undistort_depth.launch
-
- depth [default: /camera/depth_registered/image_raw]
- model [default: $(find rtabmap_ros)/launch/calibration/distortion_model_PS1080.bin]
- launch/tests/test_map_optimizer.launch
- launch/tests/rgbdslam_datasets.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/data_recorder.launch
-
- subscribe_odometry [default: false]
- subscribe_depth [default: true]
- subscribe_stereo [default: false]
- subscribe_rgbd [default: false]
- subscribe_scan [default: false]
- subscribe_scan_cloud [default: false]
- approx_sync [default: false]
- approx_sync [default: true]
- frame_id [default: camera_link]
- odom_frame_id [default: ]
- ground_truth_frame_id [default: ]
- ground_truth_base_frame_id [default: ]
- output_path [default: output.db]
- record_in_RAM [default: false]
- queue_size [default: 10]
- max_rate [default: 0]
- rgb_topic [default: camera/rgb/image_rect_color]
- rgb_info_topic [default: camera/rgb/camera_info]
- depth_topic [default: camera/depth_registered/image_raw]
- left_topic [default: camera/left/image_rect_color]
- left_info_topic [default: camera/left/camera_info]
- right_topic [default: camera/right/image_rect]
- right_info_topic [default: camera/right/camera_info]
- rgbd_topic [default: camera/rgbd_image]
- odom_topic [default: odom]
- scan_topic [default: scan]
- scan_cloud_topic [default: scan_cloud]
- rgb_image_transport [default: raw]
- depth_image_transport [default: raw]
- launch/rgbd_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- localization [default: false]
- rtabmapviz_cfg [default: ~/.ros/rtabmap_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: camera_link]
- database_path [default: ~/.ros/rtabmap.db]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: true]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_registered_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- compressed [default: false]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- odom_frame_id [default: ]
- namespace [default: rtabmap]
- wait_for_transform [default: 0.2]
Messages
Services
Plugins
Recent questions tagged rtabmap_ros at answers.ros.org
|
rtabmap_ros package from rtabmap_ros reportabmap_ros |
Package Summary
| Tags | No category tags. |
| Version | 0.17.6 |
| License | BSD |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/introlab/rtabmap_ros.git |
| VCS Type | git |
| VCS Version | kinetic-devel |
| Last Updated | 2018-09-29 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
Package Description
Additional Links
Maintainers
- Mathieu Labbe
Authors
- Mathieu Labbe
rtabmap_ros
RTAB-Map's ROS package.
For more information, demos and tutorials about this package, visit rtabmap_ros page on ROS wiki.
For the RTAB-Map libraries and standalone application, visit RTAB-Map's home page or RTAB-Map's wiki.
Installation
ROS distribution
RTAB-Map is released as binaries in the ROS distribution. * Lunar
$ sudo apt-get install ros-lunar-rtabmap-ros
- Kinetic
$ sudo apt-get install ros-kinetic-rtabmap-ros
- Jade
$ sudo apt-get install ros-jade-rtabmap-ros
- Indigo
$ sudo apt-get install ros-indigo-rtabmap-ros
- Hydro:
$ sudo apt-get install ros-hydro-rtabmap-ros
* Note that rtabmap_ros Hydro binaries are stuck at version 0.8.12. To use the latest version, see [Build from source](https://github.com/introlab/rtabmap_ros#build-from-source) below.
When launching rtabmap_ros's nodes, if you have the error error while loading shared libraries..., add the next line at the end of your ~/.bashrc to fix it:
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ros/kinetic/lib/x86_64-linux-gnu
Build from source
This section shows how to install RTAB-Map ros-pkg on ROS Hydro/Indigo/Jade/Kinetic/Lunar (Catkin build). RTAB-Map works only with the PCL >=1.7, which is the default version installed with ROS Hydro/Indigo/Jade/Kinetic/Lunar (Fuerte and Groovy are not supported).
- The next instructions assume that you have set up your ROS workspace using this tutorial. I will use kinetic prefix for convenience, but it should work with Hydro, Indigo, Jade and Lunar. The workspace path is
~/catkin_wsand your~/.bashrccontains:
$ source /opt/ros/kinetic/setup.bash
$ source ~/catkin_ws/devel/setup.bash
- Required dependencies
- The easiest way to get all them (Qt, PCL, VTK, OpenCV, ...) is to install/uninstall rtabmap binaries:
$ sudo apt-get install ros-kinetic-rtabmap ros-kinetic-rtabmap-ros
$ sudo apt-get remove ros-kinetic-rtabmap ros-kinetic-rtabmap-ros
- Optional dependencies
- If you want SURF/SIFT on Indigo/Jade (Hydro has already SIFT/SURF), you have to build OpenCV from source to have access to nonfree module. Install it in
/usr/local(default) and the rtabmap library should link with it instead of the one installed in ROS.- On Indigo/Jade, I recommend to use latest 2.4 version (2.4.11) and build it from source following these instructions. RTAB-Map can build with OpenCV3+xfeatures2d module, but rtabmap_ros package will have libraries conflict as cv-bridge is depending on OpenCV2. If you want OpenCV3, you should build ros vision-opencv package yourself (and all ros packages depending on it) so it can link on OpenCV3.
- On Kinetic/Lunar, I recommend to use OpenCV3+xfeatures2d module already installed by ROS. You can also install OpenCV2, but rtabmap_ros package will have libraries conflict as cv-bridge is depending on OpenCV3. Thus if you want OpenCV2 on Kinetic/Lunar, you should build ros vision-opencv package yourself (and all ros packages depending on it) so it can link on OpenCV2.
- If you want SURF/SIFT on Indigo/Jade (Hydro has already SIFT/SURF), you have to build OpenCV from source to have access to nonfree module. Install it in
* g2o: Use directly the binaries `ros-kinetic-libg2o`. However, [this g2o version](https://github.com/felixendres/g2o/tree/c++03) (c++03 branch) built from source may be faster than the binaries (install `libsuitesparse-dev` before building `g2o`) and would be [required to avoid some crashes](http://official-rtab-map-forum.67519.x6.nabble.com/ROS-2D-occupancy-grid-tp1204p1215.html). To build RTAB-Map against [latest official g2o version](https://github.com/RainerKuemmerle/g2o) built from source, g2o should be built with `-DBUILD_WITH_MARCH_NATIVE=OFF` to avoid some segmentation faults caused by Eigen.
* [GTSAM](https://collab.cc.gatech.edu/borg/gtsam): Follow installation instructions from [here](https://collab.cc.gatech.edu/borg/gtsam/#quickstart). RTAB-Map needs latest version from source, it will **not build** with 3.2.1. Set cmake variable `GTSAM_USE_SYSTEM_EIGEN=ON` to make sure the same Eigen version is used across all dependencies to avoid crashes.
git clone https://bitbucket.org/gtborg/gtsam.git
- Install RTAB-Map standalone libraries. Add
-DCMAKE_INSTALL_PREFIX=~/catkin_ws/develtocmakecommand below if you want to install in your Catkin's devel folder withoutsudo. Do not clone in your Catkin workspace.
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake .. [<---double dots included]
$ make
$ sudo make install
- Install RTAB-Map ros-pkg in your src folder of your Catkin workspace.
$ cd ~/catkin_ws
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
$ catkin_make -j1
* Use `catkin_make -j1` if compilation requires more RAM than you have (e.g., some files require up to ~1.8 GB to build).
Build from source for Nvidia Jetson with OpenCV 4 Tegra
To use rtabmap_ros on Jetson, you can follow the instructions above if you don't care if OpenCV is built for Tegra. However, if you want rtabmap to use OpenCV 4 Tegra, we must re-build vision_opencv stack from source too to avoid conflicts with vision_opencv stack binaries from ros (which are linked on a not optimized version of OpenCV). Here are the steps:
1. Install JetPack with OpenCV on the Jetson.
2. Do steps 1.2 and 1.3 from http://wiki.ros.org/kinetic/Installation/Ubuntu
3. Install non-opencv dependent ros packages:
* `sudo apt-get install ros-kinetic-ros-base ros-kinetic-image-transport ros-kinetic-tf ros-kinetic-tf-conversions ros-kinetic-eigen-conversions ros-kinetic-laser-geometry ros-kinetic-pcl-conversions ros-kinetic-pcl-ros ros-kinetic-move-base-msgs ros-kinetic-rviz ros-kinetic-octomap-ros ros-kinetic-move-base libhdf5-openmpi-dev libsuitesparse-dev`
- Do step 1.6 from http://wiki.ros.org/kinetic/Installation/Ubuntu
- Create your catkin workspace
- Optional: Install g2o and/or GTSAM dependencies as above (increase visual odometry and graph optimization accuracy).
- To avoid libGL undefined errors:
$ cd /usr/lib/aarch64-linux-gnu/
$ sudo ln -sf tegra/libGL.so libGL.so
- To avoid libvtkproj4 errors:
$ sudo ln -s /usr/lib/aarch64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/libvtkproj4.so
$ sudo ln -s /usr/lib/aarch64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/aarch64-linux-gnu/libvtkproj4-6.2.so.6.2.0
- Install RTAB-Map standalone libraries. Add
-DCMAKE_INSTALL_PREFIX=~/catkin_ws/develtocmakecommand below if you want to install in your Catkin's devel folder withoutsudo. Do not clone in your Catkin workspace.
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake .. [<---double dots included]
$ make
$ sudo make install
- Clone vision_opencv, image_transport_plugins and
rtabmap_rospackages in your catkin_ws:
$ cd ~/catkin_ws
$ git clone https://github.com/ros-perception/vision_opencv src/vision_opencv
$ git clone https://github.com/ros-perception/image_transport_plugins.git src/image_transport_plugins
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros src/rtabmap_ros
$ catkin_make -j2
Update to new version
###########
# rtabmap
###########
$ cd rtabmap
$ git pull origin master
$ cd build
$ make
$ make install
# Do "sudo make install" if you installed rtabmap in "/usr/local"
###########
# rtabmap_ros
###########
$ roscd rtabmap_ros
$ git pull origin master
$ roscd
$ cd ..
$ catkin_make -j1 --pkg rtabmap_ros
Wiki Tutorials
Source Tutorials
Package Dependencies
System Dependencies
| Name |
|---|
| libpcl-all-dev |
Dependant Packages
Launch files
- launch/demo/demo_two_kinects.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- strategy [default: 0]
- feature [default: 6]
- nn [default: 3]
- max_depth [default: 4.0]
- min_inliers [default: 20]
- inlier_distance [default: 0.02]
- local_map [default: 1000]
- odom_info_data [default: true]
- wait_for_transform [default: true]
- launch/demo/demo_turtlebot_mapping.launch
-
- database_path [default: rtabmap.db]
- rgbd_odometry [default: false]
- rtabmapviz [default: false]
- localization [default: false]
- simulation [default: false]
- sw_registered [default: false]
- args [default: ]
- args [default: --delete_db_on_start]
- rgb_topic [default: /camera/rgb/image_raw]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth/image_raw]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- wait_for_transform [default: 0.2]
- launch/demo/demo_turtlebot_tango.launch
-
- database_path [default: rtabmap.db]
- tango_odometry [default: true]
- localization [default: false]
- rtabmapviz [default: false]
- args [default: ]
- args [default: --delete_db_on_start]
- wait_for_transform [default: 0.2]
- launch/demo/demo_stereo_outdoor.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- local_bundle [default: true]
- stereo_sync [default: false]
- launch/demo/demo_multi-session_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- rtabmap_args [default: ]
- launch/demo/demo_appearance_mapping.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_hector_mapping.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- hector [default: true]
- launch/demo/demo_turtlebot_rviz.launch
- Used for visualising the turtlebot while building a map or navigating with the ros navistack.
-
- launch/demo/demo_data_recorder.launch
- launch/demo/demo_find_object.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- save_objects [default: false]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_robot_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_stereo_pr2.launch
- launch/rgbd_mapping_kinect2.launch
-
- resolution [default: qhd]
- frame_id [default: kinect2_base_link]
- rviz [default: false]
- rtabmapviz [default: true]
- rtabmapviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd.rviz]
- gftt_block_size [default: 5]
- gftt_min_distance [default: 5]
- launch/stereo_mapping.launch
-
- rtabmapviz [default: true]
- rviz [default: false]
- localization [default: false]
- rtabmapviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: base_link]
- database_path [default: ~/.ros/rtabmap.db]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: false]
- stereo_namespace [default: /stereo_camera]
- left_image_topic [default: $(arg stereo_namespace)/left/image_rect_color]
- right_image_topic [default: $(arg stereo_namespace)/right/image_rect]
- left_camera_info_topic [default: $(arg stereo_namespace)/left/camera_info]
- right_camera_info_topic [default: $(arg stereo_namespace)/right/camera_info]
- compressed [default: false]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- odom_frame_id [default: ]
- namespace [default: rtabmap]
- wait_for_transform [default: 0.2]
- launch/azimut3/az3_mapping_robot_kinect_only.launch
- launch/azimut3/az3_nav.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/azimut3/az3_mapping_client_stereo_nav.launch
- launch/azimut3/az3_mapping_client.launch
- launch/azimut3/az3_openni.launch
- launch/azimut3/az3_remote_mapping_robot.launch
- launch/azimut3/az3_remote_mapping_rviz.launch
- launch/azimut3/az3_db_record.launch
- launch/azimut3/az3_nav_client.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- sub_data [default: false]
- launch/azimut3/az3_bag_mapping.launch
- launch/azimut3/az3_mapping_robot_kinect_scan.launch
-
- rtabmap_args [default: ]
- localization [default: false]
- launch/azimut3/az3_nav_kinect_odom.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/azimut3/az3_remote_find_object.launch
- launch/azimut3/az3_mapping_robot_kinect_odom.launch
- launch/azimut3/az3_mapping_robot.launch
- launch/azimut3/az3_bag_record.launch
- launch/azimut3/az3_mapping_robot_stereo_nav.launch
- launch/azimut3/az3_nav_kinect-only.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/rtabmap.launch
-
- stereo [default: false]
- rtabmapviz [default: true]
- rviz [default: false]
- localization [default: false]
- use_sim_time [default: false]
- cfg [default: ]
- gui_cfg [default: ~/.ros/rtabmap_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: camera_link]
- odom_frame_id [default: ]
- map_frame_id [default: map]
- ground_truth_frame_id [default: ]
- ground_truth_base_frame_id [default: ]
- namespace [default: rtabmap]
- database_path [default: ~/.ros/rtabmap.db]
- queue_size [default: 10]
- wait_for_transform [default: 0.2]
- args [default: ]
- rtabmap_args [default: $(arg args)]
- launch_prefix [default: ]
- output [default: screen]
- approx_sync [default: false]
- approx_sync [default: true]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- depth_camera_info_topic [default: $(arg camera_info_topic)]
- stereo_namespace [default: /stereo_camera]
- left_image_topic [default: $(arg stereo_namespace)/left/image_rect_color]
- right_image_topic [default: $(arg stereo_namespace)/right/image_rect]
- left_camera_info_topic [default: $(arg stereo_namespace)/left/camera_info]
- right_camera_info_topic [default: $(arg stereo_namespace)/right/camera_info]
- rgbd_sync [default: false]
- approx_rgbd_sync [default: true]
- subscribe_rgbd [default: $(arg rgbd_sync)]
- rgbd_topic [default: rgbd_image]
- depth_scale [default: 1.0]
- compressed [default: false]
- rgb_image_transport [default: compressed]
- depth_image_transport [default: compressedDepth]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- scan_normal_k [default: 0]
- visual_odometry [default: true]
- icp_odometry [default: false]
- odom_topic [default: odom]
- vo_frame_id [default: $(arg odom_topic)]
- odom_tf_angular_variance [default: 1]
- odom_tf_linear_variance [default: 1]
- odom_args [default: ]
- odom_sensor_sync [default: false]
- odom_guess_frame_id [default: ]
- odom_guess_min_translation [default: 0]
- odom_guess_min_rotation [default: 0]
- imu_topic [default: /imu]
- subscribe_user_data [default: false]
- user_data_topic [default: /user_data]
- user_data_async_topic [default: /user_data_async]
- rgb_topic_relay [default: $(arg rgb_topic)_relay]
- rgb_topic_relay [default: $(arg rgb_topic)]
- depth_topic_relay [default: $(arg depth_topic)_relay]
- depth_topic_relay [default: $(arg depth_topic)]
- left_image_topic_relay [default: $(arg left_image_topic)_relay]
- left_image_topic_relay [default: $(arg left_image_topic)]
- right_image_topic_relay [default: $(arg right_image_topic)_relay]
- right_image_topic_relay [default: $(arg right_image_topic)]
- launch/tests/test_rgbd_image.launch
-
- compressed [default: false]
- launch/tests/test_laser_assembler.launch
-
- rtabmap_args [default: --delete_db_on_start --Rtabmap/DetectionRate 0 --RGBD/ProximityBySpace false --RGBD/LinearUpdate 0 --RGBD/AngularUpdate 0 --RGBD/ProximityPathMaxNeighbors 0]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- rtabmapviz [default: true]
- rviz [default: false]
- launch/tests/test_prior.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/tests/test_two_kinects_one_map.launch
- launch/tests/euroc_datasets.launch
-
- args [default: -d --RGBD/CreateOccupancyGrid false]
- cfg [default: ]
- MH_seq [default: false]
- rtabmapviz [default: true]
- rviz [default: false]
- launch/tests/sensor_fusion.launch
-
- frame_id [default: base_link]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- imu_topic [default: /imu/data]
- imu_ignore_acc [default: true]
- imu_remove_gravitational_acceleration [default: true]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/tests/bumblebee.launch
-
- gen_depth [default: false]
- launch/tests/test_icp_odometry.launch
-
- rgbd [default: false]
- pm [default: false]
- nodelet [default: false]
- launch/tests/test_obstacles_detection.launch
- launch/tests/test_rtabmap_nodelets.launch
-
- frame_id [default: camera_link]
- rtabmap_args [default: --delete_db_on_start]
- odom_args [default: $(arg rtabmap_args)]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- launch/tests/sensor_fusion_kinect_brick.launch
-
- localization [default: false]
- uid
- launch/tests/test_pointxyzrgb.launch
- launch/tests/test_undistort_depth.launch
-
- depth [default: /camera/depth_registered/image_raw]
- model [default: $(find rtabmap_ros)/launch/calibration/distortion_model_PS1080.bin]
- launch/tests/test_map_optimizer.launch
- launch/tests/rgbdslam_datasets.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/data_recorder.launch
-
- subscribe_odometry [default: false]
- subscribe_depth [default: true]
- subscribe_stereo [default: false]
- subscribe_rgbd [default: false]
- subscribe_scan [default: false]
- subscribe_scan_cloud [default: false]
- approx_sync [default: false]
- approx_sync [default: true]
- frame_id [default: camera_link]
- odom_frame_id [default: ]
- ground_truth_frame_id [default: ]
- ground_truth_base_frame_id [default: ]
- output_path [default: output.db]
- record_in_RAM [default: false]
- queue_size [default: 10]
- max_rate [default: 0]
- rgb_topic [default: camera/rgb/image_rect_color]
- rgb_info_topic [default: camera/rgb/camera_info]
- depth_topic [default: camera/depth_registered/image_raw]
- left_topic [default: camera/left/image_rect_color]
- left_info_topic [default: camera/left/camera_info]
- right_topic [default: camera/right/image_rect]
- right_info_topic [default: camera/right/camera_info]
- rgbd_topic [default: camera/rgbd_image]
- odom_topic [default: odom]
- scan_topic [default: scan]
- scan_cloud_topic [default: scan_cloud]
- rgb_image_transport [default: raw]
- depth_image_transport [default: raw]
- launch/rgbd_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- localization [default: false]
- rtabmapviz_cfg [default: ~/.ros/rtabmap_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: camera_link]
- database_path [default: ~/.ros/rtabmap.db]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: true]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_registered_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- compressed [default: false]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- odom_frame_id [default: ]
- namespace [default: rtabmap]
- wait_for_transform [default: 0.2]
Messages
Services
Plugins
Recent questions tagged rtabmap_ros at answers.ros.org
|
rtabmap_ros package from rtabmap_ros reportabmap_ros |
Package Summary
| Tags | No category tags. |
| Version | 0.17.6 |
| License | BSD |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/introlab/rtabmap_ros.git |
| VCS Type | git |
| VCS Version | indigo-devel |
| Last Updated | 2018-09-29 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
Package Description
Additional Links
Maintainers
- Mathieu Labbe
Authors
- Mathieu Labbe
rtabmap_ros
RTAB-Map's ROS package.
For more information, demos and tutorials about this package, visit rtabmap_ros page on ROS wiki.
For the RTAB-Map libraries and standalone application, visit RTAB-Map's home page or RTAB-Map's wiki.
Installation
ROS distribution
RTAB-Map is released as binaries in the ROS distribution. * Lunar
$ sudo apt-get install ros-lunar-rtabmap-ros
- Kinetic
$ sudo apt-get install ros-kinetic-rtabmap-ros
- Jade
$ sudo apt-get install ros-jade-rtabmap-ros
- Indigo
$ sudo apt-get install ros-indigo-rtabmap-ros
- Hydro:
$ sudo apt-get install ros-hydro-rtabmap-ros
* Note that rtabmap_ros Hydro binaries are stuck at version 0.8.12. To use the latest version, see [Build from source](https://github.com/introlab/rtabmap_ros#build-from-source) below.
When launching rtabmap_ros's nodes, if you have the error error while loading shared libraries..., add the next line at the end of your ~/.bashrc to fix it:
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ros/kinetic/lib/x86_64-linux-gnu
Build from source
This section shows how to install RTAB-Map ros-pkg on ROS Hydro/Indigo/Jade/Kinetic/Lunar (Catkin build). RTAB-Map works only with the PCL >=1.7, which is the default version installed with ROS Hydro/Indigo/Jade/Kinetic/Lunar (Fuerte and Groovy are not supported).
- The next instructions assume that you have set up your ROS workspace using this tutorial. I will use kinetic prefix for convenience, but it should work with Hydro, Indigo, Jade and Lunar. The workspace path is
~/catkin_wsand your~/.bashrccontains:
$ source /opt/ros/kinetic/setup.bash
$ source ~/catkin_ws/devel/setup.bash
- Required dependencies
- The easiest way to get all them (Qt, PCL, VTK, OpenCV, ...) is to install/uninstall rtabmap binaries:
$ sudo apt-get install ros-kinetic-rtabmap ros-kinetic-rtabmap-ros
$ sudo apt-get remove ros-kinetic-rtabmap ros-kinetic-rtabmap-ros
- Optional dependencies
- If you want SURF/SIFT on Indigo/Jade (Hydro has already SIFT/SURF), you have to build OpenCV from source to have access to nonfree module. Install it in
/usr/local(default) and the rtabmap library should link with it instead of the one installed in ROS.- On Indigo/Jade, I recommend to use latest 2.4 version (2.4.11) and build it from source following these instructions. RTAB-Map can build with OpenCV3+xfeatures2d module, but rtabmap_ros package will have libraries conflict as cv-bridge is depending on OpenCV2. If you want OpenCV3, you should build ros vision-opencv package yourself (and all ros packages depending on it) so it can link on OpenCV3.
- On Kinetic/Lunar, I recommend to use OpenCV3+xfeatures2d module already installed by ROS. You can also install OpenCV2, but rtabmap_ros package will have libraries conflict as cv-bridge is depending on OpenCV3. Thus if you want OpenCV2 on Kinetic/Lunar, you should build ros vision-opencv package yourself (and all ros packages depending on it) so it can link on OpenCV2.
- If you want SURF/SIFT on Indigo/Jade (Hydro has already SIFT/SURF), you have to build OpenCV from source to have access to nonfree module. Install it in
* g2o: Use directly the binaries `ros-kinetic-libg2o`. However, [this g2o version](https://github.com/felixendres/g2o/tree/c++03) (c++03 branch) built from source may be faster than the binaries (install `libsuitesparse-dev` before building `g2o`) and would be [required to avoid some crashes](http://official-rtab-map-forum.67519.x6.nabble.com/ROS-2D-occupancy-grid-tp1204p1215.html). To build RTAB-Map against [latest official g2o version](https://github.com/RainerKuemmerle/g2o) built from source, g2o should be built with `-DBUILD_WITH_MARCH_NATIVE=OFF` to avoid some segmentation faults caused by Eigen.
* [GTSAM](https://collab.cc.gatech.edu/borg/gtsam): Follow installation instructions from [here](https://collab.cc.gatech.edu/borg/gtsam/#quickstart). RTAB-Map needs latest version from source, it will **not build** with 3.2.1. Set cmake variable `GTSAM_USE_SYSTEM_EIGEN=ON` to make sure the same Eigen version is used across all dependencies to avoid crashes.
git clone https://bitbucket.org/gtborg/gtsam.git
- Install RTAB-Map standalone libraries. Add
-DCMAKE_INSTALL_PREFIX=~/catkin_ws/develtocmakecommand below if you want to install in your Catkin's devel folder withoutsudo. Do not clone in your Catkin workspace.
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake .. [<---double dots included]
$ make
$ sudo make install
- Install RTAB-Map ros-pkg in your src folder of your Catkin workspace.
$ cd ~/catkin_ws
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
$ catkin_make -j1
* Use `catkin_make -j1` if compilation requires more RAM than you have (e.g., some files require up to ~1.8 GB to build).
Build from source for Nvidia Jetson with OpenCV 4 Tegra
To use rtabmap_ros on Jetson, you can follow the instructions above if you don't care if OpenCV is built for Tegra. However, if you want rtabmap to use OpenCV 4 Tegra, we must re-build vision_opencv stack from source too to avoid conflicts with vision_opencv stack binaries from ros (which are linked on a not optimized version of OpenCV). Here are the steps:
1. Install JetPack with OpenCV on the Jetson.
2. Do steps 1.2 and 1.3 from http://wiki.ros.org/kinetic/Installation/Ubuntu
3. Install non-opencv dependent ros packages:
* `sudo apt-get install ros-kinetic-ros-base ros-kinetic-image-transport ros-kinetic-tf ros-kinetic-tf-conversions ros-kinetic-eigen-conversions ros-kinetic-laser-geometry ros-kinetic-pcl-conversions ros-kinetic-pcl-ros ros-kinetic-move-base-msgs ros-kinetic-rviz ros-kinetic-octomap-ros ros-kinetic-move-base libhdf5-openmpi-dev libsuitesparse-dev`
- Do step 1.6 from http://wiki.ros.org/kinetic/Installation/Ubuntu
- Create your catkin workspace
- Optional: Install g2o and/or GTSAM dependencies as above (increase visual odometry and graph optimization accuracy).
- To avoid libGL undefined errors:
$ cd /usr/lib/aarch64-linux-gnu/
$ sudo ln -sf tegra/libGL.so libGL.so
- To avoid libvtkproj4 errors:
$ sudo ln -s /usr/lib/aarch64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/libvtkproj4.so
$ sudo ln -s /usr/lib/aarch64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/aarch64-linux-gnu/libvtkproj4-6.2.so.6.2.0
- Install RTAB-Map standalone libraries. Add
-DCMAKE_INSTALL_PREFIX=~/catkin_ws/develtocmakecommand below if you want to install in your Catkin's devel folder withoutsudo. Do not clone in your Catkin workspace.
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake .. [<---double dots included]
$ make
$ sudo make install
- Clone vision_opencv, image_transport_plugins and
rtabmap_rospackages in your catkin_ws:
$ cd ~/catkin_ws
$ git clone https://github.com/ros-perception/vision_opencv src/vision_opencv
$ git clone https://github.com/ros-perception/image_transport_plugins.git src/image_transport_plugins
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros src/rtabmap_ros
$ catkin_make -j2
Update to new version
###########
# rtabmap
###########
$ cd rtabmap
$ git pull origin master
$ cd build
$ make
$ make install
# Do "sudo make install" if you installed rtabmap in "/usr/local"
###########
# rtabmap_ros
###########
$ roscd rtabmap_ros
$ git pull origin master
$ roscd
$ cd ..
$ catkin_make -j1 --pkg rtabmap_ros
Wiki Tutorials
Source Tutorials
Package Dependencies
System Dependencies
| Name |
|---|
| libpcl-all-dev |
Dependant Packages
Launch files
- launch/demo/demo_two_kinects.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- strategy [default: 0]
- feature [default: 6]
- nn [default: 3]
- max_depth [default: 4.0]
- min_inliers [default: 20]
- inlier_distance [default: 0.02]
- local_map [default: 1000]
- odom_info_data [default: true]
- wait_for_transform [default: true]
- launch/demo/demo_turtlebot_mapping.launch
-
- database_path [default: rtabmap.db]
- rgbd_odometry [default: false]
- rtabmapviz [default: false]
- localization [default: false]
- simulation [default: false]
- sw_registered [default: false]
- args [default: ]
- args [default: --delete_db_on_start]
- rgb_topic [default: /camera/rgb/image_raw]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth/image_raw]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- wait_for_transform [default: 0.2]
- launch/demo/demo_turtlebot_tango.launch
-
- database_path [default: rtabmap.db]
- tango_odometry [default: true]
- localization [default: false]
- rtabmapviz [default: false]
- args [default: ]
- args [default: --delete_db_on_start]
- wait_for_transform [default: 0.2]
- launch/demo/demo_stereo_outdoor.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- local_bundle [default: true]
- stereo_sync [default: false]
- launch/demo/demo_multi-session_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- rtabmap_args [default: ]
- launch/demo/demo_appearance_mapping.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_hector_mapping.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- hector [default: true]
- launch/demo/demo_turtlebot_rviz.launch
- Used for visualising the turtlebot while building a map or navigating with the ros navistack.
-
- launch/demo/demo_data_recorder.launch
- launch/demo/demo_find_object.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- save_objects [default: false]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_robot_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_stereo_pr2.launch
- launch/rgbd_mapping_kinect2.launch
-
- resolution [default: qhd]
- frame_id [default: kinect2_base_link]
- rviz [default: false]
- rtabmapviz [default: true]
- rtabmapviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd.rviz]
- gftt_block_size [default: 5]
- gftt_min_distance [default: 5]
- launch/stereo_mapping.launch
-
- rtabmapviz [default: true]
- rviz [default: false]
- localization [default: false]
- rtabmapviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: base_link]
- database_path [default: ~/.ros/rtabmap.db]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: false]
- stereo_namespace [default: /stereo_camera]
- left_image_topic [default: $(arg stereo_namespace)/left/image_rect_color]
- right_image_topic [default: $(arg stereo_namespace)/right/image_rect]
- left_camera_info_topic [default: $(arg stereo_namespace)/left/camera_info]
- right_camera_info_topic [default: $(arg stereo_namespace)/right/camera_info]
- compressed [default: false]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- odom_frame_id [default: ]
- namespace [default: rtabmap]
- wait_for_transform [default: 0.2]
- launch/azimut3/az3_mapping_robot_kinect_only.launch
- launch/azimut3/az3_nav.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/azimut3/az3_mapping_client_stereo_nav.launch
- launch/azimut3/az3_mapping_client.launch
- launch/azimut3/az3_openni.launch
- launch/azimut3/az3_remote_mapping_robot.launch
- launch/azimut3/az3_remote_mapping_rviz.launch
- launch/azimut3/az3_db_record.launch
- launch/azimut3/az3_nav_client.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- sub_data [default: false]
- launch/azimut3/az3_bag_mapping.launch
- launch/azimut3/az3_mapping_robot_kinect_scan.launch
-
- rtabmap_args [default: ]
- localization [default: false]
- launch/azimut3/az3_nav_kinect_odom.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/azimut3/az3_remote_find_object.launch
- launch/azimut3/az3_mapping_robot_kinect_odom.launch
- launch/azimut3/az3_mapping_robot.launch
- launch/azimut3/az3_bag_record.launch
- launch/azimut3/az3_mapping_robot_stereo_nav.launch
- launch/azimut3/az3_nav_kinect-only.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/rtabmap.launch
-
- stereo [default: false]
- rtabmapviz [default: true]
- rviz [default: false]
- localization [default: false]
- use_sim_time [default: false]
- cfg [default: ]
- gui_cfg [default: ~/.ros/rtabmap_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: camera_link]
- odom_frame_id [default: ]
- map_frame_id [default: map]
- ground_truth_frame_id [default: ]
- ground_truth_base_frame_id [default: ]
- namespace [default: rtabmap]
- database_path [default: ~/.ros/rtabmap.db]
- queue_size [default: 10]
- wait_for_transform [default: 0.2]
- args [default: ]
- rtabmap_args [default: $(arg args)]
- launch_prefix [default: ]
- output [default: screen]
- approx_sync [default: false]
- approx_sync [default: true]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- depth_camera_info_topic [default: $(arg camera_info_topic)]
- stereo_namespace [default: /stereo_camera]
- left_image_topic [default: $(arg stereo_namespace)/left/image_rect_color]
- right_image_topic [default: $(arg stereo_namespace)/right/image_rect]
- left_camera_info_topic [default: $(arg stereo_namespace)/left/camera_info]
- right_camera_info_topic [default: $(arg stereo_namespace)/right/camera_info]
- rgbd_sync [default: false]
- approx_rgbd_sync [default: true]
- subscribe_rgbd [default: $(arg rgbd_sync)]
- rgbd_topic [default: rgbd_image]
- depth_scale [default: 1.0]
- compressed [default: false]
- rgb_image_transport [default: compressed]
- depth_image_transport [default: compressedDepth]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- scan_normal_k [default: 0]
- visual_odometry [default: true]
- icp_odometry [default: false]
- odom_topic [default: odom]
- vo_frame_id [default: $(arg odom_topic)]
- odom_tf_angular_variance [default: 1]
- odom_tf_linear_variance [default: 1]
- odom_args [default: ]
- odom_sensor_sync [default: false]
- odom_guess_frame_id [default: ]
- odom_guess_min_translation [default: 0]
- odom_guess_min_rotation [default: 0]
- imu_topic [default: /imu]
- subscribe_user_data [default: false]
- user_data_topic [default: /user_data]
- user_data_async_topic [default: /user_data_async]
- rgb_topic_relay [default: $(arg rgb_topic)_relay]
- rgb_topic_relay [default: $(arg rgb_topic)]
- depth_topic_relay [default: $(arg depth_topic)_relay]
- depth_topic_relay [default: $(arg depth_topic)]
- left_image_topic_relay [default: $(arg left_image_topic)_relay]
- left_image_topic_relay [default: $(arg left_image_topic)]
- right_image_topic_relay [default: $(arg right_image_topic)_relay]
- right_image_topic_relay [default: $(arg right_image_topic)]
- launch/tests/test_rgbd_image.launch
-
- compressed [default: false]
- launch/tests/test_laser_assembler.launch
-
- rtabmap_args [default: --delete_db_on_start --Rtabmap/DetectionRate 0 --RGBD/ProximityBySpace false --RGBD/LinearUpdate 0 --RGBD/AngularUpdate 0 --RGBD/ProximityPathMaxNeighbors 0]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- rtabmapviz [default: true]
- rviz [default: false]
- launch/tests/test_prior.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/tests/test_two_kinects_one_map.launch
- launch/tests/euroc_datasets.launch
-
- args [default: -d --RGBD/CreateOccupancyGrid false]
- cfg [default: ]
- MH_seq [default: false]
- rtabmapviz [default: true]
- rviz [default: false]
- launch/tests/sensor_fusion.launch
-
- frame_id [default: base_link]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- imu_topic [default: /imu/data]
- imu_ignore_acc [default: true]
- imu_remove_gravitational_acceleration [default: true]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/tests/bumblebee.launch
-
- gen_depth [default: false]
- launch/tests/test_icp_odometry.launch
-
- rgbd [default: false]
- pm [default: false]
- nodelet [default: false]
- launch/tests/test_obstacles_detection.launch
- launch/tests/test_rtabmap_nodelets.launch
-
- frame_id [default: camera_link]
- rtabmap_args [default: --delete_db_on_start]
- odom_args [default: $(arg rtabmap_args)]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- launch/tests/sensor_fusion_kinect_brick.launch
-
- localization [default: false]
- uid
- launch/tests/test_pointxyzrgb.launch
- launch/tests/test_undistort_depth.launch
-
- depth [default: /camera/depth_registered/image_raw]
- model [default: $(find rtabmap_ros)/launch/calibration/distortion_model_PS1080.bin]
- launch/tests/test_map_optimizer.launch
- launch/tests/rgbdslam_datasets.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/data_recorder.launch
-
- subscribe_odometry [default: false]
- subscribe_depth [default: true]
- subscribe_stereo [default: false]
- subscribe_rgbd [default: false]
- subscribe_scan [default: false]
- subscribe_scan_cloud [default: false]
- approx_sync [default: false]
- approx_sync [default: true]
- frame_id [default: camera_link]
- odom_frame_id [default: ]
- ground_truth_frame_id [default: ]
- ground_truth_base_frame_id [default: ]
- output_path [default: output.db]
- record_in_RAM [default: false]
- queue_size [default: 10]
- max_rate [default: 0]
- rgb_topic [default: camera/rgb/image_rect_color]
- rgb_info_topic [default: camera/rgb/camera_info]
- depth_topic [default: camera/depth_registered/image_raw]
- left_topic [default: camera/left/image_rect_color]
- left_info_topic [default: camera/left/camera_info]
- right_topic [default: camera/right/image_rect]
- right_info_topic [default: camera/right/camera_info]
- rgbd_topic [default: camera/rgbd_image]
- odom_topic [default: odom]
- scan_topic [default: scan]
- scan_cloud_topic [default: scan_cloud]
- rgb_image_transport [default: raw]
- depth_image_transport [default: raw]
- launch/rgbd_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- localization [default: false]
- rtabmapviz_cfg [default: ~/.ros/rtabmap_gui.ini]
- rviz_cfg [default: $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: camera_link]
- database_path [default: ~/.ros/rtabmap.db]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: true]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_registered_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- compressed [default: false]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- odom_frame_id [default: ]
- namespace [default: rtabmap]
- wait_for_transform [default: 0.2]
Messages
Services
Plugins
Recent questions tagged rtabmap_ros at answers.ros.org
|
rtabmap_ros package from rtabmap_ros reportabmap_ros |
Package Summary
| Tags | No category tags. |
| Version | 0.11.8 |
| License | BSD |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/introlab/rtabmap_ros.git |
| VCS Type | git |
| VCS Version | jade-devel |
| Last Updated | 2016-07-20 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
Package Description
Additional Links
Maintainers
- Mathieu Labbe
Authors
- Mathieu Labbe
rtabmap_ros
RTAB-Map's ROS package.
For more information, demos and tutorials about this package, visit rtabmap_ros page on ROS wiki.
For the RTAB-Map libraries and standalone application, visit RTAB-Map's home page or RTAB-Map's wiki.
Installation
ROS distribution
RTAB-Map is released as binaries in the ROS distribution. For latest binaries, use ros-shadow-fixed repository. * Kinetic
$ sudo apt-get install ros-kinetic-rtabmap-ros
- Jade
$ sudo apt-get install ros-jade-rtabmap-ros
- Indigo
$ sudo apt-get install ros-indigo-rtabmap-ros
- Hydro:
$ sudo apt-get install ros-hydro-rtabmap-ros
- Note that rtabmap_ros Hydro binaries are stuck at version 0.8.12. To use the latest version, see Build from source below.
When launching rtabmap_ros's nodes, if you have the error error while loading shared libraries..., add the next line at the end of your ~/.bashrc to fix it:
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ros/kinetic/lib/x86_64-linux-gnu
Build from source
This section shows how to install RTAB-Map ros-pkg on ROS Hydro/Indigo/Jade/Kinetic (Catkin build). RTAB-Map works only with the PCL 1.7, which is the default version installed with ROS Hydro/Indigo/Jade/Kinetic (Fuerte and Groovy are not supported).
- The next instructions assume that you have set up your ROS workspace using this tutorial. I will use kinetic prefix for convenience, but it should work with Hydro, Indigo and Jade. The workspace path is
~/catkin_wsand your~/.bashrccontains:
$ source /opt/ros/kinetic/setup.bash
$ source ~/catkin_ws/devel/setup.bash
- Make sure you don't have the binaries installed too (if you tried them before):
$ sudo apt-get remove ros-kinetic-rtabmap
- Optional dependencies
- If you want SURF/SIFT on Indigo/Jade/Kinetic (Hydro has already SIFT/SURF), you have to build OpenCV from source to have access to nonfree module. Install it in
/usr/local(default) and the rtabmap library should link with it instead of the one installed in ROS. I recommend to use latest 2.4 version (2.4.11) and build it from source following these instructions. RTAB-Map can build with OpenCV3+xfeatures2d module, but rtabmap_ros package will have libraries conflict as cv-bridge is depending on OpenCV2. If you want OpenCV3, you should build ros vision-opencv package yourself (and all ros packages depending on it) so it can link on OpenCV3.
- If you want SURF/SIFT on Indigo/Jade/Kinetic (Hydro has already SIFT/SURF), you have to build OpenCV from source to have access to nonfree module. Install it in
- ROS (Qt, PCL, dc1394, OpenNI, OpenNI2, Freenect, g2o, Costmap2d, Rviz, Octomap, CvBridge). Note that I've found that latest g2o version built from source is faster (install
libsuitesparse-devbefore buildingg2o) and would be required to avoid some crashes.
$ sudo apt-get install libqt4-dev libpcl-1.7-all-dev libdc1394-dev ros-kinetic-openni-launch ros-kinetic-openni2-launch ros-kinetic-freenect-launch ros-kinetic-costmap-2d ros-kinetic-octomap-ros ros-kinetic-g2o ros-kinetic-rviz ros-kinetic-cv-bridge
GTSAM: Follow installation instructions from here. RTAB-Map needs latest version from source (
git clone https://bitbucket.org/gtborg/gtsam.git), it will not build with 3.2.1.cvsba: Follow installation instructions from here. Their installation is not standard CMake, you need these extra steps so RTAB-Map can find it:
$ mkdir /usr/local/lib/cmake/cvsba
$ mv /usr/local/lib/cmake/Findcvsba.cmake /usr/local/lib/cmake/cvsba/cvsbaConfig.cmake
- Install RTAB-Map standalone libraries. Add
-DCMAKE_INSTALL_PREFIX=~/catkin_ws/develtocmakecommand below if you want to install in your Catkin's devel folder withoutsudo. Do not clone in your Catkin workspace.
$ cd ~
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake .. [<---double dots included]
$ make -j4
$ sudo make install
- Install RTAB-Map ros-pkg in your src folder of your Catkin workspace.
$ cd ~/catkin_ws
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
$ catkin_make
Update to new version
$ cd rtabmap
$ git pull origin master
$ cd build
$ make
$ make install
$ roscd rtabmap_ros
$ git pull origin master
$ cd ~/catkin_ws
$ catkin_make
Wiki Tutorials
Source Tutorials
Package Dependencies
System Dependencies
| Name |
|---|
| libpcl-all-dev |
Dependant Packages
Launch files
- launch/demo/demo_two_kinects.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- strategy [default: 0]
- feature [default: 6]
- nn [default: 3]
- max_depth [default: 4.0]
- min_inliers [default: 20]
- inlier_distance [default: 0.02]
- local_map [default: 1000]
- odom_info_data [default: true]
- wait_for_transform [default: true]
- launch/demo/demo_turtlebot_mapping.launch
-
- database_path [default: rtabmap.db]
- localization [default: false]
- rgbd_odometry [default: false]
- args [default: ]
- rtabmapviz [default: false]
- wait_for_transform [default: 0.2]
- launch/demo/demo_stereo_outdoor.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/demo/demo_multi-session_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- launch/demo/demo_appearance_mapping.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_hector_mapping.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/demo/demo_turtlebot_rviz.launch
- Used for visualising the turtlebot while building a map or navigating with the ros navistack.
-
- launch/demo/demo_data_recorder.launch
- launch/demo/demo_find_object.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/demo/demo_robot_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/demo/demo_stereo_pr2.launch
- launch/rgbd_mapping_kinect2.launch
-
- resolution [default: qhd]
- frame_id [default: kinect2_base_link]
- rviz [default: false]
- rtabmapviz [default: true]
- rtabmapviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd.rviz]
- strategy [default: 0]
- feature [default: 6]
- nn [default: 3]
- max_depth [default: 10.0]
- min_inliers [default: 20]
- inlier_distance [default: 0.02]
- local_map [default: 1000]
- gftt_max_corners [default: 1000]
- gftt_min_distance [default: 7]
- launch/stereo_mapping.launch
-
- rtabmapviz [default: true]
- rviz [default: false]
- localization [default: false]
- rtabmapviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: base_link]
- database_path [default: ~/.ros/rtabmap.db]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: false]
- stereo_namespace [default: /stereo_camera]
- left_image_topic [default: $(arg stereo_namespace)/left/image_rect_color]
- right_image_topic [default: $(arg stereo_namespace)/right/image_rect]
- left_camera_info_topic [default: $(arg stereo_namespace)/left/camera_info]
- right_camera_info_topic [default: $(arg stereo_namespace)/right/camera_info]
- compressed [default: false]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- namespace [default: rtabmap]
- wait_for_transform [default: 0.2]
- launch/azimut3/az3_mapping_robot_kinect_only.launch
- launch/azimut3/az3_nav.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/azimut3/az3_mapping_client_stereo_nav.launch
- launch/azimut3/az3_mapping_client.launch
- launch/azimut3/az3_openni.launch
- launch/azimut3/az3_remote_mapping_robot.launch
- launch/azimut3/az3_remote_mapping_rviz.launch
- launch/azimut3/az3_db_record.launch
- launch/azimut3/az3_nav_client.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- sub_data [default: false]
- launch/azimut3/az3_bag_mapping.launch
- launch/azimut3/az3_mapping_robot_kinect_scan.launch
-
- rtabmap_args [default: ]
- localization [default: false]
- launch/azimut3/az3_nav_kinect_odom.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/azimut3/az3_remote_find_object.launch
- launch/azimut3/az3_mapping_robot_kinect_odom.launch
- launch/azimut3/az3_mapping_robot.launch
- launch/azimut3/az3_bag_record.launch
- launch/azimut3/az3_mapping_robot_stereo_nav.launch
- launch/azimut3/az3_nav_kinect-only.launch
-
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/rtabmap.launch
-
- stereo [default: false]
- rtabmapviz [default: true]
- rviz [default: false]
- localization [default: false]
- cfg [default: ]
- gui_cfg [default: ~/.ros/rtabmap_gui.ini]
- rviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: camera_link]
- namespace [default: rtabmap]
- database_path [default: ~/.ros/rtabmap.db]
- queue_size [default: 10]
- wait_for_transform [default: 0.2]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: true]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- stereo_namespace [default: /stereo_camera]
- left_image_topic [default: $(arg stereo_namespace)/left/image_rect_color]
- right_image_topic [default: $(arg stereo_namespace)/right/image_rect]
- left_camera_info_topic [default: $(arg stereo_namespace)/left/camera_info]
- right_camera_info_topic [default: $(arg stereo_namespace)/right/camera_info]
- compressed [default: false]
- rgb_image_transport [default: compressed]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- odom_args [default: $(arg rtabmap_args)]
- rgb_topic_relay [default: $(arg rgb_topic)_relay]
- rgb_topic_relay [default: $(arg rgb_topic)]
- depth_topic_relay [default: $(arg depth_topic)_relay]
- depth_topic_relay [default: $(arg depth_topic)]
- left_image_topic_relay [default: $(arg left_image_topic)_relay]
- left_image_topic_relay [default: $(arg left_image_topic)]
- right_image_topic_relay [default: $(arg right_image_topic)_relay]
- right_image_topic_relay [default: $(arg right_image_topic)]
- launch/tests/sensor_fusion.launch
-
- frame_id [default: base_link]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- imu_topic [default: /imu/data]
- imu_ignore_acc [default: true]
- imu_remove_gravitational_acceleration [default: true]
- localization [default: false]
- rtabmap_args [default: ]
- rtabmap_args [default: --delete_db_on_start]
- launch/tests/bumblebee.launch
-
- gen_depth [default: false]
- launch/tests/test_obstacles_detection.launch
-
- optimize_for_close_objects [default: false]
- launch/tests/sensor_fusion_kinect_brick.launch
-
- localization [default: false]
- launch/tests/test_pointxyzrgb.launch
- launch/tests/rgbdslam_datasets.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/data_recorder.launch
-
- subscribe_odometry [default: false]
- subscribe_depth [default: true]
- subscribe_stereo [default: false]
- subscribe_scan [default: false]
- stereo_approx_sync [default: false]
- frame_id [default: camera_link]
- odom_frame_id [default: ]
- output_path [default: output.db]
- record_in_RAM [default: false]
- queue_size [default: 10]
- max_rate [default: 0]
- rgb_topic [default: camera/rgb/image_rect_color]
- rgb_info_topic [default: camera/rgb/camera_info]
- depth_topic [default: camera/depth_registered/image_raw]
- left_topic [default: camera/left/image_rect_color]
- left_info_topic [default: camera/left/camera_info]
- right_topic [default: camera/right/image_rect]
- right_info_topic [default: camera/right/camera_info]
- odom_topic [default: odom]
- scan_topic [default: scan]
- rgb_image_transport [default: raw]
- depth_image_transport [default: raw]
- launch/rgbd_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- localization [default: false]
- rtabmapviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd_gui.ini]
- rviz_cfg [default: -d $(find rtabmap_ros)/launch/config/rgbd.rviz]
- frame_id [default: camera_link]
- database_path [default: ~/.ros/rtabmap.db]
- rtabmap_args [default: ]
- launch_prefix [default: ]
- approx_sync [default: true]
- rgb_topic [default: /camera/rgb/image_rect_color]
- depth_registered_topic [default: /camera/depth_registered/image_raw]
- camera_info_topic [default: /camera/rgb/camera_info]
- compressed [default: false]
- subscribe_scan [default: false]
- scan_topic [default: /scan]
- subscribe_scan_cloud [default: false]
- scan_cloud_topic [default: /scan_cloud]
- visual_odometry [default: true]
- odom_topic [default: /odom]
- namespace [default: rtabmap]
- wait_for_transform [default: 0.2]
Messages
Services
Plugins
Recent questions tagged rtabmap_ros at answers.ros.org
|
rtabmap_ros package from rtabmap_ros reportabmap_ros |
Package Summary
| Tags | No category tags. |
| Version | 0.8.12 |
| License | BSD |
| Build type | CATKIN |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/introlab/rtabmap_ros.git |
| VCS Type | git |
| VCS Version | hydro-devel |
| Last Updated | 2015-05-10 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
Package Description
Additional Links
Maintainers
- Mathieu Labbe
Authors
- Mathieu Labbe
rtabmap_ros
RTAB-Map's ROS package.
For more information, demos and tutorials about this package, visit the rtabmap_ros page on the ROS wiki.
For the RTAB-Map libraries and standalone application, visit the RTAB-Map's home page or the RTAB-Map's wiki.
Installation
ROS distribution
RTAB-Map is released as binaries in the ROS distribution. * Indigo
$ sudo apt-get install ros-indigo-rtabmap-ros
- Hydro
$ sudo apt-get install ros-hydro-rtabmap-ros
Build from source
This section shows how to install RTAB-Map ros-pkg on ROS Hydro/Indigo (Catkin build). RTAB-Map works only with the PCL 1.7, which is the default version installed with ROS Hydro/Indigo (Fuerte and Groovy are not supported).
* Note for ROS Indigo: If you want SURF/SIFT, you have to build OpenCV from source to have access to nonfree module. Install it in /usr/local (default) and the rtabmap library should link with it instead of the one installed in ROS.
- The next instructions assume that you have setup your ROS workspace using this tutorial. The workspace path is
~/catkin_wsand your~/.bashrccontains:
source /opt/ros/hydro/setup.bash
source ~/catkin_ws/devel/setup.bash
- First, you need to install the RTAB-Map standalone libraries (don't checkout in the Catkin workspace but install in your Catkin's devel folder).
$ git clone https://github.com/introlab/rtabmap.git rtabmap
$ cd rtabmap/build
$ cmake -DCMAKE_INSTALL_PREFIX=~/catkin_ws/devel .. [<---double dots included]
$ make -j4
$ make install
- Now install the RTAB-Map ros-pkg in your src folder of your Catkin workspace.
$ cd ~/catkin_ws
$ git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
$ catkin_make
Update to new version
$ cd rtabmap
$ git pull origin master
$ cd build
$ make
$ make install
$ roscd rtabmap_ros
$ git pull origin master
$ cd ~/catkin_ws
$ catkin_make
Wiki Tutorials
Source Tutorials
Package Dependencies
System Dependencies
| Name |
|---|
| libpcl-all-dev |
Dependant Packages
Launch files
- launch/demo/demo_stereo_outdoor.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/demo/demo_multi-session_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- launch/demo/demo_appearance_localization.launch
- launch/demo/demo_appearance_mapping.launch
- launch/demo/demo_hector_mapping.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- launch/demo/demo_data_recorder.launch
- launch/demo/demo_find_object.launch
- launch/demo/demo_robot_localization.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- launch/demo/demo_robot_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- launch/demo/demo_stereo_pr2.launch
- launch/rgbd_mapping_kinect2.launch
-
- rgb_prefix [default: rgb_lowres]
- depth_prefix [default: depth_lowres]
- frame_id [default: kinect2_link]
- rviz [default: false]
- rtabmapviz [default: true]
- strategy [default: 0]
- feature [default: 6]
- nn [default: 3]
- max_depth [default: 8.0]
- min_inliers [default: 20]
- inlier_distance [default: 0.02]
- local_map [default: 1000]
- gftt_max_corners [default: 500]
- gftt_min_distance [default: 7]
- launch/azimut3/az3_mapping_robot_kinect_only.launch
- launch/azimut3/az3_mapping_client_stereo_nav.launch
- launch/azimut3/az3_mapping_robot_nav.launch
-
- rtabmap_args [default: ]
- launch/azimut3/az3_mapping_client.launch
- launch/azimut3/az3_openni.launch
- launch/azimut3/az3_remote_mapping_robot.launch
- launch/azimut3/az3_remote_mapping_rviz.launch
- launch/azimut3/az3_db_record.launch
- launch/azimut3/az3_bag_mapping.launch
- launch/azimut3/az3_mapping_robot_kinect_scan.launch
- launch/azimut3/az3_remote_find_object.launch
- launch/azimut3/az3_mapping_robot_kinect_odom.launch
- launch/azimut3/az3_mapping_robot.launch
- launch/azimut3/az3_mapping_client_nav.launch
-
- rviz [default: true]
- rtabmapviz [default: false]
- sub_data [default: false]
- launch/azimut3/az3_bag_record.launch
- launch/azimut3/az3_mapping_robot_stereo_nav.launch
- launch/tests/test_odometry.launch
-
- type [default: 6]
- nn [default: 3]
- local_map [default: 2000]
- launch/tests/test_stereo_odometry.launch
- launch/tests/test_stereo_data_recorder.launch
- launch/tests/bumblebee.launch
- launch/tests/test_pointxyzrgb.launch
- launch/tests/rgbdslam_datasets.launch
-
- strategy [default: 0]
- feature [default: 6]
- nn [default: 3]
- local_map [default: 1000]
- rviz [default: true]
- rtabmapviz [default: false]
- launch/data_recorder.launch
-
- subscribe_odometry [default: false]
- subscribe_depth [default: true]
- subscribe_stereo [default: false]
- subscribe_laserScan [default: false]
- frame_id [default: camera_link]
- odom_frame_id [default: ]
- output_path [default: output.db]
- record_in_RAM [default: true]
- queue_size [default: 10]
- max_rate [default: 0]
- camera_prefix [default: camera]
- odom_topic [default: odom]
- scan_topic [default: scan]
- launch/rgbd_mapping.launch
-
- rviz [default: false]
- rtabmapviz [default: true]
- frame_id [default: camera_link]
- strategy [default: 0]
- feature [default: 6]
- nn [default: 3]
- max_depth [default: 4.0]
- min_inliers [default: 20]
- inlier_distance [default: 0.02]
- local_map [default: 1000]
- odom_info_data [default: true]