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.