首页 > 分享 > 10种农作物叶子病害图像的数据集,注意是分类数据集,标注图片5万张,包含10种植物(苹果、樱桃、葡萄、柑桔、桃、草莓、番茄、辣椒、玉米、马铃薯)的27种病害,合计61个分类(按“物种

10种农作物叶子病害图像的数据集,注意是分类数据集,标注图片5万张,包含10种植物(苹果、樱桃、葡萄、柑桔、桃、草莓、番茄、辣椒、玉米、马铃薯)的27种病害,合计61个分类(按“物种

10种农作物叶子病害图像的数据集,注意是分类数据集,标注图片5万张,包含10种植物(苹果、樱桃、葡萄、柑桔、桃、草莓、番茄、辣椒、玉米、马铃薯)的27种病害,合计61个分类(按“物种-病害-程度”分),并附keras训练代码

农作物叶子病害图像分类数据集介绍 数据集概览 图像数量: 50,000张类别数量: 61个(按“物种-病害-程度”划分)植物种类: 10种(苹果、樱桃、葡萄、柑桔、桃、草莓、番茄、辣椒、玉米、马铃薯)病害种类: 27种任务类型: 图像分类格式: 标注图片,每个类别都有对应的标签 植物和病害分类

该数据集涵盖了10种常见农作物的叶子,并针对每种植物的不同病害进行了详细的分类。以下是具体的植物和病害分类:

植物种类:

苹果 (Apple)樱桃 (Cherry)葡萄 (Grape)柑桔 (Citrus)桃 (Peach)草莓 (Strawberry)番茄 (Tomato)辣椒 (Pepper)玉米 (Corn)马铃薯 (Potato)

病害种类:

每种植物有多种病害,总共27种不同的病害。每种病害还根据病害的程度进行细分,形成最终的61个分类。 数据集结构

假设数据集文件夹结构如下:

plant_disease_dataset/

├── train/

│ ├── Apple___Apple_scab_severe

│ ├── Apple___Black_rot_moderate

│ ├── ...

│ └── Potato___Early_blight_severe

├── val/

│ ├── Apple___Apple_scab_severe

│ ├── Apple___Black_rot_moderate

│ ├── ...

│ └── Potato___Early_blight_severe

├── test/

│ ├── Apple___Apple_scab_severe

│ ├── Apple___Black_rot_moderate

│ ├── ...

│ └── Potato___Early_blight_severe

└── labels.txt

train/, val/, test/ 目录分别存放训练集、验证集和测试集的图像。每个子目录对应一个具体的分类,例如 Apple___Apple_scab_severe 表示苹果上严重的苹果黑星病。labels.txt 文件列出了所有类别的名称及其对应的索引。 labels.txt 文件示例

plaintext

深色版本

0,Apple___Apple_scab_severe

1,Apple___Black_rot_moderate

...

60,Potato___Early_blight_severe

使用场景 病害识别: 用于自动识别不同农作物上的病害类型及严重程度。农业监测: 帮助农民和研究人员快速发现并处理作物病害问题。智能农业: 结合其他技术如无人机监控,实现大规模农田的自动化管理。 Keras 训练代码示例

以下是一个使用Keras框架进行模型训练的代码示例。我们将使用预训练的ResNet50模型作为基础,并在其上添加全连接层来进行分类。

import os

import numpy as np

import tensorflow as tf

from tensorflow.keras.preprocessing.image import ImageDataGenerator

from tensorflow.keras.applications.resnet50 import ResNet50

from tensorflow.keras.layers import Dense, GlobalAveragePooling2D

from tensorflow.keras.models import Model

from tensorflow.keras.optimizers import Adam

# 数据集路径

data_dir = '/path/to/plant_disease_dataset'

train_dir = os.path.join(data_dir, 'train')

val_dir = os.path.join(data_dir, 'val')

# 图像生成器

datagen = ImageDataGenerator(

rescale=1./255,

rotation_range=20,

width_shift_range=0.2,

height_shift_range=0.2,

shear_range=0.2,

zoom_range=0.2,

horizontal_flip=True,

fill_mode='nearest'

)

# 训练集生成器

train_generator = datagen.flow_from_directory(

train_dir,

target_size=(224, 224),

batch_size=32,

class_mode='categorical'

)

# 验证集生成器

val_generator = datagen.flow_from_directory(

val_dir,

target_size=(224, 224),

batch_size=32,

class_mode='categorical'

)

# 加载预训练的ResNet50模型

base_model = ResNet50(weights='imagenet', include_top=False, input_shape=(224, 224, 3))

# 添加全局平均池化层

x = base_model.output

x = GlobalAveragePooling2D()(x)

# 添加全连接层

x = Dense(1024, activation='relu')(x)

predictions = Dense(61, activation='softmax')(x) # 61个类别

# 构建最终模型

model = Model(inputs=base_model.input, outputs=predictions)

# 冻结基础模型的层

for layer in base_model.layers:

layer.trainable = False

# 编译模型

model.compile(optimizer=Adam(lr=0.0001), loss='categorical_crossentropy', metrics=['accuracy'])

# 打印模型概要

model.summary()

# 训练模型

history = model.fit(

train_generator,

steps_per_epoch=len(train_generator),

epochs=10,

validation_data=val_generator,

validation_steps=len(val_generator)

)

# 保存模型

model.save('plant_disease_classifier.h5')

这段代码展示了如何加载数据、构建模型、编译模型以及训练模型。你可以根据实际需要调整参数和模型结构。

相关知识

农业病虫害数据集与算法——调研整理
EfficientNet实现农业病害识别(FastDeploy部署和安卓端部署)
基于深度学习的农作物叶片病害检测系统(UI界面+YOLOv5+训练数据集)
深度学习——植物、农作物图像数据集大合集(二)
深度学习在植物叶部病害检测与识别的研究进展
苹果叶片病理分类数据集,数据集包括(a)健康叶片; (b) 苹果链格孢叶斑病; (c) 褐斑病; (d) 蛙叶斑病; (e) 灰斑; (f) 苹果花叶病; (g) 白粉病; (h) 叶片锈病; (i)
细粒度分类数据集汇总
基于深度学习的植物叶片病害识别系统(网页版+YOLOv8/v7/v6/v5代码+训练数据集)
基于YOLOv8的苹果树叶病害检测研究(附源码+数据集+可部署安装)
【植物细菌病害】植物细菌病害有哪些

网址: 10种农作物叶子病害图像的数据集,注意是分类数据集,标注图片5万张,包含10种植物(苹果、樱桃、葡萄、柑桔、桃、草莓、番茄、辣椒、玉米、马铃薯)的27种病害,合计61个分类(按“物种 https://m.huajiangbk.com/newsview222910.html

所属分类:花卉
上一篇: 病虫害预测模型比较
下一篇: SEL 迁移学习增强的土壤病害预