OpenDriveLab/UniAD is an open-source project on GitHub with 4.7k stars, written primarily in Python. [CVPR 2023 Best Paper Award] Planning-oriented Autonomous Driving
Snapshot summary built from the project's own GitHub metadata — there's no written TopGit review yet. The page will update automatically when a full review is published.
WHY NO REVIEW YET
TopGit writes full reviews for the most-starred, most-requested repositories. This page is a snapshot until then — see the READ ME tab for the original README in full.
Tools release for nuPlan and NAVSIM benchmark. [ETA 2025Q2]
Table of Contents:
Highlights
News
Getting Started
Installation
Prepare Dataset
Evaluation Example
GPU Requirements
Train/Eval
Results and Models
License
Citation
Highlights
:oncoming_automobile: Planning-oriented philosophy: UniAD is a Unified Autonomous Driving algorithm framework following a planning-oriented philosophy. Instead of standalone modular design and multi-task learning, we cast a series of tasks, including perception, prediction and planning tasks hierarchically.
:trophy: SOTA performance: All tasks within UniAD achieve SOTA performance, especially prediction and planning (motion: 0.71m minADE, occ: 63.4% IoU, planning: 0.31% avg.Col)
News
2025/10/29: We release a new version of UniAD implementation. Please see the Release Note.
Paper Title Change: To avoid confusion with the "goal-point" navigation in Robotics, we change the title from "Goal-oriented" to "Planning-oriented" suggested by Reviewers. Thank you!
2024/08/27 New feature: Implementation for CARLA and closed-loop evaluation on CARLA Leaderboard 2.0 scenarios are available in Bench2Drive.
2023/08/03 Bugfix [Commit]: Previously, the visualized planning results were in opposition on the x axis, compared to the ground truth. Now it's fixed.
2023/06/12 Bugfix [Ref: https://github.com/OpenDriveLab/UniAD/issues/21]: Previously, the performance of the stage1 model (track_map) could not be replicated when trained from scratch, due to mistakenly adding loss_past_traj and freezing img_neck and BN. By removing loss_past_traj and unfreezing img_neck and BN in training, the reported results could be reproduced (AMOTA: 0.393, stage1_train_log).
2023/04/18 New feature: You can replace BEVFormer with other BEV Encoding methods, e.g., LSS, as long as you provide the bev_embed and bev_pos in track_train and track_inference. Make sure your bevs and ours are of the same shape.
2023/04/18 Base-model checkpoints are released.
2023/03/29 Code & model initial release v1.0.
2023/03/21 🌟🌟 UniAD is accepted by CVPR 2023, as an Award Candidate (12 out of 2360 accepted papers)!
2022/12/21 UniAD paper is available on arXiv.
Getting Started
Installation
Prepare Dataset
Evaluation Example
GPU Requirements
Train/Eval
Results and Pre-trained Models
UniAD is trained in two stages. Pretrained checkpoints of both stages will be released and the results of each model are listed in the following tables.
Stage1: Perception training
We first train the perception modules (i.e., track and map) to obtain a stable weight initlization for the next stage. BEV features are aggregated with 5 frames (queue_length = 5).
Method
Encoder
Tracking AMOTA
Mapping IoU-lane
config
Download
UniAD-B
R101
0.394
0.294
base-stage1
base-stage1
Stage2: End-to-end training
We optimize all task modules together, including track, map, motion, occupancy and planning. BEV features are aggregated with 3 frames (queue_length = 3).
Method
Encoder
Tracking AMOTA
Mapping IoU-lane
Motion minADE
Occupancy IoU-n.
Planning avg.Col.
config
Download
UniAD-B
R101
0.380
0.314
0.794
64.0
0.29
base-stage2
base-stage2
Planning results on the nuScense benchmark
Method
Encoder
L2(m)
Col. Rate(%)
1s
2s
3s
Avg.
1s
2s
3s
Avg.
UniAD-B
R101
0.29
0.89
1.53
0.90
0.15
0.20
0.53
0.29
✨NEW in v2.0: Planning results on the NAVSIM benchmark (from NAVSIM).
Method
Encoder
NC
DAC
TTC
Comf.
EP
PDMS
UniAD
R34
97.8
91.9
92.9
100
78.8
83.4
Checkpoint Usage
Download the checkpoints you need into UniAD/ckpts/ directory.
You can evaluate these checkpoints to reproduce the results, following the evaluation section in TRAIN_EVAL.md.
You can also initialize your own model with the provided weights. Change the load_from field to path/of/ckpt in the config and follow the train section in TRAIN_EVAL.md to start training.
Model Structure
The overall pipeline of UniAD is controlled by uniad_e2e.py which coordinates all the task modules in UniAD/projects/mmdet3d_plugin/uniad/dense_heads. If you are interested in the implementation of a specific task module, please refer to its corresponding file, e.g., motion_head.
License
All assets and code are under the Apache 2.0 license unless specified otherwise.
Citation
If you find our project useful for your research, please consider citing our paper and codebase with the following BibTeX:
@inproceedings{hu2023_uniad,
title={Planning-oriented Autonomous Driving},
author={Yihan Hu and Jiazhi Yang and Li Chen and Keyu Li and Chonghao Sima and Xizhou Zhu and Siqi Chai and Senyao Du and Tianwei Lin and Wenhai Wang and Lewei Lu and Xiaosong Jia and Qiang Liu and Jifeng Dai and Yu Qiao and Hongyang Li},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
year={2023},
}
The most recent commit recorded on OpenDriveLab/UniAD was 9 months ago, based on the GitHub push timestamp. The repository has 549 forks — one of the better signals of community interest.
How many stars does OpenDriveLab/UniAD have?
OpenDriveLab/UniAD has 4.7k GitHub stars — refresh the page for the live number, or check github.com/OpenDriveLab/UniAD. TopGit mirrors GitHub's count but does not claim minute-by-minute accuracy.
What language is OpenDriveLab/UniAD written in?
OpenDriveLab/UniAD is written primarily in Python. GitHub's language field is based on the largest share of bytes in the default branch.
What topics is OpenDriveLab/UniAD associated with?
GitHub's repository topics for OpenDriveLab/UniAD: "autonomous-driving", "autonomous-driving-framework", "bev-segmentation", "end-to-end-autonomous-driving", "motion-planning", "motion-prediction", "multi-object-tracking", "occupancy-prediction", "perception-prediction-planning". TopGit's editorial category is open-source.
Where do I read more about OpenDriveLab/UniAD?
This TopGit page is a snapshot — the READ ME tab shows the project's own README content (links stripped, images preserved). The GitHub repository at github.com/OpenDriveLab/UniAD is the definitive source.
Read full README in the tab above.
Curious whether UniAD is right for you?
Let ChatGPT, Claude, or Perplexity look into it — click below and see what AI actually says about UniAD.