YOLOv9教程,赶快学习吧!全网最快!

本文介绍了YOLOv9的使用教程,包括下载代码、设置配置文件、数据集准备以及关键结构的解读。文章着重于模型的改进和创新点,如模块设计、卷积结构、检测头和损失函数的更新。作者还预告了后续的项目更新和价格策略。
摘要由CSDN通过智能技术生成

在这里插入图片描述

Yolo v9使用教程全网首发!赶快学习吧!

论文链接:👿 YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information
代码链接:👿 https://github.com/WongKinYiu/yolov9/tree/main


同时推荐一下我的项目,正在更新最新的YOLOv9改进!
最新的YOLO系列模型,YOLOv9改进创新来啦!发论文必备!
本周末推出YOLOv9创新点项目,目前已有20+创新,预计项目推出时创新点可达到30+!后期更新包含模块、卷积、检测头、损失等改进!
⭐大家可以搜搜看,这是CSDN最具性价比的YOLO系列改进项目⭐

在这里插入图片描述

⭐四月底预计创新点可达80-100+!⭐
⭐现在入手仅$ 59.9,早入早发论文!⭐
⭐即将涨价,创新点越多,价格越贵!⭐
欢迎交流!联系QQ: 2668825911
本项目持续更新,不付费订阅也可关注等每周更新,每周开源1-2篇。

YOLOv9改进专栏|包含卷积、模块、主干等最新改进


使用教程

  首先前往官网下载代码与权重文件。

在这里插入图片描述
在这里插入图片描述
将下载的代码解压,并将预训练权重拷贝到yolov9-main工程下,将权重文件路径和配置文件路径依次填入train脚本中。
在这里插入图片描述
创建一个数据集配置文件,包含数据集路径,种类数量,种类名称

 # dataset path (改成你自己的数据集路径)
 # 数据集格式与前几代yolo相同。
train: ./dataset/images/train
val: ./dataset/images/val
test: ./dataset/images/test

# number of classes
nc: 6

# class names
names: ['missing_hole', 'mouse_bite', 'open_circuit', 'short','spur', 'spurious_copper']

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
复制刚才创建的yaml文件的路径,粘贴到train脚本的data参数中。并将hyp参数的值改为data/hyps/hyp.scratch-high.yaml

data/hyps/hyp.scratch-high.yaml

在这里插入图片描述2024.2.22日官网发布的代码存在bug,将utils工程下loss_tal脚本中的第167行中的p改为p[0]或p[1],改完能运行。(bug产生的原因是列表导致后面方法错误,具体原因正在读源码!)
在这里插入图片描述运行成功!
在这里插入图片描述

配置文件,关注我,后续更新 yolov9结构解读及代码改进

backbone:
  [
   [-1, 1, Silence, []],  
   
   # conv down
   [-1, 1, Conv, [64, 3, 2]],  # 1-P1/2

   # conv down
   [-1, 1, Conv, [128, 3, 2]],  # 2-P2/4

   # elan-1 block
   [-1, 1, RepNCSPELAN4, [256, 128, 64, 1]],  # 3

   # avg-conv down
   [-1, 1, ADown, [256]],  # 4-P3/8

   # elan-2 block
   [-1, 1, RepNCSPELAN4, [512, 256, 128, 1]],  # 5

   # avg-conv down
   [-1, 1, ADown, [512]],  # 6-P4/16

   # elan-2 block
   [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]],  # 7

   # avg-conv down
   [-1, 1, ADown, [512]],  # 8-P5/32

   # elan-2 block
   [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]],  # 9
  ]

# YOLOv9 head
head:
  [
   # elan-spp block
   [-1, 1, SPPELAN, [512, 256]],  # 10

   # up-concat merge
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [[-1, 7], 1, Concat, [1]],  # cat backbone P4

   # elan-2 block
   [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]],  # 13

   # up-concat merge
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [[-1, 5], 1, Concat, [1]],  # cat backbone P3

   # elan-2 block
   [-1, 1, RepNCSPELAN4, [256, 256, 128, 1]],  # 16 (P3/8-small)

   # avg-conv-down merge
   [-1, 1, ADown, [256]],
   [[-1, 13], 1, Concat, [1]],  # cat head P4

   # elan-2 block
   [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]],  # 19 (P4/16-medium)

   # avg-conv-down merge
   [-1, 1, ADown, [512]],
   [[-1, 10], 1, Concat, [1]],  # cat head P5

   # elan-2 block
   [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]],  # 22 (P5/32-large)
   
   
   # multi-level reversible auxiliary branch
   
   # routing
   [5, 1, CBLinear, [[256]]], # 23
   [7, 1, CBLinear, [[256, 512]]], # 24
   [9, 1, CBLinear, [[256, 512, 512]]], # 25
   
   # conv down
   [0, 1, Conv, [64, 3, 2]],  # 26-P1/2

   # conv down
   [-1, 1, Conv, [128, 3, 2]],  # 27-P2/4

   # elan-1 block
   [-1, 1, RepNCSPELAN4, [256, 128, 64, 1]],  # 28

   # avg-conv down fuse
   [-1, 1, ADown, [256]],  # 29-P3/8
   [[23, 24, 25, -1], 1, CBFuse, [[0, 0, 0]]], # 30  

   # elan-2 block
   [-1, 1, RepNCSPELAN4, [512, 256, 128, 1]],  # 31

   # avg-conv down fuse
   [-1, 1, ADown, [512]],  # 32-P4/16
   [[24, 25, -1], 1, CBFuse, [[1, 1]]], # 33 

   # elan-2 block
   [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]],  # 34

   # avg-conv down fuse
   [-1, 1, ADown, [512]],  # 35-P5/32
   [[25, -1], 1, CBFuse, [[2]]], # 36

   # elan-2 block
   [-1, 1, RepNCSPELAN4, [512, 512, 256, 1]],  # 37
   
   
   
   # detection head

   # detect
   [[31, 34, 37, 16, 19, 22], 1, DualDDetect, [nc]],  # DualDDetect(A3, A4, A5, P3, P4, P5)
  ]

  • 26
    点赞
  • 118
    收藏
    觉得还不错? 一键收藏
  • 47
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值