🎀个人主页: https://zhangxiaoshu.blog.csdn.net
📢欢迎大家:关注🔍+点赞👍+评论📝+收藏⭐️,如有错误敬请指正!
💕未来很长,值得我们全力奔赴更美好的生活!

前言

为了解决多模态人工智能系统中语言理解与视觉感知之间的交互与融合问题,以实现更智能、更灵活的多模态数据处理和理解能力。视觉定位通过将自然语言描述与图像内容相匹配,实现了对图像中对象、场景和行为的准确理解,为图像标注、视觉问答等任务提供了基础。本文对视觉定位的常用方法进行简单介绍。



视觉定位是什么

视觉定位(Visual grounding) 是一种在计算机视觉和自然语言处理领域中的概念,指的是将自然语言描述与图像中的特定视觉内容相匹配的过程。听上去和目标检测非常类似,区别在于输入多了语言信息,在对物体进行定位时,要先对语言模态的输入进行理解,并且和视觉模态的信息进行融合,最后利用得到的特征表示进行定位预测。

它可以帮助计算机理解自然语言描述与图像之间的关系,从而实现更智能的多模态数据处理和理解。视觉定位旨在建立自然语言描述与图像内容之间的联系,为多模态智能系统提供更准确、更自然的交互和理解能力。
在这里插入图片描述

常用数据集合评价指标

  1. 常用数据集:
  • Flickr30k:Flickr30k是一个广泛用于视觉定位和图像标注任务的数据集。它由Flickr图像共享平台上的30,000张图像组成,每张图像都有5个人工标注的描述。这些描述涵盖了图像中的主要对象、场景和动作等信息。

  • RefCOCO:RefCOCO数据集是COCO数据集的一个子集,用于指代解析任务。它提供了自然语言描述和指向图像中对象的标注。

  • RefCOCO+:这是RefCOCO数据集的扩展版本,包含了更多复杂的自然语言描述和更精细的目标标注。

  • RefCOCOg:RefCOCOg数据集是对于游戏情境中的指代解析任务而设计的,其中包含了复杂的自然语言描述和图像中对象的标注。

  1. 评价指标:
  • mAP(mean Average Precision):平均精度的平均值,用于衡量模型在不同类别上的检测精度。

  • RefCOCO评价指标:RefCOCO数据集通常使用Top-K Accuracy、Recall@K等指标来评价模型在指代解析任务上的性能。

常用方法

两阶段算法

两阶段方法在第一阶段生成区域提议和区域特征提取,然后在第二阶段利用语言表达来选择最匹配的区域。

在这里插入图片描述
在第一阶段,区域提议是使用无监督方法或预训练的目标检测器生成的。

  • 无监督方法通常基于图像中的低级特征和相似性来生成候选区域,而不需要使用任何标注的训练数据(包括基于图像分割、边缘检测、纹理特征或颜色直方图等技术来提取图像中可能包含目标的区域)。

  • 预训练的目标检测器是在大规模标注数据集上预先训练好的模型,例如 Faster R-CNN、YOLO 或 SSD 等。

在第二阶段,应用二元分类或最大边缘排序的训练损失,以最大化正对象-查询对之间的相似性。

  • 对于每个正对象-查询对,将其标记为正例,而对于其他对象-查询对,将其标记为负例。然后训练一个二元分类器,使其能够正确地将正例与负例区分开来。

  • 将对象和查询表示为特征向量,并使用余弦相似度来衡量它们之间的相似性,定义一个损失函数,使得正对象-查询对的相似性得分尽可能高,同时确保与负对象的相似性得分之间有足够大的边缘。

问题:

  • 受到来自现成区域提议方法的严重依赖;
  • 对象提议生成和区域特征提取具有较高的计算密集;

单阶段算法

一阶段方法对语言上下文与视觉特征密集融合,并进一步利用融合的特征图以生成密集的候选框(滑动窗口等方式)执行边界框预测。

在这里插入图片描述

  • 文本嵌入和编码:将文本中的单词映射到高维向量空间中做文本嵌入处理(Word2Vec),将文本嵌入的向量序列输入到RNN或Transformer中进行文本编码。以捕捉文本的语言上下文信息。
  • 图像特征提取:使用CNN或视觉Transformer对图像进行特征提取,得到图像的视觉特征表示。
  • 特征融合:将图像特征和文本特征进行融合,以获取联合的语言-视觉表示特征。融合的方式可以包括拼接、相乘、加权求和等操作,或者使用注意力机制来动态地融合不同模态的特征。
  • 候选框生成(滑动窗口):以固定的步幅在特征图上进行滑动窗口操作,在每个滑动窗口位置,使用一个边界框预测器来预测该窗口中是否存在目标对象,并且预测目标对象的边界框。对于每个边界框,计算其得分,表示该边界框中是否包含目标对象的置信度。使用非极大值抑制算法来消除重叠边界框,保留得分最高的边界框作为最终检测结果。

*一阶段方法摆脱了两阶段范式中计算密集的区域提议生成和区域特征提取;

问题:

  • 通常包括复杂的多模态融合和关系学习模块;
  • 依赖手工设计的候选框生成;

基于Transformer的方法

基于Transformer的方法将图像和语言表达式分别应用视觉Transformer和语言Transformer来建模视觉和语言的全局特征,然后利用视觉-语言Transformer融合视觉和语言特征,执行跨模态关系推理。最后,直接回归对象的框坐标以进行定位。

在这里插入图片描述

  • 视觉-语言Transformer模型是一个多头注意力机制的变体(包括两个线性投影层(分别用于每个模态)和一个视觉-语言Transformer(包含6个Transformer编码器层的堆栈)),它能够同时处理视觉和语言输入,并学习它们之间的复杂关系。

  • 在视觉-语言Transformer模型中执行跨模态关系推理,模型会学习如何从图像和文本的表示中推断出它们之间的语义关系。

*一/二阶段算法依赖于复杂的模块和手动设计的机制来进行查询推理和多模态融合。这些机制往往导致在特定数据集上过拟合,并限制了视觉和语言上下文之间的交互。基于Transformer的方法用简单的Transformer编码器层的堆叠取代了复杂的融合模块,从而提高了性能,此外,将视觉定位定义为直接坐标回归问题,避免依赖候选区域提案、减少了后处理步骤(如非极大值抑制(NMS)或边界框的合并)。


总结

  1. 两阶段方法在第一阶段生成区域提议和区域特征提取,然后在第二阶段利用语言表达来选择最匹配的区域。其不仅过度依赖现成区域提议方法的性能和表现,而且对象提议生成和区域特征提取具有较高的计算密集。

  2. 一阶段方法对语言上下文与视觉特征密集融合,并进一步利用融合的特征图以生成密集的候选框(滑动窗口等方式)执行边界框预测。 其在很大程度上摆脱了两阶段范式中计算密集的区域提议生成和区域特征提取。然而,一阶段方法往往具有较为复杂的多模态融合和关系学习模块,另外,一阶段方法对手工设计的候选框生成具有较大的依赖性。

  3. 基于Transformer的方法将图像和语言表达式分别应用视觉Transformer和语言Transformer来建模视觉和语言的全局特征,然后利用视觉-语言Transformer融合视觉和语言特征,执行跨模态关系推理。 最后,直接回归对象的框坐标以进行定位。基于Transformer的方法用简单的Transformer编码器层的堆叠取代了复杂的融合模块,从而提高了性能,此外,将视觉定位定义为直接坐标回归问题,避免依赖候选区域提案、减少了后处理步骤(如非极大值抑制(NMS)或边界框的合并),极大的改善了一阶段方法的两个问题。

参考:
Visual grounding系列–领域初探

文中图片大多来自论文和网络,如有侵权,联系删除,文中有不对的地方欢迎指正、补充。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐