文章目录
前言
学了yolov5很长时间了,但是突然看yaml文件还有一些不懂。现在弄明白了,写一篇记录一下,也跟大家分享一下。非常享受知识传播的快乐,虽然我写的不咋滴哈哈😊
从三个部分对yolov5s.yaml文件进行解读,分别是parameters、backbone、head这三部分。
Parameters
nc: 6 # number of classes
depth_multiple: 0.33 # model depth multiple #控制模型的深度
width_multiple: 0.50 # layer channel multiple #控制Conv的通道数
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
nc:是你数据集里面被检测的物体类别数。(这里我的数据集中物体类别是6)
depth_multiple:控制网络模型的深度(模块数和层数),相当于整体缩放因子。比如depth_multiple = 0.5,则模型所以的模块数和层数都减半。
width_multiple:控制卷积层的通道数,相当于通道数缩放因子。同理,width_multiple=0.5,则模型中的所有卷积层通道数都将减半。
anchors: 设定的初始锚框的大小,分别对应大、中、小目标,三个不同大小的特征图。每一行有六个数字,每两个数字表示一个锚框的宽和高。
注: depth_multiple和width_multiple可以用于控制模型大小和速度之间的平衡。较大的值会增加模型的大小和精度,但会增加计算量和推理时间。较小的值会减小模型的大小和精度,但会减少计算量和推理时间。
Backbone
[[-1, 1, Conv, [64, 6, 2, 2]], # 0-P1/2
[-

文章详细解读了Yolov5s.yaml配置文件中的parameters、backbone和head三大部分,包括类别数、模型深度和宽度的控制、锚框设置、网络结构如C3、SPPF模块以及检测头的功能。文章强调了参数如何影响模型大小、速度和精度之间的平衡,并介绍了不同层次的特征图在物体检测中的作用。
最低0.47元/天 解锁文章
97

被折叠的 条评论
为什么被折叠?



