• YOLOv8训练自己的数据集,十秒学会!小白一文学会YOLOv8训练全过程!适应于小白


    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

    YOLOv8训练,适合小白训练,新手YOLOv8训练自己数据集教程!超简单,超详细!!


    一、COCO本文数据集训练(标注文本格式为text)

    训练四部曲,掌握便可跑!


    1.1、YOLOv8深度学习环境搭建及安装

    1.1.1 环境详细配置

    我的显卡配置为:RTX A4000(16GB)
    具体环境:
    PyTorch 1.8.1
    Python 3.8(ubuntu18.04)
    Cuda 11.1
    依赖库按照requirements.txt文件安装即可。

    1.1.2 安装YOLOv8所需要的ultralytics库

    安装YOLOv8所需要的ultralytics库,在1.1.1的环境中,执行下述代码:

    pip install ultralytics
    
    • 1

    1.1.3 下载YOLOv8代码包

    下载YOLOv8代码包至此环境中,执行代码如下:

    git clone https://github.com/ultralytics/ultralytics.git
    
    • 1

    自动下载
    至此,环境搭建结束!

    1.2、准备自己的数据集

    1.2.1 coco格式的数据集创建(较为简单,适合新手)

    文件夹内容如下:

    ------coco(文件夹名随便起,不能有中文字符)
    ---------images
    ------------train(存放训练集图片)
    ------------test (存放测试集图片)
    ------------val (存放验证集图片)
    ---------tables
    ------------train(存放训练集标注文件)
    ------------test (存放训练集标注文件)
    ------------val (存放训练集标注文件)

    1.2.2 新建训练执行简易代码

    在YOLOv8包中,新建train.py,代码如下:

    from ultralytics import YOLO
     
    # Load a model
    # yaml会自动下载
    model = YOLO("ultralytics/cfg/models/v8/yolov8ContextAggregation.yaml")  # build a new model from scratch
    #model = YOLO("d:/Data/yolov8s.pt")  # load a pretrained model (recommended for training)
     
    # Train the model
    results = model.train(data="coco128.yaml", epochs=100, imgsz=640)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    此代码在YOLOv8包的存放位置如下图所示:
    在这里插入图片描述

    1.2.3 执行训练指令,自动配置权重和原始数据集

    在配置好的环境中,执行训练指令,如下,

    python train
    
    • 1

    然后自动下载原始数据集与权重。等待下载完成即可。

    1.3 替换原始数据集为自己的数据集(详细介绍可关注B站:AI学术叫叫兽)

    1.3.1 找到原始的数据集,将其删除,将自己的数据集上传,并更名为coco128(原始数据集的名字)

    1.3.2 修改coco128.yaml文件中的名字和类别

    路径: ultralytics/ultralytics/cfg/datasets/coco128.yaml
    做对应修改即可,如果不会修改,直接看本文1.5 路径修改教程即可!

    1.4 训练自己的数据集

    再次执行训练命令:

    python train
    
    • 1

    即可完成自己的数据集训练。

    1.5 yaml文件修改路径教学(重要!必学家人们!)

    1.5.1 报错情形

    家人们,在数据集训练以及改进模型等情形下,常会遇到修改路径的,导致报错。在此进行阐述,希望能够帮到各位粉丝!
    例如下图中遇到的错误:
    在这里插入图片描述
    即:

    FileNotFoundError: 'ultralytics/cfg/models/v8/yolov81ContextAggregation.yaml' does not exist
    
    • 1

    类似错误一般都是路径问题。

    1.5.2 错误处理

    例如:1. 模型网络配置文件:
    读懂路径:ultralytics/cfg/models/v8/yolov8ContextAggregation.yaml
    其含义为:ultralytics文件下的cfg文件中的models文件中的v8中的YOLOv8yolov8ContextAggregation.yam文件
    2. 数据集路径文件

    ultralytics/ultralytics/cfg/datasets/coco128.yaml
    
    
    • 1
    • 2

    打开该文件,找到路径配置,如下:

    path: ../datasets/coco128  # dataset root dir
    train: images/train2017  # train images (relative to 'path') 128 images
    val: images/train2017  # val images (relative to 'path') 128 images
    test:  # test images (optional)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    path表示在根目录下的datasets文件中的coco128 文件夹下
    train的路径是 images文件中的train2017 文件夹
    其它类似。
    对应自己的数据或文件路径进行增加、减少路径或修改名称即可。

    总结

    对于小白,文字教程总是显得苍白无力,对此我在B站上传了相关的视频详解。请关注B站博主:AI学术叫叫兽
    更多SCI写作技巧和创新点以及YOLO模型改进源代码等资源,均在B站上传。点开博主主页,在工房中!

  • 相关阅读:
    两数之和问题
    ImportError: /lib/libgdal.so.26: undefined symbol: sqlite3_column_table_name
    netty系列之:EventLoop,EventLoopGroup和netty的默认实现
    计算机算法分析与设计(23)---二分搜索算法(C++)
    飞桨(PaddlePaddle)数据加载教程
    【unity】关于技能释放shader.CreateGPUProgram造成卡顿,优化和定位方法。
    Linux操作系统安装与gcc和内核升级
    Spring Boot面试题
    Python全栈开发【基础-06】垃圾回收机制
    【LeetCode】【两个数组的交集】
  • 原文地址:https://blog.csdn.net/weixin_51692073/article/details/132642253