YoloV8目标检测模型训练
图片标注
使用label-studio进行标注。
模型训练
-
从 Git 克隆代码
-
准备数据集
# 将label studio导出的yolo格式数据集,用handle_train_data.py切分
# 数据集目录
# xxxx-20240914 // 数据标注根目录
# ├─train // 训练集用于模型的学习和训练
# | ├─images // 图片存放目录
# | └─labels // 标注结果存放目录
# ├─val // 验证集用于模型的调优和验证,避免过拟合
# | ├─images // 图片存放目录
# | └─labels // 标注结果存放目录
# ├─test // 测试集用于模型的最终评估,衡量其在真实环境中的性能
# | ├─images // 图片存放目录
# | └─labels // 标注结果存放目录
# └─data.yaml // 数据集配置
# data.yaml配置:
path: xxxx-20240914 # dataset root dir
train: train # train images (relative to 'path') 118287 images
val: val # val images (relative to 'path') 5000 images
test: test # 20288 of 40670 images, submit to
# Classes
nc: 2 # number of classes
names: [
'class1',
'class2'
]
- 修改训练参数并启动训练
# 修改train.py
# 主要修改以下几个,其余根据需要修改
# 修改为训练集文件夹名称
data_name = 'xxxx-20240914'
# 首次训练则启用行
model = YOLO('models/yolov8x.pt')
# 二次训练则启用行
model = YOLO(f'runs/train/train-{data_name}{train_idx}/weights/best.pt')
# 修改从哪次结果继续训练,首次为空
train_idx = '2'
# 如需随机角度内旋转数据增强则修改
degrees=100
- 启动训练
python train.py
模型测试
# 修改test.py
# 主要修改以下几个,其余根据需要修改
# 修改为训练集文件夹名称
data_name = 'xxxx-20240914'
# 修改从哪次结果测试,第一次为空
train_idx = '2'
# 修改为第几次测试结果,第一次为空
detect_idx = '2'
原链接:YoloV8目标检测模型训练
最后修改于 2024-09-14