zhangleino1 / niloc

Neural Inertial Localization

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Neural Inertial Localization

Paper: CVPR 2022, arXiv
Website: https://sachini.github.io/niloc
Demo: https://youtu.be/FmkfUKhKe2Q


This is the implementation of the approach described in the paper.

Herath, S., Caruso, D., Liu, C., Chen, Y. and Furukawa, Y., Neural Inertial Localization. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) 2022.

We provide the code for reproducing our results, datasets as well as pre-trained models.

Please cite the following paper is you use the code, paper, models or data.


Instructions

  1. Setup conda environment from niloc_env.yaml

  2. Follow instructions on preprocess/README.md to preprocess real data and optionally, generate synthetic data.

  3. Setup necessary file paths in niloc/config. (dataset: dataset paths, grid: map image paths, io: output paths)

  4. [Optional] Pretrain using IMU + synthetic data. Parameters used in paper are set as defaults.

    ./train_synthetic.sh <building>
    
  5. Train using IMU data. [Optional] load pretrained weights.

    ./train_imu.sh <building> [<path to pretrained checkpoint>]
    
  6. Evaluate

    • Select the checkpoints to use and create checkpoint file described in niloc/cmd_test_file.py
    ./test_imu.sh <building> <checkpoint file>
    

Please refer to the code for advance configurations.

About

Neural Inertial Localization

License:GNU General Public License v3.0


Languages

Language:Python 98.6%Language:Shell 1.4%