2、PyTorch训练YOLOv11—训练篇(detect)—Windows系统

1、标注样本

使用labelImg标注样本,注意选择YOLO模式

labelImg下载地址 github.com

2、安装ultralytics包

先进入到自己创建的conda环境中,把包安装到该环境里

pip install ultralytics

如果已经有了ultralytics,可以更新最新版本

pip install -U ultralytics

最终 miniconda3\envs\你的环境名\Lib\site-packages 里有个ultralytics文件夹

用pyCharm打开这个文件夹,可以方便的查看一些py文件

3、组织样本

以coco8为例,学习组织和训练自己的样本。样本目录样式如下(建议有test文件夹)

--coco8
     |--images
            |--train    图片
            |--val
            |--test
     |--labels
            |--train    标注的txt
            |--val
            |--test

直接复制链接用浏览器下载,解压后放到D:/datasets中

download: https://github.com/ultralytics/assets/releases/download/v0.0.0/coco8.zip

自己创建个yaml用于指定目录等,如下图所示

 内容样式如下:

#图片路径。防止意外,使用了绝对路径
train: D:/datasets/coco8/images/train
val: D:/datasets/coco8/images/val
test: D:/datasets/coco8/images/test

#类别数
nc: 2

#具体的类别名
names:
  0: cat    #0前面有两个空格
  1: dog   

由于自己创建了myData.yaml,所以不用管yolo11.yaml(在 miniconda3\envs\你的环境名\Lib\site-packages\ultralytics\cfg\models\11 里)和自动生成的settings.json这两个文件。

4、训练YOLO

main.py内容如下

from ultralytics import YOLO
def myFun():
    # 训练
    model = YOLO("yolo11n.pt")
    results = model.train(data="D:/datasets/coco8.yaml", epochs=1, batch=1, imgsz=640)

if __name__ == '__main__':
    myFun()

运行,得到模型

 预测看下效果 Predict - Ultralytics YOLO Docs

 目标检测实战:使用YOLOv11训练自己的数据集_yolo模型训练实战-CSDN博客

训练得到的指标含义 YOLOv5性能评估指标->mAP、Precision、Recall、FPS、Confienc (讲解论文关注的主要指标)_yolov5目标检测模型评估指标-CSDN博客

YOLO11参数含义yolov11 常用参数(无废话)_yolo11参数-CSDN博客

【其他】

yolo训练参数的含义 【YOLOv8】修改默认的配置文件_yolov8怎么改detect文件-CSDN博客

VS使用conda虚拟环境,管理 Python 环境和解释器 - Visual Studio (Windows) | Microsoft Learn

settings.json参数的含义

 【参考】

官网 GitHub - ultralytics/ultralytics: NEW - YOLOv8 🚀 in PyTorch > ONNX > OpenVINO > CoreML > TFLite

参考 手把手教你使用YOLOv11训练自己数据集(含环境搭建 、数据集查找、模型训练)-CSDN博客

 

【关于settings.json默认生成位置】此内容看看就行,不用在意

 该文件里指定了settings.json默认生成的位置

    if WINDOWS:
        path = Path.home() / "AppData" / "Roaming" / sub_dir
    elif MACOS:  # macOS
        path = Path.home() / "Library" / "Application Support" / sub_dir
    elif LINUX:
        path = Path.home() / ".config" / sub_dir
    else:
        raise ValueError(f"Unsupported operating system: {platform.system()}")

windows系统默认生成在 C:\Users\admin\AppData\Roaming\Ultralytics

ubuntu系统默认生成在 /home/用户名/.config/Ultralytics

如果想指定生成路径

# -------------------- 设置YOLO配置文件的路径(即settings.json文件路径)
import os

os.environ['YOLO_CONFIG_DIR'] = "D:/datasets"
# 查看下是否设置成功
print(f"YOLO_CONFIG_DIR: {os.getenv('YOLO_CONFIG_DIR')}")

# -------------------- 载入YOLO
from ultralytics import YOLO

运行,之后在D:/datasets中自动生成了settings.json文件

posted @ 2024-10-09 15:40  夕西行  阅读(1634)  评论(0编辑  收藏  举报