论文地址:https://arxiv.org/pdf/2401.17270
级别:CVPR2023
YOLO-World 是一种创新的开放词汇目标检测方法,通过将视觉与语言模态深度融合,实现了高效且灵活的物体检测。
摘要
YOLO 系列检测器已成为高效实用的工具。然而,它们对预定义和训练的对象类别的依赖限制了它们在开放场景中的适用性。为了解决这一限制,我们推出了 YOLO-World,这是一种创新方法,通过视觉语言建模和在大规模数据集上进行预训练,为 YOLO 增强了开放词汇检测能力。具体来说,我们提出了一种新的可重新参数化的视觉语言路径聚合网络 (RepVL-PAN) 和区域文本对比损失,以促进视觉和语言信息之间的交互。我们的方法擅长以零样本方式高效检测各种物体。在具有挑战性的 LVIS 数据集上,YOLO-World 在 V100 上实现了 35.4 AP 和 52.0 FPS,在准确性和速度方面均优于许多最先进的方法。此外,经过微调的 YOLO-World 在多个下游任务中取得了显著的表现,包括对象检测和开放词汇实例分割。
1. Introduction
物体检测一直是计算机视觉领域中一个长期存在且根本性的挑战,在图像理解、机器人技术和自动驾驶汽车领域有着广泛的应用。随着深度神经网络的发展,大量研究 [16、27、43、45] 在物体检测方面取得了重大突破。尽管这些方法取得了成功,但它们仍然有限,因为它们只能处理固定词汇量(例如 COCO [26] 数据集中的 80 个类别)的物体检测。一旦定义并标记了物体类别,经过训练的检测器就只能检测那些特定的类别,从而限制了开放场景的能力和适用性。
最近的研究 [8、13、48、53、58] 探索了流行的视觉语言模型 [19、39],通过从语言编码器(例如 BERT [5])中提取词汇知识来解决开放词汇检测 [58]。然而,这些基于蒸馏的方法由于训练数据稀缺且词汇多样性有限而受到很大限制,例如包含 48 个基本类别的 OV-COCO [58]。几种方法 [24、30、56、57、59] 将物体检测训练重新表述为区域级视觉语言预训练,并大规模训练开放词汇物体检测器。然而,这些方法在现实世界场景中仍然难以检测,这有两个方面的问题:(1)计算负担重和(2)边缘设备的复杂部署。先前的研究 [24、30、56、57、59] 已经证明了预训练大型检测器的良好性能,而预训练小型检测器以赋予其开放识别能力仍未得到探索。
在本文中,我们提出了 YOLO-World,旨在实现高效的开放词汇对象检测,并探索大规模预训练方案,以将传统的 YOLO 检测器提升到新的开放词汇世界。与以前的方法相比,所提出的 YOLOWorld 效率极高,推理速度快,易于部署到下游应用中。具体来说,YOLO-World 遵循标准 YOLO 架构 [20],并利用预先训练的 CLIP [39] 文本编码器对输入文本进行编码。我们进一步提出了可重新参数化的视觉语言路径聚合网络 (RepVL-PAN) 来连接文本特征和图像特征,以获得更好的视觉语义表示。在推理过程中,可以删除文本编码器,并将文本嵌入重新参数化为 RepVL-PAN 的权重,以实现高效部署。我们进一步研究了 YOLO 检测器的开放词汇预训练方案,通过对大规模数据集进行区域-文本对比学习,将检测数据、基础数据和图像文本数据统一为区域-文本对。经过预训练的 YOLO-World 具有丰富的区域-文本对,具有强大的大词汇检测能力,训练更多数据可以更大程度地提高开放词汇能力。
此外,我们探索了一种“提示-检测”范式,
以进一步提高开放词汇对象检测在现实场景中的效率。如图 2 所示,传统对象检测器 [16、20、23、41-43、52] 专注于具有预定义和训练类别的固定词汇(闭集)检测。而之前的开放词汇检测器 [24、30、56、59] 使用文本编码器对用户对在线词汇的提示进行编码并检测对象。值得注意的是,这些方法倾向于使用具有重型骨干的大型检测器,例如 Swin-L [32],以增加开放词汇容量。相比之下,提示-检测范式(图 2 ©)首先对用户的提示进行编码以构建离线词汇表,词汇表随不同需求而变化。然后,高效的检测器可以即时推断离线词汇表,而无需重新编码提示。对于实际应用,一旦我们训练了检测器,即 YOLO-World,我们就可以对提示或类别进行预编码以构建离线词汇表,然后将其无缝集成到检测器中。
我们的主要贡献可以概括为三个方面:
• 我们引入了 YOLO-World,这是一款高效的尖端开放词汇对象检测器,适用于现实世界的应用。
• 我们提出了一个可重新参数化的视觉语言 PAN 来连接视觉和语言特征,并为 YOLO-World 提出了一个开放词汇区域文本对比预训练方案。
• 在大规模数据集上进行预训练的 YOLO-World 表现出强大的零样本性能,在 LVIS 上实现了 35.4 AP 和 52.0 FPS。预训练的 YOLO-World 可以轻松适应下游任务,例如开放词汇实例分割和指称对象检测。此外,YOLO-World 的预训练权重和代码将开源,以促进更多实际应用。
2. Related Works
2.1. Traditional Object Detection
当前的目标检测研究集中在固定词汇表 (封闭集) 检测上,其中目标检测器在具有预定义类别的数据集上进行训练,例如 COCO 数据集 [26] 和 Objects365 数据集 [46],然后检测固定类别集合内的目标。在过去的几十年中,传统目标检测方法可以简单地分为三类,即基于区域的方法、基于像素的方法和基于查询的方法。基于区域的方法 [11, 12, 16, 27, 44],例如 Faster R-CNN [44],采用两阶段框架进行提案生成 [44] 和 RoI-wise (感兴趣区域) 分类和回归。基于像素的方法 [28, 31, 42, 49, 61] 倾向于是单阶段检测器,它们对预定义的锚点或像素执行分类和回归。 DETR [1] 首次通过 Transformer [50] 探索物体检测,并启发了大量基于查询的方法 [64]。在推理速度方面,Redmon 等人提出了 YOLO [40–42],利用简单的卷积架构进行实时物体检测。多项研究 [10、23、33、52、55] 为 YOLO 提出了各种架构或设计,包括路径聚合网络 [29]、跨阶段部分网络 [51] 和重新参数化 [6],这些方法进一步提高了速度和准确性。与之前的 YOLO 相比,本文中的 YOLOWorld 旨在以强大的泛化能力检测固定词汇表之外的物体。
2.2. Open-Vocabulary Object Detection
开放词汇物体检测 (OVD) [58] 已成为现代物体检测的新趋势,旨在检测预定义类别之外的物体。早期的研究 [13] 遵循标准 OVD 设置 [58],在基类上训练检测器并评估新的(未知)类别。尽管如此,这种开放词汇设置可以评估检测器检测和识别新物体的能力,但它仍然局限于开放场景,并且由于在有限的数据集和词汇上进行训练,缺乏对其他领域的泛化能力。受视觉语言预训练 [19, 39] 的启发,最近的研究 [8, 22, 53, 62, 63] 将开放词汇物体检测表述为图像-文本匹配,并利用大规模图像-文本数据来大规模增加训练词汇量。 OWLViT [35, 36] 使用检测和基础数据集对简单视觉变换器 [7] 进行微调,并构建具有良好性能的简单开放词汇检测器。GLIP [24] 提出了一种基于短语基础的开放词汇检测预训练框架,并在零样本设置下进行评估。基础 DINO [30] 将基础预训练 [24] 融入具有跨模态融合的检测变换器 [60] 中。几种方法 [25, 56, 57, 59] 通过区域-文本匹配将检测数据集和图像-文本数据集统一起来,并使用大规模图像-文本对预训练检测器,实现了良好的性能和泛化。然而,这些方法通常使用像 ATSS [61] 或 DINO [60] 这样的重型检测器,并以 Swin-L [32] 为主干,导致高计算需求和部署挑战。相比之下,我们提出了 YOLO-World,旨在实现高效的开放词汇对象检测,并实现实时推理,并简化下游应用部署。与 ZSD-YOLO [54] 不同,后者也通过语言模型对齐探索使用 YOLO 进行开放词汇检测 [58],YOLO-World 引入了一种新颖的 YOLO 框架,具有有效的预训练策略,可提高开放词汇的性能和泛化能力。
3. Method
3.1. Pre-training Formulation: Region-Text Pairs
传统的目标检测方法,包括 YOLO 系列 [20],都是使用实例标注 Ω = {Bi, ci}Ni=1 进行训练的,该标注由边界框 {Bi} 和类别标签 {ci} 组成。在本文中,我们将实例标注重新表述为区域-文本对 Ω = {Bi, ti}Ni=1,其中 ti 是区域 Bi 对应的文本。具体来说,文本 ti 可以是类别名称、名词短语或目标描述。此外,YOLO-World 采用图像 I 和文本 T(一组名词)作为输入,输出预测框 { ˆBk} 和对应的目标嵌入 {ek}(ek ∈ RD)。
区域-文本对重构(Pre-training Formulation)
- 传统检测局限:传统方法(如YOLO系列)依赖固定类别标签(如{Bi, ci}),无法识别训练集外的物体。
- 创新点:将标注重构为区域-文本对{Bi, ti},其中ti可以是类别名、短语或描述。例如,"一只棕色狗"的文本描述替代了单一的"狗"类别标签。
- 输入输出:模型以图像I和文本T(名词集合)为输入,输出预测框{ˆBk}及对应的物体嵌入{ek},嵌入维度为D。
3.2. Model Architecture
模型架构(Model Architecture)
-
三大组件:
- YOLO检测器:基于YOLOv8,含Darknet主干、PAN特征金字塔和检测头。
- 文本编码器:采用CLIP的Transformer编码器,生成文本嵌入W∈ℝ^(C×D),C为名词数,D为嵌入维度。对长文本(如标题)使用n-gram提取名词短语。
- RepVL-PAN:跨模态融合模块,增强图像与文本特征(详见3.3节)。
-
文本对比头:
- 计算物体-文本相似度s_kj = α·L2-Norm(ek)^T·L2-Norm(wj) + β,通过仿射变换(α, β)稳定训练。
- 解耦头结构:两个3×3卷积分别回归边界框和物体嵌入。
- 图3:展示整体架构,突出图像与文本的双流输入、RepVL-PAN的融合位置。
所提出的 YOLO-World 的整体架构如图 3 所示,它由 YOLO 检测器、文本编码器和可重新参数化的视觉语言路径聚合网络 (RepVL-PAN) 组成。给定输入文本,YOLO-World 中的文本编码器将文本编码为文本嵌入。YOLO 检测器中的图像编码器从输入图像中提取多尺度特征。然后,我们利用 RepVL-PAN 通过利用图像特征和文本嵌入之间的跨模态融合来增强文本和图像表示。
YOLO 探测器。YOLO-World 主要基于 YOLOv8 [20] 开发,其中包含一个 Darknet 主干 [20, 43] 作为图像编码器、一个用于多尺度特征金字塔的路径聚合网络 (PAN) 以及一个用于边界框回归和对象嵌入的头部。
文本编码器。给定文本 T,我们采用 CLIP [39] 预训练的 Transformer 文本编码器来提取相应的文本嵌入 W=TextEncoder(T)∈RC×D,其中 C 是名词的数量,D 是嵌入维度。与纯文本语言编码器 [5] 相比,CLIP 文本编码器在将视觉对象与文本连接起来方面提供了更好的视觉语义能力。当输入文本是标题或指称表达时,我们采用简单的 n-gram 算法来提取名词短语,然后将它们输入到文本编码器中。
文本对比头。根据之前的研究 [20],我们采用具有两个 3×3 卷积的解耦头来回归边界框 {bk}Kk=1 和对象嵌入。
我们提出一个文本对比头,通过以下方式获得对象-文本相似度 sk,j:
其中 L2-Norm(·) 是 L2 规范化,wj ∈ W 是第 j 个文本嵌入。此外,我们添加了具有可学习缩放因子 α 和平移因子 β 的仿射变换。L2 规范和仿射变换对于稳定区域文本训练都很重要。
训练与推理策略
- 在线词汇训练:每个马赛克样本(4图拼接)构建动态词汇表T,包含正例名词和随机负例(最多80个)。
- 离线词汇推理:用户预定义提示词(如类别列表),文本编码器预计算嵌入,避免实时计算,提升效率。
使用在线词汇进行训练。在训练期间,我们为每个包含 4 幅图像的马赛克样本构建一个在线词汇表 T。具体来说,我们从马赛克图像中抽取所有正面名词,并从相应的数据集中随机抽取一些负面名词。每个马赛克样本的词汇表最多包含 M 个名词,M 默认设置为 80。
使用离线词汇进行推理。在推理阶段,我们提出了一种使用离线词汇的提示然后检测策略,以提高效率。如图 3 所示,用户可以定义一系列自定义提示,其中可能包括标题或类别。然后,我们利用文本编码器对这些提示进行编码并获得离线词汇嵌入。离线词汇可以避免对每个输入进行计算,并提供根据需要调整词汇的灵活性。
3.3. Re-parameterizable Vision-Language PAN
跨模态融合模块(RepVL-PAN)
-
双向特征增强:
- 文本引导CSPLayer(T-CSPLayer):在CSPLayer末端引入max-sigmoid注意力,聚合文本特征到图像特征。公式:X’ = X ⊙ δ(max_j(WX^T)),⊙为逐元素乘。
- 图像池化注意力(I-Pooling):从多尺度特征提取27个图像补丁(3×3区域×3尺度),通过交叉注意力更新文本嵌入:W’ = W + MultiHeadAttn(W, X̃, X̃)。
-
部署优化:推理时,离线词汇嵌入可重参数化为卷积权重,减少计算开销。
- 图4:详解RepVL-PAN的双向交互机制,T-CSPLayer与I-Pooling的模块设计。
图 4 展示了所提出的 RepVL-PAN 的结构,该结构遵循 [20, 29] 中的自上而下和自下而上的路径,以多尺度图像特征 {C3, C4, C5} 建立特征金字塔 {P3, P4, P5}。此外,我们提出了文本引导的 CSPLayer (T-CSPLayer) 和图像池化注意力 (I-Pooling Attention),以进一步增强图像特征和文本特征之间的交互,从而提高开放词汇的视觉语义表示能力。在推理过程中,离线词汇嵌入可以重新参数化为卷积或线性层的权重以供部署。
文本引导的 CSPLayer。如图 4 所示,在自上而下或自下而上的融合之后,使用跨阶段部分层 (CSPLayer)。我们通过将文本引导合并到多尺度图像特征中来扩展 [20] 的 CSPLayer(也称为 C2f),以形成文本引导的 CSPLayer。具体而言,给定文本嵌入 W 和图像特征 Xl ∈ RH×W×D (l ∈ {3, 4, 5}),我们在最后一个暗瓶颈块之后采用 max-sigmoid 注意力机制,通过以下方式将文本特征聚合到图像特征中:
这里面,X 与跨阶段特征连接作为输出。δ 表示 S 型函数。
图像池化注意力。为了使用图像感知信息增强文本嵌入,我们通过提出图像池化注意力来聚合图像特征以更新文本嵌入。我们不是直接在图像特征上使用交叉注意力,而是利用多尺度特征上的最大池化来获得 3×3 区域,从而得到总共 27 个补丁标记 X˜ ∈ R27×D。然后通过以下方式更新文本嵌入:
3.4. Pre-training Schemes
预训练方案
-
损失函数:
- 区域-文本对比损失L_con:基于任务对齐标签分配的交叉熵损失。
- 回归损失:IoU损失(L_iou)和分布焦点损失(L_dfl),权重λ_I(检测数据为1,图文数据为0)。
-
数据扩展:
- 伪标注流程:从CC3M数据集中自动生成246k图像的821k伪标签:
- 名词提取:n-gram算法从文本中提取短语。
- 伪框生成:GLIP检测器为名词生成候选框。
- 过滤:CLIP评估图文相关性,NMS去除冗余框。
在本节中,我们介绍了在大规模检测、基础和图像文本数据集上对 YOLO-World 进行预训练的训练方案。
- 伪标注流程:从CC3M数据集中自动生成246k图像的821k伪标签:
从区域-文本对比损失中学习。给定马赛克样本 I 和文本 T,YOLO-World 输出 K 个对象预测 {Bk, sk}K k=1 以及注释 Ω = {Bi, ti}N i=1。我们遵循 [20] 并利用任务对齐的标签分配 [9] 将预测与真实注释进行匹配,并为每个正预测分配一个文本索引作为分类标签。基于这个词汇表,我们通过对象-文本(区域-文本)相似性和对象-文本分配之间的交叉熵构建了区域-文本对比损失 Lcon 和区域-文本对。此外,我们采用 IoU 损失和分布式焦点损失进行边界框回归,总训练损失定义为:L(I) = Lcon + λI · (Liou + Ldfl),其中 λI 是指示因子,当输入图像 I 来自检测或接地数据时设置为 1,当来自图像文本数据时设置为 0。考虑到图像文本数据集具有噪声框,我们仅计算具有准确边界框的样本的回归损失。
使用图像文本数据进行伪标记。我们提出了一种自动标记方法来生成区域文本对,而不是直接使用图像文本对进行预训练。具体来说,标记方法包含三个步骤:(1)提取名词短语:我们首先利用 n-gram 算法从文本中提取名词短语;(2)伪标记:我们采用预先训练的开放词汇检测器,例如 GLIP [24],为每个图像的给定名词短语生成伪框,从而提供粗略的区域文本对。(3)过滤:我们使用预先训练的 CLIP [39] 来评估图像文本对和区域文本对的相关性,并过滤低相关性的伪注释和图像。我们进一步通过结合非最大抑制 (NMS) 等方法过滤冗余边界框。我们建议读者参考附录了解详细方法。通过上述方法,我们从 CC3M [47] 中采样并标记了 246k 张图像,并使用 821k 个伪注释。
5. 结论
我们提出了 YOLO-World,这是一款尖端的实时开放词汇检测器,旨在提高实际应用中的效率和开放词汇能力。在本文中,我们将流行的 YOLO 重塑为用于开放词汇预训练和检测的视觉语言 YOLO 架构,并提出了 RepVL-PAN,它将视觉和语言信息与网络连接起来,并且可以重新参数化以实现高效部署。我们进一步提出了有效的检测、基础和图像文本数据预训练方案,使 YOLOWorld 具有强大的开放词汇检测能力。实验可以证明 YOLO-World 在速度和开放词汇性能方面的优势,并表明视觉语言预训练在小模型上的有效性,这对未来的研究具有启发意义。我们希望 YOLO-World 可以成为解决现实世界开放词汇检测的新基准。
创新价值与意义
- 实时开放词汇检测:首次将YOLO架构扩展为视觉语言模型,支持任意文本查询的物体检测。
- 小模型潜力:证明视觉语言预训练对小模型(如YOLO)的有效性,为边缘设备部署提供可能。
- 新基准:为实际应用(如机器人、AR)中的动态场景检测设立新标准。
YOLO-World通过巧妙的模态融合和训练策略,在保持YOLO高效性的同时,突破了封闭词汇限制,为开放世界感知任务提供了实用解决方案。