Bootstrap

YoloV8训练自己的数据集

一.下载源码

Github链接:https://github.com/ultralytics/ultralytics

二.安装环境

pip install ultralytics

三.下载预训练权重

放到yolov8根目录下

四.准备数据集

五.配置文件修改1-修改数据集路径

coco128.yml

路径:ultralyticsmain\ultralytics\cfg\datasets\coco.yaml

第一步:复制coco128.yml文件,然后粘贴一个自己的my_colo128.yml文件。

第二步:修改my_colo128.yml文件的路径和类别

 

六.配置文件修改2-修改类别数

Yolov8.yaml

路径:ultralytics-main\ultralytics\cfg\models\v8\yolov8.yaml

第一步:复制yolov8.yaml文件,然后粘贴一个自己的my_yolov8.yaml文件。

第二部:修改类别数

七.  训练验证

官方文档连接: https://docs.ultralytics.com/usage/python/

第一步:参考官方给出的训练模板

第二部:新建一个自己的训练my_train.py文件

从官方拷贝

第二部:修改自己的my_train.py

代码如下:

from ultralytics import YOLO

# Create a new YOLO model from scratch
model = YOLO('D:\project\ultralytics-main\ultralytics\cfg\models\v8\my_yolov8.yaml')

# Load a pretrained YOLO model (recommended for training)
model = YOLO('D:\project\ultralytics-main\yolov8s.pt')

# Train the model using the 'coco128.yaml' dataset for 3 epochs
results = model.train(data='D:\project\ultralytics-main\ultralytics\cfg\datasets\coco128.yaml', epochs=3)

# Evaluate the model's performance on the validation set
results = model.val()


#下面是预测和导出
# # Perform object detection on an image using the model
# results = model('https://ultralytics.com/images/bus.jpg')
#
# # Export the model to ONNX format
# success = model.export(format='onnx')

八.  预测:

第一步:新建一个自己的my_test

代码如下:

from ultralytics import YOLO
from PIL import Image
import cv2

#用自己训练好的权重用自己的"ultralytics-main1/runs/detect/train5/weights/best.pt
model = YOLO("")
# accepts all formats - image/dir/Path/URL/video/PIL/ndarray. 0 for webcam
#零是摄像头,现在不用把他注释掉
# results = model.predict(source="0")
#source=用自己的验证图片绝对路径 , save=True保存
results = model.predict(source="folder", show=True ,save=True)

八.  导出

导出onnx

官网:

代码如下:

 from ultralytics import YOLO
 model = YOLO('yolov8n.pt')
 model.export(format='onnx', dynamic=True)

九.训练自己的数据集

用自己的权重文件

;