今天小编带大家学习一下YOLOv8 配置文件,用来定义不同数据集的参数和配置。这些文件包含了关于每个数据集的路径、类别数、类别标签等信息,帮助模型正确地加载和解析数据集,以便进行训练和推理。
具体来说,这些 YAML 文件的作用如下:
- 数据路径:它们通常指定了数据集的训练、验证和测试数据的路径。
- 类别数:定义了数据集中包含的类别数量(例如 COCO 数据集有 80 个类别)。
- 类别名称:列出了每个类别的名称或标签,方便模型在训练和推理时正确地识别不同类别。
- 其他配置:可能包含一些其他参数,比如图像的分辨率、批次大小等,但主要是用于数据集的配置。
每个 YAML 文件针对不同的数据集(比如 COCO、Brain Tumor、GlobalWheat2020 等),用来加载对应的数据集,以适应不同的检测或分割任务。
4o
这里小编拿第一个文件给大家讲解
# Ultralytics YOLO 🚀, AGPL-3.0 license
# African-wildlife dataset by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/detect/african-wildlife/
# Example usage: yolo train data=african-wildlife.yaml
# parent
# ├── ultralytics
# └── datasets
# └── african-wildlife ← downloads here (100 MB)
# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: ../datasets/african-wildlife # dataset root dir
train: train/images # train images (relative to 'path') 1052 images
val: valid/images # val images (relative to 'path') 225 images
test: test/images # test images (relative to 'path') 227 images
# Classes
names:
0: buffalo
1: elephant
2: rhino
3: zebra
# Download script/URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/african-wildlife.zip
这是 YOLOv8 使用的一个 .yaml
配置文件,专门为 African-wildlife 数据集设计。这个文件主要包括了数据集的路径、训练集、验证集、测试集、类别名称等关键信息。让我们逐项解释其中的配置内容:
-
基本信息:
- License: 表明该数据集受 AGPL-3.0 许可证保护。
- Documentation: 给出了相关文档链接,供用户了解更多如何使用该数据集。
- Example usage: 提供了如何在 YOLO 中使用该数据集进行训练的示例指令
yolo train data=african-wildlife.yaml
。
-
数据集路径:
path: ../datasets/african-wildlife
: 指定了数据集的根目录路径,YOLO 在训练时会根据这个路径寻找数据。
-
训练、验证和测试集:
train: train/images
: 指定了训练集图片的相对路径,1052 张图像。val: valid/images
: 指定了验证集图片的相对路径,225 张图像。test: test/images
: 指定了测试集图片的相对路径,227 张图像。
-
类别名称:
names
: 列出了数据集中的四种动物类别,分别是:- 0: buffalo(野牛)
- 1: elephant(大象)
- 2: rhino(犀牛)
- 3: zebra(斑马)
-
下载地址(可选):
download
: 提供了一个下载链接,指向数据集的压缩包(african-wildlife.zip
)。这在数据集尚未下载的情况下,可以帮助自动下载数据集。
此配置文件可以在 YOLO 中通过命令 yolo train data=african-wildlife.yaml
进行训练,系统会依据配置文件中的数据集路径和类别等信息加载数据并开始训练模型。
关于数据集的下载,如果你没有的话可以去yaml文件最后的github网址去下载
或者在train.py代码文件里面把yaml文件的位置用你想要的数据集去训练,比如我这个例子是african-wildlife.yaml
from ultralytics import YOLO
model = YOLO('yolov8n.pt')
model.train(data=r'C:/project/ultralytics-main/ultralytics-main/ultralytics/cfg/datasets/african-wildlife.yaml',batch=8,epochs=200,workers=0,device='cpu')
然后开始运行train.py,这样代码会自动下载数据集并且开始训练
如果是新手的话还是很建议这样进行训练的,开源数据集网站牵扯到标签的类型等等问题,可以先拿这些yaml文件里面的数据集练练手