|
1 | 1 | # aero-vloc
|
2 |
| -aero-vloc is a tool for UAVs localization using different VPR systems and feature matchers. |
3 |
| -VPR systems AnyLoc, CosPlace, EigenPlaces, MixVPR, NetVLAD are now supported as well as LightGlue and SuperGlue keypoint matchers. |
| 2 | +[](https://github.com/prime-slam/aero-vloc/actions/workflows/ci.yml) |
| 3 | +[](https://github.com/psf/black) |
4 | 4 |
|
5 |
| -## Weights |
6 |
| -Weights for MixVPR, NetVLAD and SuperGlue as well as cluster centers for AnyLoc can be downloaded [here](https://drive.google.com/file/d/1JJWjbaY59XNICiXfQYdwoTYC6pIbzc_4/view?usp=sharing). |
7 |
| -All other necessary files for CosPlace, EigenPlaces and SuperPoint will be downloaded automatically via TorchHub. |
| 5 | +This is the official repository for the paper "Visual place recognition for aerial imagery: A survey". |
8 | 6 |
|
9 |
| -## Usage |
10 |
| -Please check `example.ipynb` for an example of downloading the satellite map, localizing and using the Recall metric. |
| 7 | +<img src="teaser.png"> |
| 8 | + |
| 9 | +## Summary |
| 10 | +This paper introduces a methodology tailored for evaluating VPR techniques specifically |
| 11 | +in the domain of aerial imagery, providing a comprehensive assessment of various methods and their performance. However, we |
| 12 | +not only compare various VPR methods, but also demonstrate the importance of selecting appropriate zoom and overlap levels |
| 13 | +when constructing map tiles to achieve maximum efficiency of VPR algorithms in the case of aerial imagery. |
| 14 | + |
| 15 | +Our benchmark tool supports AnyLoc, CosPlace, EigenPlaces, MixVPR, NetVLAD, SALAD and SelaVPR VPR systems |
| 16 | +as well as LightGlue, SelaVPR and SuperGlue re-ranking techniques. |
| 17 | + |
| 18 | +## Getting started |
| 19 | +The tool has been tested on Python 3.10 with versions of the libraries from `requirements.txt`. |
| 20 | +We recommend using the same parameters for creating a virtual environment. |
| 21 | + |
| 22 | +Please check `example.ipynb` for an example of downloading the satellite map, localizing of aerial imagery and using the Recall metric. |
| 23 | +Weights for MixVPR, NetVLAD, SuperGlue and SelaVPR as well as cluster centers for AnyLoc can be downloaded [here](https://drive.google.com/file/d/1D10Ulavy9VNXZb-0GTCngbheLyfIkrf-/view?usp=sharing). |
| 24 | +To use SelaVPR you will also have to download the pre-trained DINOv2 model [here](https://dl.fbaipublicfiles.com/dinov2/dinov2_vitl14/dinov2_vitl14_pretrain.pth). |
| 25 | +All other necessary files for CosPlace, EigenPlaces, LightGlue and SALAD will be downloaded automatically via TorchHub. |
| 26 | + |
| 27 | +## Datasets |
| 28 | +We used the [VPAir](https://github.com/AerVisLoc/vpair) datasets (from the [Anyloc repo](https://github.com/AnyLoc/AnyLoc?tab=readme-ov-file#included-datasets)) |
| 29 | +as well as [ALTO](https://github.com/MetaSLAM/ALTO) and [MARS-LVIG](https://mars.hku.hk/dataset.html) for our experiments. |
| 30 | + |
| 31 | +However, you can use any dataset as a query sequence, please check `aero-vloc/primitives/uav_seq.py` for the test data format. |
| 32 | + |
| 33 | +## Citation |
| 34 | +If this repository aids your research, please consider starring it ⭐️ and citing the paper: |
| 35 | +``` |
| 36 | +SOON! |
| 37 | +``` |
0 commit comments