GithubHelp home page GithubHelp logo

ericlai0323 / orb_slam3_ros Goto Github PK

View Code? Open in Web Editor NEW

This project forked from emanuelenencioni/orb_slam3_ros

0.0 0.0 0.0 189.37 MB

ORB SLAM3 with a wrapper for ROS 1 (noetic)

License: GNU General Public License v3.0

Shell 0.03% C++ 98.50% Python 0.82% CMake 0.65%

orb_slam3_ros's Introduction

ROS wrapper for ORB-SLAM3

A ROS wrapper for ORB-SLAM3. Based on this package. This is a modified version of ORB SLAM3, which includes a method in the API that returns all the map points in the active map.

Tested with ORB-SLAM3 V1.0, primarily on Ubuntu 20.04.

Installation

General guide: first, install all of ORB SLAM3 dependencies. Then, install this package in a catkin build environment.

1. ORB-SLAM3

  • Install the prerequisites. Make sure to download Pangolin release (0.8), opencv 4.4.

  • Make sure that libORB_SLAM3.so is created in the ORB_SLAM3/lib folder. If not, check the issue list from the original repo and retry.

2. ORB_SLAM3_ROS

  • Clone the package. Note that it should be a catkin build workspace.
cd ~/catkin_ws/src/
git clone https://github.com/emanuelenencioni/ORB_SLAM3_ROS.git
  • Build ORB_SLAM3:
cd /ORB_SLAM3_ROS/ORB_SLAM3
chmod +x build.sh
./build.sh

  • Build the package normally.
cd ~/catkin_ws/
catkin build
  • (Optional) Install hector-trajectory-server to visualize the trajectory.
sudo apt install ros-[DISTRO]-hector-trajectory-server
  • If everything works fine, you can now try the different launch files in the launch folder.

3. How to run

EuRoC dataset:

  • In one terminal, launch the node:
roslaunch orb_slam3_ros_wrapper euroc_monoimu.launch
  • In another terminal, playback the bag:
rosbag play MH_01_easy.bag

Similarly for other sensor types.

Topics

The following topics are published by each node:

  • /orb_slam3/map (PointCloud2): all point of the map.
  • /orb_slam3/camera_pose (PoseStamped): current left camera pose in world frame, as returned by ORB-SLAM3.
  • tf: transformation from camera frame to world frame.

P.S. There is also Italian documentation available that explains the code and includes evaluations of the system.

orb_slam3_ros's People

Contributors

emanuelenencioni avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.