PlantVillage
收藏github2025-02-10 更新2025-02-13 收录
下载链接:
https://github.com/42nenuser/leafs
下载链接
链接失效反馈官方服务:
资源简介:
包含2152张图片的植物病害数据集,分为三个类别:早期疫病真菌、晚期疫病真菌和健康叶子。
A plant disease dataset containing 2152 images, divided into three categories: Early blight fungus, Late blight fungus, and Healthy leaves.
创建时间:
2025-01-15
原始信息汇总
叶菜病害分类数据集
简介
本项目专注于使用卷积神经网络(CNN)训练一个深度学习模型,用于分类蔬菜叶子的病害。模型被训练用于检测三个类别:早疫病真菌、晚疫病真菌、健康叶子。数据集经过预处理、增强和训练,使用TensorFlow。训练好的模型通过FastAPI后端进行推理,并提供了一个前端界面供用户交互。
模型训练过程
1. 数据集与预处理
- 数据集:
PlantVillage数据集,包含2152张图片。 - 类别:
- 早疫病真菌
- 晚疫病真菌
- 健康叶子
- 预处理步骤:
- 使用
image_dataset_from_directory()加载图片。 - 调整大小至256x256并转换为张量。
- 归一化(像素值缩放到
0和1之间)。 - 数据集划分:
- 80% 训练
- 10% 验证
- 10% 测试
- 使用
2. 数据增强
为了提高模型泛化能力和减少过拟合:
- 随机翻转(水平和垂直)。
- 随机旋转(±20度)。
- 使用
tf.keras.layers.experimental.preprocessing进行重新缩放。
3. 模型架构
模型基于卷积神经网络(CNN):
- 6个卷积层,使用
ReLU激活函数。 - 最大池化层减少空间维度。
- 全连接(密集)层,使用Softmax激活函数。
- 损失函数: 分类交叉熵,使用
Adam优化器。
4. 训练与评估
- 优化器: Adam
- 损失函数: 稀疏分类交叉熵
- 迭代次数: 50
- 结果:
- 训练准确度: 约99%
- 验证准确度: 约97-98%
- 最终测试准确度: 100%
5. 可视化模型性能
- 绘制了准确度和损失曲线以追踪模型训练。
- 分析了混淆矩阵以评估分类性能。
未来改进
- 扩展模型以分类其他植物物种的病害。
- 增强可视化以提高模型决策的可解释性。
- 优化模型以部署到边缘设备或云服务。
- 开发前端界面以实现无缝用户交互。
运行应用程序
1. 后端设置
导航到项目根目录并激活虚拟环境: sh cd /path/to/your/project source venv/bin/activate
安装依赖并运行FastAPI后端: sh pip install -r api/requirements.txt cd api python main.py
2. 前端设置
由于这是一个静态前端,使用本地服务器进行服务: sh cd frontend python -m http.server 5000 # 在端口5000上服务
3. 重要提示
- 确保你的虚拟环境已激活。
- 确保所有依赖已安装。
- 后端期望训练好的模型位于
../saved_models/3。 - 前端会向
http://localhost:8000/predict发送API调用。
搜集汇总
数据集介绍

构建方式
PlantVillage数据集的构建始于对蔬菜叶片疾病的深度学习分类模型的训练需求,采用 TensorFlow 进行数据预处理、增强及模型训练。该数据集包含2152张叶片图像,分为三大类别:早期疫病真菌、晚期疫病真菌及健康叶片。图像经过加载、调整大小、归一化处理,并按照80%、10%、10%的比例划分为训练集、验证集和测试集。
特点
该数据集的特点在于其专注于蔬菜叶片疾病的分类,提供了均衡的数据分布以支持深度学习模型的泛化能力。数据增强技术的运用,如随机翻转、旋转和缩放,有效降低了模型过拟合的风险。此外,该数据集支持模型在训练和验证过程中达到较高的准确率,显示出良好的性能。
使用方法
使用PlantVillage数据集,用户需首先设置后端,安装依赖并启动FastAPI服务。随后,配置前端,通过本地服务器进行服务。重要的是,要确保虚拟环境已激活,所有依赖已正确安装,且模型文件位于指定路径。前端通过API调用实现预测功能,为用户提供交互式的使用体验。
背景与挑战
背景概述
PlantVillage数据集是专注于蔬菜叶片病害分类的重要资源,创建于深度学习在图像识别领域得到广泛应用的背景下。该数据集由2152张图像组成,涵盖早期斑点真菌、晚期斑点真菌以及健康叶片三大类别。其由研究团队利用TensorFlow框架进行预处理、增强和训练,旨在推动卷积神经网络(CNN)在农业病害检测方面的应用,对提高作物病害识别准确率、促进精准农业发展具有显著影响力。
当前挑战
该数据集在研究领域面临的挑战主要包括:首先,数据集规模相对有限,可能导致模型泛化能力不足;其次,病害分类的精确度要求极高,这对模型架构和训练策略的设计提出了更高的要求。在构建过程中,数据预处理、增强以及模型优化等步骤均需克服大量技术难题,如确保数据标注的准确性、提高模型对不同植物病害的识别能力等。此外,将模型部署于边缘设备或云服务的优化也是当前及未来的一个重要挑战。
常用场景
经典使用场景
PlantVillage数据集在深度学习领域中被广泛用于训练和评估用于叶片疾病分类的卷积神经网络模型。该数据集包含了三种叶片状态的图像:早期斑点真菌、晚期斑点真菌以及健康叶片,为研究蔬菜叶片病害自动识别提供了基础。
实际应用
在实际应用中,基于PlantVillage数据集训练出的模型可以被部署在农场管理系统中,帮助农民快速识别蔬菜叶片上的病害,从而采取相应的防治措施,减少经济损失。此外,此类模型还能够集成到移动应用程序中,便于现场诊断。
衍生相关工作
PlantVillage数据集的广泛应用促进了相关领域的研究,如病害检测模型的优化、边缘计算设备的模型部署、以及模型解释性增强等。这些研究不仅推动了农业信息化的发展,也为其他领域的图像识别任务提供了有益的参考。
以上内容由遇见数据集搜集并总结生成



