YOLO-World实时开集检测论文阅读

论文:《YOLO-World: Real-Time Open-Vocabulary Object Detection》
代码:https://github.com/AILab-CVC/YOLO-World

1.Abstract

我们介绍了YOLO World,这是一种创新的方法,通过在大规模数据集上进行视觉语言建模和预训练,增强YOLO的开放词汇检测能力。具体而言,我们提出了一种新的可重新参数化的视觉-语言路径聚合网络(RepVL-PAN)区域文本对比损失,以促进视觉和语言信息之间的交互。我们的方法可以以zero-shot方式高效检测各种物体。
在这里插入图片描述

YOLO World遵循标准YOLO架构[20],并利用预先训练的CLIP[39]文本编码器对输入文本进行编码。我们进一步提出了可重新参数化的视觉语言路径聚合网络(RepVL-PAN)来连接文本特征和图像特征,以获得更好的视觉语义表示。在推理过程中,可以移除文本编码器,并将文本嵌入重新参数化为RepVL PAN的权重,以实现高效部署。对于实际应用,一旦我们训练了检测器,即YOLO World,我们就可以对提示或类别进行预编码,以构建离线词汇表,然后将其无缝集成到检测器中。

在这里插入图片描述

2.Related Work

传统的目标检测方法可以简单地分为三类,即基于区域region-based的方法、基于像素pixel-based的方法和基于查询query-based的方法。

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(一组名词)作为输入和输出预测框{Bõk}和相应的对象嵌入{ek}(ek∈RD)。

在这里插入图片描述

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

YOLO Detector。YOLO World主要基于YOLOv8[20]开发,其中包含作为图像编码器的Darknet backbone[20,43]、用于多尺度特征金字塔的路径聚合网络(PAN)以及用于边界框回归和object embeddings的head。

Text-Enocder。给定文本T,我们采用CLIP[39]预先训练的Transformer文本编码器来提取相应的文本嵌入W=TextEncoder(T)∈RC×D,其中C是名词的数量,D是embeding维数。与纯文本语言编码器相比,CLIP文本编码器提供了更好的视觉语义功能,可以将视觉对象与文本连接起来[5]。当输入的文本是描述或引用表达式时,我们采用简单的n-gram算法提取名词短语,然后将其输入到文本编码器中。

3.3. Re-parameterizable Vision-Language PAN

Text-guided CSPLayer. 如图4所示,跨阶段部分层(CSPLayer)是在自上而下或自下而上的融合之后使用的。我们通过将文本引导合并到多尺度图像特征中来扩展[20]的CSPLayer(也称为C2f),以形成文本引导的CSPLyer。具体地说,给定文本嵌入W和图像特征Xl∈RH×W×D(l∈{3,4,5}),我们在最后一个bottleneck之后采用max-sigmoid attention将文本特征聚合为图像特征:在这里插入图片描述

Image-Pooling Attention。为了增强具有图像感知信息的文本嵌入,我们通过提出图像池注意来聚合图像特征以更新文本嵌入。我们不是直接在图像特征上使用交叉注意力,而是利用多尺度特征上的最大池化来获得3×3个区域,从而产生总共27个补丁标记X∈R27×D。然后通过以下方式更新文本嵌入:W ′ = W + MultiHead-Attention(W, X ̃, X ̃)


Pre-training data。对于预训练YOLO-World,我们主要采用检测或grounding数据集,包括Ob-Projects365(V1)[46]、GQA[17]、Flickr30k[38],如表1所示。根据[24],我们从GoldG[21](GQA和Flickr30k)中的COCO数据集中排除图像。用于预训练的检测数据集的注释包含边界框和类别或名词短语。此外,我们还用图像-文本对扩展了预训练数据,即CC3M†[47],我们已经通过第3.4节中讨论的伪标记方法标记了246k个图像。

Grounding数据集通常用于计算机视觉和自然语言处理的联合任务,特别是Visual Grounding任务。这类数据集包含图像以及与之相关的物体描述,目标是定位描述中提及的物体。以下是Grounding数据集格式的详细介绍,并通过举例说明:一、数据集格式Grounding数据集一般由以下几个部分组成:图像(Images): 数据集包含一系列图像,这些图像中包含了需要被定位的物体。
描述(Descriptions): 针对每张图像,数据集提供了相应的描述,这些描述可能是一个句子、短语或者是一个物体名称,用于指明需要定位的物体。
标注框(Bounding Boxes): 对于描述中提及的每个物体,数据集都提供了一个或多个标注框,这些标注框用坐标表示物体在图像中的位置。
类别标签(Category Labels) (可选): 某些数据集还可能包含物体的类别标签,以便于分类和识别。
二、举例说明以Flickr30k Entities数据集为例,这是一个常用的Visual Grounding数据集:图像: 数据集包含31783张图像。
描述: 每张图像对应5个不同的caption(描述),总共有158915个caption。
标注框: 数据集提供了244035个phrase-box标注,即针对特定短语的标注框。例如,如果一个caption是“A man in a red shirt is riding a bike”,那么“man”、“red shirt”和“bike”都可能有对应的标注框。
类别标签: 数据集中的phrase还会被细分为people, clothing, body parts, animals, vehicles, instruments, scene, other等八个不同的类别。
在RefCOCO、RefCOCO+、RefCOCOg等数据集中,格式类似,但可能包含更多的交互性和复杂性,例如在RefCOCO+中,查询不包含绝对的方位词,要求模型更智能地理解上下文来定位物体。总的来说,Grounding数据集的格式是为了训练模型能够准确理解语言描述,并在图像中定位相应物体的能力。通过大量的图像、描述和标注框的组合,模型可以学习到如何从复杂的视觉和语言信息中提取关键特征,实现准确的物体定位。

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/42708.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3+antd 实现点击按钮弹出对话框

格式1&#xff1a;确认对话框 按钮&#xff1a; 点击按钮之后&#xff1a; 完整代码&#xff1a; <template><div><a-button click"showConfirm">Confirm</a-button></div> </template> <script setup> import {Mod…

阶段三:项目开发---大数据开发运行环境搭建:任务4:安装配置Spark集群

任务描述 知识点&#xff1a;安装配置Spark 重 点&#xff1a; 安装配置Spark 难 点&#xff1a;无 内 容&#xff1a; Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop …

Bean的管理

1.主动获取Bean spring项目在需要时&#xff0c;会自动从IOC容器中获取需要的Bean 我们也可以自己主动的得到Bean对象 &#xff08;1&#xff09;获取bean对象&#xff0c;首先获取SpringIOC对象 private ApplicationContext applicationContext //IOC容器对象 (2 )方法…

昇思25天学习打卡营第13天 | ShuffleNet图像分类

ShuffleNet网络介绍 ShuffleNetV1是旷视科技提出的一种计算高效的CNN模型&#xff0c;和MobileNet, SqueezeNet等一样主要应用在移动端&#xff0c;所以模型的设计目标就是利用有限的计算资源来达到最好的模型精度。ShuffleNetV1的设计核心是引入了两种操作&#xff1a;Pointw…

ExcelVBA运用Excel的【条件格式】(二)

ExcelVBA运用Excel的【条件格式】&#xff08;二&#xff09;前面知识点回顾1. 访问 FormatConditions 集合 Range.FormatConditions2. 添加条件格式 FormatConditions.Add 方法语法表达式。添加 (类型、 运算符、 Expression1、 Expression2)3. 修改或删除条件格式4. …

密码技术中分组模式解析

目录 1. 概述 2. ECB模式 2.1 概述 2.2 ECB模式的加密 2.3 ECB模式的解密 2.4 优点 2.5 缺点 3. CBC模式【推荐】 3.1 概述 3.2 CBC模式的加密 3.3 CBC模式的解密 3.4 优点 3.5 缺点 4. CFB模式 4.1 概述 4.2 CFB模式的加密 4.3 CFB模式的解密 4.4 优点 4.…

智慧地产视觉监控系统开源了,系统采用多种优化技术,提高系统的响应速度和资源利用率

智慧地产视觉监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒&#xff0c;省去繁琐重复的适配流程&#xff0c;实现芯片、算法、应用的全流程组合&#xff0c;从而大大减少企业级应用约95%的开发成本。用户只需在界面上…

Python打开Excel文档并读取数据

Python 版本 目前 Python 3 版本为主流版本&#xff0c;这里测试的版本是&#xff1a;Python 3.10.5。 常用库说明 Python 操作 Excel 的常用库有&#xff1a;xlrd、xlwt、xlutils、openpyxl、pandas。这里主要说明下 Excel 文档 .xls 格式和 .xlsx 格式的文档打开和读取。 …

Drools开源业务规则引擎(二)- Drools规则语言(DRL)

文章目录 1.DRL文件的组成&#xff1a;2.package3.import4.function5.query6.declare7.global8.rule8.1.规则属性8.2.LHS8.2.1.语法格式8.2.2.运算符优先级8.2.3.特殊的运算符1.matches, not matches2.contains, not contains3.memberOf, not memberOf4.in, notin5.soundslike6…

Powershell 获取电脑保存的所有wifi密码

一. 知识点 netsh wlan show profiles 用于显示计算机上已保存的无线网络配置文件 Measure-Object 用于统计数量 [PSCustomObject]{ } 用于创建Powershell对象 [math]::Round 四舍五入 Write-Progress 显示进度条 二. 代码 只能获取中文Windows操作系统的wifi密码如果想获取…

护网在即,助力安服仔漏洞扫描~

整合了个漏扫系统&#xff0c;安服仔必备~ 使用场景 网前布防&#xff0c;漏洞扫描&#xff0c;资产梳理 使用方法&#xff1a; 启动虚拟机后运行命令&#xff1a; ./StartSystemScript.sh 输入密码attack 启动完成后浏览器打开网站&#xff1a; http://IP:5000 相关账户…

02-android studio实现下拉列表+单选框+年月日功能

一、下拉列表功能 1.效果图 2.实现过程 1&#xff09;添加组件 <LinearLayoutandroid:layout_width"match_parent"android:layout_height"wrap_content"android:layout_marginLeft"20dp"android:layout_marginRight"20dp"android…

运维系列.Nginx中使用HTTP压缩功能

运维专题 Nginx中使用HTTP压缩功能 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite&#xff1a;http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28550…

【刷题汇总--字符串中找出连续最长的数字串、岛屿数量、拼三角】

C日常刷题积累 今日刷题汇总 - day0071、字符串中找出连续最长的数字串1.1、题目1.2、思路1.3、程序实现 -- 比较1.4、程序实现 -- 双指针 2、岛屿数量2.1、题目2.2、思路2.3、程序实现 - dfs 3、拼三角3.1、题目3.2、思路3.3、程序实现 -- 蛮力法3.4、程序实现 -- 巧解(单调性…

pwm 呼吸灯(如果灯一直亮或者一直灭)

&#xff08;这个文章收藏在我的csdn keil文件夹下面&#xff09; 如果这样设置预分频和计数周期&#xff0c;那么算出来的pwm频率如下 人眼看起来就只能是一直亮或者灭&#xff0c;因为pwm的频率太高了&#xff0c;但是必须是频率够高&#xff0c;才能实现呼吸灯的缓慢亮缓慢…

SPL-404:如何彻底改变Solana上的NFT与DeFi

在不断发展的数字资产领域中&#xff0c;非同质化Token&#xff08;NFT&#xff09;已成为一股革命性力量&#xff0c;彻底改变了我们对数字所有权的看法和互动方式。从艺术和收藏品到游戏和虚拟房地产&#xff0c;NFT吸引了创作者、投资者和爱好者的想象力。 本指南将带您进入…

MyBatisPlus-分页插件的基本使用

目录 配置插件 使用分页API 配置插件 首先&#xff0c;要在配置类中注册MyBatisPlus的核心插件&#xff0c;同时添加分页插件。&#xff08;可以放到config软件包下&#xff09; 可以看到&#xff0c;我们定义了一个配置类&#xff0c;在配置类里声明了一个Bean,这个Bean的名…

排序 -- 计数排序以及对排序的总结

到了这篇文章就说明常见的排序我们就快要讲完了&#xff0c;那这篇文章我们就讲一下非比较排序--计数排序。 一、非比较排序 1.基本思想 计数排序又称为鸽巢原理&#xff0c;是对哈希直接定址法的变形应用。 操作步骤&#xff1a; 统计相同元素出现次数 根据统计的结果将序列…

昇思25天学习打卡营第14天|基于MindNLP的文本解码原理

基于MindNLP的文本解码原理 文本解码 文本解码是自然语言处理中的一个关键步骤,特别是在任务如机器翻译、文本摘要、自动回复生成等领域。解码过程涉及将编码器(如语言模型、翻译模型等)的输出转换为可读的文本序列。以下是一些常见的文本解码方法和原理: 1. 自回归解码:…

打造属于你的私人云盘:在 OrangePi AIpro 上搭建个人云盘

随着数字化时代的到来&#xff0c;数据的存储和管理变得愈发重要。相比于公共云存储服务&#xff0c;搭建一个属于自己的个人云盘不仅能够更好地保护隐私&#xff0c;还可以更灵活地管理数据。 近期刚好收到了一个 香橙派 AIpro 的开发板&#xff0c;借此机会用来搭建一个属于…