论文阅读--Planning-oriented Autonomous Driving(二)

news2024/9/19 13:21:11

自动驾驶框架的各种设计比较。

( a )大多数工业解决方案针对不同的任务部署不同的模型。

( b )多任务学习方案共享一个具有分割任务头的主干。

( c )端到端范式将感知和预测模块统一起来。以往的尝试要么采用( c.1 )中对规划的直接优化,要么采用( c.2 )中的部分元件设计系统。相反,我们在( c.3 )中主张,一个理想的系统应该以规划为导向,并适当地组织前期工作以促进规划。

1.创新点

     在这篇文献《Planning-oriented Autonomous Driving》中,作者提出了一个创新的自动驾驶系统框架UniAD,它以规划为核心,将感知、预测和规划任务集成在一个统一的网络中,通过基于查询的设计实现不同模块间的有效通信和信息共享。UniAD采用端到端的训练方法,允许直接从传感器数据学习到规划结果,强调了对规划模块的专门设计,包括自我车辆的显式建模和环境交互。此外,系统引入了非线性优化策略来提高运动预测的物理可行性,并通过同时考虑实例级和场景级信息来增强占用预测的准确性。在nuScenes基准测试中,UniAD展现出显著的性能提升,证明了其在规划安全性和准确性方面的优势。整个系统在保持计算效率的同时,为自动驾驶技术的发展提供了一个全面、协调且高效的解决方案。

2.规划导向系统设计具体是如何实现的?

       规划导向系统设计通过创建一个名为UniAD的统一网络框架实现,该框架整合了自动驾驶的关键任务,包括感知、预测和规划,以规划为核心目标进行端到端的优化。通过基于查询的交互方式,UniAD促进了任务间的有效通信和信息共享,同时采用非线性优化策略来提高运动预测的物理可行性,并结合实例级与场景级的占用预测,为规划模块提供了精确的环境理解。此外,规划模块利用从感知和预测模块中提取的信息,考虑自我车辆的动态和环境的占用状态,生成安全有效的轨迹。这种设计在nuScenes基准测试中验证了其在规划安全性和准确性方面的优势,展示了显著的性能提升。
 

3.方法论

统一自动驾驶框架( Uniad )。它是精心设计的遵循规划为导向的哲学。我们不是简单的任务堆叠,而是研究每个模块在感知和预测中的作用,利用从前节点到最终规划的联合优化在驾驶场景中的好处。所有感知和预测模块均采用转换器解码器结构设计,任务查询作为连接各节点的接口。最后,一个简单的基于注意力的规划器考虑从前面节点提取的知识来预测自我车辆的未来路径点。超占地图仅供视觉使用。

UniAD系统能够实现一个高度集成和协调的自动驾驶解决方案,强调了规划在自动驾驶系统中的核心地位。

3.1 系统概览

UniAD系统由四个基于Transformer解码器的感知和预测模块以及一个规划器组成。这些模块通过查询(queries)相互连接,以模拟驾驶场景中实体间的不同交互。系统处理多摄像头图像,将视角视图特征转换为统一的鸟瞰视图(BEV)特征,然后进行进一步的处理和规划。

3.2 感知模块

3.2.1 跟踪和映射(TrackFormer 和 MapFormer)

  • TrackFormer:负责检测和多目标跟踪(MOT),无需非可微的后处理。它使用检测查询和跟踪查询来分别处理新出现的目标和已跟踪目标。
  • MapFormer:基于2D全景分割方法,将道路元素(如车道、分隔线和交叉口)作为地图查询,执行语义分割。

3.3 预测模块

3.3.1 运动预测(MotionFormer)

  • 利用来自TrackFormer和MapFormer的动态代理和静态地图的查询,预测所有代理的多模态未来运动。
  • 通过场景中心的方式,一次前向传播产生多代理轨迹,节省计算成本。

3.3.2 占用预测(OccFormer)

  • 预测未来时间步的占用网格图,考虑场景级别的语义和代理级别的动态。
  • 使用注意力模块在时间上展开未来预测,同时保持代理身份。

3.4 规划模块

  • 将从MotionFormer得到的自我车辆查询与BEV特征结合,预测未来路径点。
  • 通过牛顿方法在推理阶段优化路径,避免与预测的占用区域发生碰撞。

3.5 学习策略

  • 两阶段训练:首先独立训练感知模块,然后进行端到端训练,包括所有模块。
  • 共享匹配:使用二分图匹配算法在跟踪和映射阶段进行预测与真实值的匹配。

3.6 实现细节

  • 检测和跟踪:使用Deformable DETR头进行检测,引入跟踪查询以实现端到端跟踪。
  • 在线映射:将道路元素分为“thing”和“stuff”,进行实例和语义分割。
  • 运动预测:采用Transformer结构,通过多模态预测和非线性优化策略生成物理上可行的轨迹。
  • 占用预测:通过注意力机制和多步交互预测未来的占用网格图。
  • 规划:使用自我车辆查询和BEV特征进行规划,优化路径以避免碰撞。

3.7 损失函数

  • 定义了各种任务的损失函数,包括跟踪、映射、运动预测、占用预测和规划,以确保模型在训练过程中能够学习到各个任务的特性和需求。

4.实验

4.1 实验设置

  • 数据集:使用nuScenes数据集进行实验,这是一个多模态自动驾驶数据集,包含丰富的交通场景和传感器数据。
  • 评估指标:采用多种指标来评估系统性能,包括跟踪准确性(AMOTA、AMOTP)、预测误差(minADE、minFDE)、规划安全性(L2误差、碰撞率)等。

4.2 联合结果

  • 任务协调:通过广泛的消融实验(ablations),验证了系统中各个任务模块的协调对最终规划性能的重要性。
  • 预测与规划:展示了运动预测和占用预测任务对于安全规划的必要性,以及它们如何共同提升规划性能。

4.3 模块化结果

  • 感知模块:评估了UniAD在3D目标检测和多目标跟踪任务上的性能,并与现有技术进行了比较。
  • 预测模块:分析了运动预测和占用预测模块的性能,展示了UniAD在这些任务上相较于其他方法的优势。
  • 规划模块:评估了UniAD在规划任务上的性能,特别是在复杂交通场景中的安全性和准确性。

4.4 定性结果

  • 场景可视化:通过可视化方法展示了UniAD在不同交通场景中的表现,包括城市道路巡航、复杂交叉口导航和障碍物避让等。
  • 注意力掩码:展示了规划模块中注意力掩码的可视化结果,说明了模型如何关注关键区域和代理。

4.5 消融研究

  • 设计影响:通过逐步移除或修改UniAD中的某些设计元素(如非线性优化、注意力机制等),研究了这些设计对最终性能的具体影响。
  • 任务贡献:评估了系统中每个任务模块对整体性能的贡献,以及它们如何共同作用以提升规划的安全性和准确性。

4.6 计算效率

  • 模型复杂度:分析了UniAD模型的参数量、计算复杂度(FLOPs)和运行速度(FPS),以评估其在实际车辆硬件上的可行性。

4.7 限制与未来工作

  • 系统限制:讨论了UniAD系统在某些长尾场景下可能遇到的挑战,如大型车辆、复杂光照条件等。
  • 未来方向:提出了未来研究的方向,包括如何进一步优化系统以适应更广泛的驾驶场景,以及如何提高系统的泛化能力和鲁棒性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2146330.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于PHP的高校毕业生就业服务平台

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于phpMySQL的高校毕业生就业…

html,css基础知识点笔记(二)

9.18(二) 本文主要教列表的样式设计 1)文本溢出 效果图 文字限制一行显示几个字,多余打点 line-height: 1.8em; white-space: nowrap; width: 40em; overflow: hidden; text-overflow: ellipsis;em表示一个文字的大小单位&…

MySQL实战面试题(附案例答案+建表语句+模拟数据+案例深度解析),练完直接碾压面试官

知识点思维导图 案例1 建表语句与模拟数据 用户表 users CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, email VARCHAR(100) NOT NULL UNIQUE, signup_date DATE NOT NULL ); INSERT INTO users (username, email, signu…

C++ | Leetcode C++题解之第416题分割等和子集

题目&#xff1a; 题解&#xff1a; class Solution { public:bool canPartition(vector<int>& nums) {int n nums.size();if (n < 2) {return false;}int sum 0, maxNum 0;for (auto& num : nums) {sum num;maxNum max(maxNum, num);}if (sum & 1)…

ICL、CoT、ReAct个人记录

In-Context Learning(ICL) 将一些带有标签的样本拼接起来&#xff0c;作为prompt的一部分。不涉及梯度更新&#xff0c;因此不属于ft CoT 但是其依然属于静态的黑盒子&#xff0c;依靠其推理的结果很难与真实知识保持一致&#xff0c;且限制了推理过程中及时反应和知识更新的…

技术生态系统中的绿色可持续发展与商业模式创新:The Open Group 2024大会引领未来发展趋势

绿色转型与商业模式创新在技术生态系统中的核心地位 在全球范围内&#xff0c;企业正面临着双重挑战&#xff1a;如何在推动技术生态系统创新的同时&#xff0c;践行可持续发展的承诺。随着气候变化压力的增加&#xff0c;绿色经济成为企业发展和创新的必然趋势。然而&#xf…

Python基础(八)——MySql数据库

一.数据库 【库——>表——>数据】 借助数据库对数据进行组织存储&#xff0c;借助SQL语言对数据库、数据进行操作管理 Mysql数据库 下载&#xff1a;https://www.mysql.com/ 查看是否安装配置成功&#xff1a; 安装DBeaver用于Mysql数据库图形化 安装&#xff1a;…

Python语言学习-pandas库学习

一、什么是Pandas库 Pandas是python的第三方库&#xff0c;他用于灵活的数据操作&#xff0c;数据可视化&#xff0c;数据清洗&#xff0c;数据的聚合和转换&#xff0c;数据的可视化 二、安装pandas库 在终端中运行 pip install pandas 导入Pandas库并重命名为pd import …

腹腔镜工具识别与定位系统源码分享

腹腔镜工具识别与定位检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Comp…

电机知识总结

一.直流无刷电机&#xff08;BLDC&#xff09; 27N30P指有27个槽&#xff0c;30的极数&#xff0c;它的极对数&#xff1a;30/215,所以是15对极。 N必须是3的倍数&#xff0c;P必须是偶数&#xff0c; 电角度是电气特性&#xff0c;机械角度是空间特性&#xff0c;必须指明是谁…

进击J7:对于ResNeXt-50算法的思考

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 本周任务是自行探索解决问题&#xff0c;通过此次思考过程逐渐将知识层面的学习过渡到能力层面的培养上。 一、任务 &#x1f4cc; **你需要解决的疑问&…

MFC 使用细节

MFC 使用细节 1. MFC&#xff1a;在共享 DLL 中使用 MFC 或者在静态库中使用 MFC 的区别 在共享 DLL 中使用 MFC&#xff1a;这种方式下&#xff0c;MFC DLL 的内容不会包含在您的 EXE 文件中。因此&#xff0c;生成的 EXE 文件较小&#xff0c;但运行时需要系统中有相关的 M…

「iOS」——单例模式

iOS学习 前言单例模式的概念单例模式的优缺点单例模式的两种模式懒汉模式饿汉模式单例模式的写法 总结 前言 在一开始学习OC的时候&#xff0c;我们初步接触过单例模式。在学习定时器与视图移动的控件中&#xff0c;我们初步意识到单例模式的重要性。对于我们需要保持的控件&a…

热点创新 | 基于 KANConv-GRU并行的多步预测模型

多步预测全家桶重大更新&#xff01;&#xff01;&#xff01; 本期我们继续更新多步预测全家桶&#xff0c;把 KAN 和 CKAN ( Convolutional Kolmogorov-Arnold Network ) 应用到多步预测模型里面&#xff0c;我们新增了关于KAN、KANConv、CNN-KAN、LSTM-KAN、TCN-KAN、Trans…

毕业设计选题:基于ssm+vue+uniapp的智能停车场管理系统小程序

开发语言&#xff1a;Java框架&#xff1a;ssmuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;M…

JAVA惊喜连连无限可能沉浸式盲盒商城系统小程序源码

&#x1f381;惊喜连连&#xff0c;无限可能&#xff01;沉浸式盲盒商城系统&#xff0c;等你来探索&#x1f50d; &#x1f389;【开篇&#xff1a;盲盒热潮&#xff0c;席卷而来】&#x1f389; 在这个充满未知与惊喜的时代&#xff0c;盲盒文化正以前所未有的速度席卷全球…

详细分析Uniapp中的轮播图基本知识(附Demo)

目录 前言1. 基本知识2. Demo2.1 基本2.2 自定义分页2.3 自定义动画 3. 扩展 前言 先看代码示例&#xff1a; 实现了一个带有分页指示器的轮播图组件 <template><view class"work-container"><!-- 轮播图 --><uni-swiper-dot class"uni…

鸿蒙Harmony应用开发,数据驾驶舱页面的实现

先来看看我们要实现的驾驶舱的页面是什么样的 对于这种 响应式布局的页面构建&#xff0c;我们的脑子里面要有一个概念&#xff0c;就是"分而治之"。我们把这个页面进行分割&#xff0c;分割成不同的块然后再来逐个实现. 不难发现&#xff0c;我们可以将这个看到的效…

ChartLlama: A Multimodal LLM for Chart Understanding and Generation论文阅读

原文链接&#xff1a;https://arxiv.org/abs/2311.16483 代码与数据集&#xff1a;https://tingxueronghua.github.io/ChartLlama/ 本文启发&#xff1a;文章提出利用GPT-4合成大量图表数据&#xff0c;这些数据包含各种图表类型&#xff0c;包含丰富的instruction data。然后…

Day04_JVM实战

文章目录 一、gc日志和dump快照GC日志是什么,要怎么看?dump快照是什么?要怎么看?二、gc日志和dump快照实战java.lang.OutOfMemoryError:Java heap space1、gc.log怎么看2、heapdump.hprof怎么看?①jvisualvm查看②使用MAT查看java.lang.OutOfMemoryError:Metaspace1、实时…