YOLOv8 | 训练自定义数据集


若尚未部署 YOLOv8,则可参考这篇博客:



1 处理数据集

1.1 数据集格式介绍

由于不同数据集的目录结构可能不同,因此在这里对本文所使用的示例数据集进行说明。

在这里插入图片描述
如上图所示,示例数据集的目录结构为:

  • 存放图片的目录:China_Drone/train/images
  • 存放标签的目录:China_Drone/train/annotations/xmls

图片文件为 .png 文件,而标签文件为采用 pascalVOC 格式的 .xml 文件:

在这里插入图片描述

注意:由于在划分数据集的代码中需要填写各种路径,因此在这里了解数据集的目录结构是很有必要的。



1.2 划分数据集

在 China_Drone/train 目录中新建 split_dataset.py 文件,用于编写划分数据集的代码:

在这里插入图片描述
写入如下代码,用于将原始数据集划分为训练集、验证集、测试集:

import os
import random
import shutil

# 定义目录
# 采用的是相对目录
root_dir = '.'  # 原始数据集目录
image_dir = 'images'  # 原始数据集目录下的图片目录
label_dir = 'annotations/xmls'  # 原始数据集目录下的标签目录

# 划分比例
# 训练集 : 验证集 : 测试集 = 8 : 1 : 1
train_ratio = 0.8
valid_ratio = 0.1
test_ratio = 0.1

# 设置随机种子
random.seed(42)

# 创建各种目录(用于存放拆分后的数据集)
split_dir = './road'  # 拆分后数据集目录
os.makedirs(os.path.join(split_dir, 'train/images'), exist_ok=True)
os.makedirs(os.path.join(split_dir, 'train/labels'), exist_ok=True)
os.makedirs(os.path.join(split_dir, 'valid/images'), exist_ok=
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值