【EarthMarker】区域级和点级遥感图像理解的视觉提示学习框架

news2024/11/26 1:29:27

摘要

  • 自然图像区域视觉提示使用户可以通过各种视觉标记,如框、点和其他形状,和AI进行交互。但是,自然图像和RS图像之间存在显著差异,现有的视觉提示模型在RS场景中面临着挑战。此外,RS MLLMs主要关注于解释图像级RS数据,只支持与语言指令进行交互,限制了在现时世界的灵活性应用。
  • 为此,本文提出一种新的视觉提示模型,擅长图像级、区域级和点级的RS图像解释。具体来说:
    • 视觉提示与图像和文本指令输入到LLM,使模型适应特定的预测和任务。
    • 随后,引入了一种共享视觉编码方法,以统一细化多尺度图像特征和视觉提示信息。
    • 此外,为了赋予EarthMarker多粒度视觉感知能力设计了跨领域阶段学习策略,并通过利用自然和RS领域特定知识,以轻量级的方式优化不相交的参数。
  • 此外,为了解决RS视觉提示数据不足的问题,构建了一个具有多模态细粒度视觉提示指令的RSVP数据集。大量的实验被用来证明了所提出的EarthMarker的竞争性能,代表了在视觉提示学习框架下多粒度RS图像解释方面的显著进步。

方法

  • 如图1所示,EarthMarker可以完成图像级、区域级和点级的RS图像解释,如场景分类、字幕等。
  • 如图2所示,EarthMarker包含四个核心组件:共享的视觉编码机制、模式对齐映射层、文本标记器模块和LLM解码器。

  • 图像和相应的视觉提示使用共享的视觉编码机制,使用Mixture of Visual Experts (MoV)编码视觉信息,包含两个编码器DINOv2-ViT L/14和CLIP-ConvNeXt,在不同的网络架构上进行预训练(ViT和CNN),以提供互补的视觉语义。为了细化鲁棒的多尺度视觉特征,将输入的图像I降采样到不同的分辨率,即I^i,然后分别输入MoV模块进行编码。随后,将编码后的视觉特征转换为相同的维度,并沿通道维度连接,得到多尺度特征图V_{img}。这个过程可以简单地表述为:V_{img}=Concat(MoV(I^i)),i=1,2,...,N
  • 编码器共享机制的一个关键步骤是“Visual Prompt as Images”。特别是,视觉提示的维度(H×W×1)被处理到与图像相同的维度(H×W×3)。然后,转换后的视觉提示P也可以与图像一起输入MoV,编码的视觉提示表示为V_{prompt}。同样地,这个过程也被写成:V_{prompt}=MoV(P)
  • 随后,模态对齐投影层Φ将视觉tokens转换为语言语义空间。同时,文本指令由tokenizer module进行处理,该模块处理文本tokenization和embedding,并将其转换为文本embeddingsX_{instruct}。在获得projected image tokens, visual prompts tokes和text instructions embeddings后,它们被集成到一个完整的多模态输入序列中。LLM解码器接受多模态输入并生成响应序列Y,公式为:VY=LLM(\Phi (V_{img}),\Phi(V_{prompt}),X_{instruct})
  • 使用Llama 2,一个基于变压器的解码器的LLM,作为LLM解码器。
  • Cross-domain Phased Training
    • 整个训练过程分为multi-domain image-text alignment、spatial perception tuning和RS visual prompting tuning stage三个阶段。在整个训练过程中,一直保持着轻量级的训练,并避免了昂贵的full-parameters tuning。此外,还提出了disjoint parameters strategy,即各阶段的更新参数都不同。
    • Multi-domain Image-text Alignment:自然和RS图像都被用于预训练,自然场景字幕数据集COCO Caption和新构建的RSVP的RS图像标题和场景分类子集。在这个训练阶段,多尺度的视觉特征和语言表示被集成到LLM中,以发展图像级的理解能力。MoV模块在整个训练过程中都保持冻结,以便专注于改进健壮的视觉特征。只更新对齐映射层参数,以增强多模态能力,并确保视觉和文本信息的无缝集成。
    • Spatial Perception Tuning:为了获取空间感知和对象级理解,将自然场景公开可用的数据集RefCOCO和RefCoCOCO+被转换为instruction-following格式。在整个训练过程中,LLM的注意层被解冻,以将空间区域特征与语言嵌入对齐。冻结其他模块。
    • RS Visual Prompting Tuning:该阶段是准确地遵循用户指令,实现复杂的区域级和点级视觉推理任务。MoV、对齐映射和LLM都是固定的。调优采用了LoRA方法。加载在上一阶段训练的权重,并继续训练EarthMarker的RSVP-3M region-text and point-text parings,其中包含细粒度的对象分类标签和简短的标题数据标签。具体地说,将几个可学习的低秩适配器矩阵\Delta W^v_l,\Delta W^q_l,\Delta W^k_l插入到LLM的transformer层中。自适应的多头注意力表示为Attn_l^*(Q_l,K_l,V_l),第1个自适应的变压器注意力的输出表示为
      • ​​​​​​​

数据集RSVP-3M构建

基于现有的公开的RS数据集,并使用GPT-4V进行自动注释。

  • Data Conversion and Annotation from Public RS Datasets
    • ​​​​​​​​​​​​​​如表一,图像级、区域级和点级的数据来自于不同的RS数据集。
    • 首先,图像分类和字幕数据集转换为图像级视觉提示数据。对于这两种类型的数据集,使用了图像级的视觉指令,以边界框[0, 0, width, height]作为视觉提示,以获得图像的类别或简要标题。
    • 随后,区域级的数据是基于目标检测数据集。地面真实边界框被用作视觉提示,以指导模型准确地识别对象级或区域级的类别。此外,点级数据也从分割数据集上进行了转换。例如,对于分割,从实例对应的掩码中提取的代表性点被用作点级的视觉提示。语义分割时,每幅图像分为32个×32个块,每个块内随机采样点作为视觉提示,从相应的分割图中检索类别。
    • 在RSVP-3M中,每个数据项都由visual promptsuser instructionsimages组成。user instructions或model answers的visual prompts被表示为< Mark i >或< Region i >。例如,对于点级数据,指导参考对象分类的用户指令是“Please identify the category of each marked point in the image”。答案格式是“< Mark 1>: Label 1\n <Mark 2>: Label 2\n, ..., ‘points : [x1, y1], [x2, y2], ...”。另外,对于区域级数据,以机场现场为例。机场区域字幕的用户说明是“Please provide the brief caption of each marked region in the image
      ,和相应的回答格式生成的模型是“
      < Region 1 >: A big airplane on the left\n < Region 2>:A small vehicle on the top\n, ..., ‘bbox: [x1, y1, x2, y2], ...”。其他视觉任务的数据结构与上面解释的类似。通过基于公共数据集的转换和重新标注,有效地开发了具有图像点-文本和图像-区域-文本配对功能的可视化提示数据集RSVP-3M。
  • GPT4V-assisted Visual Prompting Data Generation
    • 上述公共数据集仅提供了简单的分类信息和简短的说明,不足以智能解释复杂的RS图像。为解决此限制,并开发一个更详细和明确的RS视觉提示数据集,制作GPT-4V的语言提示,用于生成具有复杂视觉推理的数据。采用Set-of-Marks(SoM)提示,更好的使用GPT-4V的visual grounding能力,从RS图像中获得全面而独特的特征。

实验

Scene Classification

Image Captioning

Referring Object Classification

Region Captioning

Complex Visual Reasoning

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

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

相关文章

中文诗歌生成

用transformer在诗歌集上训练出的模型 import os os.environ["KERAS_BACKEND"] "tensorflow" # param ["tensorflow", "jax", "torch"] os.environ[TF_CPP_MIN_LOG_LEVEL] 2 os.environ[HF_ENDPOINT] https://hf-mirro…

拥抱AI时代:解锁Prompt技术的无限潜力与深远影响

拥抱AI时代&#xff1a;解锁Prompt技术的无限潜力与深远影响 引言 在人工智能的浩瀚星空中&#xff0c;自然语言处理&#xff08;NLP&#xff09;无疑是最耀眼的星辰之一。随着技术的不断演进&#xff0c;NLP已经从最初的简单问答系统发展成为能够生成复杂文本、理解人类情感与…

JavaScript之WebAPIs-BOM

目录 BOM操作浏览器一、Window对象1.1 BOM&#xff08;浏览器对象模型&#xff09;1.2 定时器-延时函数1.3 js执行机制1.4 location对象1.5 navigator对象1.6 history对象 二、本地存储三、补充数组中的map方法数组中的join方法数组中的forEach方法(重点)数组中的filter方法(重…

Linux_线程的同步与互斥

目录 1、互斥相关概念 2、代码体现互斥重要性 3、互斥锁 3.1 初始化锁 3.2 申请、释放锁 3.3 加锁的思想 3.4 实现加锁 3.5 锁的原子性 4、线程安全 4.1 可重入函数 4.2 死锁 5、线程同步 5.1 条件变量初始化 5.2 条件变量等待队列 5.3 唤醒等待队列…

探索 Java 中的 DeferredResult<Object>

个人名片 &#x1f393;作者简介&#xff1a;java领域优质创作者 &#x1f310;个人主页&#xff1a;码农阿豪 &#x1f4de;工作室&#xff1a;新空间代码工作室&#xff08;提供各种软件服务&#xff09; &#x1f48c;个人邮箱&#xff1a;[2435024119qq.com] &#x1f4f1…

(POSIX) 文件读写基础

文章目录 &#x1f5c2;️前言&#x1f4c4;ref&#x1f4c4;访问标记&#x1f5c3;️文件访问标记 &#x1f5c2;️Code&#x1f4c4;demo&#x1f4c4;分点讲解&#x1f5c3;️打开/关闭&#x1f5c3;️写&#x1f5c3;️读 &#x1f5c2;️END&#x1f31f;关注我 &#x1f…

C++ 正则库与HTTP请求

正则表达式的概念和语法 用于描述和匹配字符串的工具&#xff0c;通过特定的语法规则&#xff0c;灵活的定义复杂字符串匹配条件 常用语法总结 基本字符匹配 a&#xff1a;匹配字符aabc&#xff1a;匹配字符串abc 元字符&#xff08;特殊含义的字符&#xff09; .&#xff1a;匹…

【医学影像】RK3588+FPGA:满足远程诊疗系统8K音视频编解码及高效传输需求

医学影像 提供基于Intel平台、NXP平台、Rockchip平台的核心板、Mini-ITX主板、PICO-ITX主板以及工业整机等计算机硬件。产品板载内存&#xff0c;集成超高清编码/解码视频引擎&#xff0c;具有出色的数据处理能力和图形处理能力&#xff0c;功能高集成&#xff0c;可应用于超声…

可信推荐系统论文分享-1

《Debiasing Recommendation by Learning Identifiable Latent Confounders》

openmv学习笔记(24电赛备赛笔记)

#openmv简介 openmv一种小型&#xff0c;可编程机器视觉摄像头&#xff0c;设计应用嵌入式应用和计算边缘&#xff0c;是图传模块&#xff0c;或者认为是一种&#xff0c;具有图像处理功能的单片机&#xff0c;提供多种接口&#xff08;I2C SPI UART CAN ADC DAC &#xff0…

【BUG】已解决:Uncaught SyntaxError: Unexpected token ‘<‘

已解决&#xff1a;Could not install packages due to an EnvironmentError: [Errno 13] Permission denied 欢迎来到我的主页&#xff0c;我是博主英杰&#xff0c;211科班出身&#xff0c;就职于医疗科技公司&#xff0c;热衷分享知识&#xff0c;武汉城市开发者社区主理人 …

如何训练出模型的推理规划能力

背景 近期opanai对AGI做了等级划分&#xff1b;等级划分意味着AGI有了一个考核定义&#xff0c;有了升级打怪的评价指标。并给出了目前openai正处在第一级&#xff0c;即将达到第二级的论断。预计在一年或者一年半内实现第二级&#xff0c;可以完成基本问题解决任务的系统。 …

抖音客户端一面

C | 字节抖音客户端一面 Http握手过程 1. 客户端问候(Client Hello) 客户端向服务器发送一个“问候”消息&#xff0c;其中包含客户端支持的SSL/TLS版本、加密算法、压缩方法以及一个随机数。 version 版本号,https也有版本号哦TLS 1.0、TLS 1.1、TLS 1.2等等 random 随机数…

【Linux】进程信号 --- 信号保存

&#x1f466;个人主页&#xff1a;Weraphael ✍&#x1f3fb;作者简介&#xff1a;目前正在学习c和算法 ✈️专栏&#xff1a;Linux &#x1f40b; 希望大家多多支持&#xff0c;咱一起进步&#xff01;&#x1f601; 如果文章有啥瑕疵&#xff0c;希望大佬指点一二 如果文章对…

Linux中进程间通信--匿名管道和命名管道

本篇将会进入 Linux 进程中进程间通信&#xff0c;本篇简要的介绍了 Linux 中进程为什么需要通信&#xff0c;进程间通信的常用方式。然后详细的介绍了 Linux 进程间的管道通信方式&#xff0c;管道通信分为匿名管道和命名管道&#xff0c;本篇分别介绍了其实现的原理&#xff…

4.Java Web开发模式(javaBean+servlet+MVC)

Java Web开发模式 一、Java Web开发模式 1.javaBean简介 JavaBeans是Java中一种特殊的类&#xff0c;可以将多个对象封装到一个对象&#xff08;bean&#xff09;中。特点是可序列化&#xff0c;提供无参构造器&#xff0c;提供getter方法和setter方法访问对象的属性。名称中…

顺序 IO 和 随机IO

顺序 IO 和 随机IO 顺序IO 和 随机IO 是计算机存储系统领域中的概念&#xff0c;主要涉及数据的读取和写入方式。这些术语通常在讨论硬盘驱动器&#xff08;HDDs&#xff09;、固态驱动器&#xff08;SSD&#xff09;以及其他存储设备的性能时使用。 顺序IO&#xff08;Sequen…

TeamViewer关闭访问密码或固定一组密码不变

TeamViewer的新UI界面变化较大&#xff0c;网上的一些信息已经不再有效&#xff0c;更新后的访问密码在如下图所示&#xff1a; 演示的版本为7.21.4—— 设置每次你的设备访问的密码

Hi6274 反激式20瓦电源芯片

HI6274为高性能多模式 PWM 反激式20瓦电源芯片。HI6274较少的外围元器件、较低的系统成本可设计出高性能的"无Y"开关电源。HI6274提供了极为全面和性能优异的智能化保护功能&#xff0c;包括逐周期过流保护、过载保护、软启动、芯片过温保护、可编程输出过压保护功能…

Kettle 登录示例 POST请求

登录接口是post请求&#xff0c;组装Body为json字符串 var body "{\"username\":\""username"\",\"password\": \""password"\",\"code\":\""verification"\",\"uuid\…