Yolov5是一个独立的项目,Yolov8/v11/v26是一个统一的Python库

v8/v11/v26的库是同一个,与v5的使用方法一致,不同的版本只需要替换掉pt模型即可

一、环境搭建

   建议使用Python 3.11 版本

   数据集的制作可以看之前的文章,后期还会出一期seg多边形的数据集制作教程

创建环境:conda create -n yoloUltralytics python=3.11
激活环境:conda activate yoloUltralytics
安装yolo环境:pip install -U ultralytics
验证环境:yolo predict model=模型版本.pt source='图片地址或0自己的本机摄像头'

二、创建项目目录

1、创建一个空项目目录
2、使用创建的conda空间

三、数据集yaml

# 数据集的根目录
path: /Users/wangqingpan/Desktop/hmbaby/hf
# 训练集图片路径
train: train/images
# 验证集图片路径
val: val/images
# 测试集图片路径
test: test/images
 
# 目标种类
names:
  0: shou
  1: jiao

四、模型训练与验证

# -*- coding: utf-8 -*-
# 训练脚本

import warnings
warnings.filterwarnings('ignore')
from ultralytics import YOLO

# 加载模型
model = YOLO("../pt/yolo26s.pt")

model.train(
    data='yaml/water.yaml', # 数据集配置文件
    imgsz=640, # 训练图像尺寸
    epochs=100, # 训练轮数
    batch=100, # 批处理大小
    workers=4, # 工作线程数,默认为8
    device='', # 可运行的设备类型('cpu', 0, [0,1,2,3]),留空自动选择、
    close_mosaic=10 # 最后10轮关闭马赛克增强,有利于模型收敛
)

# 评估模型在验证集上的表现
metrics = model.val()

五、使用训练好的模型识别

# -*- coding: utf-8 -*-
# 使用训练好的模型识别

import warnings
warnings.filterwarnings('ignore')
from ultralytics import YOLO

model = YOLO("runs/detect/train-3/weights/best.pt")

model.predict(
    source='0', # 数据图像来源
    save=True, # 保存推理结果
    show=True # 显示窗口
)

六、输出ONNX

# -*- coding: utf-8 -*-
# 将训练好的模型转换为onnx格式

import warnings
warnings.filterwarnings('ignore')
from ultralytics import YOLO

# 加载模型
model = YOLO("runs/detect/train-2/weights/best.pt")

# 模型导出为onnx
path = model.export(format="onnx",simplify=True)

更多推荐