一.下载源码
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)
九.训练自己的数据集
用自己的权重文件