首页 > 分享 > 使用YOLOv8来训练一个包含5588张图像柑橘叶片病害检测数据集。数据集包含5个类别,已标注为YOLO格式,可以直接用于模型训练 柑橘数据集

使用YOLOv8来训练一个包含5588张图像柑橘叶片病害检测数据集。数据集包含5个类别,已标注为YOLO格式,可以直接用于模型训练 柑橘数据集

使用YOLOv8来训练一个包含5588张图像的柑橘叶片病害检测数据集。这个数据集包含5个类别,已标注为YOLO格式,可以直接用于模型训练。

数据集描述 数据量:5588张图像类别: 0: 黑色素(Melanose)1: 黑点(Black Spot)2: 溃烂(Canker)3: 绿色(Greening)4: 健康(Healthy)数据划分: 训练集:4470张验证集:558张测试集:560张标注格式:YOLO格式应用场景:柑橘叶片病害检测 数据集组织

假设你的数据集目录结构如下:

citrus_leaf_disease_dataset/

├── images/

│ ├── train/

│ │ ├── 000001.jpg

│ │ ├── 000002.jpg

│ │ └── ...

│ ├── val/

│ │ ├── 000001.jpg

│ │ ├── 000002.jpg

│ │ └── ...

│ └── test/

│ ├── 000001.jpg

│ ├── 000002.jpg

│ └── ...

├── labels/

│ ├── train/

│ │ ├── 000001.txt

│ │ ├── 000002.txt

│ │ └── ...

│ ├── val/

│ │ ├── 000001.txt

│ │ ├── 000002.txt

│ │ └── ...

│ └── test/

│ ├── 000001.txt

│ ├── 000002.txt

│ └── ...

└── data.yaml # 数据配置文件

数据配置文件

创建或确认data.yaml文件是否正确配置了数据集路径和类别信息:

train: ./images/train/ # 训练集图像路径

val: ./images/val/ # 验证集图像路径

test: ./images/test/ # 测试集图像路径

# Classes

nc: 5 # 类别数量

names:

- Melanose

- Black Spot

- Canker

- Greening

- Healthy # 类别名称列表

安装YOLOv8

如果你还没有安装YOLOv8,可以使用以下命令安装:

pip install ultralytics 训练模型

使用YOLOv8训练模型的命令非常简单,你可以直接使用以下命令开始训练:

cd path/to/citrus_leaf_disease_dataset/

# 克隆YOLOv8仓库

git clone https://github.com/ultralytics/ultralytics.git

cd ultralytics

# 开始训练

python yolo.py detect train data=../data.yaml model=yolov8n.pt epochs=100 imgsz=640 batch=16

在这个命令中:

data=../data.yaml:指定数据配置文件。model=yolov8n.pt:指定预训练权重,这里使用的是YOLOv8的小模型。epochs=100:训练轮数。imgsz=640:输入图像的大小。batch=16:批量大小。 模型评估

训练完成后,可以使用以下命令评估模型在验证集上的表现:

python yolo.py detect val data=../data.yaml model=runs/detect/train/weights/best.pt imgsz=640

这里的runs/detect/train/weights/best.pt是训练过程中产生的最佳模型权重文件。

模型预测

你可以使用训练好的模型对新图像进行预测:

python yolo.py detect predict source=path/to/your/image.jpg model=runs/detect/train/weights/best.pt imgsz=640 conf=0.4 iou=0.5 查看训练结果

训练过程中的日志和结果会保存在runs/detect/目录下,你可以查看训练过程中的损失、精度等信息。

数据增强

为了进一步提高模型性能,可以使用数据增强技术。以下是一个简单的数据增强示例:

安装albumentations库:

pip install -U albumentations

在yolo.py中添加数据增强:

import albumentations as A

from albumentations.pytorch import ToTensorV2

import cv2

# 定义数据增强

transform = A.Compose([

A.RandomSizedBBoxSafeCrop(width=640, height=640, erosion_rate=0.2),

A.HorizontalFlip(p=0.5),

A.VerticalFlip(p=0.5),

A.Rotate(limit=10, p=0.5, border_mode=cv2.BORDER_CONSTANT),

A.ColorJitter(brightness=0.2, contrast=0.2, saturation=0.2, hue=0.2, p=0.5),

A.GaussNoise(var_limit=(10.0, 50.0), p=0.5),

A.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]),

ToTensorV2()

], bbox_params=A.BboxParams(format='yolo', label_fields=['class_labels']))

# 在数据加载器中应用数据增强

def collate_fn(batch):

images, targets = zip(*batch)

transformed_images = []

transformed_targets = []

for img, target in zip(images, targets):

bboxes = target['bboxes']

class_labels = target['labels']

augmented = transform(image=img, bboxes=bboxes, class_labels=class_labels)

transformed_images.append(augmented['image'])

transformed_targets.append({

'bboxes': augmented['bboxes'],

'labels': augmented['class_labels']

})

return torch.stack(transformed_images), transformed_targets

注意事项 数据集质量:确保数据集的质量,包括清晰度、标注准确性等。模型选择:可以选择更强大的模型版本(如YOLOv8m、YOLOv8l等)以提高性能。超参数调整:根据实际情况调整超参数,如批量大小(batch)、图像大小(imgsz)等。监控性能:训练过程中监控损失函数和mAP指标,确保模型收敛。

通过上述步骤,你可以使用YOLOv8来训练一个柑橘叶片病害检测数据集,并使用训练好的模型进行预测。

相关知识

如何使用yolov8训练使用——马铃薯病害检测数据集,共8000张,voc或yolo格式标注 土豆数据集病害检测
如何使用yolov8训练使用 番茄病虫害检测数据集 9种 片数据3574张 已经划分好 yolo格式、voc格式,实现可视化及评估
使用YOLOv8训练该数据集农业害虫检测数据集 农业虫害数据集.该数据集的害虫类别共为三类,该数据集共4010张JPG图片,标签文件为xml格式,4010个。
【yolo数据集】花朵数据集yolo
基于YOLOv8的苹果树叶病害检测研究(附源码+数据集+可部署安装)
【叶片病虫害数据集】果树叶片病变识别 机器视觉 Python (含数据集)
如何使用这个玉米病虫害检测数据集进行YOLOv5模型的训练 玉米虫害数据集 4类
基于深度学习的植物病害检测系统(网页版+YOLOv8/v7/v6/v5代码+训练数据集)
基于深度学习的植物叶片病害识别系统(网页版+YOLOv8/v7/v6/v5代码+训练数据集)
YOLO识别病虫害数据集

网址: 使用YOLOv8来训练一个包含5588张图像柑橘叶片病害检测数据集。数据集包含5个类别,已标注为YOLO格式,可以直接用于模型训练 柑橘数据集 https://m.huajiangbk.com/newsview1612679.html

所属分类:花卉
上一篇: 柑橘溃疡与黑斑病图像数据集发布
下一篇: 我校在纳米技术缓解柑橘黄龙病氧化