yolo world 中文翻译

Code & Models: YOLO-World
摘要
You Only Look Once (YOLO) 系列检测器已成为高效实用的工具。 然而,它们对预定义和训练的对象类别的依赖限制了它们在开放场景中的适用性。 为了解决这一限制,我们引入了 YOLO-World,这是一种创新方法,通过视觉语言建模和大规模数据集的预训练来增强 YOLO 的开放词汇检测功能。 具体来说,我们提出了一种新的可重新参数化的视觉语言路径聚合网络(RepVL-PAN)和区域文本对比损失,以促进视觉和语言信息之间的交互。 我们的方法擅长以零样本的方式高效地检测各种物体。 在具有挑战性的 LVIS 数据集上,YOLO-World 在 V100 上实现了 35.4 AP 和 52.0 FPS,在准确性和速度方面优于许多最先进的方法。 此外,经过微调的 YOLO-World 在多个下游任务上实现了出色的性能,包括对象检测和开放词汇实例分割。

1简介
物体检测一直是计算机视觉领域长期存在的基本挑战,在图像理解、机器人和自动驾驶汽车领域有着广泛的应用。 随着深度神经网络的发展,巨大的工作[45,43,27,16]在目标检测方面取得了重大突破。 尽管这些方法取得了成功,但它们仍然受到限制,因为它们仅处理具有固定词汇表的对象检测,例如.,COCO [26]<中的80个类别/t2> 数据集。 一旦定义和标记了对象类别,经过训练的检测器就只能检测这些特定类别,从而限制了开放场景的能力和适用性。

Refer to caption
图1:速度与精度曲线。 我们在速度和准确性方面将 YOLO-World 与最新的开放词汇方法进行比较。 所有模型均在 LVIS minival 上进行评估,推理速度在一台不带 TensorRT 的 NVIDIA V100 上测量。 圆圈的大小代表模型的大小。
最近的工作[58,13,8,53,48]探索了流行的视觉语言模型[39,19]来解决开放词汇检测[ 58] 通过从语言编码器中提取词汇知识,例如.、BERT [5]。 然而,由于训练数据稀缺且词汇多样性有限,这些基于蒸馏的方法受到很大限制,例如.、OV-COCO [58] 包含 48 个基本类别。 几种方法[24,59,30,56,57]将对象检测训练重新制定为区域级视觉语言预训练,并大规模训练开放词汇对象检测器。 然而,这些方法仍然难以在现实场景中进行检测,其存在两个方面的问题:(1)繁重的计算负担和(2)边缘设备的复杂部署。 之前的工作[24,59,30,56,57]已经证明了预训练大型检测器的良好性能,而预训练小型检测器以赋予其开放识别能力仍有待探索。

Refer to caption
图2:与检测范例的比较。 (a) 传统物体检测器:这些对象检测器只能检测训练数据集预定义的固定词汇表内的对象,例如.,COCO数据集[26]的80个类别t2>。 固定的词汇限制了开放场景的扩展。 (b) 以前的开放词汇检测器: 以前的方法倾向于开发大而重的检测器来进行开放词汇检测,直观上具有很强的能力。 此外,这些检测器同时对图像和文本进行编码作为预测的输入,这对于实际应用来说非常耗时。 © YOLO世界: 我们展示了轻量级检测器例如.、YOLO检测器[42, 20]强大的开放词汇性能,这对于现实世界的应用程序。 我们没有使用在线词汇,而是提出了一种用于高效推理的提示然后检测范例,其中用户根据需要生成一系列提示,并且这些提示将被编码到离线词汇中。 然后可以将其重新参数化为模型权重,以进行部署和进一步加速。
在本文中,我们提出了 YOLO-World,旨在实现高效的开放词汇目标检测,并探索大规模预训练方案,将传统的 YOLO 检测器提升到新的开放词汇世界。 与之前的方法相比,所提出的 YOLO-World 非常高效,推理速度快,并且易于部署到下游应用程序。 具体来说,YOLO-World 遵循标准 YOLO 架构 [20] 并利用预先训练的 CLIP [39] 文本编码器对输入文本进行编码。 我们进一步提出可重新参数化的视觉语言路径聚合网络(RepVL-PAN)来连接文本特征和图像特征,以获得更好的视觉语义表示。 在推理过程中,可以删除文本编码器,并将文本嵌入重新参数化为 RepVL-PAN 的权重,以实现高效部署。 我们通过大规模数据集上的区域-文本对比学习,进一步研究了 YOLO 检测器的开放词汇预训练方案,该方案将检测数据、基础数据和图像-文本数据统一为区域-文本对。 预训练的YOLO-World具有丰富的区域文本对,表现出强大的大词汇量检测能力,训练更多的数据可以使开放词汇能力得到更大的提高。

此外,我们探索了一种提示然后检测范例,以进一步提高现实场景中开放词汇对象检测的效率。 如图2所示,传统的目标检测器[16,42,43,41,23,52,20]专注于固定词汇(close-set)使用预定义和训练的类别进行检测。 而之前的开放词汇检测器[24,59,30,56]使用文本编码器对用户的在线词汇提示进行编码并检测对象。 值得注意的是,这些方法倾向于采用具有重型主干的大型检测器,例如.、Swin-L [32],以增加开放词汇量容量。 相比之下,提示然后检测范式(图2(c))首先对用户的提示进行编码以构建离线词汇表,并且词汇表随不同的情况而变化。需要。 然后,高效的检测器可以动态推断离线词汇,而无需重新编码提示。 对于实际应用,一旦我们训练了检测器,即。,YOLO-World,我们可以对提示或类别进行预编码以构建离线词汇表,然后无缝集成将其放入检测器中。

我们的主要贡献可以概括为三个方面:

• 我们推出了 YOLO-World,这是一种尖端的开放词汇目标检测器,在现实世界的应用中具有高效率。
• 我们提出了一种可重新参数化的视觉语言 PAN 来连接视觉和语言特征,并为 YOLO-World 提出了一种开放词汇区域文本对比预训练方案。
• 所提出的 YOLO-World 在大规模数据集上进行了预训练,展示了强大的零样本性能,并在 LVIS 上以 52.0 FPS 实现了 35.4 AP。 预训练的 YOLO-World 可以轻松适应下游任务,例如.、开放词汇实例分割和引用对象检测。 此外,YOLO-World的预训练权重和代码也将开源,以方便更多的实际应用。
Refer to caption
图3:YOLO-World的整体架构。 与传统的 YOLO 检测器相比,YOLO-World 作为开放词汇检测器采用文本作为输入。 文本编码器首先对输入文本输入文本嵌入进行编码。 然后,图像编码器将输入图像编码为多尺度图像特征,并且所提出的RepVL-PAN利用图像和文本特征的多级跨模态融合。 最后,YOLO-World 预测回归边界框和对象嵌入,以匹配输入文本中出现的类别或名词。
2相关作品
2.1传统物体检测
流行的对象检测研究集中在固定词汇(闭集)检测上,其中对象检测器在具有预定义类别的数据集上进行训练,例如。,COCO数据集[26] 和 Objects365 数据集 [46],然后检测固定类别集中的对象。 在过去的几十年里,传统的目标检测方法可以简单地分为三类:即。、基于区域的方法、基于像素的方法和基于查询的方法方法。 基于区域的方法[12,11,44,27,16],例如Faster R-CNN [44],采用两阶段框架来生成提案[44] 和 RoI-wise(感兴趣区域)分类和回归。 基于像素的方法[42,31,28,49,61]往往是单级检测器,它对预定义的锚点或像素执行分类和回归。 DETR [1] 首先通过转换器[50]探索对象检测,并激发了广泛的基于查询的方法[64]。 在推理速度方面,Redmon et al. 提出了 YOLO [42, 40, 41],它利用简单的卷积架构来处理实时对象检测。 一些作品[23,52,10,33,55]为YOLO提出了各种架构或设计,包括路径聚合网络[29]、跨阶段部分网络[51],并重新参数化[6],进一步提高速度和准确性。 与之前的 YOLO 相比,本文的 YOLO-World 旨在检测固定词汇之外的目标,具有很强的泛化能力。

2.2开放词汇目标检测
开放词汇对象检测(OVD)[58]已成为现代对象检测的新趋势,旨在检测预定义类别之外的对象。 早期作品[13]遵循标准OVD设置[58],通过在基类上训练检测器并评估新的(未知)类。 尽管如此,这种开放词汇设置可以评估检测器检测和识别新物体的能力,但由于在有限的数据集和词汇上进行训练,它对于开放场景仍然受到限制,并且缺乏对其他领域的泛化能力。 受视觉语言预训练[39, 19]的启发,最近的工作[62,63,22,8,53]将开放词汇目标检测公式化为图像-文本匹配并利用大规模图像文本数据来大规模增加训练词汇量。 OWL-ViTs [35, 36] 使用检测和基础数据集配置简单的视觉转换器 [7],并构建具有良好性能的简单开放词汇检测器。 GLIP [24] 提出了一个基于短语基础的开放词汇检测的预训练框架,并在零样本设置中进行评估。 Grounding DINO [30] 将接地预训练 [24] 合并到具有跨模态融合的检测 Transformer [60] 中。 几种方法[59,25,56,57]通过区域文本匹配和使用大规模图像文本对预训练检测器来统一检测数据集和图像文本数据集,实现了良好的性能和泛化能力。 然而,这些方法通常使用重型检测器,如 ATSS [61] 或 DINO [60],以 Swin-L [32] 作为主干,导致高计算需求和部署挑战。 相比之下,我们提出了 YOLO-World,旨在通过实时推理和更轻松的下游应用程序部署来实现高效的开放词汇对象检测。 ZSD-YOLO [54]也是通过语言模型对齐的方式利用 YOLO 探索开放词汇检测 [58],与之不同的是,YOLO-World 引入了新颖的 YOLO 框架和有效的预训练策略,提高了开放词汇的性能和泛化能力。

3方法
3.1预训练公式:区域-文本对
传统的目标检测方法,包括 YOLO 系列 [20],使用实例注释

3.2模型架构
所提出的YOLO-World的总体架构如图3所示,它由YOLO检测器、文本编码器和可重新参数化的视觉语言路径聚合网络(RepVL-PAN)。 给定输入文本,YOLO-World 中的文本编码器将文本编码为文本嵌入。 YOLO 检测器中的图像编码器从输入图像中提取多尺度特征。 然后,我们利用 RepVL-PAN 通过利用图像特征和文本嵌入之间的跨模态融合来增强文本和图像表示。

YOLO探测器。
YOLO-World主要基于YOLOv8[20]开发,其中包含一个Darknet主干[43, 20]作为图像编码器,一个路径聚合网络(PAN)多尺度特征金字塔,以及边界框回归和对象嵌入的头部。

文本编码器。
给定文本
𝑇
,我们采用CLIP预训练的Transformer文本编码器[39]来提取相应的文本嵌入

是嵌入维度。 与纯文本语言编码器 [5] 相比,CLIP 文本编码器提供了更好的视觉语义功能,用于将视觉对象与文本连接起来。 当输入文本是标题或引用表达式时,我们采用简单的n-gram算法来提取名词短语,然后将它们输入文本编码器。

文本对比头。
继之前的工作[20]之后,我们采用具有两个
和对象嵌入

是第
𝑗
文本嵌入。 此外,我们添加了具有可学习缩放因子
𝛼
和移位因子
𝛽
的仿射变换。 L2 范数和仿射变换对于稳定区域文本训练都很重要。

使用在线词汇进行训练。
在训练过程中,我们为每个包含 4 个图像的马赛克样本构建一个在线词汇表
𝑇
。 具体来说,我们对马赛克图像中涉及的所有正名词进行采样,并从相应的数据集中随机采样一些负名词。 每个马赛克样本的词汇表最多包含
𝑀
个名词,
𝑀
默认设置为80。

使用离线词汇进行推理。
在推理阶段,我们提出了一种带有离线词汇表的prompt-then-detect策略,以提高效率。 如图3所示,用户可以定义一系列自定义提示,其中可能包括标题或类别。 然后,我们利用文本编码器对这些提示进行编码并获得离线词汇嵌入。 离线词汇可以避免对每个输入进行计算,并提供根据需要调整词汇的灵活性。

3.3可重新参数化的视觉语言 PAN
图4显示了所提出的RepVL-PAN的结构,它遵循[29, 20]中自上而下和自下而上的路径来建立特征金字塔

。 此外,我们提出了文本引导CSPLayer(T-CSPLayer)和图像池注意(I-Pooling Attention)来进一步增强图像特征和文本特征之间的交互,从而提高开放词汇能力的视觉语义表示。 在推理过程中,离线词汇嵌入可以重新参数化为卷积层或线性层的权重以进行部署。

Refer to caption
图4:RepVL-PAN 的插图。 所提出的RepVL-PAN采用文本引导CSPLayer(T-CSPLayer)将语言信息注入图像特征,并采用图像池注意(I-Pooling Attention)来增强图像感知文本嵌入。
文本引导的 CSPLayer。
如图4所示,在自顶向下或自底向上融合之后使用跨级部分层(CSPLayer)。 我们通过将文本引导合并到多尺度图像特征中来扩展[20]的CSPLayer(也称为C2f),形成文本引导CSPLayer。 具体来说,给定文本嵌入
𝑊
和图像特征
(2)
其中更新的
𝑋
𝑙

与跨阶段特征连接作为输出。
𝛿
表示sigmoid函数。

图像池注意力。
为了通过图像感知信息增强文本嵌入,我们通过提出图像池注意力来聚合图像特征来更新文本嵌入。 我们没有直接对图像特征使用交叉注意力,而是利用多尺度特征的最大池化来获取
3
×
3
区域,总共产生 27 个补丁标记
(3)
3.4预训练方案
在本节中,我们提出了在大规模检测、接地和图像文本数据集上预训练 YOLO-World 的训练方案。

从区域文本对比损失中学习。
给定马赛克样本
。 我们遵循 [20] 并利用任务对齐的标签分配 [9] 将预测与真实注释相匹配,并为每个正预测分配一个文本索引作为分类标签。 基于该词汇表,我们通过对象-文本(区域-文本)相似性和对象-文本分配之间的交叉熵构建区域-文本对的区域-文本对比损失

con
。 此外,我们采用IoU损失和分布式焦点损失进行边界框回归,总训练损失定义为:

来自检测或接地数据,来自图文数据时设置为0。 考虑到图像文本数据集具有噪声框,我们仅计算具有准确边界框的样本的回归损失。

使用图像文本数据进行伪标记。
我们提出了一种自动标记方法来生成区域文本对,而不是直接使用图像文本对进行预训练。 具体来说,标记方法包含三个步骤:(1)提取名词短语:我们首先利用n-gram算法从文本中提取名词短语; (2)伪标签:我们采用预训练的开放词汇检测器,例如.,GLIP [24],为每个图像的给定名词短语生成伪框,从而提供粗略的区域文本对。 (3)过滤:我们使用预训练的CLIP[39]来评估图像文本对和区域文本对的相关性,并过滤低相关性伪注释和图像。 我们通过结合非极大值抑制(NMS)等方法进一步过滤冗余边界框。 建议读者参阅附录了解详细方法。 通过上述方法,我们使用 821k 伪注释对来自 CC3M [47] 的 246k 图像进行采样和标记。

4实验
在本节中,我们通过在大规模数据集上对其进行预训练并在 LVIS 基准和 COCO 基准上以零样本方式评估 YOLO-World 来证明所提出的 YOLO-World 的有效性(第 4.2)。 我们还评估了 YOLO-World 在 COCO、LVIS 上用于目标检测的微调性能。

4.1实现细节
YOLO-World是基于MMYOLO工具箱[3]和MMDetection工具箱[2]开发的。 继[20]之后,我们针对不同的延迟要求提供了三种YOLO-World变体,例如.、小(S)、中(M) )和大(L)。 我们采用带有预训练权重的开源 CLIP [39] 文本编码器来对输入文本进行编码。 除非另有说明,我们在一个 NVIDIA V100 GPU 上测量所有模型的推理速度,无需额外的加速机制,例如.、FP16 或 TensorRT。

4.2预训练
实验装置。
在预训练阶段,我们采用 AdamW 优化器[34],初始学习率为 0.002,权重衰减为 0.05。 YOLO-World 在 32 个 NVIDIA V100 GPU 上预训练了 100 个 epoch,总批量大小为 512。 在预训练过程中,我们遵循之前的工作[20],采用颜色增强、随机仿射、随机翻转和4张图像马赛克进行数据增强。 文本编码器在预训练期间被冻结。

预训练数据。
对于预训练YOLO-World,我们主要采用检测或接地数据集,包括Objects365 (V1) [46]、GQA [17]、Flickr30k [38] ,如选项卡中指定。 1. 在[24]之后,我们从GoldG [21](GQA和Flickr30k)中的COCO数据集中排除图像。 用于预训练的检测数据集的注释包含边界框和类别或名词短语。 此外,我们还用图像文本对扩展预训练数据,即.、CC3M

[47],我们通过第 2 节中讨论的伪标记方法标记了 246k 图像。 3.4。

Dataset Type Vocab. Images Anno.
Objects365V1 [46] Detection 365 609k 9,621k
GQA [17] Grounding - 621k 3,681k
Flickr [38] Grounding - 149k 641k
CC3M

[47] Image-Text - 246k 821k
表1:预训练数据。 用于预训练 YOLO-World 的数据集的规格。
零样本评估。
预训练后,我们直接在 LVIS 数据集 [14] 上以零样本的方式评估所提出的 YOLO-World。 LVIS数据集包含1203个对象类别,远多于预训练检测数据集的类别,可以衡量大词汇量检测的性能。 继之前的工作[21,24,56,57]之后,我们主要对LVIS minival[21]进行评估并报告Fixed AP [4] 进行比较。 最大预测数设置为 1000。

LVIS 物体检测的主要结果。
在选项卡中。 2,我们将所提出的 YOLO-World 与最近最先进的方法 [21, 59, 56, 57, 30] 在 LVIS 基准上以零进行比较样本方式。 考虑到计算负担和模型参数,我们主要与基于较轻骨干网的方法进行比较,例如例如.、Swin-T [32]。 值得注意的是,YOLO-World 在零样本性能和推理速度方面优于以前最先进的方法。 与包含更多数据的 GLIP、GLIPv2 和 Grounding DINO 相比,例如.、Cap4M (CC3M+SBU [37])、YOLO -即使模型参数较少,在 O365 和 GolG 上进行预训练的 World 也能获得更好的性能。 与 DetCLIP 相比,YOLO-World 实现了相当的性能(35.4 v.s. 34.4) 同时获得
20
×
推理速度的提高。 实验结果还表明,小模型,例如例如.,具有13M参数的YOLO-World-S,可以用于视觉语言预训练并获得强大的开放性词汇能力。

Method Backbone Params Pre-trained Data FPS AP AP
𝑟
AP
𝑐
AP
𝑓
MDETR [21] R-101 [15] 169M GoldG - 24.2 20.9 24.3 24.2
GLIP-T [24] Swin-T [32] 232M O365,GoldG 0.12 24.9 17.7 19.5 31.0
GLIP-T [24] Swin-T [32] 232M O365,GoldG,Cap4M 0.12 26.0 20.8 21.4 31.0
GLIPv2-T [59] Swin-T [32] 232M O365,GoldG 0.12 26.9 - - -
GLIPv2-T [59] Swin-T [32] 232M O365,GoldG,Cap4M 0.12 29.0 - - -
Grounding DINO-T [30] Swin-T [32] 172M O365,GoldG 1.5 25.6 14.4 19.6 32.2
Grounding DINO-T [30] Swin-T [32] 172M O365,GoldG,Cap4M 1.5 27.4 18.1 23.3 32.7
DetCLIP-T [56] Swin-T [32] 155M O365,GoldG 2.3 34.4 26.9 33.9 36.3
YOLO-World-S YOLOv8-S 13M (77M) O365,GoldG 74.1 (19.9) 26.2 19.1 23.6 29.8
YOLO-World-M YOLOv8-M 29M (92M) O365,GoldG 58.1 (18.5) 31.0 23.8 29.2 33.9
YOLO-World-L YOLOv8-L 48M (110M) O365,GoldG 52.0 (17.6) 35.0 27.1 32.8 38.3
YOLO-World-L YOLOv8-L 48M (110M) O365,GoldG,CC3M

52.0 (17.6) 35.4 27.6 34.1 38.0
表2:LVIS 零样本评估。 我们以零样本的方式在 LVIS minival [21] 上评估 YOLO-World。 我们报告固定 AP[4],以便与最新方法进行公平比较。

表示我们设置中的伪标记 CC3M,其中包含 246k 样本。 FPS 在一个不带 TensorRT 的 NVIDIA V100 GPU 上进行评估。 YOLO-World 的参数和 FPS 针对重新参数化版本(无括号)和原始版本(有括号)进行评估。
4.3消融实验
我们提供了大量的消融研究,主要从两个方面对 YOLO-World 进行分析,即.,即前期训练和架构。 除非特别说明,我们主要基于 YOLO-World-L 进行消融实验,并在 LVIS minival 上进行零样本评估预训练 Objects365。

预训练数据。
在选项卡中。 3,我们使用不同的数据评估预训练YOLO-World的性能。 与在 Objects365 上训练的基线相比,添加 GQA 可以显着提高性能,在 LVIS 上获得 8.4 的 AP 增益。 这一改进可归因于 GQA 数据集提供的更丰富的文本信息,这可以增强模型识别大词汇量对象的能力。 添加部分 CC3M 样本(完整数据集的 8%)可以进一步带来 0.5 AP 增益,对稀有物体带来 1.3 AP 增益。 标签。 3表明,添加更多数据可以有效提高大词汇量场景的检测能力。 此外,随着数据量的增加,训练性能不断提高,凸显了利用更大、更多样化的数据集进行训练的好处。

Pre-trained Data AP AP
𝑟
AP
𝑐
AP
𝑓
O365 23.5 16.2 21.1 27.0
O365,GQA 31.9 22.5 29.9 35.4
O365,GoldG 32.5 22.3 30.6 36.0
O365,GoldG,CC3M

33.0 23.6 32.0 35.5
表3:预训练数据的消融。 我们评估了使用不同数据量预训练 YOLO-World 在 LVIS 上的零样本性能。
RepVL-PAN 上的消融。
标签。 4 展示了 YOLO-World 提出的 RepVL-PAN(包括文本引导的 CSPLayers 和图像池注意)对于零样本 LVIS 检测的有效性。 具体来说,我们采用两种设置,即.,(1)在O365上预训练和(2)在O365和GQA上预训练。 与仅包含类别注释的 O365 相比,GQA 包含丰富的文本,尤其是名词短语的形式。 如表所示。 4,所提出的RepVL-PAN在LVIS上将基线(YOLOv8-PAN [20])提高了1.1 AP,并且在稀有类别方面的改进非常显着( LVIS 的 AP
𝑟
),难以检测和识别。 此外,当 YOLO-World 使用 GQA 数据集进行预训练时,改进变得更加显着,并且实验表明所提出的 RepVL-PAN 在处理丰富的文本信息时效果更好。
表4:可重新参数化的视觉语言路径聚合网络的消融。 我们评估了所提出的视觉语言路径聚合网络在 LVIS 上的零样本性能。 T

I 和 I

T 分别表示文本引导的 CSPLayers 和图像池注意力。
文本编码器。
在选项卡中。 5,我们比较了使用不同文本编码器的性能,即.、BERT-base [5]和CLIP-base(ViT-base)[39]。 我们在预训练期间利用两个设置,即。,冻结和微调,微调文本编码器的学习率为
0.01
×
基本学习率的因素。 作为选项卡。 5 显示,CLIP 文本编码器获得了比 BERT 更好的结果(LVIS 中稀有类别的 AP+10.1 AP),它是用图像文本对进行预训练的,并且具有更好的以视觉为中心的嵌入能力。 在预训练期间微调 BERT 会带来显着的改进(+3.7 AP),而微调 CLIP 会导致性能严重下降。 我们将下降归因于 O365 上的微调可能会降低预训练 CLIP 的泛化能力,该 CLIP 仅包含 365 个类别,并且缺乏丰富的文本信息。

Text Encoder Frozen? AP AP
𝑟
AP
𝑐
AP
𝑓
BERT-base Frozen 14.6 3.4 10.7 20.0
BERT-base Fine-tune 18.3 6.6 14.6 23.6
CLIP-base Frozen 22.4 14.5 20.1 26.0
CLIP-base Fine-tune 19.3 8.6 15.7 24.8
表5:YOLO-World 中的文本编码器。 我们通过零样本 LVIS 评估消除了 YOLO-World 中的不同文本编码器。
4.4微调YOLO-World
在本节中,我们进一步在 COCO 数据集和 LVIS 数据集上使用 YOLO-World 进行近集目标检测,以证明预训练的有效性。

实验装置。
我们使用预训练的权重来初始化 YOLO-World 进行微调。 所有模型均使用 AdamW 优化器微调 80 个 epoch,初始学习率设置为 0.0002。 此外,我们将 CLIP 文本编码器的学习因子设置为 0.01。 对于LVIS数据集,我们遵循之前的工作[13,8,63]和LVIS-base上的YOLO-World(常见和频繁),并在LVIS-novel(罕见)上对其进行评估。

COCO 物体检测。
我们将预训练的 YOLO-World 与之前的 YOLO 检测器 [23, 52, 20] 进行比较。 6. 为了在 COCO 数据集上微调 YOLO-World,考虑到 COCO 数据集的词汇量很小,我们删除了所提出的 RepVL-PAN 以进一步加速。 在选项卡中。 6,很明显,我们的方法可以在COCO数据集上实现不错的零样本性能,这表明YOLO-World具有很强的泛化能力。 此外,YOLO-World 在 COCO train2017 上进行微调后,与之前从头开始训练的方法相比表现出了更高的性能。

Method Pre-train AP AP
50
AP
75
FPS
Training from scratch.
YOLOv6-S [23] ✗ 43.7 60.8 47.0 442
YOLOv6-M [23] ✗ 48.4 65.7 52.7 277
YOLOv6-L [23] ✗ 50.7 68.1 54.8 166
YOLOv7-T [52] ✗ 37.5 55.8 40.2 404
YOLOv7-L [52] ✗ 50.9 69.3 55.3 182
YOLOv7-X [52] ✗ 52.6 70.6 57.3 131
YOLOv8-S [20] ✗ 44.4 61.2 48.1 386
YOLOv8-M [20] ✗ 50.5 67.3 55.0 238
YOLOv8-L [20] ✗ 52.9 69.9 57.7 159
Zero-shot transfer.
YOLO-World-S O+G 37.6 52.3 40.7 -
YOLO-World-M O+G 42.8 58.3 46.4 -
YOLO-World-L O+G 44.4 59.8 48.3 -
YOLO-World-L O+G+C 45.1 60.7 48.9 -
Fine-tuned w/ RepVL-PAN.
YOLO-World-S O+G 45.9 62.3 50.1 -
YOLO-World-M O+G 51.2 68.1 55.9 -
YOLO-World-L O+G+C 53.3 70.1 58.2 -
Fine-tuned w/o RepVL-PAN.
YOLO-World-S O+G 45.7 62.3 49.9 373
YOLO-World-M O+G 50.7 67.2 55.1 231
YOLO-World-L O+G+C 53.3 70.3 58.1 156
表6:与 YOLO 在 COCO 目标检测上的比较。 我们在 COCO train2017 上测试 YOLO-World,并在 COCO val2017 上进行评估。 YOLOv7 [52]和YOLOv8 [20]的结果是从MMYOLO [3]获得的。 ‘O’、‘G’和‘C’分别表示使用 Objects365、GoldG 和 CC3M

。 FPS 在一台带有 TensorRT 的 NVIDIA V100 上测量。
LVIS 物体检测。
在选项卡中。 7,我们评估了YOLO-World在标准LVIS数据集上的微调性能。 首先,与在完整 LVIS 数据集上训练的 oracle YOLOv8s [20] 相比,YOLO-World 取得了显着的改进,特别是对于较大的模型,例如。,YOLO-World-L 的性能优于 YOLOv8-L 7.2 AP 和 10.2 AP
𝑟
。 这些改进可以证明所提出的大词汇量检测预训练策略的有效性。 此外,YOLO-World作为一种高效的单级检测器,在整体性能上优于先前最先进的两级方法[13,63,22,8,53]额外的设计,例如.、可学习的提示[8]或基于区域的alginments [13]。

Method AP AP
𝑟
AP
𝑐
AP
𝑓
ViLD [13] 27.8 16.7 26.5 34.2
RegionCLIP [62] 28.2 17.1 - -
Detic [63] 26.8 17.8 - -
FVLM [22] 24.2 18.6 - -
DetPro [8] 28.4 20.8 27.8 32.4
BARON [53] 29.5 23.2 29.3 32.5
YOLOv8-S 19.4 7.4 17.4 27.0
YOLOv8-M 23.1 8.4 21.3 31.5
YOLOv8-L 26.9 10.2 25.4 35.8
YOLO-World-S 23.9 12.8 20.4 32.7
YOLO-World-M 28.8 15.9 24.6 39.0
YOLO-World-L 34.1 20.4 31.1 43.5
表7:与 LVIS 上的开放词汇检测器的比较。 我们在 LVIS 基础上训练 YOLO-World(包括常见的和频繁的)报告 bbox AP。 YOLO-v8 在完整的 LVIS 数据集(包括基础数据集和新颖数据集)以及类平衡采样上进行训练。
4.5开放词汇实例分割
在本节中,我们进一步使用 YOLO-World 在开放词汇设置下对对象进行分割,这可以称为开放词汇实例分割(OVIS)。 之前的方法[18]已经通过对新对象的伪标记来探索OVIS。 不同的是,考虑到YOLO-World具有强大的迁移和泛化能力,我们直接在带有掩码注释的数据子集上对YOLO-World进行干预,并评估大词汇量设置下的分割性能。 具体来说,我们在两种设置下对开放词汇实例分割进行基准测试:

• (1)COCO to LVIS设置,我们在COCO数据集(包含80个类别)上对YOLO-World进行了mask标注,模型需要从80个类别转移到1203个类别(
80

1203
);
• (2)LVIS-base to LVIS设置,我们在LVIS-base(包括866个类别,common&frequent)上对YOLO-World进行了初始化,带有mask注释,在该模型下模型需要从866个类别转移至 1203 个类别 (
866

1203
)。
我们在标准 LVIS val2017 上评估了具有 1203 个类别的微调模型,其中 337 个罕见类别是看不见的,可用于衡量开放词汇表的性能。

结果。
标签。 8展示了扩展YOLO-World进行开放词汇实例分割的实验结果。 具体来说,我们采用两种微调策略:(1)仅微调分割头和(2)微调所有模块。 在策略(1)下,经过微调的YOLO-World仍然保留了从预训练阶段获得的零样本能力,使其能够泛化到未见过的类别,而无需额外的微调。 策略(2)使YOLO-World能够更好地拟合LVIS数据集,但可能会导致零样本能力下降。

标签。 8展示了不同设置(COCO或LVIS-base)和不同策略(微调seg.1)下微调YOLO-World的比较。 头或微调全部)。 首先,与基于COCO的微调相比,基于LVIS的微调获得了更好的性能。 然而,AP 和 AP
𝑟
之间的比率 (AP
𝑟
/AP) 几乎没有变化,例如。,比率YOLO-World 在 COCO 和 LVIS-base 上的占比分别为 76.5% 和 74.3%。 考虑到检测器被冻结,我们将性能差距归因于 LVIS 数据集提供了更详细、更密集的分割注释,这有利于学习分割头。 在对所有模块进行微调时,YOLO-World 在 LVIS 上获得了显着的改进,例如。,YOLO-World-L 实现了 9.6 AP 增益。 然而,微调可能会降低开放词汇性能,并导致 YOLO-World-L 的 AP
𝑟
下降 0.6。
YOLO-World-M COCO Seg Head 12.3 9.1 10.9 14.6 22.3 16.2
YOLO-World-L COCO Seg Head 16.2 12.4 15.0 19.2 25.3 18.0
YOLO-World-M LVIS-base Seg Head 16.7 12.6 14.6 20.8 22.3 16.2
YOLO-World-L LVIS-base Seg Head 19.1 14.2 17.2 23.5 25.3 18.0
YOLO-World-M LVIS-base All 25.9 13.4 24.9 32.6 32.6 15.8
YOLO-World-L LVIS-base All 28.7 15.0 28.3 35.2 36.2 17.4
表8:开放词汇实例分割。 我们在两种设置下评估 YOLO-World 的开放词汇实例分割。 我们对YOLO-World的分割头或所有模块进行了损坏,并报告Mask AP进行比较。 AP
𝑏
表示框AP。
4.6可视化
我们提供了三种设置下预训练的 YOLO-World-L 的可视化结果:(a)我们使用 LVIS 类别进行零样本推理; (b) 我们输入带有属性的细粒度类别的自定义提示; © 参考检测。 可视化还表明 YOLO-World 对于开放词汇场景具有很强的泛化能力以及引用能力。

LVIS 上的零样本推断。
图5展示了基于LVIS类别的可视化结果,这些类别是由预训练的YOLO-World-L以零样本的方式生成的。 经过预训练的 YOLO-World 具有强大的零样本传输能力,能够检测图像中尽可能多的物体。

Refer to caption
图5:LVIS 零样本推断的可视化结果。 我们采用预训练的YOLO-World-L,并在COCO val2017上使用LVIS词汇表(包含1203个类别)进行推理。
用用户的词汇进行推理。
在图6中,我们通过定义的类别探索了YOLO-World的检测能力。 可视化结果表明,预训练的 YOLO-World-L 还表现出以下能力:(1)细粒度检测(i.e.,检测一个物体的各个部分)和(2)细粒度分类(即.,区分对象的不同子类别。)。

Refer to caption
图6:用户词汇量的可视化结果。 我们为每个输入图像定义自定义词汇表,YOLO-World 可以根据词汇表检测准确的区域。 图片来自 COCO val2017。
参考对象检测。
在图7中,我们利用一些描述性(区分性)名词短语作为输入,例如。,站立的人,来探索模型是否可以找到图像中与我们给定输入匹配的区域或对象。 可视化结果显示了短语及其相应的边界框,表明预训练的 YOLO-World 具有引用或接地能力。 这种能力可以归因于所提出的大规模训练数据的预训练策略。

Refer to caption
图7:参考对象检测的可视化结果。 我们探索了预训练的 YOLO-World 检测具有描述性名词短语的对象的能力。 图片来自 COCO val2017。
5结论
我们推出了 YOLO-World,这是一种尖端的实时开放词汇检测器,旨在提高现实应用中的效率和开放词汇能力。 在本文中,我们将流行的 YOLO 重塑为用于开放词汇预训练和检测的视觉语言 YOLO 架构,并提出了 RepVL-PAN,它将视觉和语言信息与网络连接起来,并且可以重新参数化以实现高效部署。 我们进一步提出了有效的检测、接地和图文数据预训练方案,赋予 YOLO-World 强大的开放词汇检测能力。 实验可以证明YOLO-World在速度和开放词汇性能方面的优越性,并表明视觉语言预训练在小模型上的有效性,这对未来的研究具有重要意义。 我们希望 YOLO-World 能够成为解决现实世界开放词汇检测的新基准。
附录 A其他详细信息
A.1RepVL-PAN 的重新参数化
在离线词汇的推理过程中,我们采用 RepVL-PAN 的重新参数化,以实现更快的推理速度和部署。 首先,我们通过文本编码器预先计算文本嵌入
𝑊


𝐶
×
𝐷

重新参数化 T-CSPLayer。
对于 RepVL-PAN 中的每个 T-CSPLayer,我们可以通过将文本嵌入
𝑊


𝐶
×
𝐷
×
1
×
1
重塑为
1
×
1
卷积层的权重来重新参数化并简化添加文本指导的过程(或线性层),如下:

𝑋

𝑋

𝚂𝚒𝚐𝚖𝚘𝚒𝚍

(
𝚖𝚊𝚡

(
𝙲𝚘𝚗𝚟

(
𝑋
,
𝑊
)
,
dim=1
)
)
,
(4)
其中
𝑋
×


𝐵
×
𝐷
×
𝐻
×
𝑊

𝑋



𝐵
×
𝐷
×
𝐻
×
𝑊
是输入和输出图像特征。

是与 reshape 或 transpose 的矩阵乘法。

重新参数化 I-Pooling Attention。
I-Pooling Attention 可以通过以下方式重新参数化或简化:

𝑋
~

𝚌𝚊𝚝

(
𝙼𝙿

(
𝑋
3
,
3
)
,
𝙼𝙿

(
𝑋
4
,
3
)
,
𝙼𝙿

(
𝑋
5
,
3
)
)
,
(5)
其中 cat 是浓度,MP(

, 3) 表示
3
×
3
输出特征的最大池化。
{
𝑋
3
,
𝑋
4
,
𝑋
5
}
是RepVL-PAN中的多尺度特征。
𝑋
~
被展平并具有
𝐵
×
𝐷
×
27
的形状。 然后我们可以通过以下方式更新文本嵌入:

𝑊

𝑊
+
𝚂𝚘𝚏𝚝𝚖𝚊𝚡
(
𝑊

𝑋
~
)
,
dim=-1
)

𝑊
,
(6)
A.2微调细节。
当将 YOLO-World 转移到 COCO [26] 对象检测时,我们删除了 RepVL-PAN 中的所有 T-CSPLayers 和 Image-Pooling Attention,该对象仅包含 80 个类别,对视觉语言的依赖性相对较低相互作用。 在微调过程中,我们使用预训练的权重初始化 YOLO-World。 微调的学习率设置为0.0002,权重衰减设置为0.05。 微调后,我们预先计算给定 COCO 类别的类文本嵌入,并将嵌入存储到分类层的权重中。

附录B大规模图文数据自动标注
在本节中,我们添加使用大规模图像文本数据标记区域文本对的详细过程,例如。,CC3M [47]。 整体标注流程如图8所示,主要由三个过程组成,即.,(1)提取宾语名词,( 2)伪标记,以及(3)过滤。 正如秒中所讨论的。 3.4,我们采用简单的n-gram算法从标题中提取名词。

Refer to caption
图8:图像文本数据的标签管道 我们首先利用简单的 n 元语法从标题中提取对象名词。 我们采用预先训练的开放词汇检测器来生成给定对象名词的伪框,从而形成粗略的区域文本建议。 然后,我们使用预先训练的 CLIP 对框进行重新评分或重新标记以及过滤。
区域文本提案。
从第一步获得对象名词
𝑇

{
𝑡
𝑘
}
𝐾
集后,我们利用预先训练的开放词汇检测器,即。,GLIP-L [24],生成伪框
{
𝐵
𝑖
}
以及置信度分数
{
𝑐
𝑖
}

{
𝐵
𝑖
,
𝑡
𝑖
,
𝑐
𝑖
}
𝑖

1
𝑁

GLIP-Labeler

(
𝐼
,
𝑇
)
,
(7)
其中
{
𝐵
𝑖
,
𝑡
𝑖
,
𝑐
𝑖
}
𝑖

1
𝑁
是粗略的区域文本提案。

基于 CLIP 的重新评分和过滤。
考虑到区域文本提案包含大量噪声,我们提出了一个带有预训练 CLIP [39] 的恢复和过滤管道。 给定输入图像
𝐼
、标题
𝑇
和粗略区域文本提案
{
𝐵
𝑖
,
𝑡
𝑖
,
𝑐
𝑖
}
𝑖

1
𝑁
,具体流程如下:

• (1)计算图像-文本得分:我们将图像
𝐼
及其标题
𝑇
转发到CLIP中并获得图像-文本相似度得分
𝑠
𝑖

𝑚

𝑔

• (2)计算区域文本得分:我们根据区域框
{
𝐵
𝑖
}
从输入图像中裁剪区域图像。 然后,我们将裁剪后的图像及其文本
{
𝑡
𝑖
}
转发到 CLIP 中,并获得区域文本相似度
𝑆
𝑟

{
𝑠
𝑖
𝑟
}
𝑖

1
𝑁

• (3)[可选]重新标记:我们可以将每个裁剪后的图像与所有名词一起转发,并分配相似度最大的名词,这可以帮助纠正GLIP错误标记的文本。
• (4)重新评分:我们采用区域文本相似度
𝑆
𝑟
来重新评分置信度
𝑐
𝑖
~

𝑐
𝑖
*
𝑠
𝑖
𝑟

• (5)区域级过滤:我们首先根据文本将区域文本提案分为不同的组,然后执行非极大值抑制(NMS)来过滤重复的预测(NMS阈值设置为0.5)。 然后我们过滤掉置信度分数较低的提案(阈值设置为 0.3)。
• (6)图像级过滤:我们通过对保留的区域文本分数进行平均来计算图像级区域文本分数
𝑠
𝑟

𝑒

𝑔

𝑖

𝑜

𝑛
。 然后我们通过
𝑠

𝑠
𝑖

𝑚

𝑔
*
𝑠
𝑟

𝑒

𝑔

𝑖

𝑜

𝑛
获得图像级置信度得分,并保留得分大于 0.3 的图像。
上述阈值是根据部分标记结果凭经验设定的,整个流程是自动的,无需人工验证。 最后,将标记的样本用于预训练YOLO-World。 我们将提供CC3M的伪注释以供进一步研究。

附录 C大规模预训练 YOLO-World
在预训练小模型时,例如.、YOLO-World-S,我们自然会遇到的一个问题是:小模型有多少容量,训练多少数据或者小模型需要什么样的数据? 为了回答这个问题,我们利用不同数量的伪标记区域文本对来预训练 YOLO-World。 如表所示。 9,添加更多的图文样本可以提高YOLO-World-S的零样本性能。标签。 9表示:(1)添加图文数据可以提高YOLO-World-S的整体零样本性能; (2)使用过量的伪标签数据可能会对小模型(YOLO-World-S)产生一些负面影响,尽管它可以改善稀有类别(AP
𝑟
)。 然而,对小型模型使用细粒度标注(GoldG)可以提供显着的改进,这表明大规模高质量标注数据可以显着增强小型模型的能力。 和选项卡。 正文中的3表明,精细标注数据和伪标注数据相结合的预训练可以取得更好的效果。 我们将在未来的工作中探索更多有关预训练小模型或 YOLO 检测器的数据。

Method Pre-trained Data Samples AP AP
𝑟
AP
𝑐
AP
𝑓
YOLO-World-S O365 0.61M 16.3 9.2 14.1 20.1
YOLO-World-S O365+GoldG 1.38M 24.2 16.4 21.7 27.8
YOLO-World-S O365+CC3M-245k 0.85M 16.5 10.8 14.8 19.1
YOLO-World-S O365+CC3M-520k 1.13M 19.2 10.7 17.4 22.4
YOLO-World-S O365+CC3M-750k 1.36M 18.2 11.2 16.0 21.1
表9:LVIS 零样本评估。 我们使用不同数量的图像文本数据来评估预训练 YOLO-World-S 的性能。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值