改进的yolov5

图片

The networkstructure of these models is constant, but the modules and con-volution kernels are scaled, which alters the complexity and sizeof each model.(这些模型的网络结构是恒定的,但模块和卷积核被缩放,这改变了每个模型的复杂性和大小。)

YOLOv5

图片

图片

✅backbone:Focus layer, BottleNeckCSP , and SPP module

Focus layer:主要作用是执行图像切片。这减少了下采样期间的信息损失,简化了数值计算并提高了训练速度。

BottleNeckCSP:不仅减少了整体计算负担,而且更有效地从特征中提取信息。

SPP:通过将可变大小特征图转换为固定大小的特征向量来增加网络的感受野

✅neck:PANet、FPN

PANet:用于深层特征的密集定位

FPN :通过上采样提供强大的浅层语义特征,融合各种多尺度特征,增强检测能力

✅head:它使用锚框输出包含向量的类概率、置信度分数、预测角度和边界框信息。

YOLOv5的局限性

✅首先,它主要针对用于通用对象检测任务的 COCO 数据集,并且不一定适用于特定任务和相关数据集。

✅其次,PANet 结构较少关注非相邻层之间的信息流,因为每个聚合过程中信息不断减少。

✅第三,SPP模块中的最大池化操作会导致显著的信息损失,因此无法获得局部和全局信息进行定位。

✅第四,连接 YOLOv5 架构中不同组件的信息路径限制了计算效率,并且对于为小规模对象提取相关特征不是最优的。

YOLOv5的改进

01 SPP模块的改进

图片

随着 CNN 深度的增加,感受野的大小变大。由于输入图像的大小有限,特征提取在大的感受野上重复。因此,SPP模块用于通过融合不同感受野的特征图来添加相应的模块来消除这个问题。该模块结合局部和全局特征来最大化特征图的表达能力,扩展了骨干网络的感受野,并将最重要的上下文特征分离为大小目标检测。为了整合不同尺度感受野的特征,SPP并行使用了几个最大池化操作。这种方法显示出提高整体检测精度的好处。然而,最大池化操作无法捕获空间信息并产生信息丢失,这导致无法单独定位目标,尤其是小对象。

为了解决这个问题,提出了一种改进的SPP模块,将池化函数替换为扩展卷积。虽然这两种操作都扩展了网络的感受野,但池化降低了空间分辨率,导致特征信息丢失。相反,具有不同膨胀率的扩张卷积通过捕获检测小目标所需的多尺度信息而不损失分辨率来丰富提取的特征。然后将输出特征组合在同一级别上以增强特征表示。因此,该模块提高了网络准确定位目标的学习能力,特别是小对象,同时以最小的计算成本增加保持快速检测速度。

02 PANet结构的改进

图片

颈部网络的目的是聚合主干获得的特征,以提高后者预测的准确性。由于深层的抽象级别,这种结构在防止小物体信息的丢失方面起着至关重要的作用。为了实现这一点,再次对特征图进行上采样,以便与主干进行聚合。FPN 为浅层提供深层语义信息,以增强可检测性,但在浅层和深层特征聚合过程中忽略位置信息。虽然PANet结构提供了浅层和深层信息的融合。然而,集成方法依赖于相邻特征的聚合,并且较少关注被赋予非相邻层之间的信息交换。正因为如此,非相邻层中的空间信息通过每次聚合不断减少。

因此,为了解决上述局限性,设计了一种基于原始PANet结构的改进PANet结构。我们添加了两个跨层连接(B1和B2),一个在FPN的自顶向下路径中,另一个在PANet的自底向上路径中,用于集成不相邻和多层次特征。在聚合过程中,这将允许更有效地利用语义和浅层位置信息,在不增加计算复杂度的情况下增强小物体的重要特征。

03 改进的信息路径

图片

图片

YOLOv5 的架构设计很简单,但由于其组件的内部排列,需要优化计算效率和实时应用。因此,我们重定向某些连接,以专注于检测多分辨率特征图。由于输入通过卷积逐层传递,因此特征图被提取。前者卷积层生成的特征图捕获小尺度对象,而后者生成的特征图捕获大尺度对象。BottleNeckCSP 是 YOLOv5 最基本的块,提取大多数上下文特征,但其当前属性对于深度特征的提取效率低下,导致目标检测效果不佳。另一个重要方面是选择适当的激活函数,即使在添加多个卷积和归一化层时也可以限制性能。此外,头部缺乏提取足够浅层特征来定位小物体的能力。

针对上述问题,提出了一种改进的Scaled YOLOv5 (iS-YOLOv5)。为证明BottleNeckCSP 的局限性,通过修改信息路径,引入了一种新的称为 N-CSP 的功能块,减少主干中N-CSP块的数量,调整网络参数,提高计算速度。此外,在网络的特定层中实现了Hard Swish激活,而不是Leaky ReLU。应用多个激活来避免信息丢失,并根据输入大小降低计算成本。在检测方面,为从高分辨率特征图中获得的小规模对象添加了一个检测头。在颈部中,优化调整 N-CSP 块以专注于检测多尺度特征。这将提高不同比例对象(尤其是小目标)的整体检测能力。请注意,集体修改几乎没有改变计算的复杂性,同时显着提高了检测性能以及确保实时要求。

注:本文仅用于学术分享,如有侵权,请联系后台作删文处理。

最后:

如果你想要进一步了解更多的相关知识,可以关注下面公众号联系~会不定期发布相关设计内容包括但不限于如下内容:信号处理、通信仿真、算法设计、matlab appdesigner,gui设计、simulink仿真......希望能帮到你!

5a8015ddde1e41418a38e958eb12ecbd.png

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

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

相关文章

node版本管理神器|nvm安装使用教程

文章目录 导文安装前提下载安装包进行安装第一步,下载安装包,[nvm下载地址](https://github.com/coreybutler/nvm-windows/releases)第二步,进行安装,点击nvm-setup.exe文件,接受用户协议第三步,选择安装目…

​Z时代时尚SUV新宠:起亚赛图斯值不值得年轻人买?

在当今汽车行业中,随着消费者偏好的多样化和年轻化,汽车制造商们正面临着前所未有的挑战与机遇。在2023年上海车展上,起亚汽车公司正式发布了全新紧凑级SUV——赛图斯。这款车型不仅标志着起亚对年轻消费市场的深入洞察,也展现了公…

Chatgpt批量改写文章网页版可多开软件-自动登录换号生成word或者TXT

Chatgpt批量改写文章网页版可多开软件介绍: 1、改写后生成docx格式文档和生成txt文档二选一。 2、支持原来docx文档里带图片的改写,改写伪原创后的docx里也带图片。 3、软件可以设置是否开启标题改写,可以自定义标题改写指令。 4、可以设置…

CVE-2023-34040 Kafka 反序列化RCE

漏洞描述 Spring Kafka 是 Spring Framework 生态系统中的一个模块,用于简化在 Spring 应用程序中集成 Apache Kafka 的过程,记录 (record) 指 Kafka 消息中的一条记录。 受影响版本中默认未对记录配置 ErrorHandlingDeserializer,当用户将容…

2023 现阶段H5的机型适配

个人愚见 现在的主流体验,是大屏手机展示更多的内容,并不着重于放大展示, 所以,外层布局使用vw,百分比,flex,内层直接px就行 比如微信服务页面,大屏下展示更多数据

海外服务器和国内的几大差别!如何选择一款优质的海外服务器?

随着互联网的普及,越来越多的企业或者个人都在搭建自己的网站,而对于搭建网站来说,选择一款合适的服务器显得至关重要。那么许多小伙伴可能都在纠结的一个问题是,海外服务器和国内服务器有什么区别?我们是否应该选择一…

http中的Content-Type类型

浏览器的Content-Type 最近在做web端下载的时候需要给前端返回一个二进制的流,需要在请求头中设置一个 writer.Header().Set("Content-Type", "application/octet-stream")那么http中的Content-Type有具体有哪些呢?他们具体的使用场…

消息中间件-RabbitMQ介绍

一、基础知识 1. 什么是RabbitMQ RabbitMQ是2007年发布,是一个在AMQP(高级消息队列协议)基础上完成的,简称MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法,由Erlang(专门针对于大…

HarmonyOS 数据管理与应用数据持久化(二)

通过键值型数据库实现数据持久化 场景介绍 键值型数据库存储键值对形式的数据,当需要存储的数据没有复杂的关系模型,比如存储商品名称及对应价格、员工工号及今日是否已出勤等,由于数据复杂度低,更容易兼容不同数据库版本和设备…

win中安装nvm进行Node版本控制

之前有安装node.js安装包的需要先给卸载掉先通过官网下载安装包nvm-setup.zip nvm官网地址命令行打开输入nvm -v,测试安装是否成功 此时如果进行node相关版本安装的话,可能下载速度过慢,此时需要更换镜像源。 斜体样式找到nvm的安装路径 &am…

Java智慧工地管理平台可视化大数据建造工地APP源码

建筑行业是国民经济的重要物质生产部门和支柱产业之一,同时,建筑业也是一个安全事故多发的高危行业。如何加强施工现场安全管理、降低事故发生频率、杜绝各种违规操作和不文明施工、提高建筑工程质量,是摆在各级政府部门、施工企业面前的一道…

CRM软件如何高效培育销售线索?

​ 通过线索培育可以挖掘出更多CRM软件销售管道中的有价值客户提高销售业绩。但机遇与挑战总是共存的,培育线索要从不同的渠道执行大量重复性的操作,人为操控不仅速度慢而且容易出错,那么企业如何高效培育销售线索? 发送个性化邮件 我们知…

时间序列预测模型实战案例(八)(Informer)个人数据集、详细参数、代码实战讲解

论文地址->Informer论文地址PDF点击即可阅读 代码地址-> 论文官方代码地址点击即可跳转下载GIthub链接 本文介绍 本篇博客带大家看的是Informer模型进行时间序列预测的实战案例,它是在2019年被提出并在ICLR 2020上被评为Best Paper,可以说Inform…

5.网络之IP

IP协议(网络层) 文章目录 IP协议(网络层)1. 报文格式2. IP地址2. 地址管理3. 特殊IP地址 IP协议(Internet Protocol,互联网协议),是TCP/IP协议栈中最核心的协议之一,通过…

wordpress版本识别

wordpress版本识别 1.通过RSS Feed识别 RSS Feed参考 访问网站/feed或者?feedrss 例如 默认结构:https://www.example.com/?feedrss2 其他结构:https://www.example.com/feed/ 返回结果中搜索 generator 可以看到直接是5.9.7版本 2.wpscan等工具扫一…

STM32 IIC 实验

1. 可以选择I2C1,也可以选择I2C2,或者同时选择,同时运行 配置时钟信号 为节约空间,选择这两个,然后选择GENERATE CODE 二、HAL_I2C_Mem_Write I2C_HandleTypeDef *hi2c:I2C设备句柄 uint16_t DevAddress&am…

Android Studio(RecyclerView)

前言 ListView的缺点&#xff0c;在RecyclerView得到了补充改善&#xff08;横纵向排列子元素、多列布局等等&#xff09; 代码 前面在适配器章节已经介绍了其对应的适配器&#xff0c;这里就简单展示一下多列布局的页面效果和相关代码 <androidx.recyclerview.widget.Recyc…

css-inpu边框

效果图&#xff1a; input {width: 225px;height: 25px;background-color: #1469bd00;border: #aca9a97d solid 1px;color: white;font-size: 15pt;box-sizing: conte-box; }input:focus {border-style: solid;border-color: #03a9f4;box-shadow: 0 0 15px #03a9f4;outline: …

微信支付更换证书最详细方法

6、在【商户平台】&#xff0c;输入操作密码&#xff0c;安全验证后生成证书串 7、在【商户平台】&#xff0c;复制证书串 8、在【证书工具】&#xff0c;粘贴证书串&#xff0c;点击下一步&#xff0c;申请证书成功 &#xff08;若提示"证书与本地公私钥不匹配&qu…

【JavaScript】零碎知识点总结_2

1. 引入网站图标 可以直接放在根目录 还可以 link 引入&#xff08;推荐&#xff09; <linkrel"shortcut icon"href"./assets/favicon.ico"type"image/x-icon">2. 转换为数字 123 -> 123 除 做字符串拼接&#xff0c;算术运算符都…