【YOLOv8】win11使用yolov8训练自己的数据集

首先默认已经安装了cuda,cudnn和conda。新建conda环境的时候python>=3.7就行

conda create -n 环境名 python=想要的版本

先安装对应cuda版本的torch和torchvision,我的cuda版本是11.0,那么在conda环境中运行如下代码:

pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html

cuda为10.2的也可以运行上面的代码进行安装。其它版本对应关系需要自己去查一下。 

然后去git hub上下载最新的yolov8项目:

GitHub – ultralytics/ultralytics: NEW – YOLOv8 🚀 in PyTorch > ONNX > CoreML > TFLiteNEW – YOLOv8 🚀 in PyTorch > ONNX > CoreML > TFLite – GitHub – ultralytics/ultralytics: NEW – YOLOv8 🚀 in PyTorch > ONNX > CoreML > TFLite

 我选择Download ZIP后找个合适的地方解压一下。

解压以后在conda环境中,cd到ultralytics-main文件中,安装依赖包。运行:

pip install -r requirements.txt
pip install ultralytics
#也许需要安装一下这个,我忘了。不过顺手安装一下也不会坏什么事。

然后在ultralytics-main文件中新建两个文件夹weight和datasets。weight文件中保存权重文件,datasets中保存数据集:

数据集的文件结构是:

datasets
    |_____images
    |        |___train //该文件夹下存放用于训练的图片
    |        |___val //该文件夹下存放验证集
    |
    |_____labels
    |        |___train //该文件夹下存放训练集标注
    |        |___val //该文件夹下存放验证集标注
    |
    |_____class.yaml

class.yaml的内容是:

train: D:\yolov8v5\ultralytics-main\datasets\images\train  # 训练集文件夹的路径
val: D:\yolov8v5\ultralytics-main\datasets\images\val  # 验证集文件夹的路径
#你可以将验证集文件夹的路径设置成与训练集相同。这么做不会有过拟合评估,但也可以运行。
test:  # 测试集文件夹的路径,可以没有

# Classes
nc: 2  # 训练集中物品的类别数量
names: ['dog', 'cat']  # 训练集中物品的类别名称

如果不知道如何标注数据集,可以查一下。或者我之后再写一篇关于标注数据集的文章。

weight文件夹下放权重文件,不用放这么多,反正每次只会用到一个:

weight
    |__yolov8n.pt
    |__yolov8s.pt
    |__yolov8l.pt
    |__yolov8x.pt

权重文件下载地址

自此你具备了开始训练的一切条件。想要运行train操作,在ultralytics-main文件夹中新建.py文件,如train.py,复制以下代码:

from ultralytics import YOLO

model = YOLO("weights/yolov8n.pt") #用于迁移训练的权重文件路径

results = model.train(data="datasets/class.yaml",imgsz=320, epochs=100, batch=16, device=0, workers=0)

执行此文件可以开始训练。其中epochs参数表示迭代次数。workers参数不为0的话,性能较差的电脑可能会报错。其它各种参数以及其功能可以自行查找。

想要开始识别图片,也是新建.py文件,如detect.py,复制以下代码:

from ultralytics import YOLO

model = YOLO("weights/yolov8n.pt") #用于detect的权重文件路径

results = model.predict(source="ultralytics/assets", imgsz=320, show=True, save=True)

其中source参数表示等待检测的图片所在路径。

训练结果或者检测结果均会保存在ultralytics-main > runs文件夹中

物联沃分享整理
物联沃-IOTWORD物联网 » 【YOLOv8】win11使用yolov8训练自己的数据集

发表评论