YOLOv9详解

1.概述 

     

      在逐层进行特征提取和空间转换的过程中,会损失大量信息,例如图中的马在建模过程中逐渐变得模糊,从而影响到最终的性能。YOLOv9尝试使用可编程梯度信息PGI解决这一问题。

        具体来说, PGI包含三个部分,(1)主干分支(1)辅助可逆分支。(2)多级辅助信息。其核心思想通俗来说,就是通过引入辅助梯度分支计算损失和梯度,从而降低信息逐层建模中的损失。需要说明的是,辅助梯度分支只在训练中参与计算损失,而不在推理中使用。

2. 主干分支

        主干分支即yolo系列的PANet.

3.辅助可逆分支

        辅助可逆分支提供了一种监督机制,能够提供梯度信息,保证主分支信息建模的正确性和有效性。此外,由于可逆分支只在训练中使用,能够有效保证推理时间。

4.多级辅助信息

        在进行目标检测的过程中,我们往往会使用特征金字塔。引入辅助可逆分支后,80*80尺度的浅层特征可能会受到引导,学习小物体检测所需的特征,此时系统将其他大小的物体的位置视为背景。然而,上述行为会导致深层特征金字塔丢失预测目标对象所需的大量信息。多级辅助分支,就是告诉三层特征,“你们都需要接收到所有关于目标对象的信息,不管是小目标、中目标和大目标”

5.Generalized ELAN

        YOLOv9也对yolov7的特征提取模块进行了优化,其核心思想还是yolo一直以来的csp思想,这方面与yolov8完全一致。

YOLOv9实验性能优越

                

        6.消融实验

                首先,作者对YOLOv9的特征提取模块进行了消融实验,当然是YOLO系列的CSP模块表现得更好。

        

        然后作者对GELEN的深度和CSP模块的深度做了消融,发现网络对这方面的参数不敏感。

        以及PGI在backbone和neck的设置 

         

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

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

相关文章

bugku-easy_nbt

解压文件得到 感觉dat文件可疑,尝试修改为zip文件 解压level,然后用010打开 搜索得到flag

【数据结构七】堆与PriorityQueue详解

堆 在Java中有一种数据结构基于队列,并保证操作的数据带有优先级,该数据结构应该提供了两个最基本的操作,一个是返回最高优先级对象,一个是添加新的对象。这种数据结构就是优先级队列(Priority Queue)。它的底层使用了堆这种数据结…

软考高级:软件工程单元测试(驱动模块、被测模块、桩模块)概念和例题

作者:明明如月学长, CSDN 博客专家,大厂高级 Java 工程师,《性能优化方法论》作者、《解锁大厂思维:剖析《阿里巴巴Java开发手册》》、《再学经典:《Effective Java》独家解析》专栏作者。 热门文章推荐&am…

吴恩达机器学习-可选实验室:神经元和层(Neurons and Layers)

文章目录 可选实验室:神经元和层包无激活神经元-回归/线性模型Sigmoid激活的神经元祝贺 可选实验室:神经元和层 实验室将探索神经元和层的内部工作原理,特别是将课程1中掌握的模型,即回归/线性模型和逻辑斯蒂模型,与之…

2024年腾讯云个人用户免费服务器配置和申请说明

腾讯云免费服务器申请入口 https://curl.qcloud.com/FJhqoVDP 免费服务器可选轻量应用服务器和云服务器CVM,轻量配置可选2核2G3M、2核8G7M和4核8G12M,CVM云服务器可选2核2G3M和2核4G3M配置,腾讯云服务器网txyfwq.com分享2024年最新腾讯云免费…

《AcWing第147场周赛》 牛的语言学(递推) / 孤立点数量(并查集)

文章目录 牛的语言学考察知识:递推 题目链接题目描述思路具体代码及注释 孤立点数量考察知识:并查集 题目链接题目描述思路分析 在这里插入图片描述代码及注释 牛的语言学 考察知识:递推 题目链接 https://www.acwing.com/problem/content…

【网络原理】TCP协议详细解析

文章目录 🌲TCP协议的概念🌸TCP协议段格式🌸TCP的特性 🌳TCP原理详解🌸确认应答机制(安全机制)🌸超时重传机制(安全机制)🌸连接管理(安…

【软考高项】七、信息技术发展之存储、数据库、信息安全

1、存储知识点 存储类型分:封闭式(小型机)和开放式(服务器) 其中开放式又分内置和外挂存储(直连DAS、网格FAS(NAS/SAN)) 2、数据库知识点 数据结构模型: …

MyBatisPlus 之一:Spring 整合 MyBatisPlus 及雪花算法

1. Mybatis-Plus简介 Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。这是官方给的定义,关于mybatis-plus的更多介绍及特性,可以参考http…

蓝桥杯第 6 场 小白入门赛 2.猜灯谜(for + 数组)

思路:注意是环形排列的灯笼,它的谜底是相邻两个灯笼的数字之和。这道题要用到两个数组,ans存答案,a存原数据。数据读入部分就不用说了,重点就是单独写明ans[0]和ans[n-1]两个取值,其他的用for循环数组就可以…

数据结构——栈和队列的表示与实现详解

目录 1.栈的定义与特点 2.队列的定义与特点 3.案例引入 4.栈的表示和操作的实现 1.顺序栈的表示 代码示例: 2.顺序栈的初始化 代码示例: 3.判断栈是否为空 代码示例: 4.求顺序栈长度 代码示例: 5.清空顺序栈 …

如何实现图片上传至服务器

在绝大多数的项目中都会涉及到文件上传等,下面我们来说一下技术派中是如何实现原生图片上传的,这个功能说起来简单,但其实对于技术还是有考验的。图片的上传涉及到IO读写,一个文件上传的功能,就可以把IO流涉及到的知识…

✅技术社区—通过Canal框架实现MySQL与ElasticSearch的数据同步

Canal 是一个由阿里巴巴开源的,基于 Java 的数据库变更日志解析的中间件,其原理是基于Binlog订阅的方式实现,模拟一个MySQL Slave 订阅Binlog日志,从而实现CDC,主要用于实现 MySQL 数据库的增量数据同步。它主要的使用…

模块化项目Eclipse测试网零撸教程

简介:Eclipse 是一个基于 Solana 区块链的初创项目,致力于构建基于 Solana 虚拟机的通用 Layer2 解决方案,为以太坊提供更快速、更通用的 Rollup 技术。其主要用途是为开发者提供构建基于 Solana 虚拟机的 Rollup 应用的平台,解决…

Vue3-响应式基础:单文件和组合式文件

单文件&#xff1a;html <!DOCTYPE html> <html> <head><title>响应式基础</title> </head> <body><div id"app" ><!-- dynamic parameter:同样在指令参数上也可以使用一个 JavaScript 表达式&#xff0c;需要包…

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用)

文章目录 1.整合MyBatis1.需求分析2.数据库表设计3.数据库环境配置1.新建maven项目2.pom.xml 引入依赖3.application.yml 配置数据源4.Application.java 编写启动类5.测试6.配置类切换druid数据源7.测试数据源是否成功切换 4.Mybatis基础配置1.编写映射表的bean2.MonsterMapper…

从零到一构建短链接系统(五)

1.修改UserService Service public class UserServiceImpl extends ServiceImpl<UserMapper, UserDO> implements UserService {public UserRespDTO getUserByUsername(String username) {LambdaQueryWrapper<UserDO> queryWrapper Wrappers.lambdaQuery(UserDO.c…

MySQL实战:监控

监控指标 性能类指标 名称说明QPS数据库每秒处理的请求数量TPS数据库每秒处理的事务数量并发数数据库实例当前并行处理的会话数量连接数连接到数据库会话的数量缓存命中率Innodb的缓存命中率 功能类指标 名称说明可用性数据库是否正常对外提供服务阻塞当前是否有阻塞的会话…

HarmonyOS-鸿蒙系统概述

你了解鸿蒙系统吗&#xff1f; 你看好鸿蒙系统吗&#xff1f; 今年秋季即将推出的HarmonyOS Next 星河版热度空前&#xff0c;一起来了解一下吧。本文将从HarmonyOS 的应用场景、发展历程、架构、开发语言、开发工具、生态建设六个角度聊一聊个人的理解。 1、应用场景 鸿蒙…

深度学习pytorch——拼接与拆分(持续更新)

cat拼接 使用条件&#xff1a;合并的dim的size可以不同&#xff0c;但是其它的dim的size必须相同。 语法&#xff1a;cat([tensor1,tensor2],dim n) # 将tensor1和tensor2的第n个维度合并 代码演示&#xff1a; # 拼接与拆分 a torch.rand(4,32,8) b torch.rand(…