Là một dự án mã nguồn mở, OpenDriveLab/UniAD đã đạt 4.7k sao trên GitHub, ngôn ngữ Python. [CVPR 2023 Best Paper Award] Planning-oriented Autonomous Driving
Tóm tắt dựng từ metadata GitHub của chính dự án — chưa có bài review TopGit. Trang sẽ tự động cập nhật khi bài review đầy đủ được xuất bản.
VÌ SAO CHƯA CÓ REVIEW
TopGit viết bài đầy đủ cho repo có nhiều sao nhất và được yêu cầu nhiều nhất. Trang này là snapshot trong thời gian chờ — xem README gốc ở tab READ ME.
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},
}
Trang TopGit này là một snapshot — tab "Readme" hiển thị nguyên văn README của repo (đã bỏ link, giữ ảnh). Repo GitHub ở github.com/OpenDriveLab/UniAD là nguồn chính thức.
OpenDriveLab/UniAD có bao nhiêu sao?
OpenDriveLab/UniAD có 4.7k sao GitHub — tải lại trang để xem số mới nhất, hoặc xem trực tiếp github.com/OpenDriveLab/UniAD. TopGit phản chiếu số sao của GitHub nhưng không cam kết đến từng phút.