UniAD:以规划为导向的端到端自动驾驶

文章链接

这个文章是CVPR2023 Best Paper

https://arxiv.org/pdf/2212.10156

提出背景

以往的自动驾驶多数是为不同的任务场景设计部署单独的模型,这样子组成的系统会很复杂如图a。

图b这是多任务共享一个主干,但还是要分离训练,而且不是端到端的。有没有什么方式你可以把所有的环节都串联起来,实现完整的端到端呢?

c.1就是一个直接预测轨迹的方式,但是它的没有明确监督学习中间的过程,所以就如同一个黑箱,基本没有可解释性。c.2做了一些改造加入了一个一个模块,但是串联似乎并不是一个好的设计。最理想的端到端是以最终的规划为导向,并且把前面的任务合理组织促进最终的规划决策的,于是作者提出c.3的端到端自动驾驶规划模型

模型解读

UniAD模型设计:以规划为导向,可以理解为,最终车的轨迹规划是结合了车身轨迹,运动特征,地图语义特征,空间占用特征等做出的综合决策

具体流程

  1. 先对多视角的图片进行特征提取获得BEV特征

  2. 然后用作两个方向:一个通过前后帧结合的自注意力查询,获得根据轨迹检测的特征(Track),实现车辆轨迹跟踪,只有清晰车辆的状态才能进行下一步的规划;另外一个通过查询地图相关元素,得到地图的查询特征(Map),这里也是多层的注意力,最终结果输出到下一个目标

  3. 接下来做轨迹特征预测,这里把前面的车辆跟踪结合地图特征又结合上BEV特征,所有都联合起来进行自注意机制的学习,获得行车运动的轨迹预测(Motion)

  4. 通过Motion轨迹预测再次结合BEV来构建占用网络,获得空间中的占用情况,并且预测占用的变化,占用也是一个关键的特征,只有车辆能够明确占用情况才可以进一步做出安全明智的规划。这里也是多层的Transformer,结合Motion轨迹预测和前后帧的token来实现占用的预测

  5. 通过占用Occ预测,Motion预测还有BEV特征,做出最后的决策规划,这里的规划可以说是集大成的结果,开启可解释性比较强,可以专门针对每个单独模块做优化

总结

这么完整的一套端到端规划流程最大的基石就是Transformer架构,通过自注意力机制,把各种具有不同语义表示的特征结合起来,做下游的规划。不仅如此,模型还基Transformer架构从特征当中获取特征,如Track,Map,Occ。在最后的两步中还是加入了BEV的,我们可以认为BEV就是一个贯穿全程且不断被强化的特征。因为BEV特征是最前且核心的特征,通过传感器直接获取,其他的特征其实都依赖于BEV去查询得到的。UniAD也不是简单把所有的任务模块堆叠,每个特征他们之间的关系以及学习构建的方式都做了清晰的明确,实现了最终的联合决策规划。

相关推荐
Msshu1231 小时前
PD快充诱骗协议芯片XSP25支持PD+QC+FCP+SCP+AFC协议支持通过串口读取充电器功率信息
人工智能
一RTOS一3 小时前
东土科技连投三家核心企业 发力具身机器人领域
人工智能·科技·机器人·具身智能·鸿道实时操作系统·国产嵌入式操作系统选型
ACP广源盛139246256734 小时前
(ACP广源盛)GSV1175---- MIPI/LVDS 转 Type-C/DisplayPort 1.2 转换器产品说明及功能分享
人工智能·音视频
胡耀超4 小时前
隐私计算技术全景:从联邦学习到可信执行环境的实战指南—数据安全——隐私计算 联邦学习 多方安全计算 可信执行环境 差分隐私
人工智能·安全·数据安全·tee·联邦学习·差分隐私·隐私计算
停停的茶6 小时前
深度学习(目标检测)
人工智能·深度学习·目标检测
Y200309166 小时前
基于 CIFAR10 数据集的卷积神经网络(CNN)模型训练与集成学习
人工智能·cnn·集成学习
老兵发新帖6 小时前
主流神经网络快速应用指南
人工智能·深度学习·神经网络
AI量化投资实验室7 小时前
15年122倍,年化43.58%,回撤才20%,Optuna机器学习多目标调参backtrader,附python代码
人工智能·python·机器学习
java_logo7 小时前
vllm-openai Docker 部署手册
运维·人工智能·docker·ai·容器
倔强青铜三7 小时前
苦练Python第67天:光速读取任意行,linecache模块解锁文件处理新姿势
人工智能·python·面试