专栏名称: FightingCV
一个专注于分享计算机视觉、多模态机器学习方向前沿论文,解答常见科研问题,分享好用科研工具的公众号。努力努力再努力,瑞思拜!
目录
相关文章推荐
君哥说房  ·  2025番禺最值得买的房子原来是它 ·  昨天  
君哥说房  ·  2025番禺最值得买的房子原来是它 ·  昨天  
京房早八点  ·  北京楼市:买房人开始着急了 ·  2 天前  
51好读  ›  专栏  ›  FightingCV

Ref-NMS:打破两阶段指称表达定位中的提案瓶颈

FightingCV  · 公众号  ·  · 2025-02-15 09:00

正文

摘要

解决指称表达定位的常用框架基于两阶段过程:1)使用目标检测器检测提案;2)将指称对象定位到其中一个提案。 现有的两阶段解决方案主要关注定位步骤,该步骤旨在将表达与提案对齐。 在本文中,我们认为这些方法忽略了两个阶段中提案作用的一个明显的 不匹配 :它们仅基于检测置信度生成提案( 例如 ,与表达无关),希望这些提案包含表达中所有正确的实例( 例如 ,与表达相关)。 由于这种不匹配,当前的两阶段方法在检测到的提案和真实提案之间存在严重的性能下降。 为此,我们提出了 Ref-NMS,这是第一个在第一阶段产生与表达相关的提案的方法。 Ref-NMS 将表达中的所有名词视为关键对象,并引入一个轻量级模块来预测每个框与关键对象对齐的分数。 这些分数可以指导 NMS 操作过滤掉与表达无关的框,提高关键对象的召回率,从而显著提高定位性能。 由于 Ref-NMS 与定位步骤无关,因此可以轻松地集成到任何最先进的两阶段方法中。 对多个主干网络、基准和任务进行的大量消融研究一致地证明了 Ref-NMS 的优越性。 代码可在以下地址获取: https://github.com/ChopinSharp/ref-nms

引言

指称表达定位 (REG), 例如 ,给定自然语言描述,在图像中定位目标实例(指称对象),是多模态理解中一项长期存在的任务。 考虑到定位的不同粒度,REG 有两种子类型:1) 指称表达理解 (REC) (Hu 等人 2017, 2016; Yu 等人 2016, 2017) ,其中指称对象由边界框 (bboxes) 定位。 2) 指称表达分割 (RES) (Hu, Rohrbach 和 Darrell 2016; Liu 等人 2017; Shi 等人 2018; Margffoy-Tuay 等人 2018) ,其中指称对象由分割掩码定位。 这两项任务对于许多下游高级应用都非常重要,例如视觉问答 (Antol et al. 2015) 、导航 (Chen et al. 2019b) 和自动驾驶 (Kim et al. 2019)


图1: 上图:来自RefCOCOg的一个典型的参考表达式识别(REC)示例。 两个“相似”的表达(R1和R2)指的是不同的对象。 下图:主流MAttNet (Yu et al. 2018a) 第一阶段提出的示例。 这些候选区域仅包含具有高检测置信度( > 0.65)的边界框,而不管表达的内容如何( e . g ., 候选区域 knife book cup 在R3中没有提及)。 红色虚线边界框表示缺失的指称对象。

最先进的参考表达式识别(REG)方法可以分为两大类:一阶段、无候选区域方法和两阶段、基于候选区域的方法。 对于一阶段方法 (Chen et al. 2018; Yang et al. 2019b; Liao et al. 2020) ,它们将REG视为一个广义的目标检测(或分割)任务,并将整个文本表达式视为一个特定的对象类别。 尽管这些一阶段方法实现了更快的推理速度,但它们的定位性能,特别是对于复杂的表达式( e . g ., 在RefCOCOg数据集中),仍然落后于两阶段方法。 差异的主要原因有两个:1)一阶段方法自然地关注局部内容, i . e ., 它们在需要全局推理的表达式中表现不佳。 例如,在图 1 中,当定位“ 一只躺在白色毛巾上,旁边有一些钥匙的猫 ”时,即使对于人类来说,如果不考虑其上下文对象 towel keys ,也很难识别指称对象 cat 。 2)一阶段方法没有利用表达式的语言结构, i . e ., 它们对表达式中的语言变化不敏感。 例如,当将图 1 中的表达式改为“ 一只可爱的有条纹的猫正看着白色毛巾上的猫 ”时,它们往往指的是同一个对象(#1) (Akula et al. 2020) 。 相反,两阶段方法 (Yu et al. 2018a; Liu et al. 2019a, c) 更直观地类似于人类的推理方式:1)使用检测器检测候选区域;2)将指称对象定位到其中一个候选区域。 一般来说,具有完美候选区域的两阶段方法( e . g ., 所有人工标注的对象区域)可以比一阶段方法实现更准确、更易解释的定位结果。

Refer to caption
图 2: RefCOCO testB 集上,参照对象召回率 (IoU > 0.5) 与候选框数量的关系图。 “真实情况”表示所有最先进的 (SOTA) 两阶段方法中的实际情况。

不幸的是,当使用现成检测器的结果作为候选框时,两阶段方法的性能都会急剧下降。 这也是两阶段解决方案经常受到文献 i . e 中的竞争方法批评的主要弱点。两阶段方法的性能受到严重限制提案质量。 在本文中,我们认为检测到的候选框与真实值候选框之间巨大的性能差距主要是由两阶段中候选框作用的 不匹配 造成的: 第一阶段网络仅基于检测置信度生成候选框,而第二阶段网络则假设生成的候选框将包含表达式中的所有正确实例 。 更具体地说,对于每幅图像,经过良好预训练的检测器可以检测数百个检测,并近乎完美地回忆所指对象和上下文对象 ( e . g .,如图 2 所示,在前100个检测中,所指对象的召回率可以达到96.58%)。 然而,为了减轻第二阶段中参照对象定位步骤的负担,当前的两阶段方法总是简单地基于它们的检测置信度来过滤候选框。 这些启发式规则导致召回率急剧下降( e . g .,降至 80.77%,如图 2 所示),并带来在疏忽的不匹配中。 为了进一步说明这一点,我们在图 1 中展示了一个具体的例子。 为了在第二阶段定位参照对象,我们希望候选框包含参照对象 及其上下文对象 披萨 。 相比之下,第一阶段网络只保留检测置信度较高的bbox( e . g .、 knife book cup )作为提案,但实际上错过了关键参考对象 person ( i . e .,红色框)。

在本文中,我们提出了一种新颖的算法 Ref-NMS,以纠正传统第一阶段检测到的候选框的不匹配问题。 特别地,对于每个表达式,Ref-NMS 将表达式中的所有名词都视为关键对象,并引入一个轻量级的相关性模块来预测每个候选框作为关键对象的概率分数。 预测的分数越高,表示候选框与表达式的相关性越高。 然后,我们将相关性分数和分类分数融合,并将融合后的分数用作非极大值抑制 (NMS) 中的抑制标准。 NMS之后,我们可以过滤掉与表达几乎无关的候选区域。 最后,所有候选区域和表达都被送入第二阶段的地面网络,以获得指称预测。

我们在三个具有挑战性的REG基准测试中证明了Ref-NMS的显著性能提升。 值得注意的是,Ref-NMS可以被推广并轻松集成到任何最先进的两阶段方法中,以进一步提升其在REC和RES上的性能。 我们的方法稳健且高效,为许多下游应用打开了大门,例如多模态摘要。

Refer to caption
图3: 上图:典型的两阶段REG框架,它使用启发式过滤规则在第一阶段获得与表达无关的候选区域,并将它们送入第二阶段进行指称定位。 下图:Ref-NMS模块可以通过在第一阶段考虑表达来生成与表达相关的候选区域。

相关工作

指称表达理解 (REC)。 目前绝大多数的REC方法都是两阶段的:候选区域生成和指称定位。 据我们所知,现有的两阶段工作都集中在第二阶段。 具体来说,他们倾向于通过结构建模 (Yu et al. 2018a; Liu et al. 2019c, a, b; Hong et al. 2019; Niu et al. 2019) 设计更可解释的推理过程,或更有效的多模态交互机制 (Wang et al. 2019; Yang, Li, and Yu 2020) 。 然而,它们的性能严格受限于第一阶段的候选区域。 最近,解决REC的另一个新兴方向是一阶段方法 (Chen et al. 2018; Yang et al. 2019b; Liao et al. 2020; Luo et al. 2020; Yang et al. 2020) 。 尽管一阶段方法在经验上实现了更快的推理速度,但它们是以牺牲可解释性和复合表达中的较差性能为代价的。 本文纠正了双阶段方法中被忽视的错配问题。

指称表达式分割 (RES)。 与 REC 不同,大多数 RES 工作都是单阶段方法。 它们通常利用“拼接-卷积”设计来组合两种不同的模态:它们首先在每个位置将表达式特征与视觉特征拼接,然后使用多个卷积层来融合多模态特征以生成掩码。 为了进一步提高掩码质量,它们通常通过多尺度特征融合 (Margffoy-Tuay等人,2018) 、特征渐进细化 (Li等人,2018; Chen等人,2019a; Huang等人,2020) 或新型注意力机制 (Shi等人,2018; Ye等人,2019; Hu等人,2020) 来增强其主干网络的有效特征。 此外,随着两阶段实例分割的发展( e . g ., Mask R-CNN (He 等人 2017) ),只需将第二阶段的对象检测网络替换为实例分割网络,即可扩展两阶段 REC 方法来解决 RES。 同样,Ref-NMS可以轻松集成到任何两阶段RES方法中。

短语定位 。 这项任务与REC密切相关。 也存在两种类型的解决方案:无建议方法和基于建议的方法。 与REC不同,短语定位中的查询具有两个特点:1)简单。 这将两阶段方法从复杂的关系推理中解放出来,并允许它们接受更多的提案( e . g ., > 200 个提案) 1 在第二阶段,这意味着两阶段短语定位方法不会遭受上述召回率下降问题。 2)多样化。 通过使用在另一个大型数据集上预训练的对象检测器 (Yu等人,2018b) 或根据查询和提到的对象重新生成建议 (Chen, Kovvuri, and Nevatia 2017) ,已经努力解决这个问题。

非极大值抑制 (NMS). NMS 是许多现代目标检测器采用的事实上的标准后处理步骤,它基于检测置信度去除重复的边界框。 除了最普遍的 GreedyNMS 之外,最近还提出了多种改进的变体。 一般来说,它们可以分为三类:1)基于标准的 (Jiang 等人 2018; Tychsen-Smith and Petersson 2018; Tan 等人 2019; Yang 等人 2019a) :他们使用其他分数代替分类置信度作为 NMS 去除 bbox 的标准, e . g .,IoU 分数。 2) 基于学习的 (Hosang, Benenson, and Schiele 2017; Hu et al. 2018) :它们直接学习一个额外的网络来去除重复的边界框。 3) 基于启发式的 (Bodla et al. 2017; Liu, Huang, and Wang 2019) :它们根据一些启发式规则动态调整抑制阈值。 在本文中,我们受到基于准则的 NMS 的启发,并设计了 Ref-NMS,它同时使用表达式相关性和检测置信度作为准则。

方法

重新审视两阶段 REG 框架

两阶段框架是 REG 最普遍的流程。 如图 3 所示,它由两个独立的阶段组成:第一阶段的候选区域生成和第二阶段的参照物定位。

候选区域生成。 给定一张图像,当前的两阶段方法总是求助于一个经过良好预训练的检测器来获得一组最初检测到的边界框,并利用 NMS 来去除重复的边界框。 然而,即使在 NMS 操作之后,仍然剩下数千个 bbox( e . g .,RefCOCO 中的每个图像平均有 3,500 个检测)。 为了减轻后续参照物定位步骤的负担,所有现有工作都基于它们的检测置信度进一步过滤这些边界框。 尽管这种启发式过滤规则可以减少候选区域的数量,但它也导致参照物和上下文对象的召回率急剧下降(详细结果见表 1 )。 ).

指代定位。 在训练阶段,两阶段的方法通常使用可可中的地面区域作为建议,而且数字很小( e g 。 Refcoco平均有9.84个地面区域)。 对于可解释的接地,最新的两阶段方法总是将这些建议构成图形 (Yang,Li,and Yu 2019;Wang等人2019) 或Tree (liu等人2019a; hong 2019) 结构, i e 。 因此,在测试阶段,必须对它们进行第一阶段的检测过滤。

Refer to caption
图4: Ref-NMS模型概述。 给定一张图像,模型使用预训练检测器生成数千个初始边界框。 然后,将数百个经过过滤的边界框和表达式送入相关性模块以预测其相关性分数。 最后,融合后的分数被用作NMS的抑制准则。

相关性模块

Ref-NMS模型的概述如图 4 所示。 Ref-NMS的核心是相关性模块。 给定一张图像和一个预训练的检测器,我们可以得到数千个初始边界框。 为了减少相关性模块的计算量,我们首先使用阈值 δ 根据分类置信度过滤边界框,并获得一个过滤后的边界框集合 。 对于每个 bbox 𝒃 i ,我们使用一个区域视觉编码器 e v ( i . e .、一个 RoI Pooling 层和一个卷积头网络)提取bbox特征 𝒗 i v 。 同时,对于引用表达式 Q ,我们使用表达式编码器 e q ( i . e .,一个Bi-GRU )输出一组单词特征 { 𝒘 1 , , 𝒘 | Q | } ,其中 𝒘 j q 是第 j 个单词特征。 对于每个边界框 𝒃 i ,我们使用软注意力机制 (Chen et al. 2017) 来计算唯一的表达特征 𝒒 i ,方法如下:

其中 MLP a 是一个将 𝒗 i v 映射到 𝒗 i a q 的两层MLP, FC s 是一个全连接层,用于计算边界框特征 𝒗 i a 和词特征 𝒘 j 之间的相似度,而 [ ; ] 是一个连接操作。 然后,我们将这两种模态特征结合起来,预测相关性得分 r i

其中 MLP b 是一个将 𝒗 i v 映射到 𝒗 i b q 的两层MLP, 是逐元素乘法,L2Norm表示 l 2 归一化, FC r 是一个将 𝒎 i q 映射到 r ^ i 的全连接层。

分数融合。 获得边界框 𝒃 i 的相关性得分 r i 后,我们将 r i 与原始检测器中边界框 𝒃 i 的分类置信度 c i 相乘,并将两个分数 s i 的乘积作为NMS操作的抑制标准, i . e ., s i = r i × c i

Ref-NMS的训练目标

为了学习每个边界框的相关性得分,我们需要表达中所有提及实例( i . e .,指称对象和上下文对象)的地面实况标注。 但是,目前的REG数据集只有关于指称对象的标注。 因此,我们需要为上下文对象生成伪地面实况。 具体来说,我们首先使用spaCy POS标记器为表达中的每个词分配POS标签,并提取表达中的所有名词。 然后,我们计算提取的名词的GloVe嵌入与COCO中地面实况区域的类别的余弦相似度。 2 . 最后,我们使用阈值 γ 过滤区域作为伪地面实况。

在训练阶段,我们将所有伪地面实况边界框和标注的指称边界框视为前景边界框。 我们使用两种类型的训练目标:

二元交叉熵损失 (Binary XE Loss)。 For each bbox 𝒃 i , if it has a high overlap ( i . e ., IoU > 0.5) with any foreground bbox, its ground-truth relatedness score r is set to 1, otherwise r = 0 . 然后,相关性分数预测成为一个二元分类问题。 我们可以使用二元交叉熵 (XE) 损失作为训练目标:

排序损失 (Ranking Loss)。 一般来说,如果一个bbox与前景bbox的IoU较高,则该bbox与表达式之间的相关性应该较高, i . e 。,我们可以将排名损失用作培训目标:

其中 ρ i 表示边界框 𝒃 i 与前景边界框之间的最大IoU值, N 是正负训练对的总数, α 是一个控制排序裕度的常数,设置为0.1。 为了选择正负对 ( 𝒃 i , 𝒃 j ) ,我们遵循分割后采样策略 (Tan et al. 2019) 。 具体来说,我们首先根据量化 q 值将bbox集合 分为6个子集: q i = max ( 0 , ρ i 0.5 ) / 0.1 , i e .,IoU值较高的bbox具有较大的 q 值。 然后,所有具有 ρ > 0.5 的边界框都被选为正样本。 对于每个正样本,我们根据来自具有较小 q 值子集的并集的预测相关性分数,将前 h 个边界框排为负样本。


Ref-NMS Referent Contextual Objects

RefCOCO RefCOCO+ RefCOCOg RefCOCO RefCOCO+ RefCOCOg

val testA testB val testA testB val test val testA testB val testA testB val test
N=100
97.60 97.81 96.58 97.79 97.78 96.99 97.18 96.91 90.14 89.85 90.53 89.53 88.47 90.69 90.56 90.30
B 97.75 98.59 97.08 97.96 98.39 97.50 97.61 97.44 90.38 90.31 90.64 89.67 88.88 91.04 90.36 90.37
R 97.62 98.02 96.78 97.71 98.06 97.14 97.18 97.08 90.22 89.83 90.63 89.70 88.62 90.71 90.67 90.30
真实
88.84 93.99 80.77 90.71 94.34 84.11 87.83 87.88 74.97 78.60 70.19 76.34 77.45 73.52 75.69 75.87
B 92.51 95.56 88.28 93.42 95.86 88.95 90.28 90.34 78.75 80.14 76.47 78.44 78.82 77.49 76.12 76.57
R 90.50 94.75 83.87 91.62 95.14 86.42 89.01 88.96 76.79 79.12 72.99 77.66 78.44 75.59 76.68 76.73


表1: 参照物和上下文对象的召回率 (%)。 基线检测器是基于ResNet-101的Mask R-CNN,带有普通的GreedyNMS。 B 表示使用二元交叉熵损失的 Ref-NMS,R 表示使用排序损失的 Ref-NMS。 Real 表示最先进的两阶段方法中使用的真实情况。

Models Referring Expression Comprehension Referring Expression Segmentation
RefCOCO RefCOCO+ RefCOCOg RefCOCO RefCOCO+ RefCOCOg
val testA testB val testA testB val test val testA testB val testA testB val test
MAttNet (Yu et al. 2018a) 76.65 81.14 69.99 65.33 71.62 56.02 66.58 67.27 56.51 62.37 51.70 46.67 52.39 40.08 47.64 48.61
MAttNet 76.92 81.19 69.58 65.90 71.53 57.23 67.52 67.55 57.14 62.34 51.48 47.30 52.37 41.14 48.28 49.01
+Ref-NMS B 78.82 82.71 73.94 66.95 71.29 58.40 68.89 68.67 59.75 63.48 55.66 48.39 51.57 42.56 49.54 50.38
+Ref-NMS R 77.98 82.02 71.64 66.64 71.36 58.01 69.16 67.63 58.32 62.96 53.68 47.87 51.85 41.41 50.13 49.07
NMTree (Liu et al. 2019a) 76.41 81.21 70.09 66.46 72.02 57.52 65.87 66.44 56.59 63.02 52.06 47.40 53.01 41.56 46.59 47.88
NMTree 76.54 81.32 69.66 66.65 71.48 57.74 65.65 65.94 56.99 62.88 51.90 47.75 52.36 41.86 46.19 47.41
+Ref-NMS B 78.67 82.09 73.78 67.15 71.76 58.70 67.30 66.93 59.95 63.25 55.64 48.68 52.30 42.64 48.14 48.59
+Ref-NMS R 77.81 81.69 71.78 67.03 71.78 58.79 66.81 66.31 58.42 62.69 53.60 48.27 52.65 42.18 47.72 48.09
CM-A-E (Liu et al. 2019c) 78.35 83.14 71.32 68.09 73.65 58.03 67.99 68.67
CM-A-E 78.35 83.12 71.32 68.19 73.04 58.27 69.10 69.20 58.23 64.60 53.14 49.65 53.90 41.77 49.10 50.72
+Ref-NMS B 80.70 84.00 76.04 68.25 73.68 59.42 70.55 70.62 61.46 65.55 57.41 49.76 53.84 42.66 51.21 51.90
+Ref-NMS R 79.55 83.58 73.62 68.51 73.14 58.38 69.77 70.01 59.72 64.87 55.63 49.86 52.62 41.87 50.13 51.44


表 2: 不同架构在 REC 和 RES 上的性能。 指标是 REC 的 top-1 准确率(%)和 RES 的整体 IoU(%)。 所有基线都使用基于 ResNet-101 的 Mask R-CNN 作为第一阶段网络。 每种设置下最好和第二好的方法分别以粗体和斜体标记。 表示我们实现的结果。

实验

实验设置和细节

数据集。 我们在三个具有挑战性的 REG 基准上评估 Ref-NMS:1) RefCOCO (Yu et al. 2016) :它包含 19,994 张图像中 50,000 个对象的 142,210 个指称表达式。 这些表达式是在交互式游戏界面中收集的 (Kazemzadeh et al. 2014) ,每个表达式的平均长度为 3.5 个单词。 所有表达式-指称对都被分成训练集、验证集、测试集 A 和测试集 B。 测试集 A 包含有多个人的图像,测试集 B 包含有多个对象的图像。 2) RefCOCO+ (Yu et al. 2016) :它包含 19,992 张图像中 49,856 个对象的 141,564 个指称表达式。 与RefCOCO类似,这些表达是从相同的游戏界面收集的,并具有训练集、验证集、测试集A和测试集B。 3) RefCOCOg (Mao et al. 2016) :它包含26711张图像中54822个对象的104560个指称表达。 这些表达是非交互式收集的,每个表达的平均长度为8.4个单词。 我们遵循与 (Nagaraja, Morariu, and Davis 2016) 相同的分割方式。

评估指标。 对于REC任务,我们使用top-1准确率作为评估指标。 当边界框和真实值之间的IoU大于0.5时,预测结果正确。 对于RES任务,我们使用整体IoU和Pr@X(IoU高于X的样本百分比) 3 作为指标。

实现细节。 我们通过过滤出现次数少于2次的单词为每个数据集构建词汇表,并利用300维的GloVe嵌入作为词嵌入的初始化。 我们使用“unk”符号替换词汇表外的所有单词。 RefCOCO和RefCOCO+的句子最大长度设置为10,RefCOCOg的句子最大长度设置为20。 编码器的隐藏层大小 e q 设置为256。 对于编码器 e v ,我们使用与Mask R-CNN具有ResNet-101主干网络 4 相同的头部网络,如同先前的工作 (Yu et al. 2018a) ,并利用预训练权重进行初始化。 在训练过程中,原始检测器的权重( 例如 ,图 4 中的灰色部分)保持不变。 整个模型使用Adam优化器进行训练。 头部网络和其余网络的学习率分别初始化为4e-4和5e-3。 我们将批量大小设置为8。 阈值 δ γ 分别设置为0.05和0.4。 对于排序损失,top-h设置为100。


Models Venue Backbone RefCOCO RefCOCO+ RefCOCOg

val testA testB val testA testB val test
单个。 SSG (Chen et al. 2018) arXiv’18 darknet53 76.51 67.50 62.14 49.27 58.80
FAOA (Yang et al. 2019b) ICCV’19 darknet53 71.15 74.88 66.32 56.86 61.89 49.46 59.44 58.90
RCCF (Liao et al. 2020) CVPR’20 dla34 81.06 71.85 70.35 56.32 65.73
RSC-Large (Yang et al. 2020) ECCV’20 darknet53 77.63 80.45 72.30 63.59 68.36 56.81 67.30 67.20
双个。 VC (Zhang, Niu, and Chang 2018) CVPR’18 vgg16 73.33 67.44 58.40 53.18
ParalAttn (Zhuang et al. 2018) CVPR’18 vgg16 75.31 65.52 61.34 50.86
LGRANs (Wang et al. 2019) CVPR’19 vgg16 76.60 66.40 64.00 53.40
DGA (Yang, Li, and Yu 2019) ICCV’19 vgg16 78.42 65.53 69.07 51.99 63.28
NMTree (Liu et al. 2019a) ICCV’19 vgg16 71.65 74.81 67.34 58.00 61.09 53.45 61.01 61.46
MAttNet (Yu et al. 2018a) CVPR’18 res101 76.65 81.14 69.99 65.33 71.62 56.02 66.58 67.27
RvG-Tree (Hong et al. 2019) TPAMI’19






请到「今天看啥」查看全文