Skip to content
/ pl2map Public

[IROS 2024] Representing 3D sparse map points and lines for camera relocalization

License

Notifications You must be signed in to change notification settings

ais-lab/pl2map

Repository files navigation

Representing 3D sparse map points and lines for camera relocalization


Representing 3D sparse map points and lines for camera relocalization
Bach-Thuan Bui, Huy-Hoang Bui, Dinh-Tuan Tran, Joo-Ho Lee
2024 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)

demo_vid

Todo list:

  • release code
  • add to work with custom data

Installation

Python 3.9 + required packages

git clone https://github.com/ais-lab/pl2map.git
cd pl2map
git submodule update --init --recursive
conda create --name pl2map python=3.9
conda activate pl2map
# Refer to https://pytorch.org/get-started/previous-versions/ to install pytorch compatible with your CUDA
python -m pip install torch==1.12.0 torchvision==0.13.0 
python -m pip install -r requirements.txt

Supported datasets

Please run the provided scripts to prepare and download the data which has been preprocessed by running:

7scenes

./prepare_scripts/seven_scenes.sh

Cambridge Landmarks

./prepare_scripts/cambridge.sh 

Indoor-6

./prepare_scripts/indoor6.sh

Evaluation with pre-trained models

Please download the pre-trained models by running:

./prepare_scripts/download_pre_trained_models.sh

For example, to evaluate KingsCollege scene:

python runners/eval.py --dataset Cambridge --scene KingsCollege -expv pl2map

Training

python runners/train.py --dataset Cambridge --scene KingsCollege -expv pl2map_test

Supported detectors

Lines

Points

Citation

If you use this code in your project, please consider citing the following paper:

@article{bui2024pl2map,
  title={Representing 3D sparse map points and lines for camera relocalization},
  author={Bui, Bach-Thuan and Bui, Huy-Hoang and Tran, Dinh-Tuan and Lee, Joo-Ho},
  booktitle={2024 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
  year={2024}
}

This code builds on previous camera relocalization pipeline, namely D2S, please consider citing:

@article{bui2024d2s,
  title={D2S: Representing sparse descriptors and 3D coordinates for camera relocalization},
  author={Bui, Bach-Thuan and Bui, Huy-Hoang and Tran, Dinh-Tuan and Lee, Joo-Ho},
  journal={IEEE Robotics and Automation Letters},
  year={2024}
}

Acknowledgement

This code is built based on Limap, and LineTR. We thank the authors for their useful source code.