SF-YOLOv5——基于改进的特征融合模式的轻量级小目标检测算法

概述

提出了一种改进的YOLOv5模型,名为Small-Fast-YOLOv5 (SF-YOLOv5),专门用于小目标检测。通过合理裁剪大目标检测层的特征图输出,显著减少了模型所需的计算资源,使模型变得更加轻量级。
还提出了一种改进的特征融合方法(PB-FPN),该方法基于PANet和BiFPN(EfficientDet),有效地提高了算法对小目标的检测能力。
引入了空间金字塔池化(SPP)的快速版本,即SPPF,用于将特征融合网络与模型预测头部连接起来,以提升性能。

论文地址:SF-YOLOv5: A Lightweight Small Object Detection Algorithm Based on Improved Feature Fusion Mode

1.Yolov5

1.1 简介

在这里插入图片描述

  • 图像首先通过输入层(input)进行处理,然后被发送到主干网络进行特征提取。
  • 主干网络获取不同尺寸的特征图,并通过特征融合网络(neck)将这些特征进行融合,最终生成三个特征图P3、P4和P5(在YOLOv5中,这些尺寸分别表示为80×80、40×40和20×20),用于分别检测图像中的小型、中型和大型物体。
  • 这三个特征图随后被发送到预测头(head),利用预设的先验锚点(prior anchor),对特征图中的每个像素执行置信度计算和边界框回归,从而获得一个包含目标类别、类别置信度、框坐标、宽度和高度信息的多维数组(BBoxes)。
  • 通过设置相应的阈值(confthreshold, objthreshold)来过滤数组中的无效信息,并执行非最大值抑制(NMS)过程,最终可以输出检测结果。

1.2 Backbone

在这里插入图片描述

  • 主干网络是CSPDarknet53。
  • 主要结构是多个CBS(卷积 + 批量归一化 + SiLU激活函数)模块和C3模块的堆叠,最后连接一个SPPF模块。
  • CBS模块用于辅助C3模块进行特征提取,而SPPF模块增强了主干网络的特征表达能力。
    在这里插入图片描述
    SPPF通过对之前已经进行过最大池化的特征进行最大池化操作,避免了像SPPNet中SPP那样的重复操作。
    这样可以显著提高模块的运行速度。

1.3 Neck

在这里插入图片描述
YOLOv5 使用了特征金字塔网络(FPN)和路径聚合网络(PAN)的方法。
FPN 的基本思想是将特征提取网络通过多次卷积下采样操作生成的输出特征图(C3、C4 和 C5)进行上采样,以生成多个新的不同尺度的特征图(P3、P4 和 P5),用于检测不同尺寸的目标。

1.4 Head

在这里插入图片描述

特征图左上角的坐标值被设置为(0, 0)。
( rx ) 和 ( ry ) 是未经调整的预测中心点坐标。
( gx )、( gy )、( gw )、( gh ) 表示调整后的预测框的信息。
( pw ) 和 ( ph ) 是先验锚点的信息。
( sx ) 和 ( sy ) 是模型计算出的偏移量。
这个过程涉及将预设的先验锚点的中心坐标和大小调整为目标预测框的中心坐标和大小。

1.5 Model Variants

在这里插入图片描述
YOLOv5是一个流行的目标检测模型,它有多个版本,每个版本针对不同的应用场景和性能需求进行了优化。以下是YOLOv5的五个主要版本,以及它们对应的更大尺寸版本:

  1. YOLOv5s:这是YOLOv5系列中的小型模型,具有较小的尺寸和较少的参数,适用于需要快速推理和较低资源消耗的场景。

  2. YOLOv5m:中型模型,比YOLOv5s稍大,提供更好的性能,适用于需要平衡速度和准确性的应用。

  3. YOLOv5l:大型模型,比YOLOv5m更大,拥有更多的参数和更高的准确度,但相应的,它需要更多的计算资源。

  4. YOLOv5x:超大型模型,是YOLOv5系列中最大的标准版本,提供最高的准确度,适用于对准确度要求极高的场景。

  5. YOLOv5n:通常代表YOLOv5的“nano”版本,比YOLOv5s更小,适用于极端资源受限的环境。

对于每个标准版本,都有一个相应的更大尺寸版本,这些版本通过增加网络的深度和宽度来提高性能,但同样会增加模型的计算需求:

  1. YOLOv5x6:YOLOv5x的更大版本。
  2. YOLOv5l6:YOLOv5l的更大版本。
  3. YOLOv5m6:YOLOv5m的更大版本。
  4. YOLOv5s6:YOLOv5s的更大版本。
  5. YOLOv5n6:YOLOv5n的更大版本。

这些更大的版本通常用于需要极高准确度的场景,尽管它们在速度上可能不如标准版本快。选择哪个版本的YOLOv5取决于具体的应用需求,包括目标检测任务的复杂性、可用的计算资源以及对速度和准确性的具体要求。
在这里插入图片描述

1.6 大模型检测结果

在这里插入图片描述

1.7 小模型检测结果

在这里插入图片描述
在目标检测领域,YOLOv5和EfficientDet都是性能出色的模型,但它们在设计理念、结构和优化方面有所不同。YOLOv5的小型模型在保持较小的模型尺寸和快速的推理速度的同时,通常也能提供与EfficientDet相竞争甚至更好的性能。

2.SF-YOLOv5

2.1. 特征图

在这里插入图片描述

  • 主干网络是CSPDarknet53。
  • 主要结构是多个CBS(卷积 + 批量归一化 + SiLU激活函数)模块和C3模块的堆叠,最后连接一个SPPF模块。
  • CBS模块用于辅助C3模块进行特征提取,而SPPF模块增强了主干网络的特征表达能力。

在这里插入图片描述

C7和C8层对应于输出C5特征图。然而,在主干网络中,C7和C8层的参数占据了大量的参数。
为了使模型更轻量化,传统YOLOv5中的默认C5特征图被删除了,如图4所示。

2.2 PB-FPN

在这里插入图片描述
为了进一步提升算法对小目标的检测能力,额外引入了一条新的特征融合路径,将高层的特征进一步整合到底层。新设置的水平分支参与到底层的融合过程中,这进一步提升了算法对小目标的检测效果。

2.3 SPPF

在这里插入图片描述
YOLOv5 使用了 SPPF(空间金字塔池化快速版,SPP-Fast)模块。
通过简化池化过程,SPPF 避免了像 SPPNet 中的 SPP 那样的重复操作,并显著提高了模块的运行速度。
在本文中,SF-YOLOv5 在特征融合网络与模型预测头之间的连接处引入了几个 SPPF 模块,目的是为了进一步挖掘最终由 neck 输出并送往 head 的特征图的特征表达潜力,并进一步提升模型的性能。

4.实验结果

4.1 WIDER FACE Dataset

在这里插入图片描述

这个数据集包含了393,703张人脸的标注信息。数据集在尺度、姿态、角度、光照和遮挡方面具有很高的变化性。数据集复杂,并且包含了大量的密集小目标。
总共使用了4441张图像来训练算法,并使用了1123张图像来验证算法。
在这里插入图片描述
在这里插入图片描述
与传统算法YOLOv5s相比,SF-YOLOv5在mAP@0.5和mAP@0.5:0.95上分别提高了1.6和0.8,这证明了SF-YOLOv5在综合检测性能上的提升。

同时,SF-YOLOv5的参数(M)值和浮点运算次数(FLOPs,G)值分别减少了68.2%和12.7%,表明SF-YOLOv5可以进一步减少模型运算所需的参数数量和计算能力。

总体而言,SF-YOLOv5在性能上优于YOLOv3和ResNeXt-CSP,并且其性能接近最新的YOLOv7。

这段描述概述了SF-YOLOv5在目标检测任务上相对于其他几个算法的性能提升。mAP(mean Average Precision)是一个衡量目标检测算法性能的指标,它计算在不同阈值下的平均精度均值。mAP@0.5指的是在IoU(交并比)为0.5时的平均精度,而mAP@0.5:0.95则是在IoU从0.5到0.95的范围内计算的平均精度,这反映了算法在不同IoU阈值下的性能。

参数数量和FLOPs的减少意味着SF-YOLOv5在保持或提升性能的同时,能够以更少的计算资源实现更快的推理速度,这对于需要在资源受限的设备上部署模型的应用场景非常有用。

3.2 Other Datasets

在这里插入图片描述
在这里插入图片描述
总而言之,SF-YOLOv5在TinyPerson、VisDrone和VOC2012数据集上仍然实现了检测精度和综合性能的提升。

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

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

相关文章

CV每日论文--2024.6.24

1、Whiteboard-of-Thought: Thinking Step-by-Step Across Modalities 中文标题:思维白板:跨模式逐步思考 简介:这段话描述了一种利用思维白板提示来增强大型语言模型在视觉推理任务中的性能的方法。 人类在解决需要视觉思考的问题时,通常会…

英语口语练习评测的开发实现

英语口语评测是一个复杂的系统,需要综合考虑语音识别、语音评测、自然语言处理等多种技术。以下是一些常见的英语口语评测开发框架。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 基于语音识别的口语评测框架这种框架主要…

第28课 绘制原理图——绘制导线

概述 放置完元器件之后,接着就要用导线将元器件的管脚一个一个连起来了。 绘制导线的方法 点击快速工具条上的“线”命令,进入绘制导线的过程。 点击选择某个管脚或电源端口,作为导线的起始端。 再点击选择另一个管脚或电源端口&#xff0c…

React@16.x(40)路由v5.x(5)常见应用场景(2)- 实现类似 vue 的路由模式

目录 1,vue-router2,React 模拟实现 1,vue-router vue 的路由配置文件, // src/router/index.ts const routes [{path: "/news",children: [{ path: "", component: NewsView },{ path: "detail"…

瞄准Windows的新兴僵尸网络:Kraken

2021 年 10 月,ZeroFox Intelligence 披露了名为 Kraken 的僵尸网络。Kraken 通过 SmokeLoader 进行传播,每次更新攻击基础设施时都会扩大规模。尽管与 2008 年发现的 Kraken 僵尸网络同名,但二者并没有其他共同点。 功能 自从 2021 年 10 …

养殖自动化通风系统:未来畜牧业的智能守护者

在现代畜牧业中,养殖环境的控制对于动物的健康成长和养殖业者的成功至关重要。养殖自动化通风系统凭借其先进技术和精密设备,实现了对养殖场内环境条件的精准调控,显著提升了养殖效率和动物福利。本文将深入探讨养殖自动化通风系统的必要性、…

Talking Web

1. curl 1.1 http curl http://127.0.0.1:80 向目标主机端口发送http请求 1.2 httphead curl -H “Host: 18ed3df584cd48328b5839443aa7b42b” http://127.0.0.1:80 1.3 httppath curl http://127.0.0.1:80/853c64cd218f80d0a59665666fb2ab80 1.4 URL编码路径 &#xff0…

天天大爆推文玩法营销号软件下载地址

天天大爆推文玩法营销号软件下载地址 天天大爆推文玩法营销号是一种营销策略,通过在社交媒体上发布频繁的推文来吸引关注和增加品牌曝光度。以下是一些可以用于天天大爆推文玩法营销号的策略: 营销号工具使用教程:https://iimenvrieak.feis…

数据结构之前缀树

写在前面 源码 。 前缀树,又叫做trie树,字典树,是一种多叉的树,一般用于单词前缀匹配的相关场景中,比如: 本文看下使用Java如何来实现这种数据结构。 1:基本介绍 思想:空间换时…

C++基础编程100题-014 OpenJudge-1.3-12 计算球的体积

更多资源请关注纽扣编程微信公众号 http://noi.openjudge.cn/ch0103/12/ 描述 对于半径为r的球,其体积的计算公式为$ V4/3*πr^3 $,这里取π 3.14。 现给定r,求V。 输入 输入为一个不超过100的非负实数,即球半径&#xff0…

FL Studio 21 集成了音频剪辑和增益控制,你可以更快、更精确地控制音频电平,包括自动交叉淡入淡出及更多功能

以通过控制色调、饱和度、亮度、文本、仪表和步进序列器的颜色来改变你的DAW外观, DAW“情绪主题”控制,水果编曲将变得与众不同。 更快的音频编辑 FL Studio 21 集成了音频剪辑包络和增益控制,你可以更快、更精确地控制音频电平&#xff0c…

aws的alb,多个域名绑定多个网站实践

例如首次创建的alb负载均衡只有www.xxx.com 需要添加 负载 test2.xxx.com aws的Route 53产品解析到负载均衡 www.xxx.com 添加CNAME,到负载均衡的dns字段axx test2.xxx.com 添加CNAME,到负载均衡的dns字段axx 主要介绍目标组和规则 创建alb就不介…

Spring底层原理之FactoryBean Bean工厂 单例对象 多例对象

FactoryBean 在 Spring Framework 中,FactoryBean 是一个用于创建其他 Bean 实例的特殊工厂 Bean。它允许开发者自定义 Bean 的创建逻辑,从而更加灵活地管理和配置 Bean 的实例化过程。 FactoryBean 接口 FactoryBean 接口是 Spring 框架中的一个重要…

推送电子邮箱与其他营销手段如何有效结合?

推送电子邮箱的效果如何?怎么优化邮件推送的策略? 将推送电子邮箱与其他营销手段有效结合,可以显著提升营销效果和用户体验。AokSend将探讨如何将推送电子邮箱与社交媒体营销、内容营销、搜索引擎优化(SEO)等手段相结…

ArkTS自定义组件

一、自定义组件基本结构 // 定义自定义组件 ButtonCom.ets Component export struct BtnCom{State msg: string "按钮";build() {Row(){Text(this.msg).onClick(() > {this.msg "测试"})}} } // 引入自定义组件 import {BtnCom} from "./Butto…

动物常见图像的图像分类数据集

常见动物图像分类数据集 数据集: 链接:https://pan.baidu.com/s/1zZnCUZuNlX6MjuZImlDjTw?pwd03b9 提取码:03b9 数据集信息介绍: 文件夹 大象 中的图片数量: 1446 文件夹 松鼠 中的图片数量: 1862 文件夹 河马 中的图片数量:…

理解和处理不同类型的上下文的新型的语言模型ReALM

在人类的日常交流中,模糊的代词如“他们”或“那个”常常出现,它们的意义通常依赖于上下文才能明确。这种上下文的理解对于对话助手来说至关重要,因为它们旨在提供一种自然的交流体验。然而,现有的对话助手在处理这类模糊引用时往…

SAP查看接口日志

大部分SAP项目都会与其他外围系统进行集成,那么日常工作中,如果遇到接口传输问题,我们应该怎样查询呢? 也许这篇文章可以稍微解答一些基础的内容。 1、事务代码SXI_MONITOR检查接口日志: 执行的起止日期默认带出&…

oracle11g rac静默dbca创建实例反复报监听问题

问题 处理方法 手动创建监听程序 重新静默dbca建库

Hume AI 将无比强大的情感AI聊天机器人带到了iPhone平台免费使用

总部位于美国的Hume AI研究实验室,致力于开发“针对人类福祉进行优化”的系统,最近推出了其EVI平台的iOS应用版本——名为Hume:您的个人人工智能。 这款新产品包括名为Kora的新型AI语音,以及对热门新Claude 3.5 Sonnet LLM的支持…