【Week-Y7】使用自己的数据集训练YOLO-v8

devtools/2024/12/22 11:28:27/

文章目录

  • 一、官方环境配置与测试
    • 1. 配置环境
    • 2. 用官方图片测试(图片下载失败)
    • 3. 用本地图片测试,检查配置的环境是否可用
  • 二、使用自己的数据集进行训练测试
    • 1. 执行split_train_val.py文件
    • 2. 执行python .\voc_label.py文件
    • 3. 创建fruit.yaml文件
  • 三、准备训练

  • 🍨 本文为🔗365天深度学习训练营 中的学习记录博客
  • 🍖 原作者:K同学啊 | 接辅导、项目定制

本次学习的模型为YOLO-v8,先调用官方模型测试,检查源码环境配置是否正确,其次使用本地数据集进行训练。
【🔗YOLO-v8开源地址】
【🔗水果数据集地址】

环境:

  • PC端,VSCode,CPU
    目录结构:
  • 主目录
    • paper_data(自定义文件,将数据集放到这里)
      • annotations(每张图片的.xml文件)
      • images(图片文件)
      • ImageSets
        • Main(执行split_train_val.py文件后,自动在该文件夹内生成train.txt、val.txt、test.txt、trainval.txt四个文件,分别存放训练集、验证集、测试集图片的名字)
      • fruit.yaml(数据集及数据类别声明文件)
      • split_train_val.py(划分训练集、验证集与测试集)
      • voc_label.py(填充训练集、验证集与测试集的图片路径)在这里插入图片描述

一、官方环境配置与测试

参考给出的md文档:
在这里插入图片描述

1. 配置环境

直接安装:pip install ultralytics
在这里插入图片描述

2. 用官方图片测试(图片下载失败)

在终端输入:yolo predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'
在这里插入图片描述
图片下载失败,改为本地图片。

3. 用本地图片测试,检查配置的环境是否可用

在终端输入:yolo predict model=yolov8n.pt source='D:\\jupyter notebook\\DL-100-days\\datasets\\Cats&Dogs Data2\\cat\\flickr_cat_000111.jpg'
在这里插入图片描述
测试结果:
在这里插入图片描述

二、使用自己的数据集进行训练测试

1. 执行split_train_val.py文件

【之前的文章里有源码,此处不再赘述,在之前的文件中修改路径即可】
在这里插入图片描述
在这里插入图片描述

2. 执行python .\voc_label.py文件

【之前的文章里有源码,此处不再赘述,在之前的文件中修改路径即可
在这里插入图片描述
在这里插入图片描述

3. 创建fruit.yaml文件

【之前的文章里有源码,此处不再赘述,在之前的文件中修改路径即可
在这里插入图片描述

三、准备训练

在这里插入图片描述
执行:yolo task=detect mode=train model=yolov8s.yaml data="D:/jupyter notebook/365-DL/YOLO/Y7/ultralytics-main/paper_data/fruit.yaml" epochs=100 batch=4

运行结果如下:
在这里插入图片描述
100个epoch耗时2.411小时。各类别的训练结果如下:
在这里插入图片描述
train_batch0.png如下:
在这里插入图片描述

val_batch0_labels.png如下:
在这里插入图片描述

【本文相关源码&数据集】


http://www.ppmy.cn/devtools/26980.html

相关文章

K8S集群安装

安装Docker sudo yum remove docker* sudo yum install -yum-utils ​ #配置docker的yum镜像仓库 sudo yum-config-manager \ --add-rep \ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo ​ #安装指定版本docker... sudo yum install -y docker-ce-19.03…

PNC数字货币合约理财项目:抢占先机,学会新时代的数字理财

合约交易是指买卖双方对约定未来某个时间按指定价格接收一定数量的某种资产的协议进行交易。数字货币合约交易就是现在约好未来某个时间交易一定数量的数字货币。在区块链被越来越多的人认可之时,数字货币合约交易已成为广大投资者参与区块链获得利润的重要手段。 正…

【Rust】——使用Drop Trait 运行清理代码和Rc<T> 引用计数智能指针

💻博主现有专栏: C51单片机(STC89C516),c语言,c,离散数学,算法设计与分析,数据结构,Python,Java基础,MySQL,linux&#xf…

用Jenkins Gerrit-Trigger插件实现提交gerrit后自动启动编译验证-解决编译依赖问题

用Jenkins Gerrit-Trigger插件实现提交gerrit后自动启动编译验证-CSDN博客讨论了如何利用插件在提交gerrit的时候自动出发一个jenkins job编译固件,但是没有解决编译依赖问题。本文提出一种解决方案 首先在git commit -m ""的时候在commit message中设置Depend-On:…

项目总结(一)docker总结

目录 一、引言 二、docker ------>2.1、docker介绍 ------>2.2、与虚拟机的区别 ------>2.3、Docke基本概念 ------>2.4、Docker内部结构 ------>2.5、Windows上使用docker ------>2.6、Linux上使用Docker ------>2.7、Docker常用命令 ------&g…

Android无法开机卡在开机界面问题解决

问题描述 对Android操作系统进行一些修改后,例如: service相关 servicerc文件xml文件 lib相关 so动态库 等等,有可能导致一直卡在开机界面 问题原因 未知的原因 问题解决 有几种可以观察到现象的方案: 1. 音量上电源键 …

Acrobat Pro DC 2023:专业PDF编辑软件,引领高效办公新时代

Acrobat Pro DC 2023是一款专为Mac和Windows用户设计的专业PDF编辑软件,凭借其强大的功能和卓越的性能,成为现代职场人士不可或缺的得力助手。 这款软件拥有出色的PDF编辑能力。用户不仅可以轻松地对PDF文档中的文字、图片和布局进行编辑和调整&#xf…

【Python】指定正负样本在逻辑回归和随机森林模型训练中的重要性

太多的借口 太多的理由 为了爱情 我也背叛了所有 如果你想离开我 就别再畏畏缩缩 太多的借口 太多的理由 别再问我难过时候怎么过 或许会好好地活 或许会消失无踪 你在乎什么 🎵 陈冠蒲《太多》 在机器学习的分类问题中,正确地指定…