首页 > 系统相关 >yolov8 训练自定义数据集(windows+CPU)

yolov8 训练自定义数据集(windows+CPU)

时间:2024-07-31 10:09:04浏览次数:16  
标签:pt 定义数据 训练 windows yolov8 project fire 文件夹 CPU

本文实现使用yolov8训练自己的火灾数据集。

1. 数据的获取。

本文所使用的火灾数据集是在Roboflow上下载的。Roboflow是一款专为YOLOv8设计的自动化训练数据工具,它为YOLOv8提供了一种更便捷、更快速的方式来准备训练数据。它能够自动从开发者提供的原始图像数据中提取所需的信息,并将其转换为YOLOv8可以直接使用的格式。Roboflow还提供了一种独特的标记方式,让开发者更轻松地为图像中的物体设定标签,以便YOLOv8能够更有效地识别它们。本文将为大家介绍如何使用Roboflow来训练YOLOv8自定义数据集。

本文所使用的火灾数据集下载地址:https://universe.roboflow.com/custom-thxhn/fire-wrpgm

点击 Download this Dataset,选择YOLOv8 格式,选择  再点击 Continue 就可以下载该数据。下载下来的数据下图所示:

2. 使用 Anaconda 搭建 yolov8 虚拟环境,具体搭建环境方法看:1. Windows 环境下使用 CPU 运行 yolov8 环境搭建

3. 环境搭建好后,新建一个文件夹 yolov8_project,并在该文件夹下激活 yolov8 虚拟环境。

(1)在该环境下新建一个config文件夹,并在该文件夹下新建一个detection_fire.yaml文件,并输入以下内容:

train: E:\python_project\yolov8_project\dataset\fire_data\train
test: E:\python_project\yolov8_project\dataset\fire_data\test
val: E:\python_project\yolov8_project\dataset\fire_data\valid

#Classes
nc: 3  # replace according to your number of classes

#classes names
#replace all class names list with your classes names
names: ['Fire', 'default', 'smoke']

(2)在该文件夹下新建一个 dataset 文件夹,并把下载下来的数据集文件 fire.v8i.yolov8 重命名 fire_data,放在该文件夹下。

(3)在该文件夹下新建一个 model 文件夹,把下载下来的 yolov8 预训练模型 yolov8n.pt 放在该文件夹下。

4. 训练模型。

yolo task=detect mode=train model=./model/yolov8n.pt data=./config/detection_fire.yaml epochs=2 imgsz=640

参数:

task:表示当前模型所执行的任务类型,可以选择 segment,classify,detect,pose,obb 这五种;

mode:表示当前是模型选择训练模型、验证模式还是预测模式,可以选择 train,val,predict 这三种;

model:表示预训练模型的路径,可选择预训练模型有 yolov8n.pt, yolov8s.pt, yolov8m.pt, yolov8l.pt, yolov8x.pt 这五种;

epochs:设置模型训练轮数;

imgsz:设置输入图片大小,最好是32的倍数。

训练过程如下图所示:最终的训练结果也提示了保存在 runs\detect\train 下。

5. 使用训练好的模型进行预测。

yolo task=detect mode=predict model=runs/detect/train/weights/best.pt source=E:\python_project\data\fire2.mp4

预测结果:

 

测试数据可在网盘中 ”data_fire“ 文件夹下获取:https://pan.baidu.com/s/1dNzrVkpsXtO7uXyrMxADhA?pwd=6611

 

标签:pt,定义数据,训练,windows,yolov8,project,fire,文件夹,CPU
From: https://www.cnblogs.com/ttweixiao-IT-program/p/18332602

相关文章

  • scoop个人记录与windows termnial配置指南
    一些权限比较高的,比如虚拟机,docker,右键菜单有的就不推荐使用scoop安装了,会比较麻烦。还有一些大公司的软件,比如各种网盘,也容易scoop下载失败。还有绿色软件)scoop适合下载小工具,管理开发环境等安装scoop#设置PowerShell执行策略Set-ExecutionPolicy-ExecutionPolicyR......
  • windows11解决visual c++6.0 打开提示不兼容弹窗问题
    在Windows11系统中,打开VisualC++6.0编辑器,会弹出不兼容弹窗,如图所示下面将给出解决办法,实测有效。步骤1:重命名MSDEV.EXE文件 步骤2:修改“兼容模式”配置 步骤3:修改“目标”输入框内容 步骤4:重新启动软件 ......
  • 在 Windows 上通过 pip 使用 fastmath(gmp 或 mpir)构建 PyCrypto
    我通过pip在Windows上安装了PyCrypto,但我无法构建Crypto.PublicKey._fastmath,因为找不到GMP。我知道voidspace有一个二进制版本,但我想构建最新版本的PyCrypto在Windows上使用GMP或MPIR构建PyCrypto的_fastmath模块可能很复杂,因为没有针对此配......
  • 当运行程序发生CPU飙升怎么排查问题?
    以下内容由ChatGPT生成当运行Java程序时出现CPU飙升的情况,可能会导致系统性能下降或者应用程序不稳定。排查CPU飙升问题通常需要分几个步骤来进行:1.初步检查监控工具:使用系统监控工具(如Linux上的top或htop,Windows上的任务管理器,或macOS上的活动监视器)来确认是哪个进程占用了......
  • klist.exe 是一个 Windows 系统命令行工具,用于管理和显示用户登录到当前系统上的 Kerb
    klist|MicrosoftLearnklist.exe是一个Windows系统命令行工具,用于管理和显示用户登录到当前系统上的Kerberos令牌信息。它通常用于以下几个方面:显示当前的Kerberos令牌信息:当运行 klist 命令时,它会列出当前用户的Kerberos令牌(Ticket-GrantingTicket,TGT)及......
  • windows下jdk版本切换(bat)
    1.jdk下载Oracle官网https://www.oracle.com/cn/资源->下载->Java下载jdk当前最新版本jdk22版本jdk8版本当前页面向下拉2.脚本如下:点击查看代码@echooffchcp65001>nulecho****************jdkchangeutil*************************echo此操作需要管理员权......
  • Windows安全策略
    Windows安全策略是系统管理的一部分,用于设置和管理计算机或网络的安全配置。保护系统免受未经授权的访问和其他安全威胁。常见Windows安全策略分类:1.账户策略(AccountPolicies)账户策略管理用户账户的行为和属性,主要包括:• 密码策略:• 密码历史记录:限制用户在重复使用旧......
  • 为什么 Windows 上的 `os.execl` 会干扰 `stdin`?
    我的最小示例是null.py:importos,sysos.execl(sys.executable,sys.executable)我本以为pythonnull.py与运行python几乎相同,Ubuntu22.04上就是这种情况。然而,在Windows11上,它似乎会严重扰乱标准输入;例如,如果我按下一个键,它可能会也可能不会出......
  • 在 Windows 上使用 FFmpeg
    在Windows上使用FFmpeg进行各种多媒体操作相对直接,但需要先完成安装。下面是详细的步骤,包括如何安装和使用FFmpeg:1.安装FFmpeg下载FFmpeg:访问FFmpeg官方网站。在Windows部分,点击WindowsbuildsbyBtbN或WindowsbuildsbyZeranoe(如果有可用)。解压FFmpe......
  • 在 Visual Studio 2022 中,开发 ASP.NET 网站并在 Windows Server 2003 中进行部署
    在WindowsServer2003/WindowsXP中,是无法安装4.0以上版本.NETFramework的,最高只能到4.0。如果要在其上部署ASP.NET程序,只能选择4.0版本进行开发。一、ASP.NET网站程序开发新建项目类型:ASP.NETWeb应用程序(.NETFramework)引用包:Microsoft.AspNet.WebApi、Mic......