YOLOv5白皮书-第Y3周:yolov5s.yaml文件解读

news/2024/7/10 23:16:11 标签: YOLO, 深度学习, 人工智能

🍨 本文为🔗365天深度学习训练营 中的学习记录博客
🍖 原作者:K同学啊|接辅导、项目定制
● 难度:夯实基础⭐⭐
● 语言:Python3、Pytorch3
● 时间:5月8日-5月12日
🍺要求:
本周任务:将yolov5s网络模型中第4层的C32修改为C31,第6层的C33修改为C32。

目录

  • 一、参数配置
  • 二、Anchors配置
  • 三、backbone
  • 四、Head

一、参数配置

加粗样式

# YOLOv5 🚀 by Ultralytics, GPL-3.0 license

# Parameters
nc: 80  # number of classes
depth_multiple: 0.33  # model depth multiple
width_multiple: 0.50  # layer channel multiple

在yolov5s.yaml中,depth_multiple和width_multiple是非常重要的参数,yolov5相比于yolov4,在模型方面最大的特点是灵活,源于其引入了depth_multiple和width_multiple这两个系数,根据对它们值的大小设定,来得到yolov5不同大小模型:

yolov5s: 
    depth_multiple: 0.33
    width_multiple: 0.50
yolov5m: 
    depth_multiple: 0.67
    width_multiple: 0.75
yolov5l: 
    depth_multiple: 1.0
    width_multiple: 1.0

depth_multiple表示channel的缩放系数,就是将配置里面的backbone和head部分有关通道的设置,全部乘以该系数即可;

而width_multiple表示BottleneckCSP模块的层缩放系数,将所有的BottleneckCSP模块的number系数乘上该参数就可以最终的层个数;

可以发现通过这两个参数就可以实现不同大小不同复杂度的模型设计,因此yolov5比yolov4更加灵活;

二、Anchors配置

yolov5中增加了自适应锚定框(Auto Learning Bounding Box Anchors),而其他yolo系列是没有的。

anchors:
  - [10,13, 16,30, 33,23]  # P3/8
  - [30,61, 62,45, 59,119]  # P4/16
  - [116,90, 156,198, 373,326]  # P5/32

YOLOv5初始化了9个anchors,在三个Detect层使用(3个feature map)中使用,每个feature map的每个grid_cell 都有三个anchor进行预测。

规则:

1.尺度越大的feature map越靠前,相对原图的下采样率越小,感受野越小,所以相对可以预测一些尺度比较小的物体,所有分配到的anchors越小;

2.尺度越小的feature map 越靠后,相对原图的下采样率越大,感受野越大,所以相对可以预测一些尺度比较大的物体,所有分配到的anchors 越大。

即可以在小特征图(feature map)上检测大目标,也可以在大特征图上检测小目标。

三、backbone

backbone:
  # [from, number, module, args]
  [[-1, 1, Conv, [64, 6, 2, 2]],  # 0-P1/2
   [-1, 1, Conv, [128, 3, 2]],  # 1-P2/4
   [-1, 3, C3, [128]],
   [-1, 1, Conv, [256, 3, 2]],  # 3-P3/8
   [-1, 3, C3, [256]],
   [-1, 1, Conv, [512, 3, 2]],  # 5-P4/16
   [-1, 6, C3, [512]],
   [-1, 1, Conv, [1024, 3, 2]],  # 7-P5/32
   [-1, 3, C3, [1024]],
   [-1, 1, SPPF, [1024, 5]],  # 9
  ]

这是yolov5s的backbone,可以看到每一个模块算一行,每行都由四个参数构成。分别是:
·from:表示当前模块的输入来自那一层的输出,-1表示来自上一层的输出。
·number:表示当前模块的理论重复次数,实际的重复次数还要由上面的参数depth_multiple共同决定,决定网络模型的深度。
·module:模块类名,通过这个类名去common.py中寻找相应的类,进行模块化的搭建网络。
·args:是一个1ist,模块搭建所需参数,channe1,kernel_size,stride,padding,bias等,会在网络搭建过程中根据不同层进行改变。

四、Head

# YOLOv5 v6.0 head
head:
  [[-1, 1, Conv, [512, 1, 1]],
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [[-1, 6], 1, Concat, [1]],  # cat backbone P4
   [-1, 3, C3, [512, False]],  # 13
 
   [-1, 1, Conv, [256, 1, 1]],
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [[-1, 4], 1, Concat, [1]],  # cat backbone P3
   [-1, 3, C3, [256, False]],  # 17 (P3/8-small)
 
   [-1, 1, Conv, [256, 3, 2]],
   [[-1, 14], 1, Concat, [1]],  # cat head P4
   [-1, 3, C3, [512, False]],  # 20 (P4/16-medium)
 
   [-1, 1, Conv, [512, 3, 2]],
   [[-1, 10], 1, Concat, [1]],  # cat head P5
   [-1, 3, C3, [1024, False]],  # 23 (P5/32-large)
 
   [[17, 20, 23], 1, Detect, [nc, anchors]],  # Detect(P3, P4, P5)
  ]

http://www.niftyadmin.cn/n/315048.html

相关文章

MySQL-函数

1.什么是函数 函数在计算机语言的使用中贯穿始终,函数的作用是什么呢?它可以把我们经常使用的代码封装起来, 需要的时候直接调用即可。这样既 提高了代码效率 ,又 提高了可维护性 。在 SQL 中我们也可以使用函数 对检索出来的数据…

抖音AI绘画变成真人软件

抖音AI绘画成人软件的发展可能包括以下几个方面: 算法优化:随着深度学习算法的不断发展,未来该技术可能会通过改进模型架构、优化训练方式等手段,提高生成图像的质量和自然度。 多样化的绘画风格:为了满足用户…

JAVA 集合Set hashCode

第一,继承关系; AbstractSet 抽象类,实现了hashCode、equals 这两个比较时需要用到的方法 |---------------HashSet |--------------LinkedHashSet |---------------TreeSet 第二,顺序性; 集合(Set&#xff0…

Spring Cloud Alibaba--Nacos集群配置

文章目录 一、Nacos持久化配置二、Nacos集群配置三、避坑指南集群端口号冲突问题内存不足,无法启动的问题 一、Nacos持久化配置 Nacos默认自带的是嵌入式数据库derby,Nacos采用了集中式存储的方式来支持集群化部署,目前只支持MySQL的存储。 …

axios的安装和使用

目录 安装使用 Axios 是一个基于 Promise 的 HTTP 客户端,可以用于浏览器和 Node.js。 优点: 支持Promise API:Axios使用Promise API来处理异步请求,从而使得代码更加简洁和易于理解。 支持浏览器和Node.js:Axios可以…

AI模型部署记录(一)-ChatGLM:清华开源本地部署(2023/05/06更新)

文章首发及后续更新:https://mwhls.top/4500.html,无图/无目录/格式错误/更多相关请至首发页查看。 新的更新内容请到mwhls.top查看。 欢迎提出任何疑问及批评,非常感谢! 此处等待汇总页面。 本来这篇是为了打比赛写的&#xff0c…

学习网络安全有哪些就业方向?网络安全就业前景!

在当下,网络安全是非常重要的,与我们的生活息息相关,因此网络安全课程也成为了热门技术,引发众多人学习。那么学习网络安全有哪些就业方向?我想很多人都不太了解,接下来我们一起来看看吧。 首先说一下什么是网络安全…

您应该查看的5个ChatGPT WordPress插件

要创建免费网站?从易服客建站平台免费开始 500M免费空间,可升级为20GB电子商务网站 您应该查看的5个ChatGPT WordPress插件 发布于 2023年4月1日 ChatGPT 席卷了数字世界。作为内容创建者或营销者,您可能希望通过在您的网站上使用ChatGPT…