OmniDrive:具有 3D 感知推理和规划功能的自动驾驶整体 LLM-智体框架

24年5月北理工、Nvidia和华中科大的论文“OmniDrive:A Holistic LLM-Agent Framework for Autonomous Driving with 3D Perception Reasoning and Planning”。

多模态大语言模型(MLLMs)的进展导致了对基于LLM的自动驾驶的兴趣不断增长,以利用它们强大的推理能力。然而,利用MLLMs强大的推理能力来改进规划行为是具有挑战性的,因为它需要超越2D推理的完整3D觉察。为了解决这一挑战,本工作提出OmniDrive,一个关于智体模型与3D驾驶任务之间强大对齐的全面框架。框架从一个3D MLLM架构开始,用稀疏查询将视觉表示提升和压缩到3D,然后将其输入LLM。这种基于查询的表示联合编码动态目标和静态地图元素(例如车道),为3D的感知-行动对齐提供了一个简洁的世界模型。进一步提出一个新的基准,其中包括全面的视觉问答(VQA)任务,即场景描述、交通规则、3D基础、反事实推理、决策制定和规划。广泛的研究表明,OmniDrive在复杂的3D场景中具有出色的推理和规划能力。

如图所示OmniDrive,大语言模型 (LLM) 智体的端到端自动驾驶框架。主要贡献涉及模型(OmniDrive-Agent)和基准(OmniDrive-nuScenes)中的解决方案。前者采用3D 视觉-语言模型设计,而后者则由用于推理和规划的综合 VQA 任务组成。

在这里插入图片描述

如图是OmniDrive-Agent 的整体流程。左图展示模型的整体框架。用 3D 感知任务来指导 Q-Former 的学习。右图描绘Q-Former3D的具体结构,由六个Transformer解码器层组成。注意力权重是从 2D 预训练中初始化的。输入是多视图图像特征。此外,在注意操作中添加 3D 位置编码。此外,通过记忆库引入时间建模。

在这里插入图片描述

在Q-Former3D中,初始化检测查询和载体查询并执行自注意来交换它们的信息。之后,感知查询用于预测前景元素的类别和坐标。载体查询被发送到单层 MLP 以与 LLM token维度(例如 LLaMA 中的 4096 维)对齐,并进一步用于 LLaVA [31] 之后的文本生成。

在模型中,载体查询起着视觉语言对齐的作用。此外,这种设计使载体查询能够利用 3D 位置编码提供的几何先验,同时还允许它们利用通过 3D 感知任务获取的基于查询的表示。

该方法受益于多任务学习和时间建模[25,33]。在多任务学习中,可以为每个感知任务集成特定于任务的 Q-Former3D 模块,采用统一的初始化策略。在不同的任务中,载体查询可以收集不同交通元素的信息。在实现中,涵盖中心线构建和 3D目标检测等任务。在训练和推理阶段,两个头共享相同的 3D 位置编码。关于时间建模,将具有 top-k 分类分数的感知查询存储到记忆库中,并逐帧传播 [28, 59]。传播的查询通过交叉注意与当前帧的感知和载体查询交互,扩展了模型有效处理视频输入的能力。

OmniDrive-agent 的训练包括两个阶段:2D-预训练 和 3D-微调。在初始化阶段,在 2D 图像任务上对 MLLM 进行预训练,初始化 Q-Former 和载体查询。此后,模型针对 3D 相关驾驶任务(例如运动规划、3D落地等)进行微调。在这两个阶段中,计算文本生成损失,不考虑 BLIP-2 [24] 中的对比学习和匹配损失。

  • 2D 预训练。 该阶段旨在预训练载体查询和Q-Former,并实现图像特征和大语言模型之间更好的对齐。当删除检测查询时,OmniDrive模型可以被视为标准视觉语言模型,能够生成以图像为条件的文本。因此,采用 LLaVA v1.5 [30] 中的训练方法和数据在 2D图像上预训练 OmniDrive。 MLLM 首先在 558K 个图像文本对上进行训练,在此期间,除了 Q-Former之外的所有参数都被冻结。随后,使用 LLaVA v1.5 的指令调整数据集对 MLLM进行微调。在此微调步骤中,只有图像编码器被冻结,而所有其他参数都是可训练的。
  • 3D微调。该阶段目标是增强模型的3D定位能力,同时尽可能保留其2D语义理解。用 3D 位置编码和时间模块增强原始Q-Former。在这个阶段,用较小的学习率对视觉编码器和Lora [16]的大语言模型进行微调,并用相对较大的学习率训练Q-Former3D。

为了对驾驶 LLM 智体进行基准测试,本文提出OmniDrive-nuScenes,这是一种基于 n​​uScenes [4] 构建的基准,具有覆盖 3D 领域感知、推理和规划的高质量视觉问答(QA)对。

OmniDrive-nuScenes 具有GPT4 的全自动程序 QA 生成流水线。与 LLaVA [31] 类似,所提出的流水线通过提示输入将 3D 感知真值作为上下文信息。交通规则和规划模拟被进一步用作额外的输入,从而缓解 GPT-4V 在理解 3D 环境方面面临的挑战。该基准以注意、反事实推理和开环规划的形式提出长期问题。这些问题挑战3D 空间中真正的空间理解和规划能力,因为它们需要在接下来的几秒钟内进行规划模拟才能获得正确的答案。

除了使用上述流水线来策划 OmniDrive-nuScenes 的离线问答会话外,还提出一个在线生成各种类型落地问题的流水线。这部分也可以被视为某种形式的隐式数据增强,增强模型的 3D 空间理解和推理能力。

下表显示所提出的离线数据生成流水线的示例,其中使用上下文信息在 nuScenes 上生成 QA 对。首先介绍如何获取不同类型提示信息的相关细节:字幕(Caption)。当图像和冗长的场景信息同时输入 GPT-4V 时,GPT-4V 往往会忽略图像中的细节。因此,作者提示 GPT-4V 仅根据多视图输入生成场景描述。如表中顶部所示。 将三个前视图和三个后视图拼接成两个单独的图像,并将它们输入GPT-4V,还提示 GPT-4V 包含以下详细信息: 1)提及天气、一天中的时间、场景类型和其他图像内容; 2)了解每个视图的大致方向(例如,第一个正视图是左前); 3)避免独立提及每个视图的内容,并用相对于自车的位置代替。

在这里插入图片描述

  • 车道-目标关联。对于GPT-4V来说,理解3D世界中交通元素(如物体、车道线等)的相对空间关系是一项极具挑战性的任务。直接将 3D 目标坐标和车道线的曲线表示输入到 GPT-4V 并不能实现有效的推理。因此,以文件树的形式表示目标和车道线之间的关系,并根据目标的 3D 边框将其信息转换为自然语言描述。
  • 模拟轨迹。通过两种方式对轨迹进行采样以进行反事实推理:1)根据三种驾驶意图选择初始车道:车道保持、左变道和右变道。然后用深度优先搜索(DFS)算法链接车道中心线并获得所有可能的车辆轨迹路径。然后为各个车道选择不同的完成率和速度目标(加速、减速和速度维持)以创建模拟轨迹。 2)仅根据车道中心线生成驾驶轨迹很难模拟“无法驾驶”的场景。因此,还对整个 nuScenes 数据集的自车轨迹进行聚类,每次选择代表性的驾驶路径。

在表的底部,描述使用上述上下文信息获得的不同类型QA响应:
场景描述。直接将字幕(表中的提示类型1)作为场景描述的答案。
注意。给定模拟轨迹和专家轨迹,运行模拟来识别近距离目标。同时,还允许GPT4使用自己的常识来识别有威胁得交通元素。

  • 反事实推理。给定模拟轨迹,模拟检查轨迹是否违反交通规则,例如闯红灯、碰撞其他目标或道路边界。
  • 决策和规划。展示高层决策以及专家轨迹,并使用 GPT-4V 来推理为什么该轨迹是安全的,并以之前的提示和响应信息作为上下文。
  • 一般对话。还提示 GPT-4 基于字幕信息和图像内容生成多轮对话,涉及目标计数、颜色、相对位置和 OCR 类型的任务。这种方法有助于提高模型对长尾目标的识别能力。

为了充分利用自动驾驶数据集中的 3D 感知标签,在训练过程中以在线方式生成了大量类落地的任务。具体来说,设计了以下任务,如图所示:

  • 2D 到 3D 落地。给定特定相机上的 2D 边框,例如 <FRONT, 0.45, 0.56, 0.72, 0.87 >,模型需要提供相应目标的 3D 属性,包括其 3D 类别、位置、大小、方向和速度。
  • 3D 距离。基于随机生成的3D坐标,识别相应位置附近的交通元素并提供交通元素的3D属性。
  • 车道到目标。根据随机选择的车道中心线,列出该车道上存在的目标及其 3D 属性。
    在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Lumina-T2X 一个使用 DiT 架构的内容生成模型,可通过文本生成图像、视频、多视角 3D 对象和音频剪辑。

Lumina-T2X 是一个新的内容生成系列模型&#xff0c;统一使用 DiT 架构。通过文本生成图像、视频、多视角 3D 对象和音频剪辑。 可以在大幅提高生成质量的前提下大幅减少训练成本&#xff0c;而且同一个架构支持不同的内容生成。图像质量相当不错。 由 50 亿参数的 Flag-DiT …

零样本身份保持:ID-Animator引领个性化视频生成技术新前沿

在最新的研究进展中&#xff0c;由Xuanhua He及其团队提出的ID-Animator技术&#xff0c;为个性化视频生成领域带来了突破性的创新。这项技术的核心在于其零样本&#xff08;zero-shot&#xff09;人物视频生成方法&#xff0c;它允许研究者和开发者根据单一的参考面部图像生成…

人工神经网络(科普)

人工神经网络&#xff08;Artificial Neural Network&#xff0c;即ANN &#xff09;&#xff0c;是20世纪80 年代以来人工智能领域兴起的研究热点。它从信息处理角度对人脑神经元网络进行抽象&#xff0c; 建立某种简单模型&#xff0c;按不同的连接方式组成不同的网络。在工程…

Python 全栈体系【四阶】(四十二)

第五章 深度学习 九、图像分割 3. 常用模型 3.2 U-Net&#xff08;2015&#xff09; 生物医学分割是图像分割重要的应用领域。U-Net是2015年发表的用于生物医学图像分割的模型&#xff0c;该模型简单、高效、容易理解、容易定制&#xff0c;能在相对较小的数据集上实现学习…

利用KMeans进行遥感NDWI进行聚类分割

&#xff08;1&#xff09;解释 KMeans算法是一种非监督式的聚类算法&#xff0c;于1967年由J. MacQueen提出&#xff0c;聚类的依靠是欧式距离&#xff0c;其核心思想就是将样本划分为几个类别&#xff0c;类里面的数据与类中心的距离最小。类的标签采用类里面样本的均值。 这…

第16节 实战:文件转shellcode

我最近做了一个关于shellcode入门和开发的专题课&#x1f469;&#x1f3fb;‍&#x1f4bb;&#xff0c;主要面向对网络安全技术感兴趣的小伙伴。这是视频版内容对应的文字版材料&#xff0c;内容里面的每一个环境我都亲自测试实操过的记录&#xff0c;有需要的小伙伴可以参考…

《告别重复:Spring AOP让你的代码花园绽放》

厌倦了在代码花园中重复种植相同的植物&#xff08;代码&#xff09;吗&#xff1f;Spring AOP将是你的园艺师&#xff0c;帮助你修剪和优化代码&#xff0c;让花园更加丰富多彩&#xff01; 文章目录 面向切面编程&#xff08;AOP&#xff09;主题文章一. 引言1.1 引入面向切面…

添砖Java之路(其八)——继承,final关键字

继承&#xff1a; 意义&#xff1a;让类于类之间产生父类于子类的关系&#xff0c;子类可以直接使用父类中的非私有成员(包括方法与成员变量) 。 extends关键字就是定义声明父类。 格式&#xff1a;public class 子类 extends 父类。 对于基础的我就不赘述了&#xff0c;我…

汇舟问卷:做小生意也依然可以取得成功

冷门小生意之所以能够成功发财&#xff0c;主要是因为竞争相对较少。相较于那些已被大家知晓且看似热门的生意&#xff0c;冷门小生意的利润空间更多且风险更低。 冷门小生意常常具备低成本和高回报的特点。举个例子&#xff0c;与开设一家餐厅或者服装店相比&#xff0c;成立…

【源码】Spring Data JPA原理解析之Repository的自动注入(一)

Spring Data JPA系列 1、SpringBoot集成JPA及基本使用 2、Spring Data JPA Criteria查询、部分字段查询 3、Spring Data JPA数据批量插入、批量更新真的用对了吗 4、Spring Data JPA的一对一、LazyInitializationException异常、一对多、多对多操作 5、Spring Data JPA自定…

电脑没有网络连接怎么办?4招轻松完成网络连接!

“我的电脑开机后发现连接不上网络&#xff0c;尝试了很多次也不行&#xff0c;这是因为什么呢&#xff1f;有什么比较好的解决方法吗&#xff1f;” 当电脑无法连接到网络时&#xff0c;可能会给我们的工作和生活带来诸多不便。然而&#xff0c;大多数网络连接问题都可以通过一…

C#实现长方体棱锥圆柱棱柱圆锥展开折叠旋转缩放

C#实现长方体棱锥圆柱棱柱圆锥展开折叠旋转缩放 C#实现 模型边数 长方体 棱锥 圆柱 棱柱 圆锥 实现功能 展开 折叠 颜色 边框颜色 旋转 缩放 大小 视图方向 项目获取&#xff1a; 项目获取&#xff1a;typora: typora/img (gitee.com) 备用项目获取链接1&#xff1a;yife…

Linux的进程间通信 管道 进程池

目录 前言 进程间通信的基本概念 管道 匿名管道 pipe函数 cfc 管道的四种情况 管道的五种特征 进程池 ProcessPool.cpp&#xff1a; Task.cpp&#xff1a; 前言 ubuntu系统的默认用户名不为root的解决方案&#xff08;但是不建议&#xff09;&#xff1a;轻量应用服…

安卓悬浮窗----可移动的悬浮窗

目录 前言一、添加对悬浮窗功能的支持二、通过service实现悬浮窗2.1 窗口属性和标志2.2 窗口移动 三、完整代码 前言 记录一下基础的悬浮窗实现&#xff0c;分为几个重要的点进行阐述。 一、添加对悬浮窗功能的支持 app要实现悬浮窗功能&#xff0c;首先app要添加对悬浮窗功…

【瑞萨RA6M3】2. UART 实验

https://blog.csdn.net/qq_35181236/article/details/132789258 使用 uart9 配置 打印 void hal_entry(void) {/* TODO: add your own code here */fsp_err_t err;uint8_t c;/* 配置串口 */err g_uart9.p_api->open(g_uart9.p_ctrl, g_uart9.p_cfg);while (1){g_uart9.…

扫码枪与Input的火花

文章目录 前言一、需求&#xff1a;交互细节二、具体实现两个核心的函数&#xff1a;自动聚焦 三&#xff0c;扩展知识input 与 change的区别 前言 在浏览器扫描条形码获取条形的值&#xff0c;再操作对应的逻辑。这是比较常见的业务&#xff0c;这里记录实际操作。 其中PC端…

spacy NER 位置信息不考虑空格!!!

texts ["疫情期间&#xff0c;俄罗斯 联邦军队医疗机构的负责人Saanvi Alia在方城县启动了远程医疗服务。","疫情期间&#xff0c;俄罗斯 联 邦 军队医疗机构的负责人Saanvi Alia在方城县启动了远程医疗服务。","疫情期间&#xff0c;俄罗 斯 联 邦 …

PR对比模板|手机竖屏分辨率视频效果前后对比模板剪辑素材

Premiere Pro前后对比效果模板&#xff0c;适用于化妆前后对比、视频调色效果前后对比、同一地方人物活场景变化等视频制作剪辑使用。 主要特点&#xff1a; 只需将图像或视频导入占位符&#xff0c;编辑前后文本&#xff0c;并使用控件微调动画计时。 可以打开或关闭前后屏幕…

LeetCode2095删除链表的中间节点

题目描述 给你一个链表的头节点 head 。删除 链表的 中间节点 &#xff0c;并返回修改后的链表的头节点 head 。长度为 n 链表的中间节点是从头数起第 ⌊n / 2⌋ 个节点&#xff08;下标从 0 开始&#xff09;&#xff0c;其中 ⌊x⌋ 表示小于或等于 x 的最大整数。对于 n 1、…

Linux防火墙iptalbes

1 iptalbes 1.1 概念 防火墙(Firewall)是一种隔离技术&#xff0c;用于安全管理与筛选的软件和硬件设备&#xff0c;使计算机内网和外网分开&#xff0c;可以防止外部网络用户以非法手段通过外部网络进入内部网络&#xff0c;保护内网免受外部非法用户的侵入。 1.2 SELinux …