Skip to content

Latest commit

 

History

History
executable file
·
55 lines (36 loc) · 2 KB

README.md

File metadata and controls

executable file
·
55 lines (36 loc) · 2 KB

GlobalLoc3D

Implementation of our paper "Global Localization in Large-scale Point Clouds via Roll-pitch-yaw Invariant Place Recognition and Low-overlap Global Registration" (https://ieeexplore.ieee.org/document/10275135) in PyTorch.

Setup

Dependencies

  1. PyTorch
  2. Faiss
  3. scipy
  4. tensorboardX

Usage

  • Data preparation

    • Get into the folder of 'registration'

      • mkdir build && cd build && make -j8
    • Download KITTI Odometry and KITTI raw

    • Set 'root_dir' in 'kitti_i2i.py' to your own directory that saves KITTI raw

    • Set 'odometry_dir' in 'kitti_i2i.py' to your own directory that saves KITTI odometry

    • Generate index files using 'gen_index_files.py'

    • Run ./registration/build/save_probability_img YOUR_KITTI_RAW_DIR . You can find two folders saving processed images on the same directory of your root directory of KITTI raw.

  • Training

    • Check arguments in main.py and run:
      • python main.py --mode=cluster --dataset=kitti --pooling=netvlad_fc
      • python main.py --mode=train --dataset=kitti --pooling=netvlad_fc
  • Test

    • Place recognition
      • python main.py --mode=test --dataset=kitti --pooling=netvlad_fc --resume=YOUR_TRAINING_DIR --ckpt=best
    • Global localization
      • python main.py --mode=save_pt --dataset=kitti --pooling=netvlad_fc --resume=YOUR_TRAINING_DIR --ckpt=best
      • registration/build/global_localization VALSET_FILENAME GT_POSE_FILENAME MODEL_FILENAME

Acknowledgements

license

Following licenses of the above acknowledged repositories.