GithubHelp home page GithubHelp logo

zp5070 / neural_map_prior Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tsinghua-mars-lab/neural_map_prior

0.0 0.0 0.0 491.11 MB

The official implementation of the CVPR2023 paper titled “Neural Map Prior for Autonomous Driving”.

Home Page: https://tsinghua-mars-lab.github.io/neural_map_prior/

License: Apache License 2.0

Shell 0.08% Python 99.92%

neural_map_prior's Introduction

Neural Map Prior for Autonomous Driving (CVPR 2023)

Xuan Xiong, Yicheng Liu, Tianyuan Yuan, Yue Wang, Yilun Wang, Hang Zhao*

Table of Contents

Introduction

A neural representation of HD maps to improve local map inference performance for autonomous driving.

This repo is the official implementation of "Neural Map Prior for Autonomous Driving"(CVPR 2023). Our main contributions are:

  • A novel mapping paradigm: integrates the maintenance of global maps and the inference of online local maps.
  • Efficient fusion modules: current-to-prior attention and gated recurrent unit modules facilitate the efficient fusion of global and local map features.
  • Easy integration with HD map learning methods: Neural Map Prior can be easily applied to various map segmentation and detection methods. Simple replacement for your online map inference model in your novel algorithms. Moreover, our approach demonstrates significant advancements in challenging scenarios, such as bad weather conditions and longer perception ranges.
  • Sparse map tiles: a memory-efficient approach for storing neural representations of city-scale HD maps.

Notes

  • The most challenging part of the training and testing process is distributing the appropriate map tile to each GPU and keeping samples in the same map tiles updated on the same GPU. This process includes two steps:
    1. Determine the map tile for each GPU. This can be done with some functions in project/neural_map_prior/map_tiles/lane_render.py.
    2. Rewrite the sampler so that each GPU can only sample the samples in the map tile assigned to it. This can be done in tools/data_sampler.py.

Model Zoo

We experiment with BEVFormer, lift-spat-shoot, HDMapNet and VectorMapNet architectures on nuScenes.

HD semantic map [BEVFormer] (on nuScenes validation)

Model Config Modality Divider Crossing Boundary All(mIoU) Checkpoint Link
BEVFormer Camera 49.20 28.67 50.43 42.76 model
BEVFormer + NMP Camera 54.20 34.52 56.94 48.55 model

Installation

Please check installation for installation and data_preparation for preparing the nuScenes dataset.

Getting Started

Please check getting_started for training, evaluation, and visualization of neural_map_prior.

Architecture

visualization

Contact

Any questions or suggestions are welcome!

Acknowledgements

We would like to thank all who contributed to the open-source projects listed below. Our project would be impossible to get done without the inspiration of these outstanding researchers and developers.

The designate project/neural_map_prior as a module is inspired by the implementations of DETR3DGitHub stars.

Citation

If you find neural_map_prior useful in your research or applications, please consider citing:

@inproceedings{xiong2023neuralmapprior,
  author  = {Xiong, Xuan and Liu, Yicheng and Yuan, Tianyuan and Wang, Yue and Wang, Yilun and Zhao Hang},
  title   = {Neural Map Prior for Autonomous Driving},
  journal = {Proceedings of the IEEE/CVF International Conference on Computer Vision (CVPR)},
  year    = {2023}
}

License

This project is licensed under the Apache 2.0 license.

neural_map_prior's People

Contributors

abbyxxn 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.