MM-2024 | 智能体遇山开路,遇水架桥! ObVLN:突破障碍,受阻环境中的视觉语言导航

  • 作者:Haodong Hong, Sen Wang, Zi Huang

  • 单位:昆士兰大学

  • 论文链接:Navigating Beyond Instructions: Vision-and-Language Navigation in Obstructed Environments (https://dl.acm.org/doi/pdf/10.1145/3664647.3681640)

  • 代码链接:https://github.com/honghd16/ObstructedVLN

主要贡献

  • 提出R2R-UNO数据集,首次将指令-现实不匹配问题引入VLN任务,通过在R2R数据集中修改导航图和视觉观测,生成了多样化的障碍物,反映了真实世界导航的复杂性。

  • 提出ObVLN方法,包括课程训练策略和虚拟图构建机制,帮助智能体有效适应障碍物环境。

  • 在R2R-UNO数据集上,ObVLN方法相比现有方法在障碍物环境中的成功率提高了23%,达到了67%的成功率,显著提升了智能体的适应性。

  • 在R2R、REVERIE和R2R-UNO数据集上进行了广泛的实验,证明了在VLN研究中引入R2R-UNO的重要性,并展示了ObVLN在原始和无障碍环境中的良好表现。

研究背景

研究问题

当前的VLN任务通常假设指令与固定的预定义导航图完全一致,忽略了实际导航图中可能存在的障碍物,这会导致在室内和室外环境中导航失败。

论文主要解决视觉语言导航(VLN)在实际环境中遇到的指令与现实的匹配问题。

研究难点

该问题的研究难点包括:

  • 如何有效地在现有的VLN环境中引入障碍物,使得指令与现实环境不匹配;

  • 如何在训练过程中使智能体适应这种不匹配,从而提高其在实际导航中的鲁棒性。

相关工作

  • 数据集:介绍了用于VLN的数据集,如Matterport3D和HM3D,并介绍了通过合成指令、额外环境和预测场景来缓解数据稀缺问题的方法。ScaleVLN通过合成高质量的指令-轨迹对来提高智能体性能。

  • 环境变化:讨论了修改VLN环境的多种方法,这些方法可以分为基于视觉的调整和基于图的调整。VLN-CE放弃基于图的导航范式,允许智能体在连续环境中自由移动以增强任务真实性。

  • 障碍物避让:介绍了几种在视觉导航中处理障碍物的方法,如ETP-Nav和SafeVLN,但这些方法与本文的工作不同,因为它们专注于评估障碍物的属性以避免它们,而不是处理导航图的变化。

  • 对象插入:回顾了计算机视觉中对象插入的研究历史,从早期的剪切粘贴策略到使用神经网络的图像合成。在导航领域,THDA和Envedit分别使用3D扫描和语义图像合成来增强训练数据。

研究方法

问题设定

在VLN中,智能体需要遵循自然语言指令在模拟环境中导航。环境通常是一个预定义的无向导航图,智能体在每个时间步感知一个全景视图,并决定一个动作来移动到相邻节点。

然而,现实世界的导航图可能会发生变化,例如由于障碍物的存在,导致指令与现实不符,智能体必须找到替代路径。

R2R-UNO数据集

提出了R2R-UNO数据集,通过在R2R数据集的导航图和视觉观察中进行修改,引入了各种类型的路径障碍,以生成指令与现实的不一致性问题。

  1. 图的变化

    • 定义了在R2R数据集中路径上的冗余边,并根据这些边的组合创建了不同的阻塞集合(Block-x),其中x表示阻塞边的数量。

    • 对于每个路径,识别出所有冗余边,并为每组冗余边的组合计算替代路径,以确保即使某些边被阻塞,智能体仍然可以到达目的地。

    • 为了避免生成过长的路径,设置了新路径长度的限制。

  2. 视觉变化

    • 为了与图的变化保持一致,引入了两个新模块:对象插入模块和过滤模块。

    • 对象插入模块使用稳定的扩散修复模型来在全景视图中插入物体,从而在视觉上模拟障碍物的存在。

    • 过滤模块通过使用CLIP模型评估每个视图-物体对的兼容性分数,从多个生成的候选视图中选择高质量的修复结果。

  3. 对象插入过程

    • 描述了如何在节点的全景视图中定位另一个节点,并计算像素坐标以生成掩码。

    • 使用修复模型生成修复后的视图,并通过过滤模块选择最佳的修复结果。

    • 最后,将更新后的视图传播到相邻视图,以保持全景视图的一致性。

  4. 多视图一致性

    • 仅在节点连接的冗余边上执行2D修复可能会导致多视图不一致性。

    • 尽管如此,这种不一致性在他们的任务中对智能体性能的影响较小,因为指令与现实的不匹配主要是由图的变化定义的。

ObVLN

现有的VLN方法在完美指令假设下表现良好,但缺乏适应图变化的基本导航功能,这在现实世界的导航中至关重要。

论文提出ObVLN(Obstructed VLN),帮助智能体从无障碍环境平滑过渡到障碍环境。

  1. R2R-UNO验证:通过在R2R-UNO数据集上进行零样本评估,发现即使是表现最好的模型,在遇到单个阻塞边时成功率也会显著下降。

  2. ObVLN方法:为了解决这个问题,提出了ObVLN方法,它结合了课程学习策略和图构建机制,帮助智能体更好地适应阻塞环境。

  3. 课程学习策略:该方法通过逐步增加阻塞环境的样本比例,使智能体能够在原始和阻塞环境中都能保持良好的性能。

  4. 图构建机制:引入虚拟节点来代表因阻塞而不可达的节点,促进智能体寻找替代路线并提高探索效率。

实验设计

数据集

实验主要在R2R和R2R-UNO数据集上进行:

  • R2R数据集包括10,800个全景视图,分为训练集、验证集(可见和不可见)和测试集。

  • R2R-UNO数据集通过在R2R路径中引入障碍物生成,包含三种不同的障碍物设置(Block-1、Block-2、Block-3)。

评估指标

评估指标包括:

  • 轨迹长度(TL),

  • 导航误差(NE),

  • 成功率(SR),

  • 路径长度加权成功率(SPL)。

实现细节

使用stable-diffusion-v1.5-inpainting模型进行对象插入,CLIP ViT-L/14评估文本图像对。

采用HAMT和DUET进行导航训练,优化器为AdamW,学习率为1e-5,批量大小为8,训练100K次。

训练设置

比较了三种不同的训练设置:

  • 基本设置(仅使用R2R数据集),

  • +OE设置(结合R2R和R2R-UNO数据集),

  • +ObVLN设置(使用ObVLN方法在R2R和R2R-UNO数据集上训练)。

主要结果

性能提升

  • 结果显示,结合两种类型数据的模型在R2R-UNO数据集上的导航性能显著优于仅在R2R上训练的模型。

  • 尽管结合数据的训练设置提高了在阻塞场景中的性能,但也导致了在R2R数据集上的性能下降。

  • 论文指出这是因为智能体在阻塞环境中过度优化,倾向于在没有障碍物的情况下也采取绕行策略。

ObVLN的优势

  • 对于HAMT模型,ObVLN在所有四个R2R和R2R-UNO数据集上都取得了最佳结果。

  • 对于DUET模型,尽管在R2R上的SPL略有下降,但在R2R-UNO的所有三个数据集上都取得了最先进的结果。

消融研究

消融研究表明,对象插入模块和过滤模块对提高智能体在障碍环境中的导航性能至关重要。

此外,逐步增加障碍物环境样本比例的采样策略也优于其他策略。

定性分析

展示了R2R-UNO中的一些受阻环境,并与原始视图进行了比较。

结果表明,ObVLN方法能够成功地将各种对象插入到原始视图的特定位置,创建出现实且上下文和谐的障碍物。

总结

论文通过引入障碍物到VLN环境中,解决了指令与现实匹配问题。

提出的R2R-UNO数据集和ObVLN方法有效地提高了智能体在障碍环境中的导航能力。

研究表明,解决完美指令假设对于VLN在实际应用中的鲁棒性和适应性至关重要。

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

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

相关文章

远程命令执行之基本介绍

一.远程命令执行漏洞 1.命令执行 命令执行是指计算机程序接受用户输入的命令,并按照命令的要求执行相应的操作。命令可以执行各种操作,例如读取文件、创建文件、修改文件、运行程序、删除文件等。 命令执行通常是通过一个命令行界面或终端窗口进行的。在…

Scrapy和Selenium结合使用完整步骤

Scrapy和Selenium结合使用完整步骤 一、环境安装 1. 安装Scrapy 在命令行执行以下指令: pip install scrapy2. 安装Selenium pip install selenium3. 安装scrapy_selenium pip install scrapy_selenium4. 安装 chrome-headless-shell 和 chromedriver 打开ch…

webpack打包node后端项目

webpack打包后端项目 后端项目写好了,感觉也可以打包一下,然后就想到了用webpack试试 先要下载webpack和webpack-cli npm install webpack webpack-cli然后创建webpack配置文件webpack.config.js 核心配置为entry、output、target 但是因为咱们是后…

ReactiveStreams、Reactor、SpringWebFlux

注意: 本文内容于 2024-12-28 21:22:12 创建,可能不会在此平台上进行更新。如果您希望查看最新版本或更多相关内容,请访问原文地址:ReactiveStreams、Reactor、SpringWebFlux。感谢您的关注与支持! ReactiveStreams是…

Android笔试面试题AI答之Android基础(8)

Android入门请看《Android应用开发项目式教程》,视频、源码、答疑,手把手教 文章目录 1.Android新建工程需要注意的地方有哪些?**1. 选择合适的项目模板****2. 配置项目基本信息****3. 选择最低 SDK 版本****4. 配置构建工具****5. 选择编程…

【阻塞队列】- ArrayBlockingQueue 的原理-迭代器

文章目录 1. 前言2. 迭代器3. Itrs3.1 参数3.2 迭代器 Itr3.2.1 参数3.2.2 构造器3.2.3 hasNext3.2.4 next3.2.5 remove3.2.6 shutdown3.2.7 removedAt3.2.8 takeIndexWrapped 3.3 doSomeSweeping(tryHandler)3.4 register3.5 takeIndexWrapped3.6 remov…

ARM 汇编基础总结

GNU 汇编语法 编写汇编的过程中,其指令、寄存器名等可以全部使用大写,也可以全部使用小写,但是不能大小写混用。 1. 汇编语句的格式 label: instruction comment label即标号,表示地址位置,有些指令前面可能会有标…

【MySQL】深度学习数据库开发技术:使用CC++语言访问数据库

**前言:**本节内容介绍使用C/C访问数据库, 包括对数据库的增删查改操作。 主要是学习一些接口的调用, 废话不多说, 开始我们的学习吧! ps:本节内容比较容易, 友友们放心观看哦! 目录 准备mysql…

《SwiftUI 实现点击按钮播放 MP3 音频》

功能介绍 点击按钮时,应用会播放名为 yinpin.mp3 的音频文件。使用 AVAudioPlayer 来加载和播放音频。 关键点: 按钮触发:点击按钮会调用 playAudio() 播放音频。音频加载:通过 Bundle.main.url(forResource:) 加载音频文件。播…

华为配置 之 RIP

简介: RIP(路由信息协议)是一种广泛使用的内部网关协议,基于距离向量算法来决定路径。它通过向全网广播路由控制信息来动态交换网络拓扑信息,从而计算出最佳路由路径。RIP易于配置和理解,非常适用于小型网络…

每日一题 371. 两整数之和

371. 两整数之和 class Solution { public:int getSum(int a, int b) {int flag 0;int ans 0;for(int i0;i<32;i){int num1 a & 1;int num2 b & 1;int temp;if(num1 1 && num2 1 && flag 1){temp 1;flag 1 ;}else{if(num11 && nu…

Android 14.0 系统限制上网系列之iptables用IOemNetd实现app上网黑名单的实现

1.前言 在14.0的系统rom定制化开发中,对于系统限制网络的使用,在system中netd网络这块的产品需要中,会要求设置屏蔽某个app上网的功能, liunx中iptables命令也是比较重要的,接下来就来在IOemNetd这块实现app上网黑名单的的相关功能,就是在系统中只能不允许某个app上网,…

深入浅出:事件监听中的适配器模式

1. 为什么需要适配器模式&#xff1f; 在Java的事件监听器设计中&#xff0c;许多接口有多个抽象方法。例如&#xff0c;MouseListener 接口有 5 个方法&#xff0c;KeyListener 接口有 3 个方法。如果我们只关心其中的一个方法&#xff08;例如&#xff0c;鼠标点击事件&…

MongoDB的安装、启停和常用命令(五分钟入门)

要启动 MongoDB&#xff0c;您可以按照以下步骤进行&#xff1a; 一、安装部署和启停 1. 安装 MongoDB 确保您已在计算机上安装了 MongoDB。可以从 MongoDB 官方网站 下载并安装。 2. 创建数据目录 MongoDB 默认将数据存储在 /data/db 目录中。您需要确保这个目录存在并且…

1.GPU简介及英伟达开发环境配置

前言 This book shows how, by harnessing the power of your computer’s graphics process unit (GPU), you can write high-performance software for a wide rangeof applications.Although originally designed to render computer graphics ona monitor (and still used…

电脑cxcore100.dll丢失怎么办?

电脑运行时常见问题解析&#xff1a;应对DLL文件丢失、文件损坏与系统报错的实用指南 在数字时代&#xff0c;电脑已成为我们工作、学习和娱乐不可或缺的工具。然而&#xff0c;正如任何精密机械都可能遇到故障&#xff0c;电脑在运行过程中也难免会遇到各种问题&#xff0c;如…

HTML——49.header和footer标签

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>header和footer标签</title></head><body><!--header和footer标签:是html5中新标签--><!--header:定义文档的页眉&#xff0c;通常用来定义可见…

【无线传感网】时间同步技术

文章目录 时间同步模型时钟模型1. 节点本地时钟模型2. 节点逻辑时钟模型 通信模型1. 单向报文传递2. 双向报文交换3. 广播参考报文4. 参数拟合技术 时钟同步的误差来源 时间同步协议时钟同步的类别1. 时钟速率同步与偏移同步2. 同步期限&#xff1a;长期同步与按需同步3. 同步范…

C# 实用工具分享(1)

大家好&#xff0c;今天分享一些在开发过程中比较实用的工具。 首先在软件开发的过程中不可避免的要使用截图这样的功能&#xff0c;以前这样的功能我自己也是选择开发出新功能。但是自己开发还是非常费时费力的&#xff0c;并且效果也不一定特别好。 于是我找到了一个现成的…

积分图(Integral Image)与均值滤波的快速实现

积分图&#xff08;Integral Image&#xff09;也称为求和图&#xff08;Summed Area Table&#xff09;&#xff0c;是一种用于快速计算图像中任意矩形区域像素值总和的技术。 基本概念 积分图的每个位置(i, j)存储的是从图像左上角(1, 1)到当前位置(i, j)所有像素值的累积和…