YOLO系列论文综述(从YOLOv1到YOLOv11)【第12篇:YOLOv9——可编程梯度信息(PGI)+广义高效层聚合网络(GELAN)】
YOLOv9
- 1 摘要
- 2 改进点
- 3 网络架构
YOLO系列博文:
- 【第1篇:概述物体检测算法发展史、YOLO应用领域、评价指标和NMS】
- 【第2篇:YOLO系列论文、代码和主要优缺点汇总】
- 【第3篇:YOLOv1——YOLO的开山之作】
- 【第4篇:YOLOv2——更好、更快、更强】
- 【第5篇:YOLOv3——多尺度预测】
- 【第6篇:YOLOv4——最优速度和精度】
- 【第7篇:YOLOv5——使用Pytorch框架、AutoAnchor、多尺度预训练模型】
- 【第8篇:YOLOv6——更高的并行度、引入量化和蒸馏以提高性能加速推理】
- 【第9篇:YOLOv7——跨尺度特征融合】
- 【第10篇:YOLOv8——集成检测、分割和跟踪能力】
- 【第11篇:YOLO变体——YOLO+Transformers、DAMO、PP、NAS】
- 【第12篇:YOLOv9——可编程梯度信息(PGI)+广义高效层聚合网络(GELAN)】
- 【第13篇:YOLOv10——实时端到端物体检测】
- 【第14篇:YOLOv11——在速度和准确性方面具有无与伦比的性能】
- 【第15篇(完结):讨论和未来展望】
1 摘要
- 发布日期:2024年2月
- 作者/贡献者:WongKinYiu等
- 论文:YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information
- 代码:https://github.com/WongKinYiu/yolov9
- 主要优缺点:
- 可编程梯度信息(PGI)+广义高效层聚合网络(GELAN);
- 与YOLOv8相比,其出色的设计使深度模型的参数数量减少了49%,计算量减少了43%,但在MS COCO数据集上仍有0.6%的AP改进。
2 改进点
YOLOv9于2024年2月发布,代表了主流YOLO变体的最新进展。YOLOv9拥有两项关键创新:可编程梯度信息(PGI)框架和通用高效层聚合网络(GELAN)。
-
可编程梯度信息(PGI)框架 旨在解决深层神经网络中固有的信息瓶颈问题,并使深度监督机制能够与轻量级架构兼容。通过实施PGI,无论是轻量级还是深层架构都能在准确性上获得显著提升,因为PGI确保了训练过程中可靠的梯度信息,从而增强了架构的学习能力和做出准确预测的能力。
-
通用高效层聚合网络(GELAN) 架构特别设计用于通过高效率和轻量化来提升目标检测任务的性能。GELAN在不同的计算块和深度配置下表现出高性能,使其适合部署在各种推理设备上,包括资源受限的边缘设备。
通过结合上述两个框架(PGI和GELAN),YOLOv9在轻量级目标检测方面取得了显著的进步。
尽管YOLOv9仍处于早期阶段,但它已经在目标检测任务中展现了极强的竞争力,在参数减少和计算效率方面超越了YOLOv8,同时在MS COCO数据集上的平均精度(AP)提高了0.6%。
3 网络架构
下图展示了YOLOv9的网络架构图。

相关文章:
YOLO系列论文综述(从YOLOv1到YOLOv11)【第12篇:YOLOv9——可编程梯度信息(PGI)+广义高效层聚合网络(GELAN)】
YOLOv9 1 摘要2 改进点3 网络架构 YOLO系列博文: 【第1篇:概述物体检测算法发展史、YOLO应用领域、评价指标和NMS】【第2篇:YOLO系列论文、代码和主要优缺点汇总】【第3篇:YOLOv1——YOLO的开山之作】【第4篇:YOLOv2—…...
【ETCD】etcd简单入门之基础操作基于etcdctl进行操作
这里将使用etcdctl命令行工具来进行演示, 1、使用put命令向etcd写入kv对 使用etcdctl put命令来设置键值对。put命令接受两个参数:键和值 使用方法: NAME:put - Puts the given key into the storeUSAGE:etcdctl put [options] <key&g…...
第六届国际科技创新(IAECST 2024)暨第四届物流系统与交通运输(LSTT 2024)
重要信息 会议官网:www.lstt.org 大会时间:2024年12月6-8日 大会地点:中国-广州 简介 第六届国际科技创新暨第四届物流系统与交通运输国际(LSTT 2024)将于2024年12月6-8日在广州举办,这是一个集中探讨…...
20241127 给typecho文章编辑附件 添加视频 图片预览
Typecho在写文章时,如果一次性上传太多张图片可能分不清哪张,因为附件没有略缩图,无法实时阅览图片,给文章插入图片时很不方便。 编辑admin/file-upload.php 大约十八行的位置 一个while 循环里面,这是在进行html元素更新操作,在合…...
vue3使用monaco编辑器(VSCode网页版)
vue3使用monaco编辑器(VSCode网页版) 文章说明参考文章核心代码效果展示实践说明源码下载 文章说明 一直在找网页版的编辑器,网页版的VSCode功能很强大,这个monaco就是VSCode样式的编辑器,功能很强大,可以直…...
Spark优化--开发调优、资源调优、数据倾斜调优和shuffle调优等
针对Spark优化,我们可以从多个角度进行,包括开发调优、资源调优、数据倾斜调优和shuffle调优等。以下是一些具体的优化方法: 1. 开发调优 避免创建重复的RDD:对于同一份数据,只应该创建一个RDD,避免创建多…...
Day1 生信新手笔记
生信新手笔记 生信学习第一天笔记打卡。 转录组学中: 上游分析-基于linux,包括质控、过滤、比对、定量; 下游分析-基于R语言,包括差异分析、富集分析、可视化。 1. 级别标题 一个井号加空格 就是一级标题,两个井号加…...
Python的秘密基地--[章节2]Python核心数据结构
第2章:Python核心数据结构 Python中的数据结构提供了强大的工具来存储和操作数据。理解这些数据结构是Python编程的基础。 2.1 列表(List) 2.1.1 什么是列表 列表是一种有序的可变序列,用于存储一组数据。它支持多种类型的数据…...
【Electron学习笔记(三)】Electron的主进程和渲染进程
Electron的主进程和渲染进程 Electron的主进程和渲染进程前言正文1、主进程2、渲染进程3、Preload 脚本3.1 在项目目录下创建 preload.js 文件3.2 在 main.js 文件下创建路径变量并将 preload.js 定义为桥梁3.3 在 preload.js 文件下使用 electron 提供的contextBridge 模块3.4…...
[免费]SpringBoot+Vue景区订票(购票)系统【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的SpringBootVue大景区订票(购票)系统,分享下哈。 项目视频演示 【免费】SpringBootVue景区订票(购票)系统 Java毕业设计_哔哩哔哩_bilibili 项目介绍 现代经济快节奏发展以及不断完善升级的信息…...
idea_工程与模块管理
module相关操作 项目结构新建module移除模块删除模块导入模块 项目结构 层级关系 project(工程) - module(模块) - package(包) - class(类) 在 IntelliJ IDEA 中Project是最顶级的结构单元 ,然后就是Module。目前,主流的大型项目结构基本都是多Module…...
A02、Java 设计模式优化
1、单例模式 1.1、什么是单例模式 它的核心在于,单例模式可以保证一个类仅创建一个实例,并提供一个访问它的全局访问点。该模式有三个基本要点:一是这个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向…...
jdk8没有Buffer.put()
在Java中,Buffer是一个抽象类,它定义了缓冲区的通用行为。不过,Buffer本身并没有直接提供put()方法。put()方法是在Buffer的子类中定义的,比如ByteBuffer、CharBuffer、ShortBuffer、IntBuffer、LongBuffer、FloatBuffer和DoubleB…...
Artec Leo:航海设备维护的便携式3D扫描利器【沪敖3D】
挑战:海军服务提供商USP Maritime需要CAD数据来执行维修和改装任务,特别是在偏远地区的任务,以及原始设计丢失的情况下。 解决方案:Artec Leo, Artec Studio, Autodesk Inventor 效果:高精度船舶组件和船坞机械模型&…...
HCIA笔记6--路由基础
0. 概念 自治系统:一个统一管理的大型网络,由路由器组成的集合。 路由器隔离广播域,交换机隔离冲突域。 1.路由器工作原理 路由器根据路由表进行转发数据包; 路由表中没有路由,直接丢弃该数据包路由表中只有一条路…...
说说Elasticsearch拼写纠错是如何实现的?
大家好,我是锋哥。今天分享关于【说说Elasticsearch拼写纠错是如何实现的?】面试题。希望对大家有帮助; 说说Elasticsearch拼写纠错是如何实现的? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 在 Elasticsearch 中&…...
Ubuntu20.04运行R-VIO2
目录 1.环境配置2.构建项目3. 运行 VIO 模式4.结果图 1.环境配置 CMakeLists.txt中 C 使用 14、opencv使用4 2.构建项目 克隆代码库: 在终端中执行以下命令克隆项目:git clone https://github.com/rpng/R-VIO2.git编译项目: 使用 catkin_m…...
【软件项目测试文档大全】软件测试方案,验收测试计划,验收测试报告,测试用例,集成测试,测试规程和指南,等保测试(Word原件)
1. 引言 1.1. 编写目的 1.2. 项目背景 1.3. 读者对象 1.4. 参考资料 1.5. 术语与缩略语 2. 测试策略 2.1. 测试完成标准 2.2. 测试类型 2.2.1. 功能测试 2.2.2. 性能测试 2.2.3. 安全性与访问控制测试 2.3. 测试工具 3. 测试技术 4. 测试资源 4.1. 人员安排 4.…...
Kubernetes集群操作
查看集群信息: kubectl get nodes 删除节点 (⽆效且显示的也可以删除) 后期如果 要删除某个节点,为了不增加其他节点的访问压力,先增加一个节点,再删除要删除的节点 语法 :kubect delete…...
分布式事务调研
目录 需求背景: 本地事务 分布式基本理论 1、CAP 定理 2、BASE理论 分布式事务方案 #2PC #1. 运行过程 #1.1 准备阶段 #1.2 提交阶段 #2. 存在的问题 #2.1 同步阻塞 #2.2 单点问题 #2.3 数据不一致 #2.4 太过保守 3PC #本地消息表 TCC TCC原理 …...
小微团队如何利用Taotoken统一管理多项目API密钥与用量
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 小微团队如何利用Taotoken统一管理多项目API密钥与用量 对于小型开发团队而言,同时推进多个项目是常态。这些项目可能分…...
ARM架构计数器-定时器寄存器原理与应用
1. ARM架构中的计数器-定时器寄存器深度解析在ARM处理器架构中,计数器-定时器寄存器是实现精确时间控制和事件触发的核心组件。这些寄存器不仅为操作系统提供时间基准,还在虚拟化、安全扩展和实时系统中扮演关键角色。本文将深入剖析CNTHCTL和CNTHP_CTL等…...
Sketch MeaXure深度揭秘:如何用开源插件实现设计标注效率提升300%?
Sketch MeaXure深度揭秘:如何用开源插件实现设计标注效率提升300%? 【免费下载链接】sketch-meaxure 项目地址: https://gitcode.com/gh_mirrors/sk/sketch-meaxure Sketch MeaXure是一款基于TypeScript重构的Sketch设计标注插件,专为…...
输入流避坑全指南:从 Read() 编码溢出到 ReadLine() 缓冲区残留
1. 灵异事件:为什么我的循环跑了 52 次? 在编写基础逻辑题时,我曾遇到一个极其诡异的Bug:要求用户输入边长nnn打印正方形,我输入4,结果程序打印了 52行符号。 问题代码: int n Console.Read();…...
别再硬写QMenu的width和height了!Qt样式表实战:用盒模型思维搞定菜单尺寸
用CSS盒模型思维重构Qt菜单尺寸控制逻辑 在Qt开发中,QMenu的尺寸控制一直是让开发者头疼的问题。许多从Web前端转过来的开发者会习惯性地直接设置width和height属性,却发现这些设置在QMenu上完全不起作用。这背后其实涉及到Qt样式表(QSS)与CSS在渲染逻辑…...
大语言模型不确定性量化与可靠性评估:从理论到工程实践
1. 项目概述与核心价值最近在整理大语言模型落地应用中的一些棘手问题时,我反复被一个词绊住脚:不确定性。无论是让模型生成一份市场分析报告,还是回答一个具体的编程问题,我们得到的答案看起来总是那么“自信满满”,但…...
企者不立,跨者不行,SAP BTP 开发里的克制、边界与长久之道
老子这句话很像一段架构评审意见。站得太高,脚跟离地,反而站不稳;步子跨得太大,身体失衡,反而走不远;只相信自己的视角,反而看不明;只认自己的判断,反而不能显明价值;自我夸功,功劳反而站不住;自我矜持,生命力反而不长。把这段话放到 SAP BTP 开发里,它不是劝我们…...
避开这些坑!用Verilog写2ASK/2FSK调制解调模块时的常见错误与调试技巧
避开这些坑!用Verilog写2ASK/2FSK调制解调模块时的常见错误与调试技巧 在数字通信系统的FPGA实现中,2ASK和2FSK作为基础调制方式常被用于教学和原型验证。但看似简单的调制解调模块,实际开发中却暗藏诸多"陷阱"。本文将从工程实践角…...
Verdi 2017.12实战:一步步教你用UVM Debug Mode追踪寄存器模型与Sequence事务
Verdi 2017.12实战:UVM Debug Mode全流程调试指南 在芯片验证领域,高效的调试能力直接决定项目进度。当测试平台遇到寄存器读写异常或sequence事务不符合预期时,如何快速定位问题根源?Verdi 2017.12提供的UVM Debug Mode正是为解决…...
ContextMenuManager终极指南:如何快速清理Windows右键菜单提升系统效率
ContextMenuManager终极指南:如何快速清理Windows右键菜单提升系统效率 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否厌倦了每次右键点击文件…...
