GithubHelp home page GithubHelp logo

eacsai / cvlnet Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yujiaoshi/cvlnet

0.0 0.0 0.0 523 KB

ACCV 2022 oral "CVLNet: Cross-View Semantic Correspondence Learning for \\Video-based Camera Localization"

Python 99.83% Shell 0.17%

cvlnet's Introduction

CVLNet

ACCV2022 oral "CVLNet: Cross-View Feature Correspondence Learning for Video-based Camera Localization" alt text

Abstract

In this paper, we tackle cross-view video-based camera localization. The task is to determine the pose of a ground-based camera from a continuous sequence of images by matching them to a large overhead satellite image. To this end, a Cross-view Video-based Localization Deep Neural Network, dubbed CVLNet, is developed to establish semantic correspondences between the ground-view video sequence and the satellite image using cross-view geometry between the two views. Specifically, we devise a Geometry-driven View Projection (GVP) module, a Photo-consistency Constrained Sequence Fusion (PCSF) module, and a Scene-prior driven Similarity Matching (SSM) strategy in the CVLNet. The GVP is designed to align ground-view deep features to overhead-view satellite features in the same domain. The PCSF module takes a continuous video as input and outputs a fused global representation for the sequential ground-view observations. This significantly improves the discriminate power of the learned ground-view descriptors. Moreover, our SSM strategy estimates the displacement between a query camera location and the center of the retrieved satellite image, leading to accurate localization. To train the CVLNet, we collect satellite images from Google Map for the KITTI dataset and construct a novel cross-view video-based localization benchmark dataset, named KITTI-CVL. Extensive experiments have confirmed the effectiveness of our method.

Experiment Dataset

Our experiments is conducted on the KITTI dataset. Please first download the raw data (ground images) from http://www.cvlibs.net/datasets/kitti/raw_data.php, and store them according to different date (not category). For our collected satellite images for both datasets, please first fill this Google Form, we will then send you the link for download.

Your dataset folder structure should be like:

KITTI:

raw_data:

2011_09_26:

  2011_09_26_drive_0001_sync:
  
    image_00:

image_01:

    image_02:

    image_03:

    oxts:

  ...
  
2011_09_28:

2011_09_29:

2011_09_30:

2011_10_03:

satmap:

train_10mgap:

  2011_09_26:
  
  2011_09_29:
  
  2011_09_30:
  
  2011_10_03:
  
test:

  2011_09_26_drive_0002_sync
  
  2011_09_26_drive_0005_sync
  
  2011_09_26_drive_0015_sync
  
  2011_09_26_drive_0036_sync
  
  2011_09_26_drive_0046_sync
  
  2011_09_30_drive_0016_sync
  
  2011_09_30_drive_0034_sync

Codes

Training

python train.py

Testing

python test.py

In the test.py, "test_wo_destractors=True" indicates testing on both Test1 and Tes2; "test_wo_destractors=False" indicates only test on Test2.

Models:

Our trained model is available here.

Publications

This work is published in ACCV 2022.
[CVLNet: Cross-View Semantic Correspondence Learning for Video-based Camera Localization]

cvlnet's People

Contributors

yujiaoshi avatar machine-no-learning avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.