Weakly Supervised Referring Image Segmentation with Intra-Chunk and Inter-Chunk Consistency 论文总结

论文详情

论文标题:Weakly Supervised Referring Image Segmentation with Intra-Chunk and Inter-Chunk Consistency

发表时间:2023

发表刊物:ICCV 

原文链接:https://openaccess.thecvf.com/content/ICCV2023/papers/Lee_Weakly_Supervised_Referring_Image_Segmentation_with_Intra-Chunk_and_Inter-Chunk_Consistency_ICCV_2023_paper.pdf

摘要

参考图像分割旨在根据自然语言表达来定位图像中的目标。大多数以往的研究通过大规模的分割标签数据集来学习参考图像分割,但这些数据集的获取成本高昂。我们提出了一种弱监督学习方法,该方法仅使用易于获取的图像-文本对。我们首先训练一个视觉语言模型用于图像-文本匹配,并通过Grad-CAM提取视觉显著性图,以识别与每个词汇对应的图像区域。然而,我们发现Grad-CAM存在两个主要问题。首先,它未能考虑词汇之间的关键语义关系。我们通过建模词汇之间的内部一致性和外部一致性来解决这个问题。其次,Grad-CAM仅能识别目标物体的小区域,导致召回率低。因此,我们通过Transformer中的自注意力机制和无监督的对象形状先验来细化定位图。在三个流行的基准数据集(RefCOCO、RefCOCO+、G-Ref)上,我们的方法显著优于最近的可比技术。我们还展示了我们的方法适用于各种监督级别,并且表现优于最近的方法。

背景

在这之前很多的referring image segmentation任务需要大规格并且包含语义标签的数据集,但是这种数据集的构建成本很高。

动机

为了解决这个问题,本文提出了一种弱监督学习的方法,旨在仅仅通过图片文本对来完成referring image segmentation的任务。对此,本文先使用了visual-linguistic model + Grad-CAM的方法,但是这种模型的效果并不好,无法理解不同对象之间的语义联系,所以在本文作者还引入了intra-chunk, inter-chunk等概念来提升模型的性能。

首先为了解决根据图片和文本定位的问题,作者一开始使用了ALBEL模型作为基础模型。

ALBEF

ALBEF包含两个解码器,分别是视觉编码器Ev和文本编码器Et。

分别位于实域R上的(1+Np)× d大小的矩阵划分为Np个不重叠的块(non-overlapping patches)和一个[CLS]token,这里每一个patches都会被转化成一个d维的向量。

最后表示为E_v(x_v) \in \mathbb{R}^{(1+N_p) \times d}E_t(x_t) \in \mathbb{R}^{(1+N_w) \times d},这些单模态特征就会被多模态解码器E_m融合,生成多模态特征。[CLS]token包含文本和图像的多模态特征,所以经过一个全连接层可以得到一个image-text matching(ITM) score s^{ITM},这样就可以根据一个阈值将图片文本对分为positive 和 negative。

这样就可以得到图像和文本的联合语义,又能使用Grad-CAM等模型解释提取的区域和单词之间的关系。

Grad-CAM

Grad-CAM得到从ALBEF中生成的交叉注意力图表示为A_{\text{multi}} \in \mathbb{R}^{(1+N_p) \times (1+N_w)},然后计算出贡献值,公式如下

 M包含了词语图像块之间的关系。

这样就可以通过M得到每一个单词w的visual salency map

得到每个单词的visual salency map的具体方式就是通过每个单词的索引得到对应的值,然后去除[CLS]的部分,将这个1×n的值转化成二维的格式,方便可视化。

根据上图baseline所示这样做无法深入理解文本的语义,所以接下来作者再次做出改进

Chunk-Level Representation Learning

基于数的递归语言结构常用于捕获组合关系,但是这种结构包含很多亢余信息,所以很难提取出需要的信息。

因此作者做出改进,通过名词分块引入了chunk-level的表达。

通常一句话包含一个或多个名词块

表示为:C = {c}

一个名词块又由多个次组成(主要包括中心名词(head noun)和修饰词(modifying words) )

表示为:c = {w}

根据这种关系分别定义为noun-chunk(intra-chunk relationship)和between chunks(inter-chunk relationship)

 在设计Loss函数的时候也将这些考虑在内

 L_{ALBEF}是ALBEF模型的loss

L_{intra}L_{inter}是intra-chunk和inter-chunk的一致性loss,具体如何计算,下面解释。

Intra-Chunk Consistency

一个名词短语由一个中心名词及其修饰词组成,这些词都应指向图像中的相同对象。然而,在实际情况下,名词短语中的每个词的 Grad-CAM 可能会识别不同的对象。

为了解决这个问题,提出了一种正则化方法,要求同一个名词短语中的所有词的 Grad-CAM 应该尽量相似。这是为了确保名词短语中的词都能一致地识别图像中的相同对象。

正则化定义:

正则化项L_{intra}用于减少名词短语中两个词的 Grad-CAM 之间的差异。

对于名词短语 c 中的每一对词(w_iw_j),定义如下:

 也就是说计算过程中为 Grad-CAM 映射提供了一种相似度度量,从而间接地推动模型生成更一致的 Grad-CAM 映射。

Inter-Chunk Consistency

接下来是不同名词之间的一致性,比如有一句话“man holding a donut”这里man, donut分别表示不同的对象,在图中它们的对象是不同的,因此在没有显式定位线索的情况下,很难对词语块之间的关系进行建模。

 从这张中可以发现一个特性,那就是就算是有不同词语块,它们往往也指的是在空间上距离更近的对象,也就是说Man in blue shirt指代的是最右侧的人,这里就有三个人的位置,正确的位置是与blue shirt这个位置更近的人。

作者先定义了一个 closeness 的概念,公式如下

该公式的目的是通过对分块 c 中所有单词的 Grad-CAM 图进行平均,来计算该分块的整体定位图 M_c。也就是说,首先计算出分块 c 中每个单词的 Grad-CAM 图 M_w,然后对这些图进行平均,得到一个代表该分块的“平均热力图”。

接下来就可以遵循一个closeness prior操作,先获得每个chunk的孤立区域,这个孤立区域可以通过CV2库轻松得到,假设R是M_{ci}中孤立区域的集合,对于每一个r∈R都有一下公式,

 这里r就是三个人的区域,Mcj就是blue shirt,τ是一个阈值,这里的dH的计算方法为:

 这个公式是计算两个区域的Hausdorff距离X,Y是两个孤立区域的点集,x,y是这个点集中的任意两个点,min里面的部分表示这两个点的欧式距离。

这样我们就可以准确地找出目标的位置,接下来是设计loss函数的部分。

Loss函数被定义为:

 其中

k是位置索引,表示图像中的某个像素位置。

M_{c_i}^k表示分块c_i的定位图M_{c_i}在位置k处的得分。

r^*表示与相邻分块 c_j最近的孤立区域。

R \ r^*表示表示除去 r^* 后的所有其他孤立区域的集合。

因为Grad-CAM的特性,它没有在特定数据集上面训练,所以没有学习到物体形状的信息,为了更准确的分割作者提出两种细化的技术,分别是Patch Affinity in Vision Transformer和Unsupervised Shape Prior。

Patch Affinity in Vision Transformer

由于ALBEF与ViT类似有自注意力层,作者利用这个特性设计了一种方法

在视觉编码器中,自注意力层的主要作用是捕捉图像块(patches)之间的语义关系。自注意力机制通过计算每个图像块与其他图像块之间的“注意力权重”,从而量化这些块之间的语义相似性或相关性。在这种机制下,每个图像块的表示都依赖于它与其他图像块的关系,这就形成了所谓的图像块之间的“亲和力”(Affinity)。

在利用这些“亲和力”关系的基础上,这段内容提出了将每个像素的定位分数(localization score)传播到与其语义相关的邻居像素。

举例:

       假如有张图片为“man in blue shirt”

       图片首先被划分成若干小块(patches),例如“人脸块”、“衬衫块”等。

       自注意力层会分析这些图像块之间的关系,例如“人脸块”与“衬衫块”在语义上是相关的。

       通过自注意力机制计算出的“亲和力”将告诉模型,“衬衫块”与“人脸块”有较高的关联性。

       基于这种语义上的亲和性,模型会将与“人脸块”相关的像素定位分数传播到“衬衫块”上,从而更准确地定位出整个人物。

公式如下:

Mr是最终得到的定位图(refined map)

A_v是自注意力映射矩阵,从视觉编码器的第 l 层得到,大小为 N_p \times N_p

Unsupervised Shape Prior

亲和性(affinity)优化使我们能够找到目标对象的更完整区域。然而,由于缺乏对象形状的先验信息,生成的定位图无法准确表示目标对象的边界。

使用无监督的对象形状先验:

为了进一步提高定位图的准确性,特别是在边界的精确性上,作者引入了对象的形状先验。

这里使用了多尺度组合分组(MCG)方法来优化定位图。MCG 是一种无监督的方法,它基于图像的低级信息(如颜色、纹理、边缘等)来生成目标对象的掩码。

由于 MCG 是无监督的,它不会违反弱监督学习的要求,弱监督学习通常假设只有有限的监督信号(如少量的标注数据或图像级别的标签)。

MCG为单幅图像生成多个掩码提议 {m}。在这些提议中,我们需要选择一个最符合我们定位目标的掩码。

为了找到最佳的掩码提议,计算每个提议与优化后的定位图M_r的重叠程度(通常使用交并比 IoU 作为度量标准)。

Utilization of Additional Supervision

Weakly Supervised Setting with Bounding Box Labels

假设我们有训练图像中目标对象的边界框(bounding box)标注信息。

边界框生成伪真值分割 (Pseudo Ground Truth Segmentation from Bounding Box):

使用BBAM (Bounding Box Attribution Map) 技术,将边界框转化为像素级别的定位图。这一技术是从边界框生成分割掩码的方法。生成的定位图被视为伪真值分割标签 (pseudo ground truth segmentation),记作Y_{box}

加入边界框损失 (Adding a Box Loss):

L_{box}加入到损失函数中,使生成的 Grad-CAM(记作 M_{\text{final}})与 Y_{\text{box}}​ 相似。损失函数定义为 Lbox=cos⁡(Mfinal,Ybox),这里的 cos 表示余弦相似度,用于衡量两个向量之间的相似性。

Semi-Supervised Setting

假设我们只有少量训练图像具有像素级别的全监督标签Y_{full}​。

计算半监督损失 (Computing Semi-Supervised Loss):

对于这些具有全监督标签的图像,计算损失L_{semi}=cos(M_{final}, Y_{full}),目的是使生成的 Grad-CAMM_{final}与真实的像素级别标签Y_{full}相似。

总结

在这项研究中,提出了一种仅使用图像-文本对来学习参考图像分割的新方法。该通过块内和块间一致性利用给定文本表达的语言结构来生成更精确的定位图。然后,使用从视觉转换器的自注意力图和无监督对象形状先验中获得的补丁亲和力来细化这些图。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值