基于频率增强的数据增广的视觉语言导航方法(VLN论文阅读)

基于频率增强的数据增广的视觉语言导航方法(VLN论文阅读)

在这里插入图片描述

本文提出的方法很简单,将原始图像增加其他随机图像的高频信息,得到增强的图像作为新的样本,与原始的样本交替训练。背后的动机是,vln模型对高频信息敏感,本文方法使得vln模型能够更加关注正确(原始)的高频信息。

摘要

  视觉和语言导航(VLN)是一项具有挑战性的任务,它需要代理基于自然语言指令在复杂的环境中导航。
在视觉语言导航任务中,之前的研究主要是在空间上进行数据增广,本文的重点是在傅里叶频率方面,它旨在增强视觉文本匹配
作者首先探索了高频信息的意义,并提供了证据表明这些高频信息对增强视觉文本匹配是有用的(instrumental)。
基于此,作者首先提出了一种Frequency-enhanced Data Augmentation (FDA)技术,提高模型捕捉关键高频信息的能力。

具体来说,这种方法要求代理在只有一个高频视觉信息对应所提供的文本指令的子集的环境中导航,最终促进了代理根据给定的指令选择性地识别和捕获相关的高频特征的能力。
方法好处:1.简单有效,2,模型架构无关,3不增加参数

1. 引言

  最近的研究从空间域的角度调研了注意力机制,检测模型,细粒度的轨迹-指令对等方式以提高跨模态的匹配能力。
本文重点关注 Fourier domain来enhance visual textual matching,a research area that has received limited prior investigation。
具体来说,当在傅里叶域内进行分析时,高频和低频信息属于图像的不同组成部分。高频部分包括快速的变化,细粒度的细节,边,纹理。低频包括平滑的颜色梯度。如图一所示。
在这里插入图片描述
图1:高频和低频信息的示例。蓝色背景部分是经过傅里叶反变换后的空间域高频谱和高频信息。橙色的背景部分是关于这两种内容的低频信息。

  我们只是简单地通过扰动图像中的低频或高频分量来研究基准方法对低频或高频信息的敏感性。
在这里插入图描述
图2:基准方法对高、低频信息的敏感性分析,即HAMT [9]、DUET [10]和TD-STP [64]。正常的导航场景表示正常的导航场景。hf扰动和lf扰动分别表示高频和低频被扰动的导航场景。

  如图2所示,在R2R数据集上,当基线模型(HAMT,DUET,TD-STP)低频被扰动时,仍然保持一个高的准确率,当高频被扰动时,模型成功率减低明显。这些结果表明VLN模型对高频信息更加敏感。

  为了有效地利用高频信息的好处,我们进一步提出了一种频率增强数据增强(FDA)tailored for VLN,这是一种简单而有效的方法,以增强模型捕获基本高频信息的能力。
具体来说,FDA方法在导航view上利用离散傅里叶变换,从RGB通道中提取高频和低频成分。它用来自干扰图像的部分高频分量替换原图像的部分高频分量,以此引入高频扰动。通过应用傅里叶反变换对扰动高频原始低频分量的组合,得到了增广数据。通过训练代理同时将原始指令与原始导航视图和增强导航视图相匹配,FDA的方法鼓励代理磨练(hone)其捕获与给定指令最一致的相关高频信息的能力。

  本文贡献总结如下: 1)对VLN任务中的频域信息进行了首次深入的分析,强调了高频信息在提高导航性能方面的重要性。这种新颖的视角为社区探索和增强VLN模型提供了新的研究机会。2)我们进一步介绍了一种简单、有效的数据增强方法,即频率增强数据增强(FDA),它增强了模型在不增加复杂性的情况下识别和捕获基本高频信息的能力,为研究界提供了实用的解决方案。3)该方法在R2R、RxR、CVDN和幻想等各种跨模态导航任务上取得了良好的效果,并在不同模型间表现出较强的适应性。


2. 方法(Frequency Perspective for Vision-and-Language Navigation)

  方法包括三个部分:1)VLN问题定义,2)高频信息和低频信息的作用,3)FDA方法(Frequency-enhanced Data Augmentation)

2.1 VLN问题定义

  根据VLN设置, an agent 在含有许多预设点 p i p^i pi 的室内环境 E = { p 1 , p 2 , . . . , p ∣ E ∣ } E=\{p^1,p^2,...,p^{|E|}\} E={p1,p2,...,pE} 中导航, 遵循一共人类指令 T = { w 1 , w 2 , . . . , w ∣ T ∣ } . T=\{w_1,w_2,...,w_{|T|}\}. T={w1,w2,...,wT}. 假设在步骤t, the agent站在点 p t i p_t^i pti 可以接收到周围的全景图 O t = ( o t k ) k = 1 36 O_t=(o_t^k)_{k=1}^{36} Ot=(otk)k=136 包含36个离散的observation o t k o_t^k otk. 每个 observation o t k = ( I t k , θ t k , ϕ t k ) o_t^k=(I_t^k,\theta_t^k,\phi_t^k) otk=(Itk,θtk,ϕtk) 由第 k t h k_{th} kth 个视图 I t k I_t^k Itk 以及它对应的 θ t k \theta_t^k θtk 和仰角 ϕ t k \phi_t^k ϕtk结合. 临近的可导航点 N ( p t i ) N(p_t^i) N(pti)分布在这些视图中. The agent 根据指令 T T T N ( p t i ) N(p_t^i) N(pti)所在的环境 o f k o_f^k ofk之间的关系从相邻的点 N ( p t i ) N(p_t^i) N(pti)中选择下一个可导航点 . 然后,代理将被传送到那个选定的点。导航继续,直到代理预测停止操作或超过预设的步骤阈值。当代理站在目标目的地3米内停止时,导航被认为是成功的。

2.2 高频信息和低频信息的作用(High Frequency or Low Frequency: Which Benefits VLN Performance?)

  考虑到图2的观察结果,我们假设图像中的高频信息可能对跨模态导航任务至关重要。为了验证这一假设,我们进行了一个简单的实验,即将原始图像特征与其相应的高频或低频分量进行融合。这些合并后的特性随后在训练和测试过程中作为导航网络的输入,如图3所示。TD-STP [64]的结果见表1。
在这里插入图片描述
在这里插入图片描述

  以上观察结果突出了高频信息在跨模态导航中的关键作用。这是因为
  1)高频信息包含了一些细节,如边、角和纹理模式。这些细节对于准确地识别和区分物体、场景和位置至关重要,这可以导致更有效的视觉-文本匹配和更好的导航表现。
  2)使用高频信息训练的模型往往对环境变化更健壮,并对看不见的环境表现出更强的泛化能力,因为该模型学习了专注于一组更多样化的特征,而不是仅仅记忆训练数据中出现的特定的低频、全局模式。

2.3 FDA方法(Frequency-enhanced Data Augmentation)

在这里插入图片描述
图4:我们的方法将干扰高频和参考高频混合在一起。然后,通过对混合高频和参考低频的组合应用傅里叶反变换,得到了增广图像。最后,将只包含部分参考高频的增强图像与指令对齐,以鼓励代理识别和捕获参考高频信息。FFT和iFFT表示傅里叶变换和傅里叶反变换。GHPF和GLPF分别表示高斯高通滤波器和高斯低通滤波器。

  如图4所示,参考图像I是与导航指令T对应的导航视图(“向前走,经过冰箱,在餐桌后面左转,直接穿过门口……”)。干涉图像Iˆ是从Matterport3d(Mp3d)数据集[6]中随机采样的另一个导航视图。为了防止信息泄漏,所有的干扰图像都从训练/验证可见分割中采样,并且不使用验证未可见分割和测试分割中的图像。
我们首先通过傅里叶变换(FFT)将这两张图片转换到频率空间,得到两个频率谱 F I { r g b } F_I^{\{rgb\}} FI{rgb} and F I ^ { r g b } F_{\hat{I}}^{\{rgb\}} FI^{rgb}:

F I { r g b } = F { r g b } ( I ) , F I ^ { r g b } = F { r g b } ( I ^ ) F_I^{\{rgb\}}=\mathcal{F}^{\{rgb\}}(I),~F_{\hat{I}}^{\{rgb\}}=\mathcal{F}^{\{rgb\}}(\hat{I}) FI{rgb}=F{rgb}(I), FI^{rgb}=F{rgb}(I^)   其中 F { r g b } \mathcal{F}^{\{rgb\}} F{rgb} 表示RGB颜色通道上的傅里叶变换。然后,我们在两个频谱上应用高通和低通高斯滤波器来获得参考高频 H { r g b } H^{\{rgb\}} H{rgb},参考低频 L { r g b } L^{\{rgb\}} L{rgb} 和干扰高频y H ^ { r g b } . \hat{H}^{\{rgb\}}. H^{rgb}.
H { r g b } = G h ⊙ F I { r g b } , L { r g b } = G l ⊙ F I { r g b } , H ^ { r g b } = G h ⊙ F I ^ { r g b } \begin{aligned}H^{\{rgb\}}=\mathcal{G}_h\odot F_I^{\{rgb\}},&L^{\{rgb\}}=\mathcal{G}_l\odot F_I^{\{rgb\}},&\hat{H}^{\{rgb\}}=\mathcal{G}_h\odot F_{\hat{I}}^{\{rgb\}}\end{aligned} H{rgb}=GhFI{rgb},L{rgb}=GlFI{rgb},H^{rgb}=GhFI^{rgb}  其中 G h G_h Gh and G l G_l Gl 表示 Gaussian High-Pass Filter (GHPF)和 Gaussian Low-Pass Filter (GLPF), and ∙ ◯ \textcircled{\bullet} is element-wise multiplication. 然后我们将这两个图像的高频部分混合,具体来说,对于参考图像的每个RGB信道,有一定的概率是其高频分量被来自同一信道的干扰高频所取代:
H m i x c = M i x ( H c , H ^ c ) = { H c , p r o b a b i l i t y o f 1 / 3 H ^ c , o t h e r s , c ∈ { r , g , b } H m i x { r g b } = M i x ( H { r g b } , H ^ { r g b } ) \begin{gathered} \left.H_{mix}^{c}=\mathcal{M}ix(H^{c},\hat{H}^{c})=\left\{\begin{array}{ll}{{H^{c},}}&{{probabilityof1/3}}\\{{\hat{H}^{c},}}&{{others}}\end{array}\right.\right.,c\in\{r,g,b\} \\ H_{mix}^{\{rgb\}}=\mathcal{M}ix(H^{\{rgb\}},\hat{H}^{\{rgb\}}) \end{gathered} Hmixc=Mix(Hc,H^c)={Hc,H^c,probabilityof1/3others,c{r,g,b}Hmix{rgb}=Mix(H{rgb},H^{rgb})  其中 H m i x { r g b } H_{mix}^{\{rgb\}} Hmix{rgb} 是混合的高频. 我们将它与参考低频 L { r g b } L^{\{rgb\}} L{rgb} 结合然后用 iFFT获得频率增强的图像 I m i x I_{mix} Imix:

I m i x = F − 1 ( F m i x { r g b } ) = F − 1 ( H m i x { r g b } , L { r g b } ) . I_{mix}=\mathcal{F}^{-1}(F_{mix}^{\{rgb\}})=\mathcal{F}^{-1}(H_{mix}^{\{rgb\}},L^{\{rgb\}}). Imix=F1(Fmix{rgb})=F1(Hmix{rgb},L{rgb}).  最后原始图像 I I I 和增广图像 I m i x I_{mix} Imix 共享同一个文本指令标签 T T T 在训练阶段交替用于训练agent:

L ( θ ) = { N a v i g a t o r L o s s ( I , T , θ ) , o d d - n u m b e r e d s t e p N a v i g a t o r L o s s ( I m i x , T , θ ) , e v e n - n u m b e r e d s t e p \left.L(\theta)=\left\{\begin{array}{ll}NavigatorLoss(I,T,\theta),&odd\text{-}numberedstep\\NavigatorLoss(I_{mix},T,\theta),&even\text{-}numberedstep\end{array}\right.\right. L(θ)={NavigatorLoss(I,T,θ),NavigatorLoss(Imix,T,θ),odd-numberedstepeven-numberedstep  其中 L ( θ ) L(\theta) L(θ) 表示考虑了原始图像 I I I和频率增强图像 I m i x 的导航损失 , θ I_{mix}的导航损失,\theta Imix的导航损失,θ 表示导航器的参数。


3,实验

消融实验(在不同的模型和不同的数据集上)在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  如表5,现有的VLN方法在高频扰动导航场景中受到了严重的限制。ImageNet表示从ImageNet中选取干扰图像。这有力地证明了我们的方法能够识别和捕获必要的高频信息,以提高导航性能。


在这里插入图片描述
在这里插入图片描述

与sota结果相比

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

局限性和未来的工作。
本文重点是增强模型识别和捕获基本高频信息的一般能力。然而,还没有探索频率和特定场景或类别之间的细粒度相关性。这一调查领域仍然是未来探索的一条途径。

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

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

相关文章

TV-SAM 新型零样本医学图像分割算法:GPT-4语言处理 + GLIP视觉理解 + SAM分割技术

TV-SAM 新型零样本医学图像分割算法:GPT-4语言处理 GLIP视觉理解 SAM分割技术 提出背景TV-SAM 方法论 提出背景 论文:https://arxiv.org/ftp/arxiv/papers/2402/2402.15759.pdf 代码:https://github.com/JZK00/TV-SAM 利用了GPT-4的强大语…

TCP/IP-常用网络协议自定义结构体

1、TCP/IP模型: 2、TCP/IP- 各层级网络协议(从下往上): 1)数据链路层: ARP: 地址解析协议,用IP地址获取MAC地址的协议,通过ip的地址获取mac地 …

SpringBoot使用jsoup爬取HTML

原文网址:SpringBoot使用jsoup爬取HTML_IT利刃出鞘的博客-CSDN博客 简介 本文介绍SpringBoot--使用jsoup(Java爬虫工具)的方法。 jsoup 是一款 Java 的 HTML 解析器,它提供了一套非常便利的 API,可通过 DOM、CSS 通过类似于 JQuery 的操作…

Java的基础数据类型有哪些?String是Java的基础数据类型吗?

目录 Java的基础数据类型有哪些? String是Java的基础数据类型吗? Java的基础数据类型有哪些? Java的基础数据类型是Java语言中预定义的几种基本的数据格式,它们在Java虚拟机(JVM)中有固定的内存占用和…

分享一个FreeSWITCH通道吊死的帖子

https://forum.signalwire.community/t/session-is-pending-when-shutdown-freeswitch/886/7 之前碰到过类似的情况&#xff0c;就是show channels能看到&#xff0c;但是uuid_kill <uuid>报错&#xff0c;说uuid不存在&#xff0c;或者叫僵尸通道 这人真正的问题是&am…

【最新】如何将idea上的项目推送到gitee

1.打开Gitee&#xff0c;在首页&#xff0c;点击“”&#xff0c;创建一个仓库 2.填写仓库基本信息 3.下拉&#xff0c;点击“创建”&#xff0c;出现下方页面&#xff0c;证明仓库创建成功。 4.打开idea&#xff0c;下载gitee的插件&#xff08;此处默认已经下载git&#xff0…

基于React, Redux实现的俄罗斯方块游戏及源码

分享一个俄罗斯方块游戏游戏框架使用的是 React Redux&#xff0c;其中再加入了 Immutable&#xff0c;用它的实例来做来Redux的state。&#xff08;有关React和Redux的介绍可以看 安装 npm install运行 npm start浏览自动打开 http://127.0.0.1:8080/ 打包编译 npm run …

T - SQL使用事务 及 在Winform使用事务

事务适用场景 1 事务使用在存储过程中&#xff0c;直接在数据库中进行编写 2 事务使用在Winfrom项目中 SQl&#xff1a;使用事务转账操作的实例 一般都会找一个变量记录错误的个数&#xff0c;error记录上一句sql的错误和错误编号 declare errornum int 0 -- 定义…

自动化搭建初期必要的需求分析

1. 项目目标理解 与项目团队沟通&#xff1a;与项目经理、开发团队、产品经理等关键角色进行深入沟通&#xff0c;了解项目的整体目标和预期成果。理解业务需求&#xff1a;详细阅读项目文档&#xff0c;包括需求规格说明书、设计文档等&#xff0c;确保对业务逻辑和流程有深入…

selenium-激活pycharm,以及在pycharm中使用selenium时标红报错问题处理

激活pycharm&#xff1a;http://idea.955code.com/ 01 pycharm中导入selenium报错 现象: pycharm中输入from selenium import webdriver, selenium标红 原因1: pycharm使用的虚拟环境中没有安装selenium&#xff1a; 解决方法: 在pycharm中通过设置或terminal面板重新安装s…

nosql的注入

一、SQL注入数据库分类 关系型数据库 mysql oracle sqlserver 非关系型数据库 key-value redis MongoDB&#xff08;not only sql&#xff09; 二、MongoDB环境搭建 自己官网下载 Download MongoDB Community Server | MongoDB 其中Mongod.exe是它的一个启动 加上数据库&…

本届挑战赛亚军方案:面向微服务架构系统中无标注、多模态运维数据的异常检测、根因定位与可解释性分析

CheerX团队来自于南瑞研究院系统平台研发中心&#xff0c;中心主要从事NUSP电力自动化通用软件平台的关键技术研究与软件研发。 选题分析 图1 研究现状 本次CheerX团队的选题紧密贴合了目前的运维现状。实际运维中存在多种问题导致运维系统的不可用。比如故障发生时&#xff…

[设计模式Java实现附plantuml源码~行为型] 对象状态及其转换——状态模式

前言&#xff1a; 为什么之前写过Golang 版的设计模式&#xff0c;还在重新写Java 版&#xff1f; 答&#xff1a;因为对于我而言&#xff0c;当然也希望对正在学习的大伙有帮助。Java作为一门纯面向对象的语言&#xff0c;更适合用于学习设计模式。 为什么类图要附上uml 因为很…

基于JAVAEE+Eclipse+Tomcat+Mysql开发的的停车场管理系统

基于JAVAEEEclipseTomcatMysql开发的的停车场管理系统 项目介绍&#x1f481;&#x1f3fb; 如今&#xff0c;我国现代化发展迅速&#xff0c;人口比例急剧上升&#xff0c;在一些大型的商场&#xff0c;显得就格外拥挤&#xff0c;私家车的数量越来越多&#xff0c;商场停车难…

【深度学习】Pytorch 教程(十四):PyTorch数据结构:6、数据集(Dataset)与数据加载器(DataLoader):自定义鸢尾花数据类

文章目录 一、前言二、实验环境三、PyTorch数据结构1、Tensor&#xff08;张量&#xff09;1. 维度&#xff08;Dimensions&#xff09;2. 数据类型&#xff08;Data Types&#xff09;3. GPU加速&#xff08;GPU Acceleration&#xff09; 2、张量的数学运算1. 向量运算2. 矩阵…

高性能图表组件LightningChart .NET v11.0发布——增强DPI感知能力

LightningChart完全由GPU加速&#xff0c;并且性能经过优化&#xff0c;可用于实时显示海量数据-超过10亿个数据点。 LightningChart包括广泛的2D&#xff0c;高级3D&#xff0c;Polar&#xff0c;Smith&#xff0c;3D饼/甜甜圈&#xff0c;地理地图和GIS图表以及适用于科学&am…

华为---RSTP(四)---RSTP的保护功能简介和示例配置

目录 1. 技术背景 2. RSTP的保护功能 3. BPDU保护机制原理和配置命令 3.1 BPDU保护机制原理 3.2 BPDU保护机制配置命令 3.3 BPDU保护机制配置步骤 4. 根保护机制原理和配置命令 4.1 根保护机制原理 4.2 根保护机制配置命令 4.3 根保护机制配置步骤 5. 环路保护机…

php基础学习之错误处理(其二)

在实际应用中&#xff0c;开发者当然不希望把自己开发的程序的错误暴露给用户&#xff0c;一方面会动摇客户对己方的信心&#xff0c;另一方面容易被攻击者抓住漏洞实施攻击&#xff0c;同时开发者本身需要及时收集错误&#xff0c;因此需要合理的设置错误显示与记录错误日志 一…

Linux笔记--用户与用户组

Linux系统是一个多用户多任务的操作系统&#xff0c;任何一个要使用系统资源的用户&#xff0c;都必须首先向系统管理员(root)申请一个账号&#xff0c;然后以这个账号的身份进入系统。 用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪&#xff0c;并控制他们对系…

odoo17 | 核心组件 - 动作(Actions)

动作Actions 在Odoo中&#xff0c;动作&#xff08;Actions&#xff09;是系统的核心组件之一&#xff0c;负责定义系统响应用户交互的具体行为。动作定义了系统对用户操作的响应行为&#xff0c;例如登录、按钮点击、发票选择等。动作可以存储在数据库中或直接作为字典在按钮…