YOLOV8如何训练自己的图片分类模型

YOLO8不仅仅可以胜任目标检测任务,目前YOLO8还支持图片分类、实例分割、人体关键点检测。本篇文章介绍如何使用YOLO8训练一个自己的图片分类模型。 YOLO8训练目标检测模型的方法参见本人主页的另外一篇文章:如何使用YOLOV8训练自己的目标检测模型

首先准备好ImageNet格式的数据集,我这里以81类水果图片分类数据集为例。ImageNet数据集应该具有一下目录结构

train
├── 类别1

            |——图片1

            |——图片2

            |——......
└── 类别2

            |——图片1

            |——图片2

            |——......

........

val
├── 类别1

            |——图片1

            |——图片2

            |——......
└── 类别2

            |——图片1

            |——图片2

            |——......

 准备好数据集之后,还需要配置YOLO8的运行环境,详见本人主页的这篇文章

按照上面的文章在anaconda中配置好虚拟环境之后,我们就可以着手开始训练,训练的方式有很多,我们这里选择python程序训练。在训练之前,文件目录如下面图片所示

datas文件夹下是数据集图片,trian.py是训练脚本,yolov8m-cls.pt是模型模型(我们这里选择使用yolov8m-cls基础模型),yolov8n.pt是模型训练过程中做混合精度验证用到的。这些模型权重都可以在ultralytics官网下载 

train.py文件代码如下:

from ultralytics import YOLO
#这里使用的是linux系统进行训练 配置好YOLO8环境,一键运行该文件即可自动训练

# Load a model
#model = YOLO('yolov8n-cls.yaml')  # build a new model from YAML
model = YOLO('yolov8m-cls.pt')  # load a pretrained model (recommended for training)
#model = YOLO('yolov8n-cls.yaml').load('yolov8n-cls.pt')  # build from YAML and transfer weights

# Train the model
#data参数指定数据集路径(文件夹),
#注意workers在windows系统中指定为0
results = model.train(data='datas', batch=32,workers=16,epochs=250,imgsz=224)

 之后即可在conda虚拟环境中的YOLO8环境下开展训练(我这里的环境名称为pytorch_learn)

之后,控制台窗口会有一系列的日志输出

经过一段时间等待之后,在目录下的runs文件夹下会自动生成训练过程记录,包含模型权重、混淆矩阵、PR曲线、loss曲线等 

  • 11
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
基于YOLOv8的牛羊识别检测系统源码(部署教程+训练好的模型+各项评估指标曲线).zip 平均准确率:0.91 类别:“sheep”,“cow” 【资源介绍】 1、ultralytics-main ultralytics-main为YOLOv8源代码,里面涵盖基于yolov8分类、目标检测额、姿态估计、图像分割四部分代码,我们使用的是detect部分,也就是目标检测代码 2、搭建环境 安装anaconda 和 pycharm windows系统、mac系统、Linux系统都适配 在anaconda中新建一个新的envs虚拟空间(可以参考博客来),命令窗口执行:conda create -n YOLOv8 python==3.8 创建完YOLOv8-GUI虚拟空间后,命令窗口执行:source activate YOLOv8 激活虚拟空间 然后就在YOLOv8虚拟空间内安装requirements.txt中的所有安装包,命令窗口执行:pip install -r requirements.txt 使用清华源安装更快 3、训练模型过程 进入到\ultralytics-main\ultralytics\yolo\v8\detect\文件夹下,datasets即为我们需要准备好的数据集,训练其他模型同理。 data文件夹下的bicycle.yaml文件为数据集配置文件,该文件为本人训练自行车检测模型时创建,训练其他模型,可自行创建。博文有介绍https://blog.csdn.net/DeepLearning_?spm=1011.2415.3001.5343 train.py中238行,修改为data = cfg.data or './bicycle.yaml' # or yolo.ClassificationDataset("mnist") 237行修改自己使用的预训练模型 若自己有显卡,修改239行,如我有四张显卡,即改成args = dict(model=model, data=data, device=”0,1,2,3“) 以上配置完成后运行train.py开始训练模型训练完毕后会在runs/detect/文件夹下生成train*文件夹,里面包含模型和评估指标等 4、推理测试 训练模型,打开predict.py,修改87行,model = cfg.model or 'yolov8n.pt',把yolov8n.pt换成我们刚才训练完生成的模型路径(在\ultralytics-main\ultralytics\yolo\v8\detect\runs\detect文件夹下),待测试的图片或者视频存放于ultralytics\ultralytics\assets文件夹, 运行predict.py即可,检测结果会在runs/detect/train文件夹下生成。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

城南皮卡丘

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

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

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

打赏作者

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

抵扣说明:

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

余额充值