Grounding DINO:Marrying DINO with Grounded Pre-Training for Open-Set ObjectDetection将DINO与预训练结合检测集目标

本文介绍了一种名为 Grounding DINO 的开集目标检测器,它通过将基于 Transformer 的检测器 DINO 与基础训练相结合,能够检测由人类输入(如类别名称或引用表达)指定的任意对象。以下是文章的主要研究内容总结:

1. 研究背景与动机

  • 目标检测的挑战:传统目标检测器通常只能检测预定义类别的对象,难以泛化到未见过的新类别。开集目标检测旨在通过语言输入实现对任意对象的检测。

  • 多模态融合的重要性:为了实现开集目标检测,需要将语言模态与视觉模态相结合,以帮助模型理解和定位新类别。

2. 方法论

  • 模型架构:Grounding DINO 是一个双编码器 - 单解码器架构,包含图像骨干网络、文本骨干网络、特征增强器、基于语言的查询选择模块和跨模态解码器。

    • 特征增强器:通过自注意力、文本到图像的交叉注意力和图像到文本的交叉注意力模块,融合图像和文本特征。

    • 基于语言的查询选择:根据输入文本选择与之相关的图像特征作为解码器的查询。

    • 跨模态解码器:结合图像和文本特征,通过自注意力和交叉注意力层更新查询,最终预测目标框。

  • 子句级文本特征:为了避免无关类别之间的相互影响,提出了一种子句级文本特征表示方法,通过引入注意力掩码来阻断不相关类别之间的注意力。

  • 预训练与零样本迁移:在大规模数据集(包括目标检测数据、基础数据和字幕数据)上进行预训练,并在 COCO、LVIS 和 ODinW 等基准测试中进行零样本迁移评估。

3. 实验与结果

  • COCO 基准测试:Grounding DINO 在 COCO 零样本迁移中达到了 52.5 AP,刷新了记录。

  • LVIS 基准测试:在 LVIS 数据集上,Grounding DINO 在零样本设置中优于 GLIP,但在罕见类别上表现稍弱。

  • ODinW 基准测试:Grounding DINO 在 ODinW 零样本基准测试中达到了 26.1 AP,超过了其他模型。

  • 引用目标检测(REC):在 RefCOCO/+/g 数据集上,Grounding DINO 在注入相关数据后表现出色,显著优于 GLIP。

4. 消融实验

  • 模块化设计的有效性:通过移除不同模块(如编码器融合、文本交叉注意力等),验证了各模块对模型性能的贡献。

  • 子句级文本提示的优势:子句级文本提示在减少无关类别相互影响方面表现出色,提升了模型在 LVIS 和 COCO 数据集上的性能。

5. 结论与展望

  • 模型优势:Grounding DINO 在开集目标检测和引用目标检测任务中表现出色,展现了强大的泛化能力。

  • 未来工作:进一步扩展模型的语义概念覆盖范围,增加训练数据规模,以提升零样本泛化性能。此外,还将探索模型在分割任务中的应用,并减少模型的幻觉现象。

6. 社会影响

  • 模型的局限性:尽管性能出色,但 Grounding DINO 无法用于分割任务,且在某些情况下会产生虚假的正结果。

  • 潜在风险:模型可能被用于非法目的,且其输出的准确性和正确性无法完全保证,存在对抗性攻击的风险。

7. 贡献与致谢

  • 作者贡献:文章感谢了多位研究者的贡献,包括 GLIP、OmDet 和 DetCLIP 的作者,以及在扩散模型方面提供帮助的学者。

通过这些研究内容,Grounding DINO 为开集目标检测领域提供了一种新的解决方案,展示了多模态融合和大规模预训练在提升模型泛化能力方面的潜力。这里是自己的论文阅读记录,感兴趣的话可以参考一下,如果需要阅读原文的话可以看这里,如下所示:

图 1:(a) 闭集目标检测要求模型检测预定义类别的对象。(b) 我们在新对象和标准引用表达理解(REC)基准测试中评估模型,以测试模型对带属性的新对象的泛化能力。(c) 我们通过结合 Grounding DINO 和 Stable Diffusion [41] 展示图像编辑应用。彩色显示效果最佳。

官方项目地址在这里,如下所示:

摘要

本文开发了一种名为 Grounding DINO 的开集目标检测器,通过将基于 Transformer 的检测器 DINO 与基础训练相结合,能够检测人类输入(如类别名称或引用表达)指定的任意对象。开集目标检测的关键解决方案是将语言引入闭集检测器,以实现对未见对象的概念泛化。为了有效融合语言和视觉模态,我们将闭集检测器概念性地划分为三个阶段,并提出了一种紧密融合解决方案,包括特征增强器、基于语言的查询选择以及用于模态融合的跨模态解码器。我们首先在大规模数据集上对 Grounding DINO 进行预训练,包括目标检测数据、基础训练数据和字幕数据,并在开集目标检测和引用目标检测基准测试中评估模型。Grounding DINO 在所有三种设置中均表现出色,包括在 COCO、LVIS、ODinW 和 RefCOCO/+/g 基准测试中的表现。Grounding DINO 在 COCO 零样本1检测基准测试中达到了 52.5 AP 的成绩,并在 ODinW 零样本基准测试中创下了 26.1 平均 AP 的新纪录。

1 引言

人工智能通用智能(AGI)系统能力的一个关键指标是其处理开放世界场景的能力。本文旨在开发一个强大的系统,用于检测人类语言输入指定的任意对象,这一任务通常被称为开集目标检测。该任务因其作为通用目标检测器的巨大潜力而具有广泛的应用前景。例如,我们可以与生成模型合作进行图像编辑(如图 1(b)所示)。为了实现这一目标,我们按照以下两个原则设计了强大的开集目标检测器 Grounding DINO:基于 DINO [57] 的紧密模态融合和大规模基础预训练以实现概念泛化。基于 DINO 的紧密模态融合。开集检测的关键是引入语言以实现对未见对象的泛化 [1,7,25]。大多数现有的开集检测器是通过将闭集检测器扩展到开集场景并引入语言信息来开发的。如图 2 所示,闭集检测器通常有三个重要模块:用于特征提取的骨干网络、用于特征增强的颈部模块以及用于区域细化(或框预测)的头部模块。闭集检测器可以通过学习语言感知的区域嵌入来泛化以检测新对象,从而使每个区域能够在语言感知的语义空间中被分类到新类别中。实现这一目标的关键是在颈部和/或头部输出处使用区域输出和语言特征之间的对比损失。

                                  图 2:将闭集检测器扩展到开集场景。

为了帮助模型对齐跨模态信息,一些工作尝试在最终损失阶段之前融合特征。我们在图 2 中总结了目标检测器的模块化设计。特征融合可以在三个阶段进行:颈部(阶段 A)、查询初始化(阶段 B)和头部(阶段 C)。例如,GLIP [25] 在颈部模块(阶段 A)中执行早期融合,而 OV-DETR [55] 使用语言感知查询作为头部输入(阶段 B)。我们认为,在管道中引入更多的特征融合可以促进不同模态特征之间的更好对齐,从而实现更好的性能。尽管概念上很简单,但之前的工作很难在所有三个阶段进行特征融合。经典检测器(如 Faster RCNN)的设计使得在大多数块中与语言信息交互变得困难。与经典检测器不同,基于 Transformer 的检测器方法(如 DINO)具有与语言块一致的结构。逐层设计使其能够轻松与语言信息交互。基于这一原则,我们在颈部、查询初始化和头部阶段设计了三种特征融合方法。更具体地说,我们通过堆叠自注意力、文本到图像的交叉注意力以及图像到文本的交叉注意力作为颈部模块来设计特征增强器。然后,我们开发了一种基于语言的查询选择方法,用于为检测头部初始化查询。我们还为头部阶段设计了一个带有图像和文本交叉注意力层的跨模态解码器,以增强查询表示。大规模基础预训练以实现零样本迁移。大多数现有的开集模型 [14,21] 依赖于预训练的 CLIP 模型以实现概念泛化。然而,RegionCLIP 研究 [61] 发现,专门针对图像 - 文本对预训练的 CLIP 在区域 - 文本对检测任务中的效果有限。相比之下,GLIP [25] 通过将目标检测重新表述为短语基础任务,并在大规模数据上引入对象区域和语言短语之间的对比训练,展示了对异构数据集的强大灵活性以及在闭集和开集检测中的显著性能。我们采用了并改进了基础训练方法。GLIP 的方法涉及将所有类别以随机顺序连接成一个句子。然而,直接类别名称连接并不考虑在提取特征时无关类别之间的潜在影响。为了缓解这一问题并提高模型在基础训练期间的性能,我们引入了一种利用子句级文本特征的技术。它在提取词特征时消除了无关类别之间的注意力。更多关于该技术的详细内容可在第 3.4 节中找到。

我们在大规模数据集上对 Grounding DINO 进行预训练,并在主流目标检测基准测试(如 COCO [29])上评估性能。虽然一些研究在“部分标签”框架下检查了开集检测模型——在部分数据(例如基础类别)上进行训练,并在其他类别上进行测试——但我们倡导采用完全零样本的方法以增强实际适用性。此外,我们将模型扩展到另一个重要场景引用表达理解(REC)[30,34],其中对象被描述为带有属性。

表 1:先前开集目标检测器的比较。我们的总结基于它们论文中的实验,而不是这些模型扩展到其他任务的能力。值得注意的是,一些相关工作(如 MDETR [18] 和 GLIPv2 [58])最初可能并非为开集目标检测而设计,但我们在表中列出它们是为了与现有工作进行全面比较。我们使用术语“部分标签”来描述在部分数据(例如基础类别)上训练并在其他类别上评估的设置。

2 相关工作

检测 Transformer。Grounding DINO 基于类似 DETR 的模型 DINO [57],这是一种端到端的基于 Transformer 的检测器。DETR 最初在 [2] 中提出,然后在过去几年中从许多方向得到了改进 [4,5,13,17,33,48,64]。DAB-DETR [31] 引入了锚框作为 DETR 查询以实现更准确的框预测。DN-DETR [24] 提出了一种查询去噪方法,以稳定二分图匹配。DINO [57] 进一步开发了几种技术,包括对比去噪,并在 COCO 目标检测基准测试中创下了新纪录。然而,这些检测器主要关注闭集检测,由于预定义类别的限制,很难泛化到新类别。开集目标检测。开集目标检测使用现有的边界框注释进行训练,并借助语言泛化来检测任意类别。OV-DETR [56] 使用由 CLIP 模型编码的图像和文本嵌入作为查询,以在 DETR 框架中解码类别特定的框。ViLD [14] 从 CLIP 教师模型中提取知识,将其注入到类似 R-CNN 的检测器中,从而使学习到的区域嵌入包含语言的语义。

GLIP [12] 将目标检测表述为一个定位问题,并利用额外的定位数据来帮助学习短语和区域层面的对齐语义。研究表明,这种表述方式甚至可以在全监督检测基准测试中实现更强的性能。DetCLIP [52] 涉及大规模的图像描述数据集,并利用生成的伪标签扩展知识库。生成的伪标签有效地帮助扩展了泛化能力。

然而,以往的研究仅在部分阶段融合多模态信息,这可能导致语言泛化能力次优。例如,GLIP 仅考虑在特征增强(阶段 A)中的融合,而 OV-DETR 仅在解码器输入(阶段 B)中注入语言信息。此外,REC 任务通常被忽视,而这是开放集检测的一个重要场景。我们在表 1 中将我们的模型与其他开放集方法进行了比较。

图 3:Grounding DINO 的框架。我们在块 1、块 2 和块 3 中分别展示了整体框架、一个特征增强器层和一个解码器层。

3 Grounding DINO

Grounding DINO 为给定的(图像,文本)对输出多个对象框和名词短语对。例如,如图 3 所示,模型从输入图像中定位猫和桌子,并从输入文本中提取单词“cat”和“table”作为对应的标签。目标检测和 REC 任务都可以与该流程对齐。按照 GLIP [25] 的方式,我们将所有类别名称连接起来作为目标检测任务的输入文本。REC 需要每个文本输入的边界框。我们使用具有最高分数的输出对象作为 REC 任务的输出。Grounding DINO 是一种双编码器 - 单解码器架构。它包含一个用于图像特征提取的图像骨干网络、一个用于文本特征提取的文本骨干网络、一个用于图像和文本特征融合的特征增强器(第 3.1 节)、一个用于查询初始化的基于语言的查询选择模块(第 3.2 节)以及一个用于框细化的跨模态解码器(第 3.3 节)。对于每个(图像,文本)对,我们首先使用图像骨干网络和文本骨干网络分别提取原始图像特征和原始文本特征。将这两个原始特征输入特征增强器模块以进行跨模态特征融合。在获得跨模态文本和图像特征后,我们使用基于语言的查询选择模块从图像特征中选择与输入文本更相关的特征作为解码器查询。与大多数 DETR 类模型中的对象查询类似,这些跨模态查询将被输入到跨模态解码器中,以从两种模态特征中提取所需的特征并更新自身。最后解码器层的输出查询将用于预测对象框并提取对应的短语。

                                                   图 4:文本表示的比较。

3.1 特征提取和增强器

给定一个(图像,文本)对,我们使用像 Swin Transformer [32] 这样的图像骨干网络提取多尺度图像特征,并使用像 BERT [8] 这样的文本骨干网络提取文本特征。按照之前的 DETR 类检测器 [57,64],从不同块的输出中提取多尺度特征。在提取原始图像和文本特征后,我们将它们输入特征增强器以进行跨模态特征融合。特征增强器包含多个特征增强器层。我们在图 3 块 2 中展示了一个特征增强器层。我们利用可变形自注意力增强图像特征,并使用原始自注意力增强文本特征。受 GLIP [25] 的启发,我们添加了一个图像到文本和一个文本到图像交叉注意力模块以进行特征融合。这些模块有助于对齐不同模态的特征。

3.2 基于语言的查询选择

Grounding DINO 的目标是检测由输入文本指定的图像中的对象。为了有效利用输入文本指导目标检测,我们设计了一个基于语言的查询选择模块,以选择与输入文本更相关的特征作为解码器查询。假设图像特征为 XI ∈ RNI×d,文本特征为 XT ∈ RNT×d。这里,NI 表示图像令牌的数量,NT 表示文本令牌的数量,d 对应于特征维度。在我们的实验中,我们特别使用 d = 256 的特征维度。通常,在我们的模型中,NI 的值超过 10,000,而 NT 保持在 256 以下。我们的目标是从编码器的图像特征中提取 Nq 个查询,以用作解码器的输入。按照 DINO 的方式,我们将 Nq 设置为 900。使用以下表达式选择图像特征的前 Nq 个查询索引:

在这个表达式中,TopNq 表示选择前 Nq 个索引的操作。函数 Max(−1) 沿着 −1 维度执行最大值操作,符号 ⊺ 表示矩阵转置。我们在附录 A 中以 PyTorch 风格展示了查询选择过程的伪代码。基于语言的查询选择模块输出 Nq 个索引。我们可以根据选定的索引提取特征以初始化查询。按照 DINO [57] 的方式,我们使用混合查询选择来初始化解码器查询。每个解码器查询包含两部分:内容部分和位置部分 [33]。我们将位置部分表示为动态锚框 [31],它们由编码器输出初始化。另一部分,内容查询,在训练期间设置为可学习的。

3.3 跨模态解码器

我们开发了一个跨模态解码器,以结合图像和文本模态特征,如图 3 块 3 所示。每个跨模态查询被输入到一个自注意力层、一个用于结合图像特征的图像交叉注意力层、一个用于结合文本特征的文本交叉注意力层以及一个解码器层中的前馈网络层中。与 DINO 解码器层相比,每个解码器层有一个额外的文本交叉注意力层,因为我们需要将文本信息注入到查询中以实现更好的模态对齐。

3.4 子句级文本特征

先前的工作中探索了两种类型的文本提示,我们将其命名为句子级表示和单词级表示,如图 4 所示。句子级表示 [35,52] 将整个句子编码为一个特征。如果一些句子在短语基础数据中有多个短语,它提取这些短语并丢弃其他单词。这样可以去除单词之间的相互影响,但会丢失句子中的细粒度信息。单词级表示 [12,18] 允许使用一次前向传递对多个类别名称进行编码,但引入了类别之间的不必要依赖性,尤其是当输入文本是按任意顺序连接的多个类别名称时。

如图 4(b)所示,一些不相关的单词在注意力过程中相互作用。为了避免不想要的单词相互作用,我们引入注意力掩码以阻断不相关类别名称之间的注意力,命名为“子句级”表示。它消除了不同类别名称之间的相互影响,同时保持每个单词的特征以实现细粒度理解。

3.5 损失函数

按照之前的 DETR 类工作 [2,24,31,33,57,64],我们使用 L1 损失和 GIOU [40] 损失进行边界框回归。我们遵循 GLIP [25],并使用预测对象和语言令牌之间的对比损失进行分类。具体来说,我们计算每个查询与文本特征的点积,以预测每个文本令牌的 logits,然后为每个 logits 计算焦点损失 [28]。边界框回归和分类成本首先用于预测和真实值之间的二分图匹配。然后,我们计算真实值和匹配预测之间的最终损失,使用相同的损失组成部分。按照 DETR 类模型的方式,我们在每个解码器层之后以及编码器输出之后添加辅助损失。

4 实验

我们在三种设置中进行了广泛的实验:闭集设置在 COCO 检测基准测试(第 C.2 节)中,开集设置在零样本 COCO、LVIS 和 ODinW(第 4.2 节)中,以及引用检测设置在 RefCOCO/+/g(第 4.3 节)中。然后进行消融实验以证明我们模型设计的有效性(第 4.5 节)。我们还在第 C.1 节中探索了一种将训练有素的 DINO 转移到开集场景的方法,通过训练一些插件模块。我们的模型效率测试结果在第 C.4 节中展示。

4.1 实施细节

我们训练了两种模型变体,Grounding DINO T 使用 Swin-T [32] 作为图像骨干网络,Grounding DINO L 使用 Swin-L [32]。我们使用 Hugging Face [49] 中的 BERT-base [8] 作为文本骨干网络。由于我们更关注模型在新类别上的性能,因此我们在正文中列出了零样本迁移和引用检测的结果。默认情况下,我们在模型中使用 900 个查询。我们设置最大文本令牌数量为 256。使用 BERT 作为我们的文本编码器,我们按照 BERT 的方式使用 BPE 方案 [42] 对文本进行分词。我们在特征增强器模块中使用六个特征增强器层。跨模态解码器也由六个解码器层组成。我们在图像交叉注意力层中使用可变形注意力 [64]。匹配成本和最终损失都包括分类损失(或对比损失)、边界框 L1 损失和 GIOU [40] 损失。按照 DINO 的方式,我们在匈牙利匹配期间将分类成本、边界框 L1 成本和 GIOU 成本的权重分别设置为 2.0、5.0 和 2.0。在最终损失计算中,相应的损失权重分别为 1.0、5.0 和 2.0。我们的 Swin Transformer Tiny 模型在 16 个 Nvidia V100 GPU 上进行训练,总批量大小为 32。我们从 8× 到 32× 提取三个图像特征尺度。它在 DINO 中被称为“4scale”,因为我们将 32× 特征图下采样到 64× 作为额外的特征尺度。对于使用 Swin Transformer Large 的模型,我们从骨干网络中提取四个图像特征尺度,从 4× 到 32×。该模型在 64 个 Nvidia A100 GPU 上进行训练,总批量大小为 64。

4.2 Grounding DINO 的零样本迁移

在此设置中,我们在大规模数据集上对模型进行预训练,并直接在新数据集上评估模型。我们还将一些微调结果列出来,以便更全面地比较我们的模型与之前的工作。

COCO 基准测试 我们在表 2 中将 Grounding DINO 与 GLIP 和 DINO 进行比较。我们在大规模数据集上对模型进行预训练,并直接在 COCO 基准测试上评估我们的模型。由于 O365 数据集 [43](几乎)涵盖了 COCO 中的所有类别,我们在 O365 预训练的 DINO 上评估 COCO 作为零样本基线。结果显示,DINO 在 COCO 零样本迁移中的表现优于 DyHead。Grounding DINO 在零样本迁移设置中优于所有先前的模型,与 DINO 相比提高了 +0.5AP,与 GLIP 相比提高了 +1.8AP。在相同的设置下,基础数据对 Grounding DINO 仍然有帮助,引入了超过 1AP(48.1 对 46.7)的提升。使用更强的骨干网络和更大的数据,Grounding DINO 在没有看到任何 COCO 图像的情况下,在 COCO 目标检测基准测试中创下了 52.5 AP 的新纪录。Grounding DINO 在 COCO minival 上获得了 62.6 AP,优于 DINO 的 62.5 AP。即使在输入图像放大 1.5× 时,性能有所下降,我们怀疑文本分支放大了不同输入图像大小模型之间的差距。尽管性能在更大的输入尺寸下趋于平稳,但 Grounding DINO 在 COCO test-dev 上经过微调后获得了令人印象深刻的 63.0 AP(见表 2 中的括号数字)。

LVIS 基准测试 LVIS [15] 是一个用于长尾对象的数据集。它包含超过 1000 个类别用于评估。我们使用 LVIS 作为下游任务来测试我们模型的零样本能力。我们在表 3 中使用 GLIP 和 DetCLIPv2 作为我们模型的基线。我们发现在结果中有两个有趣的现象。首先,与 GLIP 相比,Grounding DINO 在常见对象上表现更好,但在罕见类别上表现更差。我们回顾了 DETR 类模型在 LVIS 上的表现,并注意到这些模型通常在 LVIS 上表现出较低的罕见类别 AP,尽管整体 AP 类似,例如 [9] 中的表 2 和 [18] 中的表 6。据我们所知,没有现有的 DETR 类模型能够有效地解决 LVIS 中的罕见性挑战,除非使用额外的训练数据,这可能是该架构的固有限制。另一个现象是,与 GLIP 相比,Grounding DINO 在获得更多数据时获得了更大的收益。例如,Grounding DINO 在引入字幕数据 Cap4M 时获得了 +1.8 AP 的提升,而 GLIP 只有 +1.1 AP。我们相信 Grounding DINO 比 GLIP 具有更好的可扩展性。更大规模的训练将作为我们未来的工作。尽管取得了比 GLIP 更好的结果,但 Grounding DINO 仍然不如 DetCLIPv2,后者的训练数据规模更大。这种性能差异可能归因于训练数据集与 LVIS 数据集之间的数据分布差异。

为了充分发挥 Grounding DINO 的潜力,我们在 LVIS 数据集上对其进行了微调。表 3 突出了我们模型的显著能力。值得注意的是,尽管 Grounding DINO 只在 O365 和 GoldG 数据集上进行了预训练,但它仍然优于 DetCLIPv2-T,差距为 1.5 AP。这一结果表明,Grounding DINO 可能已经学习到了更好的对象级表示,这有助于在微调(与目标数据集对齐)后获得更好的性能(与目标数据集对齐)。在未来的工作中,我们将进行更多研究,包括改变训练数据的语义概念覆盖范围和增加训练数据的规模,以进一步提高零样本泛化性能。

ODinW 基准测试 ODinW(Object Detection in the Wild)[23] 是一个更具挑战性的基准测试,用于测试模型在现实世界场景下的性能。它收集了 35 多个数据集用于评估。我们在表 4 中报告了零样本、少样本和全样本三种设置的结果。Grounding DINO 在此基准测试中表现出色。仅使用 O365 和 GoldG 进行预训练,Grounding DINO T 在少样本和全样本设置中优于 DINO。令人印象深刻的是,使用 Swin-T 骨干网络的 Grounding DINO 在全样本设置中优于使用 Swin-L 的 DINO。在零样本设置中,Grounding DINO 优于具有相同骨干网络的 GLIP。Grounding DINO 和 GLIPv2-T 在 APaverage 上表现相似。然而,关键区别在于 APmedian,Grounding DINO 显著优于 GLIPv2-T(11.9 对 8.9)。这表明,尽管 GLIPv2 在不同数据集上的性能可能存在更大的方差,但 Grounding DINO 保持了更一致的性能水平。GLIPv2 引入了先进的技术,如掩码文本训练和跨实例对比学习,使其比我们的 Grounding DINO 模型更复杂。此外,我们的模型更紧凑(172M 参数),与 GLIPv2(232M 参数)相比。这些因素结合在一起——性能一致性、模型复杂性和大小——应该解决对我们模型在真实开集场景中能力的担忧。Grounding DINO L 在 ODinW 零样本基准测试中创下了 26.1 AP 的新纪录,甚至超过了巨大的 Florence 模型 [54]。结果表明了 Grounding DINO 的泛化和可扩展性。

4.3 引用目标检测设置

我们进一步探索了我们的模型在引用表达理解(REC)任务上的表现。我们使用 GLIP [25] 作为我们的基线。我们直接在 RefCOCO/+/g 上评估模型性能。5 结果如表 5 所示。Grounding DINO 在相同设置下优于 GLIP。然而,GLIP 和 Grounding DINO 在没有 REC 数据的情况下表现不佳。更多的训练数据,如字幕数据或更大的模型有助于最终性能,但提升有限。在注入 RefCOCO/+/g 数据进行训练后,Grounding DINO 获得了显著的提升。结果表明,大多数现有的开集目标检测器需要更多地关注更细粒度的检测。

4.4 RefC 和 COCO 数据的影响

我们在表 6 中将 RefCOCO/+/g(我们在表中将其标记为“RefC”)和 COCO 添加到训练中。结果表明,RefC 有助于提高 COCO 零样本和微调性能,但对 LVIS 和 ODinW 的结果产生了负面影响。引入 COCO 后,COCO 的结果得到了显著提升。它表明 COCO 在 LVIS 中带来了边际改进,并在 ODinW 上略有下降。

4.5 消融实验

我们在本节中进行了消融实验。我们提出了一个紧密融合的基础模型用于开集目标检测,并提出了一个子句级文本提示。为了验证模型设计的有效性,我们为不同变体移除了一些融合块。结果如表 7 所示。所有模型均在 O365 上进行了预训练,并使用 Swin-T 骨干网络。结果表明,编码器融合显著提高了模型在 COCO 和 LVIS 数据集上的性能。通过比较模型 #1 与基准模型 #0 的结果,验证了这一观察结果。其他技术,如基于语言的查询选择、文本交叉注意力和子句级文本提示,也对 LVIS 性能产生了积极影响,分别带来了 +3.0 AP、+1.8 AP 和 +0.5 AP 的显著提升。此外,这些方法还增强了 COCO 零样本性能,进一步证明了它们的有效性。然而,我们观察到基于语言的查询选择和子句级文本提示对 COCO 微调性能的影响最小。这一结果是合理的,因为这些方法不会改变模型参数或增加计算负担。与编码器融合相比,文本交叉注意力引入的参数较少,但其性能提升也较小(+0.6 对 +0.8)。这一发现表明,微调性能主要受模型参数的影响,这表明扩大模型规模是提高性能的一个有希望的方向。

5 结论

在本文中,我们提出了 Grounding DINO 模型。Grounding DINO 将 DINO 扩展到开集目标检测,使其能够以文本作为查询检测任意对象。我们回顾了开集目标检测器的设计,并提出了一种紧密融合方法,以更好地融合跨模态信息。我们提出了一个子句级表示方法,以更合理地使用检测数据作为文本提示。结果表明,我们的模型设计和融合方法的有效性。此外,我们将开集目标检测扩展到引用表达理解(REC)任务,并进行了相应的评估。我们表明,现有的开集检测器在没有微调的情况下对 REC 数据表现不佳。因此,我们在未来的研究中特别关注 REC 的零样本性能。限制:尽管在开集目标检测设置中表现良好,但 Grounding DINO 无法用于像 GLIPv2 那样的分割任务。我们的训练数据少于最大的 GLIP 模型,这可能限制了我们的最终性能。此外,我们发现我们的模型在某些情况下会产生虚假的正结果,这可能需要更多的技术或数据来减少幻觉。社会影响:使用深度学习模型(如本模型)会使其暴露于对抗性攻击的脆弱性。此外,模型输出的准确性和正确性无法得到保证。还存在模型的开集检测能力被用于非法目的的风险。