This work was done during my master's thesis under Prof. Leal-Taixe and Qunjie Zhou.
Visual localization pipeline using following steps
- Find similar database images (neighbors) by using global descriptors
- Extract local descriptors from neighboring database and query image
- Match local descriptors
- Calculate 6-DoF pose using RANSAC scheme
Overall concept |
Evaluation via online evaluation system with benchmark results available.
GeM / Superpoint | Day | Night |
---|---|---|
High precision | 71.0 | 31.6 |
Medium precision | 79.5 | 46.9 |
Coarse precision | 90.0 | 65.3 |
python evaluate.py --ratio_thresh 0.8 --reproj_error 14.0 --n_neighbors 20 --global_method Cirtorch --local_method Superpoint
GeM / SIFT | Day | Night |
---|---|---|
High precision | 76.3 | 19.4 |
Medium precision | 83.7 | 28.6 |
Coarse precision | 87.7 | 36.7 |
Command to reproduce result:
python evaluate.py --ratio_thresh 0.75 --n_neighbors 20 --global_method Cirtorch
To use artificial night images mentioned in thesis you can download them here
Evaluated using following hardware:
- Intel(R) Xeon(R) CPU E5520 @ 2.27GHz
- GeForce GTX TITAN X
Colmap | Superpoint | |
---|---|---|
Setup time | 50 seconds | 45 seconds |
Mean time / img | <1 seconds | 3 seconds |
Median time / img | <1 seconds | 3 seconds |
Max time / img | 2 seconds | 14 seconds |
Prerequisites:
- Install conda
- Download AachenDayNight dataset
- (Optional) Install Colmap
Example for start on Linux
git clone https://github.com/a1302z/hierarchical_visual_localisation.git
cd hierarchical_visual_localisation
conda env create -f requirements.yml
mkdir data
cd data
wget https://syncandshare.lrz.de/dl/fiQXCXZ9ibmrm7rwUJzAvNL4
cd ..
mv <path to AachenDayNight dataset> data/
The concept of hierarchical localisation was introduced in this paper.
We used code from the following repositories.
If we missed any credits please let us know.