===== Algorithm Creation =====
How to create algorithm in SLAM-Hive System.
==== Full Version ====
=== 1. Build SLAM algorithm images ===
We provide some SLAM algorithms Dockerfile and running scripts, here is an example to build an image:
mkdir -p SLAM_Hive/slam_hive_configurations
cd SLAM_Hive
git clone https://github.com/SLAM-Hive/slam_hive_web.git
git clone https://github.com/SLAM-Hive/slam_hive_datasets.git
git clone https://github.com/SLAM-Hive/slam_hive_results.git
mkdir slam_hive_algos
cd slam_hive_algos
git clone https://github.com/SLAM-Hive/orb-slam2-ros-mono.git
cd orb-slam2-ros-mono
sudo chmod +x install.sh
./install.sh
You can check whether the image is successfully built as follows:
$ docker images
You can see:
slam-hive-algorithm orb-slam2-ros-mono [IMAGE ID] [CREATED] [SIZE]
Go go to other directory in // /SLAM_Hive/slam_hive_algos/<> // and execute the above command to build remaining images. After that you will see the following images:
REPOSITORY TAG IMAGE ID CREATED SIZE
slam-hive-evaluation evo 0254b6ded2cb 5 weeks ago 1.79GB
slam-hive-algorithm vins-mono de2b13e0fc07 5 weeks ago 2.96GB
slam-hive-algorithm vins-fusion-mono-imu 9078af9ba64a 7 days ago 3.1GB
slam-hive-algorithm vins-fusion-stereo 9078af9ba64a 7 days ago 3.1GB
slam-hive-algorithm vins-fusion-stereo-imu 9078af9ba64a 7 days ago 3.1GB
slam-hive-algorithm orb-slam2-ros-mono 2f8241d1df9a 6 weeks ago 3.39GB
slam-hive-algorithm orb-slam2-ros-rgbd 2f8241d1df9a 6 weeks ago 3.39GB
slam-hive-algorithm orb-slam2-ros-stereo 2f8241d1df9a 6 weeks ago 3.39GB
slam-hive-algorithm orb-slam3-ros-mono 28c13955a331 9 days ago 4.17GB
slam-hive-algorithm orb-slam3-ros-mono-inertial 28c13955a331 9 days ago 4.17GB
...
=== 2. Add new SLAM algorithm to SLAM-Hive ===
For example, you want to upload a new SLAM algorithms named "New-SLAM" with mono mode and stereo mode:
You can firstly create Docker images following other provided algorithms and name them as: "slam-hive-algorithm:new-slam-mono" and "slam-hive-algorithm:new-slam-stereo".
Then you input:
Image tag: new-slam-mono
Dockerfile and mapping script address link: Docker build link # If you provide
Algorithm Class Name: new-slam
Description: # Some description of algorithm
Attribute: # Some special attributes of algorithm
After all, you can click //save// button to add the algorithm to the database.