YOLOv5系列(三十二) 本文(2.5万字) | 再次解读yaml文件 | 从yaml到模型结构的具体实施细节 | 魔改模型结构两头 | 四头 | 等 |

141 篇文章 7 订阅

已下架不支持订阅

点击进入专栏:
《人工智能专栏》 Python与Python | 机器学习 | 深度学习 | 目标检测 | YOLOv5及其改进 | YOLOv8及其改进 | 关键知识点 | 各种工具教程


代码函数调用关系图(最详尽)

因文档特殊,不能在博客正确显示,请移步以下链接!

图解YOLOv5_v7.0代码结构与调用关系(点击进入可以放大缩小等操作)

在这里插入图片描述


文章目录

  • 看完这篇你能学会什么?
  • 1. YOLOv5 模型yaml文件解析
      • 1.1 参数部分
      • 1.2 主干部分
          • 1.3 头部部分
      • 2. yaml文件数据读取机制解析
    • 2.1 parse_model 函数代码详解
    • 2.2 自己添加模块后args到底怎么写?
  • 3.如何通过yaml文件看模型结构?
      • 4.如何把多个改进写进一个yaml文件里?
  • 7.如何添加检测头?
    • 7.1 四头(P2, P3, P4, P5)
    • 7.2 四头(P3, P4, P5, P6)
    • 7.3 四头BiFPN(P3, P4, P5, P6)
    • 7.3 五头(P3, P4, P5, P6, P7)
  • 8.如何减少检测头?
    • 8.1 两头(P3, P4)
  • 9.如何使用更深层的网络?


在这里插入图片描述


看完这篇你能学会什么?

  1. 掌握根据yaml文件画出模型结构图的能力
  2. 掌握根据模型结构图写yaml文件的能力
  • 18
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

已下架不支持订阅

yolov5s.yaml文件是用于训练和测试YOLOv5模型的配置文件,其中包含了模型的网络结构、训练参数、数据集路径等信息。下面是文件中的网络结构部分的详细解释: ``` # Network architecture nc: 80 # number of classes depth_multiple: 0.33 # model depth multiple width_multiple: 0.50 # layer channel multiple 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 backbone: # [from, number, module, args] [[-1, 1, Focus, [64, 3]], # 0-P1/2 [-1, 1, Conv, [128, 3, 2]], # 1-P2/4 [-1, 3, Bottleneck, [128]], [-1, 1, Conv, [256, 3, 2]], # 3-P3/8 [-1, 9, Bottleneck, [256]], [-1, 1, Conv, [512, 3, 2]], # 5-P4/16 [-1, 9, Bottleneck, [512]], [-1, 1, Conv, [1024, 3, 2]], # 7-P5/32 [-1, 1, SPP, [1024, [5, 9, 13]]], [-1, 3, BottleneckCSP, [1024]], [-1, 1, Conv, [512, 1, 1]]] # 10 neck: [[-1, 2, BottleneckCSP, [512]], [-1, 1, Conv, [256, 1, 1]]] # 13 head: [[-1, 1, Conv, [256, 3, 2]], # 14 [-1, 1, BottleneckCSP, [256, False]], [-1, 1, Conv, [512, 3, 2]], # 16 [-1, 1, BottleneckCSP, [512, False]], [-1, 1, Conv, [1024, 3, 2]], # 18 [-1, 1, SPP, [1024, [5, 9, 13]]], [-1, 1, BottleneckCSP, [1024, False]], # 20 [-1, 1, Conv, [512, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 6], 1, Concat, [1]], # cat backbone P4 [-1, 2, BottleneckCSP, [512, False]], # 24 [-1, 1, Conv, [256, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 4], 1, Concat, [1]], # cat backbone P3 [-1, 2, BottleneckCSP, [256, False]], # 28 [-1, 1, Conv, [256, 3, 2]], # 29-P2/8 [[-1, 14], 1, Concat, [1]], # cat head to neck [-1, 2, BottleneckCSP, [256, False]], # 31 [-1, 1, Detect, [nc, anchors]]] # 32 ``` 上面的网络结构可以分为三个部分:backbone、neck和head。 - backbone:使用CSPDarknet53网络作为基础网络来提取特征,包括10个卷积层,其中7个层采用BottleneckCSP模块来减少参数量,3个层采用普通的卷积层,最终输出三个不同尺度的特征图。 - neck:使用BottleneckCSP模块来进一步提取特征,包括2个卷积层,用于将backbone的P4和P5特征图进行融合。 - head:包含一系列卷积层、BottleneckCSP模块和SPP层,用于对特征进行进一步处理和分类。最后使用Detect层输出检测结果,其中nc表示类别数,anchors表示锚框的大小和位置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小酒馆燃着灯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值