BalveerSinghYT / YDM-SLAM

YDM-SLAM: YOLOv8-powered Dynamic Mapping of Environment using ORB-SLAM3
19 stars 1 forks source link

YDM-SLAM: YOLOv8-powered Dynamic Mapping of Environment with ORB-SLAM3

This is an improved version of ORB-SLAM3 that adds an semantic mask-based object detection segmentation module implemented with YOLOv8-Seg to achieve SLAM in dynamic environments.

Getting Started

0. Prerequisites

We have tested on:

C++14

OS = Ubuntu 20.04

OpenCV = 4.2

Eigen3 = 3.3.9

Pangolin = 0.5

1. Download ONNX Runtime

You can download the compatible version of onnx-runtime from Microsoft ONNX-Runtime We tested on onnxruntime-linux-x64-gpu-1.9.0

then extract the folder using the below command to third-party folder and update in CMakeLists.txt

tar -xzvf onnxruntime-linux-x64-gpu-1.9.0.tgz -C PATH/YDM-SLAM/Thirdparty

2. Build

cd YDM-SLAM
chmod +x build.sh
./build.sh

Only the rgbd_tum target will be build.

3. Execute

TUM-RGBD Dataset

Download any dynamic sequence from TUM-RGBD dataset

./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUMX.yaml PATH_TO_SEQUENCE_FOLDER ASSOCIATIONS_FILE

4. Demo

Watch the Demo Video Here