【YOLO v5 v7 v8 v9小目标改进】AFPN 渐进式特征金字塔网络:解决多尺度特征融合中,信息在传递过程丢失
AFPN 渐进式特征金字塔网络:解决多尺度特征融合中,信息在传递过程丢失
- 提出背景
- AFPN = 多尺度特征金字塔 + 非邻近层次的直接特征融合 + 自适应空间融合操作
- 小目标涨点
- YOLO v5 魔改
- YOLO v7 魔改
- YOLO v8 魔改
- YOLO v9 魔改
提出背景
论文:https://arxiv.org/pdf/2306.15988.pdf
代码:https://github.com/gyyang23/AFPN
对象检测是计算机视觉中的一个任务,目的是在图片或视频中识别出各种物体,并确定它们的位置。
随着深度学习技术的发展,对象检测领域取得了巨大进步。
在这些进步中,一个关键技术是特征金字塔网络(FPN),它帮助模型更好地处理不同大小的物体。
特征金字塔(如FPN、PAFPN、NASFPN)建立了一个多层次的特征表示体系,允许系统在不同的分辨率上捕捉图像的特征,以便能够检测不同大小的物体。
- 它们解决了单一尺度特征分析的局限性,为特征融合提供了多尺度的特征来源。
特征融合模块(如CARAFE、ASFF、DRFPN)则进一步增强了这些特征的表示能力,通过各种方法(上采样、加权融合、注意力机制)优化了不同层级特征之间的融合,提高了特征金字塔中特征的质量和检测模型的性能。
AFPN = 多尺度特征金字塔 + 非邻近层次的直接特征融合 + 自适应空间融合操作
什么是AFPN?
AFPN(渐进式特征金字塔网络)是在特征金字塔和特征融合模块基础上的进一步创新和优化。
AFPN不仅采用了特征金字塔的多尺度特征表示理念,还引入了高效和创新的渐进式特征融合策略,特别是非邻近层次的直接特征融合和自适应空间融合操作。
- 自适应空间融合操作解决了特征融合过程中的信息冲突问题
- 而渐进式特征融合则优化了信息流在不同层级间的传递,最大化地保留了有用的信息
- 非邻近层次的直接特征融合,跨层级信息融合,允许高层特征直接与更低层特征结合,跳过中间层级,这样可以更快地将语义信息整合到细节信息中
AFPN的设计思路与软件工程中的迭代开发有共同点。
在软件开发过程中,开发团队通常不会一开始就完全设计出所有细节,而是通过不断迭代,逐步完善软件的功能和性能。
每个迭代周期中,都会评估现有的设计,引入新的功能,并改进用户体验。
这种逐步逼近最终目标的方法,既保证了项目的灵活性,也允许团队根据反馈不断调整方向,最终达到更优的产品质量。
同样,在建筑领域,设计和构建一个建筑物也往往采用类似的渐进式方法。
从概念设计开始,到初步设计,再到详细设计和施工图纸的制作,每一步都在逐渐加深对建筑物的理解和控制,同时也允许在过程中根据新的信息和条件进行调整。
这种思路的共同点在于,无论是组织活动、软件开发,还是建筑设计,都强调了在过程中灵活适应变化、逐步完善和精细化的重要性。
AFPN通过将这一思路应用到特征金字塔网络的设计中。
AFPN 核心组件:
-
非邻近层次直接特征融合:传统的FPN通常只将相邻层次的特征进行融合,而AFPN能够直接将不同层次的特征进行融合,这样可以更好地保留高层的语义信息和低层的细节信息。
-
自适应空间融合操作:在合并不同层次的特征时,AFPN使用一种特殊的方法来确保信息不会相互冲突,这样做可以更精准地保留对于识别对象有用的信息。
因为在多层级特征融合过程中,不同层次的对象信息可能存在矛盾,通过引入自适应空间融合操作,可以过滤并保留对融合过程有用的信息,解决了简单的元素级求和不足以处理复杂信息融合的问题。
上图是对AFPN中使用的自适应空间融合操作的具体说明,展示了在不同层级特征之间应用该操作的效果。表明了如何结合来自不同层级的特征以生成一个综合特征,并使用策略自动分配权重,选择来区分上采样、下采样和横向连接。
-
从低层特征开始逐步融合高层特征:AFPN采取从低层次开始,并逐步添加高层次特征的方法
是因为低层特征包含更多的细节信息,而高层特征包含更丰富的语义信息。
通过从低层开始并逐步融合高层特征,可以确保融合后的特征同时包含细节和语义信息,避免了信息的丢失和降级。
上图展示了AFPN的结构细节,如特征是如何通过网络的不同层次进行融合的。
它通常会展示从输入图像的原始特征开始,如何通过上采样(增加分辨率)和下采样(降低分辨率)以及横向连接来融合特征。
图中可能会用不同颜色的箭头表示不同操作,比如蓝色箭头可能代表卷积操作,绿色箭头代表自适应空间融合。
假设我们要在一张照片中识别和定位不同大小的狗。
-
非邻近层次直接特征融合:
- 传统的FPN可能会分别处理照片中的大型狗(使用高层次的特征)和小型狗(使用低层次的特征),然后将这些特征逐层融合。
- AFPN的方式:它可以直接将识别大型狗的高层次特征与识别小型狗的低层次特征合并。
这意味着,不管狗的大小,模型都能同时考虑狗的整体形状(高层次的语义信息)和毛发、眼睛等细节(低层次的细节信息)。 -
自适应空间融合操作:
- 在融合特征时,可能会遇到一些矛盾,比如同一个位置既有大型狗的一部分也有小型狗的一部分。
- AFPN的方法:它能够识别出这种矛盾,并自动调整融合策略,只保留有助于识别和定位狗的信息。
这样,无论是大狗还是小狗,模型都能更准确地识别它们。 -
渐进式特征融合 - 从低层特征开始逐步融合高层特征:
- 一开始,AFPN专注于捕捉照片中的所有狗的细节特征,如毛发纹理和眼睛。
- 然后,它逐渐添加了识别狗的整体形状和姿态的高层次特征。
- 这个过程的结果:是一个综合的特征表示,既包含了细节信息(帮助区分不同种类的狗),也包含了语义信息(帮助理解狗的整体形态)。
这使得模型能够在各种大小和姿态的狗中做出准确的识别和定位。
AFPN 不直接处理单个大小的对象,而是综合考虑不同层次的信息,以更全面地理解图像内容。
小目标涨点
更新中…
YOLO v5 魔改
YOLO v7 魔改
YOLO v8 魔改
YOLO v9 魔改
相关文章:

【YOLO v5 v7 v8 v9小目标改进】AFPN 渐进式特征金字塔网络:解决多尺度特征融合中,信息在传递过程丢失
AFPN 渐进式特征金字塔网络:解决多尺度特征融合中,信息在传递过程丢失 提出背景AFPN 多尺度特征金字塔 非邻近层次的直接特征融合 自适应空间融合操作 小目标涨点YOLO v5 魔改YOLO v7 魔改YOLO v8 魔改YOLO v9 魔改 提出背景 论文:https:…...

问题解决 | vscode无法连接服务器而ssh和sftp可以
解决步骤 进入家目录删除.vscode-server rm -rf .vscode-server 然后再次用vscode连接服务器时,会重新安装,这时可能报出一些缺少依赖的错 需要联系管理员安装相关依赖,比如 sudo apt-get install libstdc6 至此问题解决...

Git 远程操作
1.分布式版本控制系统 我们目前所说的所有内容(工作区,暂存区,版本库等等),都是在本地!也就是在你的笔记本或者计算机上。而我们的 Git 其实是分布式版本控制系统!什么意思呢 可以简单理解为&am…...

Windows C++ 实现远程虚拟打印机(远程共享打印机)
编译错误已经修改完后的工程修改后的下载地址 https://download.csdn.net/download/2403_83063732/88928550 1、下载clawpdf(0.8.7版本) https://github.com/clawsoftware/clawPDF 2、打开clawpdf工程开始编译C#工程,出现如下错误…...
【jvm】java对象占用内存问题深入解析
一个Java对象占用多大内存-CSDN博客 关于Object o new Object()追魂九连问(个人学习笔记) - 知乎JVM(Java虚拟机)-史上最全、最详细JVM笔记-CSDN博客...

金现代产品方案部部长王宁,将出席“ISIG-低代码/零代码技术与应用发展峰会”
3月16日,第四届「ISIG中国产业智能大会」将在上海中庚聚龙酒店拉开序幕。本届大会由苏州市金融科技协会指导,企智未来科技(LowCode低码时代、RPA中国、AIGC开放社区)主办。大会旨在聚合每一位产业成员的力量,深入探索低…...

数据结构——lesson7二叉树 堆的介绍与实现
前言💞💞 啦啦啦~这里是土土数据结构学习笔记🥳🥳 💥个人主页:大耳朵土土垚的博客 💥 所属专栏:数据结构学习笔记 💥对于数据结构顺序表链表有疑问的都可以在上面数据结…...

阿里云DSW做AI绘画时的显卡选择A10?V100?
V100是Volta架构,A10是Ampere架构,架构上讲A10先进点,其实只是制程区别,用起来没区别。 V100是HBM的内存读取,带宽大,但是DDR5的。 二块卡都是全精度为主的算力卡,半精度优势不明显。 需要用…...

MySQL安装使用(mac)
目录 一、下载MySQL 二、环境变量 三、启动 MySql 四、初始化密码设置 一、下载MySQL 打开 MySql 官方下载页面 我是macOS12,所以选择了8.0.30 下载完成之后,打开安装,一直下一步安装完成,在最后安装完成时,会弹出…...
Qt控制台项目也能使用opencv的imshow来显示摄像头视频
创建一个Qt控制台项目,目的是实现在控制台打开摄像头视频。由于windows平台是支持GUI(图形用户界面)功能,所以在windows环境下是可以打开的,但是linux环境下,由于不支持GUI功能,而是支持wayland,…...
前端缓存使用规范
一、Cookie使用规范 cookie的存储空间非常有限且会携带在请求头中会浪费不必要的流量,如果仅仅是为存储数据,可以采用其他替代方案,例如 webStorage,非必要不使用cookie。 1、使用方法 注意:过期时间时需转换成UTC格…...
Linux rmmod命令教程:如何卸载内核模块(附实例详解和注意事项)
Linux rmmod命令介绍 rmmod(全称:remove module)用于从Linux内核中卸载已加载的内核模块。它允许您在运行时移除不再需要的模块,以释放系统资源或更改内核配置。 Linux rmmod命令适用的Linux版本 rmmod在大多数Linux发行版中通…...
中国气象要素年度空间插值数据集
摘要 中国气象要素年度空间插值数据集是地理遥感生态网平台基于全国2400多个站点的气象要素站点日观测数据,在计算各气象要素年值的基础上,基于Anuspl插值软件生成1960-2021年各年度蒸发量、地温、降水量、气压、相对湿度、日照时数 、气温、风速8个气象…...

链表习题-力扣oj (附加思路版)
LCR 140. 训练计划 IIhttps://leetcode.cn/problems/lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof/ 给定一个头节点为 head 的链表用于记录一系列核心肌群训练项目编号,请查找并返回倒数第 cnt 个训练项目编号。 思路:双指针,快指针先走cnt…...

HNU-计算机网络-甘晴void学习感悟
前言 计算机网络其实我没太学懂, 仅从应试来说,考试成绩也不太好。 这也是为什么一直没有更新这一学科的学习感悟。 大三下还是有点闲,一周三天小长假,闲来无事还是给写了。 教材使用这本: 总领 期中考试 30% 期…...

混合输入矩阵乘法的性能优化
作者 | Manish Gupta OneFlow编译 翻译|宛子琳、杨婷 AI驱动的技术正逐渐融入人们日常生活的各个角落,有望提高人们获取知识的能力,并提升整体生产效率。语言大模型(LLM)正是这些应用的核心。LLM对内存的需求很高&…...
安卓Kotlin面试题 41-50
41、如何在 Kotlin 中实现 Builder 模式?首先,在大多数情况下,您不需要在 Kotlin 中使用构建器,因为我们有默认和命名参数,但如果您需要使用://add private constructor if necessary class Car( val model: String?,val year: Int) { private constructor(build…...

portainer管理远程docker和docker-swarm集群
使用前请先安装docker和docker-compose,同时完成docker-swarm集群初始化 一、portainer-ce部署 部署portainer-ce实时管理本机docker,使用docker-compose一键拉起 docker-compose.yml version: 3 services:portainer:container_name: portainer#imag…...

分销商城微信小程序:用户粘性增强,促进复购率提升
在数字化浪潮的推动下,微信小程序作为一种轻便、高效的移动应用形式,正成为越来越多企业开展电商业务的重要平台。而分销商城微信小程序的出现,更是为企业带来了前所未有的机遇。通过分销商城微信小程序,企业不仅能够拓宽销售渠道…...

深度学习与机器学习:互补共进,共绘人工智能宏伟蓝图
在人工智能的广阔天地中,深度学习与机器学习如同两支强大的队伍,各自闪耀着独特的光芒,却又携手共进,共同书写着智能的辉煌篇章。尽管深度学习是机器学习的一个分支,但它们在模型构建、特征提取以及应用场景等多个方面…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...

【免费数据】2005-2019年我国272个地级市的旅游竞争力多指标数据(33个指标)
旅游业是一个城市的重要产业构成。旅游竞争力是一个城市竞争力的重要构成部分。一个城市的旅游竞争力反映了其在旅游市场竞争中的比较优势。 今日我们分享的是2005-2019年我国272个地级市的旅游竞争力多指标数据!该数据集源自2025年4月发表于《地理学报》的论文成果…...
从实验室到产业:IndexTTS 在六大核心场景的落地实践
一、内容创作:重构数字内容生产范式 在短视频创作领域,IndexTTS 的语音克隆技术彻底改变了配音流程。B 站 UP 主通过 5 秒参考音频即可克隆出郭老师音色,生成的 “各位吴彦祖们大家好” 语音相似度达 97%,单条视频播放量突破百万…...
算法刷题-回溯
今天给大家分享的还是一道关于dfs回溯的问题,对于这类问题大家还是要多刷和总结,总体难度还是偏大。 对于回溯问题有几个关键点: 1.首先对于这类回溯可以节点可以随机选择的问题,要做mian函数中循环调用dfs(i&#x…...
AT模式下的全局锁冲突如何解决?
一、全局锁冲突解决方案 1. 业务层重试机制(推荐方案) Service public class OrderService {GlobalTransactionalRetryable(maxAttempts 3, backoff Backoff(delay 100))public void createOrder(OrderDTO order) {// 库存扣减(自动加全…...

claude3.7高阶玩法,生成系统架构图,国内直接使用
文章目录 零、前言一、操作指南操作指导 二、提示词模板三、实战图书管理系统通过4o模型生成系统描述通过claude3.7生成系统架构图svg代码转换成图片 在线考试系统通过4o模型生成系统描述通过claude3.7生成系统架构图svg代码转换成图片 四、感受 零、前言 现在很多AI大模型可以…...

安宝特案例丨寻医不再长途跋涉?Vuzix再次以AR技术智能驱动远程医疗
加拿大领先科技公司TeleVU基于Vuzix智能眼镜打造远程医疗生态系统,彻底革新患者护理模式。 安宝特合作伙伴TeleVU成立30余年,沉淀医疗技术、计算机科学与人工智能经验,聚焦医疗保健领域,提供AR、AI、IoT解决方案。 该方案使医疗…...