论文阅读: 面向Planning的端到端智驾Planning-oriented Autonomous Driving
原文地址:https://arxiv.org/abs/2212.10156
背景
当代自动驾驶系统多采用序列化的模块化的任务处理方式,比如感知、预测、规划等。为了处理多样的任务、达到高水平智能,当代智驾一般会让独立的模型去处理不同的task;又或者用具有不同任务头的单独的模型去处理不同的任务。但是这些方法会累积错误,且任务间的协同不足。
作者认为应该设计一个更优的、可理解的、面向最终目标的框架。基于这个面向Planning的思想,他们提出了 Unified Autonomous Driving (UniAD)方案,一种新的自动驾驶框架。这个方案从全局视角出发,让智驾的各个模块特征提取可以互相补充,各个任务之间可以通过统一的查询接口通信。在此基础上,UniAD享有灵活的中间状态的表征,且可以灵活的交换各个子模块的知识、特征,以服务于最终的Planning。
作者团队用这个方案实现的智驾系统去跑nuScenes的基准测试,结果在所有方面都远远优于之前最优水平的智驾系统。
不同设计方案的对比
- 多数的业内解决方案是部署不同的模型解决不同的任务,如上图中a
- 具有不同任务头的多任务-单模型学习范式,共享同一个主干输入,如上图中b
- 端到端的设计范式,统一感知、预测等。如上图中c
- 直接面向Planner优化的统一模型 c1
- 分任务处理的序列化模型 c2
- 面相Planner的多任务协作模型 c3
UniAD实现方法
- 完全遵循面向Planning的哲学
- 研究感知、预测模块的效果,从感知、预测等到最终的规划联合优化
- 可以通过查询接口链接每一个模型节点,查询需要的信息
- 地图上的空间占用信息,仅用于视觉目的
- 最终,一个基于Attention的Planner模型,在获取先前任务的知识成果的基础上,规划自车路线
Tracker、Map、Prediction、Motion、Occupancy、Planning,各模块都有更详细一些的设计及实现的介绍,感兴趣的可以查阅下原文。这里选择性的介绍下Planning模块的详细设计。
Planning模块实现
没有高精地图及预定义导航的规划模块,通常需要一个高水平抽象的命令,去指示车的运动方向。基于此,作者把原生的导航信号(左转、右转、前行)转换成了可学习的嵌入命令。自车向Motion模块的query可以获取自车的多种可能的意图,我们再加上嵌入命令组成一个“plan query”,提供查询接口。再把BEV特征加入进去,使得模型可以意识到周围环境,然后让模型解码出未来的路线规划T。
为了避免碰撞,采用牛顿的推理方法优化所规划的路线,得到T*。公式如下:
训练过程
从经验上看,两阶段训练的效果更稳定。
- 联合训练感知模块,如tracking,mapping,耗时6个时间段。
- 端到端训练感知、预测、规模所有模块,耗时20个时间段。
实验结果
使用nuScenes数据集做实验,在三个方面验证了我们设计的有效性:
- 各方的实验结果揭示了多任务协作的优势、及其对Planning的效果
- 各任务的模型对比现有设计的模型效果
- 对特定模块的设计空间进行的实验验证(消融) (ablations on the design space for specific modules)
多模型联合训练实验对比
- 最优结果标为黑体、次优结果标下划线
- 第一行(ID-0)是多任务学习模型 ,仅做对比用
- 观察第10-12行
- 预测比感知离规划更近,所以作者首先加入了两个类型的预测任务到框架里:Motion、Occupancy的预测
- 对比原生的端到端训练Planning模型(Exp.10, Fig. 1(c.1)),只有当两者协作时,planning L2 and collision rate指标最好。
- 所以,可以得出结论:为了更安全的规划目的,这两个预测任务是必要的
- 观察第7-9行
- 展示了两个预测任务的协作效果,当两者紧密结合的时候,两者效果都显著提升了
- 疑问:为何没有单独Motion预测的实验?
- 观察第4-6行
- tracking、mapping模块协作,让预测效果获得显著的提升(-9.7% minADE, -12.9% minFDE, -2.3 MR(%))
- 观察第1-3行
- 合并训练感知模块的子任务,与分开训练各模块的效果类似
- 观察第0、12行
- 相比于原生的多任务学习范式,planning-oriented设计在所有基础指标里都有显著的提升 (-15.2% minADE, -
17.0% minFDE, -3.2 MR(%)), +4.9 IoU-f.(%)., +5.9 VPQ f.(%), -0.15m avg.L2, -0.51 avg.Col.(%))
- 相比于原生的多任务学习范式,planning-oriented设计在所有基础指标里都有显著的提升 (-15.2% minADE, -
各模型也都有更详细的实验结果对比,全部都是领先的或者有竞争力的。这里我们仅选择性的挑选Occupancy prediction模型结果展示。对更多单独模型对比效果感兴趣可以进一步查阅原文。
Occupancy prediction模型效果对比
- 在对规划更关键的近距离区域,UniAD方案有显著的提升。
- “n.” 和 “f.” 表示近区域 (30×30m) 和远区域 (50×50m) 评估
- † 代表使用了强化训练。
总结
本文讨论了智驾算法系统级别的设计,提出了UniAD方案,一个面向最终Planning的设计。对于感知、预测模块下子任务的必要性进行了详细的分析。为了联合各个任务,采用一个基于查询的设计去链接所有子模块。得益于环境中各个客体交互更丰富的展现,广泛的实验表明本方法在所有方面都具有优越性。
局限与未来研究方向
- 此方案工作量大,算力需求大,尤其是训练输入里加上短期历史数据。
- 是否值得加入更多任务模块(如深度知觉、行为预测),以及如何嵌入,也值得探索。
论文阅读: 面向Planning的端到端智驾Planning-oriented Autonomous Driving的更多相关文章
- 端到端文本识别CRNN论文解读
CRNN 论文: An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Applica ...
- 论文翻译——Fast-R-CNN(端到端开篇, End to end)
快速的区域卷积网络方法(Fast R-CNN) 论文地址:https://arxiv.org/abs/1504.08083 摘要: 本文提出一种基于快速的区域卷积网络方法(Fast R-CNN) ...
- 点云配准的端到端深度神经网络:ICCV2019论文解读
点云配准的端到端深度神经网络:ICCV2019论文解读 DeepVCP: An End-to-End Deep Neural Network for Point Cloud Registration ...
- 【论文阅读】Motion Planning through policy search
想着CSDN还是不适合做论文类的笔记,那里就当做技术/系统笔记区,博客园就专心搞看论文的笔记和一些想法好了,[]以后中框号中间的都算作是自己的内心OS 有时候可能是问题,有时候可能是自问自答,毕竟是笔 ...
- 带你读AI论文丨LaneNet基于实体分割的端到端车道线检测
摘要:LaneNet是一种端到端的车道线检测方法,包含 LanNet + H-Net 两个网络模型. 本文分享自华为云社区<[论文解读]LaneNet基于实体分割的端到端车道线检测>,作者 ...
- 【论文阅读】End to End Learning for Self-Driving Cars
前言引用 [1] End to End Learning for Self-Driving Cars从这里开始 [1.1] 这个是相关的博客:2016:DRL前沿之:End to End Learni ...
- 论文阅读(Xiang Bai——【PAMI2017】An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text Recognition)
白翔的CRNN论文阅读 1. 论文题目 Xiang Bai--[PAMI2017]An End-to-End Trainable Neural Network for Image-based Seq ...
- 论文阅读(XiangBai——【PAMI2018】ASTER_An Attentional Scene Text Recognizer with Flexible Rectification )
目录 XiangBai--[PAMI2018]ASTER_An Attentional Scene Text Recognizer with Flexible Rectification 作者和论文 ...
- 论文阅读笔记二十二:End-to-End Instance Segmentation with Recurrent Attention(CVPR2017)
论文源址:https://arxiv.org/abs/1605.09410 tensorflow 代码:https://github.com/renmengye/rec-attend-public 摘 ...
- 论文阅读笔记六:FCN:Fully Convolutional Networks for Semantic Segmentation(CVPR2015)
今天来看一看一个比较经典的语义分割网络,那就是FCN,全称如题,原英文论文网址:https://people.eecs.berkeley.edu/~jonlong/long_shelhamer_fcn ...
随机推荐
- 使用DP-Modeler、ModelFun模方软件修复实景三维模型教程
P-Modeler DP-Modeler是武汉天际航自主研发的一款集精细化单体建模与Mesh网格模型修饰于一体的软件.支持三维模型一键水面修复.道路置平.建筑局部修饰.删除底部碎片.植被处理.桥隧 ...
- Paimon的写入流程
基于Paimon 0.5版本 写入流程的构建org.apache.paimon.flink.sink.FlinkSinkBuilder#build 算子的流向 BucketingStreamParti ...
- hutool QrCodeUtil解析二维码出现NotFoundException
解析部分二维码时出现com.google.zxing.NotFoundException:null,解析失败的二维码手机扫是能正常打开的,后面发现这个问题是因为原二维码图片太大了,将图片缩小后正常解析 ...
- mini-centos7 环境安装部署,各种踩坑。。。
最小Linux系统,安装Java环境 想想就生气,去面试个运维,面试官让我上机装个centos7,还是个最小安装包连界面都没有,只有命令行模式,我都哭了,然后让把一些环境装一下,然后再部署个sprin ...
- .net程序员学习java篇一(搭建SSM)
一.安装IDE 相比于.net环境的一气呵成,java可能麻烦一点,这里记录下来,避免萌新踩坑 1.1安装JDK,这里不要玩什么花哨,老老实实选个大众版(Oracle JDK1.8x),设置环境变量, ...
- Dubbo SPI扩展机制源码详解(基于2.7.10)
Dubbo SPI 一. 概述 本文主要分享 Dubbo 的拓展机制 SPI. 想要理解 Dubbo ,理解 Dubbo SPI 是非常必须的.在 Dubbo 中,提供了大量的拓展点,基于 Dubbo ...
- HTML——form表单
表单主要是用来收集客户端提供的相关信息,提供了用户数据录入的方式,有多选.单选.单行文本.下拉列表等输入框,便于网站管理员收集用户的数据,是Web浏览器和Web服务器之间实现信息交流和数据传递的桥梁. ...
- 修改java版本环境变量不生效
修改java版本环境变量不生效 起因 先上图说明问题(电脑含有多个java版本,因为需要维护很老的项目,需要切换至以前的java版本,当然也可以不用修改环境变量,直接指定) 环境变量配置 正常 jav ...
- exe应用程序安装为windows服务
1.使用instsrv.exe和srvany.exe 当你获取到srvany后并决定将某程序作为服务启动后,请先将srvany安装为系统服务,具体的安装方法有很多,这里使用instsrv,语法如下:安 ...
- AI实战 | 使用元器打造浪漫仪式小管家
浪漫仪式小管家 以前我们曾经打造过学习助手和待办助手,但这一次,我们决定创造一个与众不同的智能体,而浪漫将成为我们的主题.我们选择浪漫作为主题,是因为我们感到在之前的打造过程中缺乏了一些仪式感,无法给 ...