(Visual Grounding 论文研读) Pseudo-Q: Generating Pseudo Language Queries for Visual Grounding, 2022 CVPR

2023-11-02

最近在看关于visual grounding的文章,对于文章中理解不恰当的内容欢迎批评指正,本文将根据论文的结构来组织结构并且展开一定的拓展。

Abstract

  1. visual grounding(VG),即根据自然语言查询在图像中定位对象,是视觉语言理解中的一个重要课题。visual grounding类似于图像处理中的目标检测,知识此时目标的确定需要通过language分析获得。
    image:
    在这里插入图片描述
    query:中间的人
    visual grounding输出:
    在这里插入图片描述
  2. 为了减少人工添加query注释,本模型采用预训练的object detector提取到的proposal利用query生成模块生成Pseudo-Query伪查询,使用Pseudo-Query代替人工query注释
  3. 为了提高准确性,针对Pseudo-Query设计了一种prompt模块,其中prompt的作用见: prompt介绍
  4. 图像模块进行object detector+语言模块进行query+prompt生成后,一起送入多层次跨模态注意机制的视觉-语言模型 multi-level cross-modality attention(ML-CMA)
  5. 论文代码详见github:论文代码

1. Introduction

  1. 现有的视觉接地方法可分为两类:全监督fully-supervised(利用区域和query对来进行监督学习)和弱监督 weakly-supervised(仅采用query来进行监督学习),而本文采用无监督学习,query由模块生成然后再将整体模型转化为有监督学习。
    在这里插入图片描述
  2. query中常使用的关系:空间(左和右),介词(在和与),动作(投掷),以及比较(越来越大)等,这些关系都是生成query的关键。
  3. 本文的查询主要分为三个部分进行组合:
    (1)名词:最容易被查询的显著对象,由object detector根据置信度选取
    (2)属性:被查询对象所具有的内在属性,attribute classifier识别公共属性
    (3)空间关系:对象之间的重要空间关系,通过比较同类对象的面积和相对坐标获取(由propsal提供坐标和面积信息)
  4. 本文使用的数据集有: RefCOCO, RefCOCO+ , RefCOCOg 介绍链接
    ReferItGame介绍链接 、Flickr30K Entities 介绍链接

2.Method

本文中的模型主要包括三个部分:
(1)伪查询生成模块( pseudo-query generation)
(2)查询提示模块和( query prompt)
(3)图像语言模型( visual-language)
训练阶段训练visual-language model,推理阶段测试visual-language model的能力
在这里插入图片描述

2.1 Pseudo-Query Generation

  1. 使用object detector识别object 获得object propsal,并分类器和object propsal的坐标关系判断对象的类别:名词、属性和关系,下图为Pseudo-Query Generation模块的模型图。
    Pseudo-Q生成模块模型图

  2. 名词:将object识别到的object propsal送入预先训练好的分类器Classifer对其进行分类,使用检测置信度作为一个标准;生成query之前移除较小的物体(一般选取top-N置信度的物体,如在RefCOCO数据集上就选择了top-3置信度的物体)

  3. 属性:常见的属性有:颜色、大小、材质以及人的状态等等。采用属性分类器:保留最高置信度和超过预先定义阈值的属性为最为最终建议,衣服也是一个重要属性,可以计算IOU来确定,IOU比较大时可以采用该属性。

  4. 关系:其中最重要的关系为空间关系。空间关系被分为了三个维度:
    水平:左中右等;垂直:上下等;深度:前后等
    生成的对象由一组空间坐标表示,通过比较两个维度的中心坐标确定物体的空间位置关系为了增强鲁棒性,两坐标在某一维度上的差值必须大于预定义的阈值才认为两个物体之间存在某种关系。物体之间的前后关系,由同类物体所占区域的比率确定,如果比率大于某一阈值,则认为大的在前,小的在后。

  5. 生成Pseudo-queries,获得名词、属性和关系之后,按照下面的模板生成query
    在这里插入图片描述

2.2 Query Prompt Module

本文为visual grounding任务设计的prompt模板

“find the region that corresponds to the description {pseudo-query}”
“which region does the text {pseudo-query} describe?”.

2.3 Visual-Language Model

visual-language model由三部分组成:

①Visual encoder
②Language encoder
③Cross-modality fusion module

(其中visual encoder和language encoder的设计遵循TransVG)

transvg模型

Visual encoder:CNN+Visual Transformer用于图像特征提取:

CNN主干是在ImageNet 上预训练的ResNet- 50模型,Visual Transformer是DETR网络的encoding,由6个transformer layer组成。
DERT介绍博客
detr的结构

Language encoder:token embedding layer+Linguistic Transformer用于文本特征提取:

token embedding layer将离散的词转换为连续的语言向量,Linguistic Transformer采用具有12个transfomer layer的Bert网络。
Bert介绍博客
在这里插入图片描述

Cross-modality fusion module

Cross-modality fusion module是整篇文章比较重要的部分,而个人认为文章主要的创新点也在此,训练阶段也主要是对这部分的训练和测试验证。

创新点:传统的方法使用visual encoder和language encoder获得的最终图像和文字的特征来进行特征融合,事实上作者发现不同层次的特征会侧重于不同的信息,低层具有更加粗粒度的信息如形状边缘等,高层具有更加细粒度的信息如内在的对象属性。如果仅仅使用最后的特征来进行融合,无疑会损失一些信息,为了对每一层的信息都加以利用,作者提出了multi-level cross-modality attention (ML-CMA)多层次跨模态注意力机制

ML-CMA
具体的模型示意图如下图所示:
在这里插入图片描述
Visual Encoder共有6层transformer layer,将每一层的特征输出与Language Encoder的最终特征输出进行跨模态自注意力计算,将来自不同层次的所有更新后的视觉特征或文本特征分别连接起来,并利用一个完全连接的层将它们映射到原始维度中。最后,将所有特征连接并输入一个回归头,以预测参考的对象区域。回归头由三个完全连接的层组成。

3.Experiments

论文官方代码github地址

3.1:数据集

本文一共使用了5个数据集用于实验,分别是:
RefCOCO
使用 ReferitGame 收集的。在这个双人游戏中,第一个玩家被看到一个带有分割目标对象的图像,并要求他们编写一个引用目标对象的自然语言表达式。第二个玩家仅显示图像和引用表达式,并要求单击相应的对象。如果玩家正确地完成他们的工作,他们将获得积分并交换角色。如果没有,它们将显示一个新的对象和图像进行描述。选择这些集合中的图像以包含同一对象类别的两个或多个对象。在 RefCOCO 数据集中,对引用表达式中使用的语言类型没有限制。RefCOCO 由 142,209 个引用表达式组成,用于 50,000 张图像中的 19,994 个对象
Refcoco

RefCOCO+:在这个名为RefCOCO+的数据集版本中,不允许玩家通过向ReferItGame添加“禁忌”词来在其引用表达式中使用位置词。收集该数据集是为了获得一个纯粹基于外观的描述的引用表达数据集,例如,“穿着黄色波点衬衫的男人”而不是“左起第二个男人”,从基于计算机视觉的角度来看,这往往更有趣,并且独立于观众的角度。RefCOCO+ 包含 141,564 个表达式,用于 49,856 张图像中的 19,992 个对象。

RefCoco 和 RefCoco+ 中的 “testA” 和 “testB” 集仅包含人员 并且分别是非人。映像被划分为各种 分裂。

在这里插入图片描述

RefCOCOg:RefCOCOg是在非交互式环境中收集的。平均而言,RefCOCOg每个表达式有8.4个单词。RefCOCOg中,谷歌拆分没有规范测试集,验证集,通常在论文中报告为“val”。
在这里插入图片描述

ReferItGame:包含130525个表情的数据集,涉及19894张自然场景照片中的96654个不同物体。

RefCOCO、RefCOCO+、RefCOCOg和ReferItGame下载地址
https://drive.google.com/file/d/1N1Mf3zgYMWI8K_SpIgG1QFBoL13T2wRu/view?usp=sharing
其中下载文件中的other为RefCOCO、RefCOCO+、RefCOCOg的数据集,referit为ReferItGame的数据集。

Flickr30K Entities:在Flickr30k数据集成为被广泛接受的可视化问题回答任务基准之后,Flickr30k entities得到了扩充,以便训练和测试。Flickr30k entities包含31783张图片,主要聚焦于人和动物,每张图片平均有5个英文注释。它识别出相同图像的哪些注释指向同一组实体。因此,生成了244,035个会议链和275,775个提取图像中实体的边界框。

Flickr30K Entities下载地址
链接:https://pan.baidu.com/s/1I2_YsgINsav-Wzrpkfjj9g
提取码:kepl

本文中五个数据集训练图像的数目分别是16994、16992、24698、8994和29779。
数据集的目录结构如下:
在这里插入图片描述

3.2 实施和训练细节

对于每一张图片,分别选取置信度top-N的物体和M个pseudo-queries:

数据集 N M epochs schedule
RefCOCO 3 6 10 cosine learning rate schedule
RefCOCO+ 3 12 20 cosine learning rate schedule
RefCOCOg 2 4 10 cosine learning rate schedule
ReferItGame 6 15 10 cosine learning rate schedule
Flickr30K Entities 7 28 20 exponential decay schedule

本文中准确性的判定:如果预测边界和真实边界之间的 Jaccard overlaps大于0.5,则认为是准确的预测。

3.3 实验结果

在这里插入图片描述

在这里插入图片描述

3.4 消融实验

在这里插入图片描述

希望这篇文章对你有帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

(Visual Grounding 论文研读) Pseudo-Q: Generating Pseudo Language Queries for Visual Grounding, 2022 CVPR 的相关文章

随机推荐

  • 【SVN】 代码版本管理工具使用步骤以及全局忽略不需要提交的文件夹

    2023年 第36周 给自己一个目标 然后坚持总会有收货 不信你试试 SVN是Subversion的简称 是一个开源的版本控制系统 用于管理软件开发过程中的代码版本和文件变更 它提供了跟踪文件修改 协同开发 版本回滚 分支和合并等功能 帮助
  • 如何对已经打包好的ipa包进行签名

    iOS证书学习推荐博客代码签名探析 本文重点在于介绍ios8 1 3系统ipa包重签名 如企业证书 无法安装的问题 苹果在iOS8 1 3系统以后加强了对ipa安装包签名的验证 主要区别在于ipa唯一标识在原有Bundle Identifi
  • react中的状态机_使用状态机增强您的React

    react中的状态机 Mixing React and state machines is a great productivity boost for you as a developer It also improves the usu
  • C#WinForm界面: 使用IrisSkin4实现软件界面美化换肤

    前言 本篇文章主要用于记录IrisSkin4应用过程 方便以后参考 功能实现 步骤1 在网上下载IrisSkin4 dll和它的对应的皮肤文件 下载地址 步骤2 复制以下两个文件到winfrom项目的Debug文件夹下 步骤3 在项目解决方
  • RabbitMq queue异常导致consumer停止

    偶发性rabbitmq出问题或者认为操作错误 访问不了queue 导致消费端停止消费 org springframework amqp rabbit listener QueuesNotAvailableException Cannot p
  • C++中的模板及其使用

    一 什么是模板 模板是C 中自动生成代码的技术 例如我们在C 若想实现一个函数的形参可以是多种数据类型就必须使用重载 模板则可以更加简单方便地实现这一点 二 为什么使用模板 假1如我们想实现一个通用的排序算法 C语言 通过回调函数实现 使用
  • centos docker容器化部署nginx php项目(详细版)

    一 nginx和php的一些原理 1 nginx 是一个 web 服务器 它只能处理静态文件 无法处理 PHP Python 等具体程序语言的请求 所以 原理是这样 用户统一先请求到 nginx nginx 会再把请求转发给 php fpm
  • 城市联动功能

    掌握 本题需要熟练掌握表单事件的运用 select 以及 option 的知识内容 以下为知识点详解及代码 表单字段不包label 因为它只是增强交互的标签 通常来说我们把表单字段分为 input select button textare
  • gcc编译器、Makefile

    一 编译程序的基础知识 1 gcc对程序的编译过程 预编译 编译和优化 汇编 链接 预编译 将程序中引用的头文件包含进源代码中 并对宏进行替换 gcc E hello c o hello i 编译 将用户可识别的语言翻译成处理器可识别的汇编
  • macOS 中 聚焦搜索 的使用教程

    macOS中的聚焦搜索是一个强大的工具 它可以帮助你快速找到文件 应用程序 联系人 电子邮件 互联网搜索结果等 下面是macOS中聚焦搜索的使用教程 1 打开聚焦搜索 使用键盘快捷键 按下键盘上的Command键和空格键 空格 即可打开聚焦
  • 密码方向国家相关政策(含等保2.0)

    听说目前业内都有这样一个基本共识 不做等保 违法 不做密码测评 违法 2018年2月国家密码管理局发布 GM0054 2018 信息系统密码应用基本要求 从信息系统的物理和环境安全 网络和通信安全 设备和计算安全 应用和数据安全四个层面提出
  • 苹果笔记本怎么查看计算机基本信息,怎么区分查找苹果电脑笔记本macBook pro的年份、型号及序列号...

    苹果笔记本每年都更新 新的产品在配置和大小等都有所不同 然而 每年都叫MacBook 那么 如何区别自己的MacBook是哪一年生产的 怎么查看具体型号以及序列号呢 识别自己的苹果笔记本的Mac 机型也很重要 因为查看保修保障范围 创建个人
  • 解决双系统出现的windows时间错误

    首先确定Ubuntu系统的时间正确 查看系统时间 date R 我需要的是东八区 而这里显示的是 0500 很明显不对 因此 1 运行tzselect tzselect 在这里我们选择亚洲 Asia 确认之后选择中国 China 最后选择北
  • 定时每天凌晨一点在linux系统上执行一个autobuild.sh脚本如何实现?

    定时每天凌晨一点在linux系统上执行一个autobuild sh脚本如何实现 可以使用linux的计划任务功能crontab来实现定时执行脚本 具体步骤如下 编辑crontab计划任务列表 bash crontab e 这会打开一个文本编
  • Android实现Activity的跳转(Android学习笔记2)

    Android实现Activity的跳转 一 创建新的Activity 二 设计主界面和菜单界面 三 实现Activity的跳转 1 显示意图跳转Activity的三种方式 1 1 方式一 1 2 方式二 1 3 方式三 2 隐式意图跳转A
  • 【安全研究】从mimikatz学习Windows安全之访问控制模型(三)

    作者 Loong716 Amulab 0x00 前言 在之前的文章中 分别向大家介绍了Windows访问控制模型中的SID和Access Token 本篇文章中将为大家介绍最后一个概念 特权 Windows操作系统中许多操作都需要有对应的特
  • Antv G2plot学习笔记(一)

    Antv G2plot学习笔记 一 官方网址 https g2plot antv vision zh 在执行官方的实例中 发现无法将数据进行图表展示 经过好友的分享和实践发现是出在变量引用不到的问题 之前的const linePlot ne
  • opencv2与opencv的不同

    一 Opencv2与opencv1的区别 Opencv1 0版本于2006年面世 主要基于C语言 2009年发布opencv2 主要基于C 此时OpenCV库被划分成多个模块 这些模块被编译成库文件后 位于lib文件夹中 主要有以下模块 版
  • AIX 文件 打包 与 压缩 tar gzip compress 的使用

    今天在Aix用tar cvf 备份 打成tar包 占有硬盘空间过大 没有压缩比 尝试使用tar zcvf linux系统下可以用 z 命令 z 用gzip来压缩 解压缩文件 加上该选项后可以将档案文件进行压缩 但还原时也一定要使用该选项进行
  • (Visual Grounding 论文研读) Pseudo-Q: Generating Pseudo Language Queries for Visual Grounding, 2022 CVPR

    最近在看关于visual grounding的文章 对于文章中理解不恰当的内容欢迎批评指正 本文将根据论文的结构来组织结构并且展开一定的拓展 Abstract visual grounding VG 即根据自然语言查询在图像中定位对象 是视