当前位置: 首页 > news >正文

ECCV-2024 | 指令不够用、大模型来生成!BEVInstructor:基于BEV感知和大模型的视觉语言导航指令生成

  • 作者:Sheng Fan, Rui Liu, Wenguan Wang, and Yi Yang

  • 单位:浙江大学

  • 原文链接:Navigation Instruction Generation with BEV Perception and Large Language Models (https://link.springer.com/chapter/10.1007/978-3-031-72670-5_21)

  • 代码链接:https://github.com/FanScy/BEVInstructor

主要贡献

  • 论文提出BEVInstructor,通过将鸟瞰图(BEV)特征与多模态大模型(MLLMs)结合,显著提高了导航指令生成的性能。

  • BEV编码器将多视角图像特征转换为BEV网格特征,保留三维几何和对象语义,提供更全面的场景理解。

  • 通过参数高效的提示调优和实例引导的迭代精调策略,BEVInstructor逐步优化指令,生成更准确和详细的导航指令。

  • 实验表明,该方法在R2R、REVERIE和UrbanWalk数据集上均优于现有方法,验证了其在复杂环境中生成高质量导航指令的有效性。

研究背景

研究问题

论文主要解决的问题是如何生成导航指令,使得具身智能体能够描述导航路线。现有的研究直接将2D透视观测序列映射到路线描述,但这种方法忽略了3D环境的几何信息和对象语义。

研究难点

  • 如何有效融合3D几何信息和对象语义以生成准确的导航指令;

  • 如何在零样本情况下利用多模态大模型(MLLMs)生成高质量的导航指令。

相关工作

  • 早期的解决方案依赖于手工制作的规则或模板,缺乏灵活性。

  • 后续研究采用神经网络进行端到端学习,如LSTM和Transformer。

  • 最近的多模态大模型展示了强大的视觉-语言理解和生成能力,但在零样本情况下仍无法完全满足导航指令生成的需求。

研究方法

BEVINSTRUCTOR通过引入BEV特征并结合2D视角特征来编码3D环境的语义和几何信息。视觉嵌入被用作视觉提示,并通过透视-BEV提示调整来实现跨模态对齐。此外,提出了实例引导的迭代细化策略,以逐步提高生成指令的质量。

Perspective-BEV编码器

论文构建了BEV编码器,通过3D检测的监督,将透视特征转换为3D信息。

该编码器使用deformable注意力层来采样图像特征,并通过深度一致性权重来区分不同深度的参考点。

Perspective-BEV融合模块

这是一种参数高效的更新策略,它将3D几何信息融入提示中,以利用MLLMs的跨模态能力。

通过在视觉嵌入序列中插入可学习的嵌入作为透视Perspective-BEV提示来实现。

Perspective-BEV提示调优

为了参数高效更新,提出了Perspective-BEV提示调优方法。

该方法在MLLMs的最后几层插入可学习的嵌入作为提示,并通过自注意力和线性层来调节深度特征。

实例引导的迭代精调

采用了实例引导的迭代精调策略,逐步改进生成的指令。

初始阶段,BEVInstructor输出一系列候选实例词作为初始地标token,然后在模型中结合这些粗粒度地标来细化指令。

这一过程通过多轮迭代实现,以提高指令的质量和相关性。

实验设计

数据集

实验在三个数据集上进行:R2R、REVERIE和UrbanWalk。R2R和REVERIE用于室内场景,UrbanWalk用于室外场景。

评估指标

使用五个标准指标进行评估:BLEU、CIDEr、METEOR、ROUGE和SPICE。其中,SPICE被作为主要指标。

实现细节

BEVInstructor使用PyTorch实现,所有模型在单台机器上使用2个NVIDIA A40 GPU训练。多模态大模型使用LLaMA-7B初始化,具有32层。

结果与分析

定量结果

  • 在R2R、REVERIE和UrbanWalk数据集上,BEVINSTRUCTOR在所有指标上都取得了最佳性能。

  • 在R2R val seen和val unseen上,BEVINSTRUCTOR分别在SPICE上提高了1.9%和1.4%,在CIDEr上提高了4.6%和3.0%。

  • 在REVERIE val seen和val unseen上,BEVINSTRUCTOR在SPICE上分别提高了7.0%和4.2%,在CIDEr上分别提高了12.6%和8.3%。

  • 在UrbanWalk测试集上,BEVINSTRUCTOR在SPICE上提高了11.3%,在Bleu-4上提高了12.5%,在Meteor上提高了7.3%,在Rouge上提高了13.1%。

定性结果

  • 在REVERIE数据集上,BEVINSTRUCTOR在识别与动作视图相关的场景和对象方面表现出增强的能力,并在细化阶段将这些元素明确地纳入指令中。

诊断实验

  • 通过一系列消融研究评估了BEVINSTRUCTOR的关键模块的有效性,证明了各个组件的互补性和整体设计的有效性。

指令质量分析

  • 通过与HAMT和DUET模型的比较,验证了BEVINSTRUCTOR生成的指令在实际视觉-语言导航任务中的路径引导能力和数据增强效果。

总结

BEVInstructor通过结合BEV特征和多模态大模型,显著提高了3D感知和语言能力。

该方法在多个数据集上均表现出色,验证了其生成高质量导航指令的有效性。

相关文章:

ECCV-2024 | 指令不够用、大模型来生成!BEVInstructor:基于BEV感知和大模型的视觉语言导航指令生成

作者:Sheng Fan, Rui Liu, Wenguan Wang, and Yi Yang 单位:浙江大学 原文链接:Navigation Instruction Generation with BEV Perception and Large Language Models (https://link.springer.com/chapter/10.1007/978-3-031-726…...

【UE5.3.2 】引擎中安装RiderLink插件

Rider会提示你安装这个插件选择在引擎中安装 Running AutomationTool... Using bundled DotNet SDK version: 6.0.302 Starting AutomationTool... Parsing command line: BuildPlugin -Unversioned -Plugin=C:\Users\zhangbin\AppData\Local\...

【HarmonyOS 5.0】第十二篇-ArkUI公共属性(一)

一、公共样式类属性 ArkUI框架提供的基础组件直接或者间接的继承自 CommonMethod , CommonMethod 中定义的属性样式属于公共样式。下面就来学习这些样式 1.1.尺寸设置 宽高设置 设置组件的宽高,缺省时使用组件自身内容的宽高,比如充满父布…...

京准电钟解读,NTP网络授时服务器如何提升DCS系统效率

京准电钟解读,NTP网络授时服务器如何提升DCS系统效率 京准电钟解读,NTP网络授时服务器如何提升DCS系统效率 NTP 网络授时服务器为防火墙内的网络设备、终端、服务器提供准确、可靠和安全的高精度卫星时间参考,可为它支持数万台支持标准的网…...

4.银河麒麟V10(ARM) 离线安装 MySQL

1. 系统版本 [rootga-sit-cssjgj-db-01u ~]# nkvers ############## Kylin Linux Version ################# Release: Kylin Linux Advanced Server release V10 (Lance)Kernel: 4.19.90-52.39.v2207.ky10.aarch64Build: Kylin Linux Advanced Server release V10 (SP3) /(La…...

Redis四种模式在Spring Boot框架下的配置

1. 单机模式 application.properties 配置: spring.redis.host127.0.0.1 spring.redis.port6379 spring.redis.passwordyourpasswordspring.redis.host: 该配置指定 Redis 服务器的主机地址。在单机模式下,通常是本地 Redis 实例(127.0.0.1…...

Golang的性能监控指标

Golang的性能监控指标 一、介绍 是一种高性能的编程语言,因其并发模型和内建的性能监控工具而备受开发者青睐。在实际开发中,我们需要了解一些重要的性能监控指标,以便及时发现和解决性能问题。本文将介绍Golang中常用的性能监控指标&#xf…...

基于GAN和DenseNett组合的调制信号分类网络(源码)

(需要源码请私信或评论) 生成对抗网络(GAN)原理 生成对抗网络(GAN)是一种革命性的深度学习模型,在无监督学习领域取得了显著进展。其核心思想基于 二人零和博弈 ,通过生成模型和判别模型的相互竞争实现高质量的数据合成。GAN由Ian Goodfellow等人于2014年首次提出,随后在图…...

uniapp 项目基础搭建(vue2)

一 .创建项目 创建项目可以通过工具创建,也可以通过脚手架下载 1.通过工具创建 2.通过脚手架下载 安装脚手架 ​​npm install -g vue/cli 下载项目模板 vue create -p dcloudio/uni-preset-vue 项目名称 二. 下载相关依赖 1. 项目默认是没有package.json文件的&…...

中关村科金外呼机器人智能沟通破解营销难题

当今,传统的营销方式在效率、成本控制、客户管理等方面逐渐显现出局限性,难以满足现代企业的需求。如何提升营销效率、降低运营成本、有效管理客户会员,成为企业的难题。中关村科金外呼机器人通过智能化沟通技术,为企业提供了一站…...

【Linux】处理用户输入

一、基本介绍 1、如何传递参数 向shell脚本传递数据的最基本方法就是通过命令行参数。如下,这条命令会向test.sh脚本传递10和20这两个参数。 ./test.sh 10 20 2、如何读取参数 bash shell会将所有的命令行参数都指派给称作位置参数(positional parame…...

flask后端开发(1):第一个Flask项目

目录 一、Helloworddebug、host、port的配置 gitcode地址: https://gitcode.com/qq_43920838/flask_project.git 一、Helloword 一般是会创建两个文件夹和app.py app.py from flask import FlaskappFlask(__name__)app.route(/) def hello_world():return Hello…...

Highcharts 饼图:数据可视化利器

Highcharts 饼图:数据可视化利器 引言 在数据可视化的领域中,饼图作为一种经典且直观的图表类型,被广泛应用于各种行业和场景中。Highcharts,作为一个功能强大且易于使用的JavaScript图表库,为我们提供了创建交互式和…...

黑马商城项目—服务注册、服务发现

服务注册 我们把item-service注册到Nacos,步骤如下: 1.引入依赖 在item-service的pom.xml中添加依赖: 2.配置Nacos 在item-service的application.yml中添加nacos地址配置: 3.配置服务实例 为了测试一个服务多个实例的情况,我…...

【ES6复习笔记】Map(14)

概念 Map 是 JavaScript 中的一种数据结构,它允许你存储键值对,并且可以通过键来访问对应的值。在本教程中,我们将学习如何声明、添加、删除、获取和遍历 Map 集合。 ES6 提供了 Map 数据结构。它类似于对象,也是键值对的集合。…...

15-makefile

一、Makefile的概述 1.认识make make 是一个命令,是个可执行程序,用来解析 Makefile 文件的命令;linux 环境下,这个命令存放在 /usr/bin/ 目录下;当用户输入 make 指令时,系统会自动寻找 makefile、Makef…...

yii2 手动添加 phpoffice\phpexcel

1.下载地址:https://github.com/PHPOffice/PHPExcel 2.解压并修改文件名为phpexcel 在yii项目的vendor目录下创建一个文件夹命名为phpoffice 把phpexcel目录放到phpoffic文件夹下 查看vendor\phpoffice\phpexcel目录下会看到这些文件 3.到vendor\composer目录下…...

使用 AI 辅助开发一个开源 IP 信息查询工具:一

本文将分享如何借助当下流行的 AI 工具,一步步完成一个开源项目的开发。 写在前面 在写代码时,总是会遇到一些有趣的机缘巧合。前几天,我在翻看自己之前的开源项目时,又看到了 DDNS 相关的讨论。虽然在 2021 年我写过两篇相对详细的教程&am…...

HNUST-数据分析技术课堂实验

1.要求 1,从下列第一、二、三组实验中各至少选取一个算法进行实验,选修组实验不作强制要求;2,实验过程不限,目标在于锻炼算法实现过程,即可采用C、C、Java、Python(建议)等任意语言编…...

P3456 [POI2007] GRZ-Ridges and Valleys BFS-连通块思想

题目描述 Byteasar loves trekking in the hills. During the hikes he explores all the ridges and valleys in vicinity. Therefore, in order to plan the journey and know how long it will last, he must know the number of ridgesand valleys in the area he is goi…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄

文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...

解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错

出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...

ios苹果系统,js 滑动屏幕、锚定无效

现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习) 一、Aspose.PDF 简介二、说明(⚠️仅供学习与研究使用)三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...