forked fromzang09/ORB_SLAM3_ROS2
- Notifications
You must be signed in to change notification settings - Fork0
norlab-ulaval/ORB_SLAM3_ROS2
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
This repository is ROS2 wrapping to use ORB_SLAM3
I have tested on below version.
- Ubuntu 20.04
- ROS2 foxy
- OpenCV 4.2.0
Build ORB_SLAM3
- Go to thisrepo and follow build instruction.
Install related ROS2 package
$ sudo apt install ros-$ROS_DISTRO-vision-opencv && sudo apt install ros-$ROS_DISTRO-message-filters- Clone repository to your ROS workspace
$ mkdir -p colcon_ws/src$ cd ~/colcon_ws/src$ git clone https://github.com/zang09/ORB_SLAM3_ROS2.git orbslam3_ros2Now, you are ready to build!
$ cd ~/colcon_ws$ colcon build --symlink-install --packages-select orbslam3- If you cannot find
sophus/se3.hpp:
Go to yourORB_SLAM3_ROOT_DIRand install sophus library.
$ cd ~/{ORB_SLAM3_ROOT_DIR}/Thirdparty/Sophus/build$ sudo make install- Please compile with
OpenCV 4.2.0version.Refer this#issue
- Source the workspace
$ source ~/colcon_ws/install/local_setup.bash- Run orbslam mode, which you want.
This repository only supportMONO, STEREO, RGBD, STEREO-INERTIALmode now.
You can find vocabulary file and config file in here. (e.g.orbslam3_ros2/vocabulary/ORBvoc.txt,orbslam3_ros2/config/monocular/TUM1.yamlfor monocular SLAM).
MONOmode
$ ros2 run orbslam3 mono PATH_TO_VOCABULARY PATH_TO_YAML_CONFIG_FILESTEREOmode
$ ros2 run orbslam3 stereo PATH_TO_VOCABULARY PATH_TO_YAML_CONFIG_FILE BOOL_RECTIFYRGBDmode
$ ros2 run orbslam3 rgbd PATH_TO_VOCABULARY PATH_TO_YAML_CONFIG_FILESTEREO-INERTIALmode
$ ros2 run orbslam3 stereo-inertial PATH_TO_VOCABULARY PATH_TO_YAML_CONFIG_FILE BOOL_RECTIFY [BOOL_EQUALIZE]To play ros1 bag file, you should installros1 noetic &ros1 bridge.
Here is alink to demonstrate example ofros1-ros2 bridge procedure.
If you haveros1 noetic andros1 bridge already, open your terminal and follow this:
(Shell A, B, C, D is all different terminal, e.g.stereo-inertial mode)
- Download EuRoC Dataset (
V1_02_medium.bag)
$ wget -P ~/Downloads http://robotics.ethz.ch/~asl-datasets/ijrr_euroc_mav_dataset/vicon_room1/V1_02_medium/V1_02_medium.bag- Launch Terminal
(e.g.ROS1_INSTALL_PATH=/opt/ros/noetic,ROS2_INSTALL_PATH=/opt/ros/foxy)
#Shell A:source ${ROS1_INSTALL_PATH}/setup.bashroscore#Shell B:source ${ROS1_INSTALL_PATH}/setup.bashsource ${ROS2_INSTALL_PATH}/setup.bashexport ROS_MASTER_URI=http://localhost:11311ros2 run ros1_bridge dynamic_bridge#Shell C:source ${ROS1_INSTALL_PATH}/setup.bashrosbag play ~/Downloads/V1_02_medium.bag --pause /cam0/image_raw:=/camera/left /cam1/image_raw:=/camera/right /imu0:=/imu#Shell D:source ${ROS2_INSTALL_PATH}/setup.bashros2 run orbslam3 stereo-inertial PATH_TO_VOCABULARY PATH_TO_YAML_CONFIG_FILE BOOL_RECTIFY [BOOL_EQUALIZE]- Press
spacebarinShell Cto resume bag file.
This repository is modified fromthis repository.
To addstereo-inertial mode and improve build difficulites.
About
ROS2 wrapping package for orbslam3 library
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
No releases published
Packages0
No packages published
Languages
- C++76.9%
- CMake23.1%