一、开集目标检测崛起
目标检测长期以来一直是计算机视觉中的基础任务,旨在识别和定位图像中的物体。传统方法被归类为“闭集”检测系统,仅限于识别训练期间指定的预定义类别。想象一下,如果我们训练了一个能识别“猫”、“狗”和“汽车”的检测模型,那么当它面对一张包含“长颈鹿”的图片时,使用闭集训练方法的传统检测模型会完全忽略这个长颈鹿,或错误地将其归类为已知类别。然而,现实应用通常需要检测超出这些预定义类别的物体,因"开集"目标检测已经是大势所趋。
图1:从闭集到开集目标检测的演进及其在图像编辑中的应用。左图是具有预定义类别的传统目标检测,中间是带有人类语言输入的开集检测,右图是与 Stable Diffusion 集成用于图像编辑的效果展示。
Grounding DINO 推动了开集目标检测的重大进步,它将基于 Transformer 的 DINO 检测架构与基础预训练(Grounded Pre-Training)技术的优势相结合。这种融合使模型能够通过自然语言输入检测任意指定的物体,无论是简单的类别名称还是复杂的指代表达。例如,你可以要求模型找出“坐在草地上的白色小狗”,即使它从未特别学习过这种特定描述的组合。
二、为什么提出 Grounding DINO
随着深度学习的出现,目标检测已经有了实质性的发展。早期的方法如 Faster R-CNN 和 YOLO 专注于在闭集类别中检测物体,而当时最新的趋势已经开始转向更灵活的检测范式,能够泛化到新颖的物体类别。当时在这一领域出现的两个关键进步是:
(1)使用基于 Transformer 的架构:像 DETR 和 DINO 这样的模型利用 Transformer 架构通过其注意力机制改进检测性能,就像人类可以快速将注意力集中在视野中的重要物体上一样,Transformer 的注意力机制使模型能够专注于图像的关键部分。
(2)视觉-语言预训练:基于“视觉-语言对”的大规模预训练使模型能够理解视觉概念和语言描述之间的关系。想象一下学习了数百万图像和相应文本描述的模型,它开始理解“红色”、“圆形”或“在桌子上”等概念的含义。
在 Grounding DINO 之前,已经出现的开集目标检测方法包括:
(1)区域-文本匹配方法:像 MDETR 和 GLIP 这样的模型将检测视为短语定位任务,将图像区域与文本描述匹配。例如,当你说"找到红色的苹果"时,这些模型会将图像区域与"红色的苹果"这个短语进行匹配。
(2)微调策略:使 CLIP 等视觉-语言模型适应检测任务。CLIP 已经学会将图像与文本描述相关联,这种能力可以被调整用于找出图像中与特定描述匹配的区域。
这些方法尽管有一定的前景,但在处理复杂描述性输入和检测新颖类别方面存在很大的局限性。开集检测提出的挑战不仅仅是检测模型从未见过的类别,还要求模型能够理解复杂的描述,在识别广泛物体范围的同时保持准确性。
《论文》指出了当时研究中的一个关键缺口:大多数研究人员都将精力集中在攻克新颖类别检测上,对指代表达理解(Referring Expression Comprehension, REC)关注过少,而 REC 却是模型与现实世界连接的关键桥梁。
三、什么是 Grounding DINO
1. 整体架构
Grounding DINO 采用双编码器-单解码器架构,具体包括:
(1)图像骨干网络:(一般使用 Swin Transformer)从输入图像中提取视觉特征。就像人类大脑的视觉皮层一样,这个组件负责处理图像的形状、颜色和纹理信息。
(2)文本骨干网络:(使用 BERT 或类似模型)处理文本输入以提取语言特征。这就像我们理解语言的语言中枢,将“红色的汽车”这样的词组转化为有意义的概念表示。
(3)特征增强器:使用交叉注意力机制增强和融合来自两种模态的特征。想象它像一个翻译员,帮助视觉系统和语言系统相互理解和增强彼此的信息。
(4)语言引导的查询选择:在文本输入的引导下选择相关的图像特征。例如,当寻找“红色的汽车”时,这一组件会引导模型关注图像中可能包含红色汽车的区域。
(5)跨模态解码器:通过整合来自两种模态的信息来精炼物体预测。这像是最终的决策者,综合所有信息来确定物体的位置和类别。 该模型的设计更好地满足了视觉和语言信息整合的平衡性,因而能够实现更准确、更灵活的目标检测。
图2:Grounding DINO 的整体架构,显示了文本和图像处理流程、特征增强、语言引导的查询选择和跨模态解码器。
2. 模型创新
Grounding DINO的一个关键创新是使用了“紧密融合”策略,在多个层次上整合了文本和图像特征,具体包括:
(1)特征增强器:第一级融合发生在特征增强器中,其本质是双向交叉注意力。想象你正在寻找一个“红色的背包”。文本增强过程会让“红色”和“背包”这两个词更加关注图像中显示红色或类似背包形状的区域。同时,图像增强过程会强调那些与“红色”和“背包”概念相符的图像区域。
(2)语言引导的查询选择:第二级融合选择与文本输入最相关的图像特征。这一步相当于从图像中初步筛选出最可能包含“红色背包”的候选区域,而不是考虑整个图像的每个像素。
(3)跨模态解码器:最终级融合通过使用文本引导解码器来精炼物体预测。在这一步中,系统进一步细化对候选区域的理解,确定哪些真正符合“红色背包”的描述,并精确定位其边界框。
这种多级融合方法使模型能够在整个检测过程中保持文本和图像模态之间更强的连接,从而实现更准确的物体定位和分类。此外,作者还提出了一种新颖的“子句级表示(Sub-sentence level representation)”来处理文本输入,从而解决了当时现有方法的局限性:
图3 不同文本表示策略的比较:(a) 句子级,(b) 词级,和 (c) 子句级方法。其中,(a) 句子级表示:为整个文本输入使用单一嵌入,这会丢失关于单个物体的细粒度信息。例如,如果提示是“找到红色汽车和蓝色自行车”,句子级表示会将整个句子压缩为一个向量,难以区分“红色汽车”和“蓝色自行车”这两个不同的目标。(b) 词级表示:为单个词使用嵌入,这会丢失上下文信息。在这种方法中,“红色”、“汽车”、“和”、“蓝色”、“自行车”每个词都有自己的表示,但“红色”不知道它应该修饰“汽车”而不是“自行车”。(c) 子句级表示:分别处理每个短语或类别名称,同时保留细粒度细节和上下文信息。这种方法会创建“红色汽车”和“蓝色自行车”这样的短语级表示,既保留了词之间的关系,同时也将不同目标对象分开处理。
这种方法允许模型在保持提示词内包含的不同物体类别之间的独立性的同时,还保留了每个短语内的上下文信息,从而更有效地处理复杂的指代表达。例如,对于“坐在沙发上的人和站在桌子旁的狗”这样的提示词,子句级表示会分别处理“坐在沙发上的人”和“站在桌子旁的狗”,保留每个描述的完整含义。
3. 性能优势
Grounding DINO在多项基准测试中取得了最先进的性能:
(1)零样本适应 COCO 数据集:在没有使用任何 COCO 训练数据的情况下达到 52.5 AP。相当于模型从未见过 COCO 数据集中的特定图像,却能准确地检测出其中的物体。
(2)ODinW 基准:在 13 个数据集上达到 26.1 平均 AP,突破了当时最先进的水平。
(3)指代表达理解:在 RefCOCO、RefCOCO+ 和 RefCOCOg 数据集上展现出了优越的性能。
实验证明了 Grounding DINO 具备几项突破性的关键优势,包括:
(1)紧密融合策略显著优于较松散的集成方法,就像两个人密切协作比各自独立工作更有效率。
(2)子句级文本表示极大地提升了复杂查询的性能。例如,当要求模型找出“戴眼镜的老人和牵狗的小女孩”时,子句级表示能更好地区分这两个不同的目标。
(3)从闭集到开集检测的迁移学习非常有效。这表明一个已经学会识别特定物体类别的模型能够很好地扩展到其他新类别的识别。
(4)模型在类别检测和指代表达任务上都保持强劲的性能。图5 所示展示了模型优秀的定性检测结果:
图4 定性结果展示了 Grounding DINO 在各种场景下卓越的检测能力,包括不同环境中的人物、建筑物、动物和群体。
四、应用场景
从闭集检测的 DINO 进化到支持开集检测的 Grounding DINO,代表了 DINO 家族的一次重大飞跃。这种进化开辟了众多新的应用场景:
(1)图像编辑:当与 Stable Diffusion 等生成模型结合时,它可基于文本提示实现精确的物体级编辑。例如,你可以要求系统“将图中的红色汽车变成蓝色”,系统会精确地只修改汽车,而保持其他内容不变。
(2)人机交互:想象一个智能助手,你可以告诉它“打开左边第二个窗户的窗帘”,它就能准确理解你的意图。
(3)内容审核:开集检测可以识别以各种方式描述的问题内容。系统可以检测出“持枪的人”或“不适当的内容”,即使这些内容以前从未见过。
(4)机器人:使机器人能够识别并与通过自然语言描述的物体交互。你可以指示机器人“拿起桌子上的红色杯子”,而不需要预先教它“杯子”是什么样子。
Grounding DINO 彻底改变了人类与视觉 AI 系统交互的方式,用户可以用自然、流畅的语言描述他们想要系统检测的任何物体。这种灵活性使得 AI 视觉系统能够更好地适应人类的需求,而不是要求人类适应系统的限制。
结语
Grounding DINO 有效地将基于 Transformer 的检测架构与基础预训练技术相结合,推动了开集目标检测的重大进步,在此基础上,后来的 DINO 家族模型又基于以下方向进行了重大改进,包括:
(1)扩展性:探索更大模型和更广泛预训练数据的益处;
(2)实例分割:将方法扩展到开集实例分割;
(3)长尾性能:改善对稀有或不寻常物体类别的性能;
(4)零样本 REC:增强模型理解未见过的指代表达的能力;
(5)多模态集成:与其他模态和生成模型进一步集成。
最终发展出了迄今为止性能最强大的开集目标检测模型——DINO-X。
彩蛋
-
论文《Grounding DINO: Marrying DINO with Grounded Pre-Training for Open-Set Object Detection》,作者:Shilong Liu, Zhaoyang Zeng, Tianhe Ren, Feng Li, Hao Zhang, Jie Yang, Qing Jiang, Chunyuan Li, Jianwei Yang, Hang Su, Jun Zhu, Lei Zhang。链接:https://arxiv.org/abs/2303.05499
-
调用最新 DINO 家族 API 请前往 DINO-X 开放平台:https://cloud.deepdataspace.com/
-
在线体验最新的 Grounding DINO 模型,请前往 DINO-X Playground: https://cloud.deepdataspace.com/playground/grounding_dino