目标检测——YOLOv8训练自己的数据集

1.下载YOLOv8源代码

下载链接

2. 配置环境
bash 复制代码
conda create -n yolov8 python=3.8
conda activate yolov8
pip install -r requirements.txt
pip install -e .

无需执行下面这步!

bash 复制代码
pip freeze > requirements.txt # 导出conda环境中相关的包
3. 数据集准备

数据集标签的格式标注为yolo的txt格式,在labelimg选择YOLO即可,然后进行标注,最后把数据集划分为训练集,验证集,(测试集)即可

  • 非yolo的txt格式,需进行数据集格式转换,相应的转换代码:链接

  • 划分数据集代码见:链接

4.预训练模型

如果未改变网络结构,则可以加载官方在COCO数据集上训练好的预训练模型,加快网络的收敛速度,下载相应的目标检测预训练模型并导入预训练模型,下载链接:链接

5.配置参数
  • 配置数据集路径,类别等(data.yaml文件)
  • 训练轮次(epoch)
  • 批次(batchsize)
  • 数据增广等超参数...
6.开始训练

创建train.py文件,复制以下代码运行

python 复制代码
from ultralytics import YOLO
if __name__ == '__main__':
    # 加载模型
    model = YOLO("ultralytics/ultralytics/cfg/models/v8/yolov8n.yaml")
    # 加载预训练权重
    model.load("yolov8n")
    # 训练模型
    results = model.train(data="ultralytics/data/data.yaml",  
                          resume=True,
                          epochs=100,
                          project='train',
                          patience=30,
                          name='exp',
                          amp=False)
7.开始推理

创建val.py文件,复制以下代码运行

python 复制代码
from ultralytics import YOLO

if __name__ == '__main__':
    model = YOLO('runs/train/exp/weights/best.pt')
    model.val(data='dataset/data.yaml',
              split='test',
              imgsz=640,
              batch=1,
              project='runs/val',
              name='exp',
              )
8.开始预测

创建detect.py文件,复制以下代码运行。如果需要对预测的结果进行一些处理,则需要知道预测的结果张量中代表的含义,参考链接如下:链接

python 复制代码
from ultralytics import YOLO

if __name__ == '__main__':
    model = YOLO('runs/train/exp/weights/best.pt') # select your model.pt path
    model.predict(source='dataset/images/test',
                  project='runs/detect',
                  name='exp',
                  save=True, 
                  )
相关推荐
limenga10223 分钟前
TensorFlow Keras:快速搭建神经网络模型
人工智能·python·深度学习·神经网络·机器学习·tensorflow
KG_LLM图谱增强大模型2 小时前
Vgent:基于图的多模态检索推理增强生成框架GraphRAG,突破长视频理解瓶颈
大数据·人工智能·算法·大模型·知识图谱·多模态
AKAMAI2 小时前
企业如何平衡AI创新与风险
人工智能·云原生·云计算
TDengine (老段)4 小时前
优化 TDengine IDMP 面板编辑的几种方法
人工智能·物联网·ai·时序数据库·tdengine·涛思数据
数据的世界014 小时前
Visual Studio 2026 正式发布:AI 原生 IDE 与性能革命的双向突破
ide·人工智能·visual studio
shayudiandian6 小时前
深度学习中的激活函数全解析:该选哪一个?
人工智能·深度学习
视界先声6 小时前
如何选择合适的养老服务机器人
人工智能·物联网·机器人
RPA机器人就选八爪鱼6 小时前
RPA财务机器人:重塑财务效率,数字化转型的核心利器
大数据·数据库·人工智能·机器人·rpa
腾讯WeTest7 小时前
Al in CrashSight ——基于AI优化异常堆栈分类模型
人工智能·分类·数据挖掘