电力设备类变电站火灾数据集 如何使用Yolov8准备数据、配置环境以及训练使用—变电站场景下的火灾和烟雾检测数据集 有2888张 目标检测使用
电力设备类——变电站场景下火灾和烟雾检测数据集
变电站场景因其特殊的环境,对烟和火检测严格。有很好的应用场景(也算创新之一)写论文发专利很好用。
yolov5-11 等目标检测项目都可以直接使用。
数据集总共有2888张图片,按照7:2:1的比例划分,包含2021张张训练集、577张验证集和290张测试集,以及yaml文件。labels文件夹下有对应数据集的txt标签。
使用YOLOv8训练变电站场景下的火灾和烟雾检测数据集是一个非常有应用价值的项目。以下是如何准备数据、配置环境以及训练模型的具体步骤。
1. 数据集准备
确保您的数据集按照7:2:1的比例正确划分,并且具有如下目录结构:
substation_fire_smoke_dataset/
├── images/
│ ├── train/
│ ├── val/
│ └── test/
├── labels/
│ ├── train/
│ ├── val/
│ └── test/
└── substation_fire_smoke_data.yaml
images/
:包含图像文件。labels/
:包含YOLO格式的标签文件(.txt)。substation_fire_smoke_data.yaml
:数据集配置文件。
2. 创建数据集配置文件
创建一个 substation_fire_smoke_data.yaml
文件,内容如下:
train: ../substation_fire_smoke_dataset/images/train
val: ../substation_fire_smoke_dataset/images/val
test: ../substation_fire_smoke_dataset/images/test
nc: 2 # 总共有2个类别:火和烟
names: ['fire', 'smoke']
3. 安装YOLOv8及其依赖项
首先克隆YOLOv8仓库并安装所需的依赖项:
pip install -qr https://raw.githubusercontent.com/ultralytics/ultralytics/main/requirements.txt
git clone https://github.com/ultralytics/ultralytics.git
cd ultralytics
4. 训练模型
在YOLOv8中,您可以直接使用预定义的命令来训练模型。根据您的数据集特点选择合适的模型大小(如yolov8n, yolov8s, yolov8m等)。以下是训练模型的命令示例:
python train.py --img 640 --batch 16 --epochs 100 --data substation_fire_smoke_data.yaml --cfg yolov8n.yaml --weights yolov8n.pt --name substation_fire_smoke_yolov8n
参数说明:
--img 640
:输入图像的大小。--batch 16
:批量大小(根据GPU内存调整)。--epochs 100
:训练轮数。--data substation_fire_smoke_data.yaml
:数据集配置文件路径。--cfg yolov8n.yaml
:模型配置文件路径。--weights yolov8n.pt
:预训练权重文件。--name substation_fire_smoke_yolov8n
:实验名称,用于保存训练结果。
5. 评估模型
训练完成后,您可以使用以下命令来评估模型在验证集上的性能:
python val.py --data substation_fire_smoke_data.yaml --weights runs/train/substation_fire_smoke_yolov8n/weights/best.pt --img 640 --conf 0.5 --iou 0.5
参数说明:
--data substation_fire_smoke_data.yaml
:数据集配置文件路径。--weights runs/train/substation_fire_smoke_yolov8n/weights/best.pt
:训练好的权重文件。--img 640
:输入图像的大小。--conf 0.5
:置信度阈值。--iou 0.5
:交并比阈值。
6. 测试模型
最后,您可以使用以下命令来测试模型在测试集上的表现:
python detect.py --source substation_fire_smoke_dataset/images/test --weights runs/train/substation_fire_smoke_yolov8n/weights/best.pt --conf 0.5 --save-txt --save-conf --save-crop
参数说明:
--source substation_fire_smoke_dataset/images/test
:测试图像的路径。--weights runs/train/substation_fire_smoke_yolov8n/weights/best.pt
:训练好的权重文件。--conf 0.5
:置信度阈值。--save-txt
:保存检测结果为文本文件。--save-conf
:保存置信度信息。--save-crop
:保存裁剪后的检测区域。