Skip to content
University-1652: A Multi-view Multi-source Benchmark for Drone-based Geo-localization 🚁 annotates 1652 buildings in 72 universities around the world.
Python MATLAB
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
SIFT Update README.md Mar 7, 2020
State-of-the-art Update README.md Apr 5, 2020
docs Add files via upload Mar 26, 2020
image_4K show data samples Nov 19, 2019
tutorial Update README.md Apr 5, 2020
.gitignore add show functions Nov 19, 2019
LICENSE Create LICENSE Feb 28, 2020
README.md Update README.md Apr 5, 2020
Request.md Update Request.md Feb 28, 2020
autoaugment.py show data samples Nov 19, 2019
demo.py show data samples Nov 19, 2019
demo_4K.py show data samples Nov 19, 2019
evaluate_gpu.py add webpage Feb 27, 2020
gallery_name.txt add webpage Feb 27, 2020
model.py Fix Typo / Results are not changed. Mar 8, 2020
prepare_cvusa.py add webpage Feb 27, 2020
prepare_limit_view.py show data samples Nov 19, 2019
query_name.txt add webpage Feb 27, 2020
random_erasing.py v0.5 Nov 4, 2019
show.png show data samples Nov 19, 2019
show_data.py add webpage Feb 27, 2020
test.py add webpage Feb 27, 2020
test_4K.py show data samples Nov 19, 2019
test_ImageNet.py final Nov 10, 2019
test_Place365.py final Nov 10, 2019
test_cvusa.py add webpage Feb 27, 2020
test_train.py update stride Nov 6, 2019
train.py show data samples Nov 19, 2019
train_18_sample.py show data samples Nov 19, 2019
train_1_sample.py show data samples Nov 19, 2019
train_27_sample.py show data samples Nov 19, 2019
train_3_sample.py show data samples Nov 19, 2019
train_9_sample.py show data samples Nov 19, 2019
train_cvusa.py add webpage Feb 27, 2020
train_no_street.py final Nov 10, 2019
utils.py add webpage Feb 27, 2020

README.md

University1652-Baseline

Python 3.6 Language grade: Python Total alerts License: MIT

VideoDemo

[Paper] [Explore Drone-view Data] [Explore Satellite-view Data] [Explore Street-view Data] [Video Sample] [中文介绍]

This repository contains the dataset link and the code for our paper University-1652: A Multi-view Multi-source Benchmark for Drone-based Geo-localization. We collect 1652 buildings of 72 universities around the world. Thank you for your kindly attention.

Task 1: Drone-view target localization. (Drone -> Satellite) Given one drone-view image or video, the task aims to find the most similar satellite-view image to localize the target building in the satellite view.

Task 2: Drone navigation. (Satellite -> Drone) Given one satellite-view image, the drone intends to find the most relevant place (drone-view images) that it has passed by. According to its flight history, the drone could be navigated back to the target place.

Table of contents

About Dataset

The dataset split is as follows:

Split #imgs #classes #universities
Training 50,218 701 33
Query_drone 37,855 701 39
Query_satellite 701 701 39
Query_ground 2,579 701 39
Gallery_drone 51,355 951 39
Gallery_satellite 951 951 39
Gallery_ground 2,921 793 39

We note that there are no ovelaps between 33 univeristies of training set and 39 univeristies of test set.

News

12 March 2020 I add the state-of-the-art page for geo-localization and tutorial, which will be updated soon.

Code Features

Now we have supported:

  • Float16 to save GPU memory based on apex
  • Multiple Query Evaluation
  • Re-Ranking
  • Random Erasing
  • ResNet/VGG-16
  • Visualize Training Curves
  • Visualize Ranking Result
  • Linear Warm-up

Prerequisites

  • Python 3.6
  • GPU Memory >= 8G
  • Numpy > 1.12.1
  • Pytorch 0.3+
  • [Optional] apex (for float16)

Getting started

Installation

git clone https://github.com/pytorch/vision
cd vision
python setup.py install
  • [Optinal] You may skip it. Install apex from the source
git clone https://github.com/NVIDIA/apex.git
cd apex
python setup.py install --cuda_ext --cpp_ext

Dataset & Preparation

Download [University-1652] upon request. You may use the request template.

Or download CVUSA / CVACT.

Train & Evaluation

Train & Evaluation University-1652

python train.py --name three_view_long_share_d0.75_256_s1_google  --extra --views 3  --droprate 0.75  --share  --stride 1 --h 256  --w 256 --fp16; 
python test.py --name three_view_long_share_d0.75_256_s1_google

Default setting: Drone -> Satellite If you want to try other evaluation setting, you may change these lines at: https://github.com/layumi/University1652-Baseline/blob/master/test.py#L217-L225

Train & Evaluation CVUSA

python prepare_cvusa.py
python train_cvusa.py --name usa_vgg_noshare_warm5_lr2 --warm 5 --lr 0.02 --use_vgg16 --h 256 --w 256  --fp16 --batchsize 16;
python test_cvusa.py  --name usa_vgg_noshare_warm5_lr2 

Trained Model

You could download the trained model at GoogleDrive. After download, please put model folders under ./model/.

Citation

The following paper uses and reports the result of the baseline model. You may cite it in your paper.

@article{zheng2020joint,
  title={University-1652: A Multi-view Multi-source Benchmark for Drone-based Geo-localization},
  author={Zhedong Zheng, Yunchao Wei, Yi Yang},
  journal={arXiv 2002.12186},
  year={2020}
}

Related Work

  • Instance Loss Code
  • Lending Orientation to Neural Networks for Cross-view Geo-localization Code
  • Predicting Ground-Level Scene Layout from Aerial Imagery Code
You can’t perform that action at this time.