目录

[!IMPORTANT] 🌟 请访问 opendrivelab.com 获取最新动态!

UniAD: Planning-oriented Autonomous Driving

arXiv | 视频 | 海报 | 幻灯片


poster

模型规划效果演示

demo

🚀 2025/10/29 UniAD 2.0 发布

我们很高兴宣布 UniAD 2.0 正式发布!这是一次里程碑式的版本更新,带来了关键升级与面向未来的能力!

🔑 主要改进

  • 🛠️ 框架:迁移至 mmdet3d 1.xtorch 2.x(当前常用版本)。详见 发布说明
  • 🔄 兼容性:保留既有工作流——可通过 评测示例 复现我们的结果。
  • 📊 数据集:集成 nuPlanNAVSIM 数据集。

📅 待办清单

  • 框架升级(mmdet3d 1.0.0rc6torch 2.0.1+cu118)→ 安装指南
  • 发布 nuPlan 与 NAVSIM 基准测试工具。[预计 2025Q2]

目录:

  1. 亮点
  2. 新闻
  3. 快速开始
  4. 结果与模型
  5. 许可证
  6. 引用

亮点

  • 面向规划的理念:UniAD 是一个遵循面向规划理念的统一自动驾驶算法框架。不同于独立的模块化设计与多任务学习,我们将感知、预测与规划等一系列任务进行层次化组织。
  • SOTA 性能:UniAD 中的所有任务均达到 SOTA 水平,尤其是预测与规划(运动:0.71m minADE,占据:63.4% IoU,规划:0.31% avg.Col)

新闻

  • 2025/10/29 更新:我们发布了新版 UniAD 实现。详见 发布说明

  • 论文标题变更 :为避免与机器人领域中的「目标点(goal-point)」导航产生混淆,根据审稿人建议,我们将标题由 “Goal-oriented” 改为 “Planning-oriented”。感谢审稿人!

  • 规划指标 :相关讨论 [参见:https://github.com/OpenDriveLab/UniAD/issues/29]:关于开环规划结果对比的 澄清注意事项

  • 2024/08/27 新功能:CARLA 实现以及在 CARLA Leaderboard 2.0 场景上的闭环评测已在 Bench2Drive 中提供。

  • 2023/08/03 Bug 修复 [提交]:此前,可视化的规划结果在 x 轴上与真值方向相反。现已修复。

  • 2023/06/12 Bug 修复 [参见:https://github.com/OpenDriveLab/UniAD/issues/21]:此前,从零训练 stage1 模型(track_map)时无法复现性能,原因是错误地加入了 loss_past_traj 并冻结了 img_neckBN。通过移除 loss_past_traj 并在训练中解冻 img_neckBN,即可复现报告结果(AMOTA:0.393,stage1_train_log)。

  • 2023/04/18 新功能:你可以用其他 BEV 编码方法(如 LSS)替换 BEVFormer,只需在 track_traintrack_inference 中提供 bev_embedbev_pos。请确保你的 BEV 与我们的形状一致。

  • 2023/04/18 发布 Base 模型检查点。

  • 2023/03/29 代码与模型首次发布 v1.0
  • 2023/03/21 🌟🌟 UniAD 被 CVPR 2023 接收,并入选 Award Candidate(2360 篇录用论文中仅 12 篇)!
  • 2022/12/21 UniAD 论文 在 arXiv 上线。

快速开始

结果与预训练模型

UniAD 分两个阶段训练。两个阶段的预训练检查点均会发布,各模型结果见下表。

Stage1:感知训练

我们首先训练感知模块(即 track 与 map),为下一阶段获得稳定的权重初始化。BEV 特征聚合 5 帧(queue_length = 5)。

方法 编码器 跟踪
AMOTA
建图
IoU-lane
配置 下载
UniAD-B R101 0.394 0.294 base-stage1 base-stage1

Stage2:端到端训练

我们联合优化所有任务模块,包括 track、map、motion、occupancy 与 planning。BEV 特征聚合 3 帧(queue_length = 3)。

方法 编码器 跟踪
AMOTA
建图
IoU-lane
运动
minADE
占据
IoU-n.
规划
avg.Col.
配置 下载
UniAD-B R101 0.380 0.314 0.794 64.0 0.29 base-stage2 base-stage2

在 nuScenes 基准上的规划结果

方法 编码器 L2(m) 碰撞率(%)
1s 2s 3s 平均 1s 2s 3s 平均
UniAD-B R101 0.29 0.89 1.53 0.90 0.15 0.20 0.53 0.29

✨v2.0 新增:在 NAVSIM 基准上的规划结果(来自 NAVSIM)。

方法 编码器 NC DAC TTC Comf. EP PDMS
UniAD R34 97.8 91.9 92.9 100 78.8 83.4

检查点使用

  • 将所需检查点下载到 UniAD/ckpts/ 目录。
  • 可按 TRAIN_EVAL.md 中的 evaluation 部分评测这些检查点以复现结果。
  • 也可用提供的权重初始化自己的模型。将配置中的 load_from 字段改为 path/of/ckpt,并按 TRAIN_EVAL.md 中的 train 部分开始训练。

模型结构

UniAD 的整体流程由 uniad_e2e.py 控制,它协调 UniAD/projects/mmdet3d_plugin/uniad/dense_heads 中的所有任务模块。若你对某一任务模块的实现感兴趣,请参阅对应文件,例如 motion_head

许可证

除非另有说明,所有资源与代码均遵循 Apache 2.0 许可证

引用

如果本项目对你的研究有帮助,请考虑使用以下 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},
}
@misc{contributors2023_uniadrepo,
  title={Planning-oriented Autonomous Driving},
  author={UniAD contributors},
  howpublished={\url{https://github.com/OpenDriveLab/UniAD}},
  year={2023}
}

相关资源

Awesome

关于

【CVPR 2023 Best Paper】 该仓库为 Planning-oriented Autonomous Driving(UniAD)的 GitLink 官方代码仓库。目前,UniAD 已迭代至 v2.0 版本。相比 v1.0,v2.0 对运行环境和依赖配置进行了升级,支持更高版本的 Python 与 PyTorch,并适配 MMCV 1.7.2,从而提升了项目的兼容性与部署便利性。

26.1 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号