This repository contains two parts: one is ASDNet generating ASD in folder ASDNet, the other is ASD-SLAM which derived from ORB-SLAM2.
- ROS (tested with indigo and kinetic)
- Libtorch
https://github.com/pytorch/pytorch.git git submodule update --init --recursive mkdir build cd build python ../tools/build_libtorch.py
You can use the following commands to download and compile the package.
git clone https://github.com/mataiyuan/ASD-SLAM.git
cd ASD-SLAM && catkin build vslam
When you compile the code for the first time, you need to modify CMakeLists.txt in folder vslam, you should set your own APPEND CMAKE_PREFIX_PATH list(APPEND CMAKE_PREFIX_PATH "/home/mataiyuan/Ku/pytorch/torch/share/cmake/Torch")
.
- Run the ASDNet.py to train to learn descriptors ASD
python ASDNet.py
- run ASD-SLAM on KITTI or EUROC datasets:
bash run_vslam_kitti.sh
or
bash run_vslam_euroc.sh
we test ASD-SLAM LDSO ORB-SLAM2 on KITTI datasets , the results are in folder /experiment_result
. you can evaluate the results with rpg_trajectory_evaluation.
After you run bash run_vslam_kitti.sh or bash run_vslam_euroc.sh , it will save the map.map
and trajectory in folder /DataSave
, the format of trajectory is origanized as timestamp , qx , qy , qz , qw , px , py , pz
. If you want to check the map, you can build the folder display_map
like this:
catkin build display_map --no-deps
./display_map map_dir