yolov9训练

news/2024/7/11 1:49:49 标签: YOLO, 深度学习, 人工智能, python

目录

说明

python%E7%8E%AF%E5%A2%83-toc" style="margin-left:40px;">1、下载代码+安装新的python环境

2、准备数据

3、修改代码


说明

本文参考该博主的文章,在已经有数据的情况,进行简单总结。需要详细版见原文链接如下:YOLOV9保姆级教程-CSDN博客

python%E7%8E%AF%E5%A2%83">1、下载代码+安装新的python环境

代码下载:GitHub - WongKinYiu/yolov9: Implementation of paper - YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information

pycharm打开下载的yolov9的文件,点击Terminal。

先输入: conda deactivate  为了退出(base)

然后新建环境:conda create -n yolov9(环境名称) python=3.8

进入环境:conda activate yolov9

安装所需:pip install -r requirements.txt

此时我们安装的只是基础的CPU状态,如果需要使用GPU训练,需要在pytorch中找到适合自己的cuda版本的torch口令然后下载。我用的conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge

2、准备数据

新建datasets文件,包含images和labels。

新建my_data.yaml,内容如下:path改为自己的datasets位置

path: D:\documents\yolov9-main\datasets  # dataset root dir
train: images/train  # train images (relative to 'path') 128 images
val: images/val # val images (relative to 'path') 128 images
test: images/test # test images (optional)

nc: 2

# Classes
names:  
  0: crack
  1: finger

images和labels分别放置准备好训练集验证集测试集,labels是txt格式的数据

3、修改代码

–weights : 此处更改为下载的yolov9-c.pt的绝对路径
–cfg : 此处更改为yolov9-c.yaml的绝对路径
–data : 此处更改为自己新建的data.yaml的绝对路径 
–hyp : 此处更改为data/hyps/hyp.scratch-high.yaml
原本是data/hyps/hyp.scratch-low.yaml但该文件内并未找到,,,猜测为YOLOv9作者调试过程中的小疏忽版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/heart_warmonger/article/details/136249119

--batch-size 2 (按照自己实际情况修改,我的是一个GPU,暂时先改为2,不行再调整)
--epochs 200(按照自己实际情况修改,一般200比较合适)
--device 0 (按照自己实际情况修改,我的是一个GPU)(报错了,删除0,乖乖改回默认!)

左上角点击文件,点击设置,设置环境为新建的环境

最终设置结果:

在train.py中右键开始训练即可。

报错了和原博主一样,以下为解决方案:

以下为成功训练。

--------------更新--------------------

哎哎哎!没用训练一个epoch就要四个多小时????

环境配置有问题,用上GPU试试


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

相关文章

五个与iOS基础开发相关的案例:

iOS是由苹果公司开发的移动操作系统,专为iPhone、iPad和iPod touch等设备设计。iOS系统以其流畅的用户体验、丰富的功能和强大的安全性而著称,成为全球最受欢迎的移动操作系统之一。iOS基础开发则是构建在这些设备上的应用程序的过程,涉及多个…

【Datawhale组队学习:Sora原理与技术实战】AIGC技术基础知识

AIGC是什么 AIGC全称叫做AI generated content,AlGC (Al-Generated Content,人工智能生产内容),是利用AlI自动生产内容的生产方式。 在传统的内容创作领域中,PGC(Professionally-generated Content,专业生…

Jupyter Notebook的安装和使用(windows环境)

一、jupyter notebook 安装 前提条件:安装python环境 安装python环境步骤: 1.下载官方python解释器 2.安装python 3.命令行窗口敲击命令pip install jupyter 4.安装jupyter之后,直接启动命令jupyter notebook,在默认浏览器中打开jupyte…

swift 闭包捕获列表

以下函数会打印出什么? var car "Benz" let closure { [car] in print("I drive \(car)") } car "Tesla" closure() 因为 clousre 已经申明将 car 复制进去了([car]),此时clousre 里的 car…

C# Winform画图绘制圆形

一、因为绘制的圆形灯需要根据不同的状态切换颜色,所以就将圆形灯创建为用户控件 二、圆形灯用户控件 1、创建用户控件UCLight 2、设值用户控件大小(30,30)。放一个label标签,AutoSize为false(不自动调整大小),Dock为Fill(填充),textaglign为居中显示。 private Color R…

.md转pdf

1、使用vscode安装Markdown PDF Markdown PDF 打开预览转pdf,同目录下自动生成pdf文件

Prometheus结合Grafana监控MySQL,这篇不可不读!

📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜&am…

Linux操作系统的vim常用命令和vim 键盘图

在vi编辑器的命令模式下,命令的组成格式是:nnc。其中,字符c是命令,nn是整数值,它表示该命令将重复执行nn次,如果不给出重复次数的nn值,则命令将只执行一次。例如,在命令模式下按j键表…