一、先区分清楚:你需要的是“病害”还是“虫害”
这两者常被合在一起称呼,但实际上是两套完全不同的数据集,选错方向会浪费大量时间。
- 病害:指叶片上的斑点、霉斑、枯黄等症状。经典数据集是PlantVillage(官方仓库:https://github.com/spMohanty/PlantVillage-Dataset),收录 5 万多张实验室拍摄的单片叶子照片,覆盖苹果、葡萄、番茄等作物。该数据集免费直接下载,无需注册。需要注意的是,它是在干净背景下拍摄的单片叶子,迁移到大田场景使用时效果会下降——模型在数据集上可达 95% 的准确率,落到实际田间可能降至 70% 左右。
- 虫害:指蚜虫、螟虫等害虫本身。绕不开的是IP102(https://github.com/xpwu95/IP102),共 7.5 万张图、102 类害虫,其中 1.9 万张带标注框,可用于检测任务。同样免费直接下载。
不建议使用第三方拼合的“病虫害合集”,它们并非官方权威来源。先明确需求是“病”还是“虫”,再到对应来源查找,可以节省大量时间。
数据集筛选决策流程图
为了更直观地展示如何根据任务类型和场景筛选数据集,可以参考以下决策路径:
流程图说明:
- 从任务类型开始:首先确定你的任务是分类、检测还是分割。
- 检测任务:直接选择IP102(实验室虫害检测)。
- 分割任务:直接选择PlantSeg(田间病害分割)。
- 分类任务:进一步按场景选择:
- 实验室场景→ 选择PlantVillage(实验室病害分类)
- 田间场景→ 选择Cassava(田间病害分类)
此流程图基于后文表格中的四个核心数据集(PlantVillage、IP102、Cassava、PlantSeg)构建,涵盖了主要的任务类型和场景组合。
核心数据集横向对比
为了方便快速了解四个核心数据集的关键信息,下表整理了它们的主要特征:
| 数据集名称 | 类型 | 场景 | 图片数量 | 任务类型 | 许可证 | 下载难度 | 备注 |
|---|---|---|---|---|---|---|---|
| PlantVillage | 病害 | 实验室 | 54,305张 | 分类 | CC BY 3.0(以官方 LICENSE 为准) | ⭐️ 简单(免费直接下载,无需注册) | 干净背景单片叶子,迁移到田间场景效果会下降 |
| IP102 | 虫害 | 实验室 | 75,000张(其中19,000张带标注框) | 检测 | 未明确说明(需查看官方仓库) | ⭐️ 简单(免费直接下载) | 102类害虫,包含检测标注框 |
| Cassava | 病害 | 田间 | 21,397张 | 分类 | 受Kaggle竞赛规则约束 | ⭐⭐ 中等(需注册Kaggle账号并接受规则) | 乌干达农民手机田间拍摄,包含真实干扰 |
| PlantSeg | 病害 | 田间 | 未明确说明 | 分割 | CC BY-NC 4.0(禁止商用) | ⭐⭐ 中等(需访问Zenodo) | 田间拍摄,专门用于分割任务 |
注:AI Challenger 2018 农作物病害集(61 类、4.7 万张)因原官网已停止运行,未列入对比表。建议优先使用飞桨或天池上的同类替代数据集。
如何根据表格快速筛选数据集?
按任务类型筛选:
- 分类任务:选择 PlantVillage 或 Cassava
- 检测任务:选择 IP102(包含标注框)
- 分割任务:选择 PlantSeg
按场景筛选:
- 实验室场景(干净背景):选择 PlantVillage 或 IP102
- 田间场景(真实环境):选择 Cassava 或 PlantSeg
组合筛选示例:
- 需要田间病害分类→ 选择Cassava
- 需要实验室虫害检测→ 选择IP102
- 需要田间病害分割→ 选择PlantSeg
- 需要实验室病害分类→ 选择PlantVillage
结合"下载难度"列,可以快速判断获取成本:⭐️ 简单表示可直接下载,⭐⭐ 中等表示需要注册或接受平台规则。
二、知道去哪找,更要会挑
可靠的下载入口有多个,按需选用即可。
国内网络访问友好:飞桨 AI Studio 与阿里云天池
- 飞桨 AI Studio(https://aistudio.baidu.com/datasetoverview):国内可直接下载,无需翻墙。搜索“病虫害”即可找到 PlantVillage 镜像、农业病虫害识别、小麦病害等数据集。需注册百度账号,免费使用。
- 阿里云天池(https://tianyi.aliyun.com/):可搜索水稻病害(7000 张)或 102 类害虫(2 万张 YOLO 格式)数据集。需阿里云账号,免费使用。
面向真实场景:不要只用实验室数据集
若目标是做出可实际落地的模型,应优先选择“田间实拍”的数据集。例如 Kaggle 上的Cassava 木薯叶病害(https://www.kaggle.com/competitions/cassava-leaf-disease-classification),其中 2 万多张由乌干达农民用手机在田间拍摄,包含杂草、复杂光线等真实干扰,模型迁移到实际场景时性能损失更小。下载需注册 Kaggle 账号并接受竞赛规则。
此外,Zenodo 上的PlantSeg 分割集(https://zenodo.org/records/14051480)也是田间拍摄。需特别注意:该数据集采用 CC BY-NC 4.0 许可,禁止商用。若用于商业项目,看到“NC”即应避开。
提醒:已失效的数据集不必强求
AI Challenger 2018 农作物病害集(61 类、4.7 万张)在国内曾广为使用。但原官网已停止运行,目前网络上仅存第三方转存的百度网盘链接(https://github.com/spytensor/plants_disease_detection,提取码:iksk)。此类链接随时可能失效,完整性也无保证。与其依赖该来源,不如直接使用飞桨或天池上的同类数据集,更为稳妥。
三、许可证必须逐一核对,避免版权风险
许可证是最容易出问题的环节。几个典型情况:
- PlantVillage:多标注为 CC BY 3.0(署名即可),但应以官方仓库的 LICENSE 为准。
- Zenodo 上的 PlantSeg:CC BY-NC 4.0,不可商用,违反可能面临侵权追责。
- Kaggle 上的 Cassava:受竞赛规则约束,需确认是否允许商用。
用于商业项目前,必须逐个核对官方页面的 LICENSE,不要依据镜像站的标注。此外,二手资料中的数字也不应直接照搬(例如 PlantVillage 有标 54305 的、有标 54306 的),应以官方一手信息为准。
四、如果来源过于分散,希望省力
上述来源分布在多个平台,“病”与“虫”两类、“实验室”与“田间”两种,许可证也各不相同。逐个查找、逐个判断是否可下载、是否可商用,确实费时费力。
如果你不想自己逐个平台核验,可以考虑使用数据聚合平台或学术搜索引擎,一次性查找多个来源。但请注意,无论使用何种工具,最终都需要亲自核对每个数据集的官方页面,确认其实际可得性、下载方式以及许可证条款。
说明:本文为公开资料整理,仅供参考;平台政策、价格、下载方式与链接随时可能变化,本文不保证持续更新,请以各官方页面最新信息为准。
说明:本文为公开资料整理,仅供参考;平台政策、价格、下载方式与链接随时可能变化,本文不保证持续更新,请以各官方页面最新信息为准。
五、下一步:模型训练与评估建议
选定数据集后,下一步是选择合适的模型进行训练与评估。针对上文提到的三个核心数据集,以下是一些基线模型与关键评估指标的建议,并特别提醒注意过拟合问题。
1. PlantVillage(病害分类)
- 推荐基线模型:ResNet系列(如 ResNet-50, ResNet-101)是图像分类任务的经典选择,在 PlantVillage 上被广泛用作基线。其残差结构能有效训练深层网络,快速收敛。对于追求轻量化的场景,可考虑EfficientNet或MobileNet。
- 关键评估指标:
- 准确率 (Accuracy):最直观的指标,反映模型整体分类正确率。
- 宏平均 F1 分数 (Macro-F1):当各类别样本数量不均衡时,此指标比准确率更能反映模型对少数类的识别能力。
- 注意过拟合:PlantVillage 是实验室环境下拍摄的干净背景图片,模型极易在训练集上达到很高准确率(如 95%+),但在真实田间场景(如 Cassava 数据集)上测试时性能可能大幅下降。务必使用数据增强(随机裁剪、旋转、色彩抖动)和早停法 (Early Stopping),并在独立的验证集上监控性能。
2. IP102(虫害检测)
- 推荐基线模型:YOLO系列(如 YOLOv5, YOLOv8)或Faster R-CNN。YOLO 系列在速度和精度上取得了较好平衡,适合实时检测需求;Faster R-CNN 作为两阶段检测器的代表,通常能获得更高的定位精度。
- 关键评估指标:
- 平均精度均值 (mAP):目标检测的核心指标,综合了不同 IoU(交并比)阈值和置信度阈值下的精度,常用 mAP@0.5 或 mAP@0.5:0.95。
- 每类平均精度 (AP per class):IP102 包含 102 类害虫,各类别数量差异大,查看每类的 AP 有助于发现模型对稀有类别的识别短板。
- 注意过拟合:IP102 数据量较大,但类别极多(102类),存在严重的长尾分布问题(少数类别样本极少)。建议采用类别平衡采样、焦点损失 (Focal Loss)或迁移学习(在 COCO 等大型检测数据集上预训练)来缓解过拟合到头部类别的问题。
3. Cassava(田间病害分类)
- 推荐基线模型:同样推荐ResNet或EfficientNet系列。由于 Cassava 是田间拍摄,背景复杂,Vision Transformer (ViT)或Swin Transformer等基于注意力机制的模型可能捕捉更全局的上下文信息,表现更优,但需要更多计算资源。
- 关键评估指标:
- 准确率 (Accuracy)。
- Cohen‘s Kappa 系数:该指标考虑了随机分类的准确性,对于类别不平衡的数据集(如 Cassava)能更稳健地评估模型性能,在 Kaggle 该竞赛中曾被用作官方评估指标。
- 注意过拟合:Cassava 数据量相对较小(约 2.1 万张),且包含真实环境干扰。过拟合表现为在训练集上表现良好,但在测试集或新采集的田间图片上表现差。除了常规的数据增强和早停法,强烈建议使用k 折交叉验证来更可靠地评估模型泛化能力,并考虑使用集成学习(如多个模型的预测结果取平均)来提升稳定性。
通用建议
- 划分数据集:始终将数据划分为训练集、验证集和测试集(例如 70%/15%/15%)。测试集仅在最终评估时使用一次。
- 监控训练过程:绘制训练和验证集的损失 (Loss)与准确率曲线。若验证集指标早于训练集指标开始下降,则是过拟合的明显信号。
- 利用预训练权重:几乎所有上述模型都在 ImageNet 等大型数据集上有预训练权重。使用它们进行迁移学习,可以加速收敛并提升最终性能。
选择模型时,应从项目对精度、速度和计算资源的需求出发进行权衡。建议先从上述基线模型开始,快速验证数据 pipeline 和模型可行性,再逐步尝试更复杂的架构或优化策略。
参考资料
数据集
PlantVillage
- 官方仓库:https://github.com/spMohanty/PlantVillage-Dataset
- 论文:Mohanty, S. P., Hughes, D. P., & Salathé, M. (2016). Using deep learning for image-based plant disease detection. Frontiers in Plant Science, 7, 1419. https://doi.org/10.3389/fpls.2016.01419
IP102
- 官方仓库:https://github.com/xpwu95/IP102
- 论文:Wu, X., Zhan, C., Lai, Y. K., Cheng, M. M., & Yang, J. (2019). IP102: A large-scale benchmark dataset for insect pest recognition. InProceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition(pp. 8787-8796). https://openaccess.thecvf.com/content_CVPR_2019/html/Wu_IP102_A_Large-Scale_Benchmark_Dataset_for_Insect_Pest_Recognition_CVPR_2019_paper.html
Cassava Leaf Disease Classification
- Kaggle 竞赛页面:https://www.kaggle.com/competitions/cassava-leaf-disease-classification
- 数据集下载:https://www.kaggle.com/competitions/cassava-leaf-disease-classification/data
- 相关论文:Ramcharan, A., Baranowski, K., McCloskey, P., Ahmed, B., Legg, J., & Hughes, D. P. (2017). Deep learning for image-based cassava disease detection. Frontiers in Plant Science, 8, 1852. https://doi.org/10.3389/fpls.2017.01852
PlantSeg
- Zenodo 记录:https://zenodo.org/records/14051480
- 许可证:CC BY-NC 4.0(非商业使用)
AI Challenger 2018 农作物病害数据集
- 原官网:已停止运行(原地址:https://challenger.ai/competition/pdr2018)
- 第三方转存仓库:https://github.com/spytensor/plants_disease_detection
- 相关论文:Tian, Y., Yang, G., Wang, Z., Wang, H., Li, E., & Liang, Z. (2019). Apple detection during different growth stages in orchards using the improved YOLO-V3 model. Computers and Electronics in Agriculture, 157, 417-426. https://doi.org/10.1016/j.compag.2019.01.012
平台
飞桨 AI Studio
- 官方主页:https://aistudio.baidu.com
- 数据集总览:https://aistudio.baidu.com/datasetoverview
- 文档中心:https://ai.baidu.com/ai-doc
阿里云天池
- 官方主页:https://tianyi.aliyun.com
- 数据集平台:https://tianchi.aliyun.com/dataset
- 开发者文档:https://help.aliyun.com/zh/tianchi
Kaggle
- 官方主页:https://www.kaggle.com
- 数据集页面:https://www.kaggle.com/datasets
- 竞赛页面:https://www.kaggle.com/competitions
Zenodo
- 官方主页:https://zenodo.org
- 搜索页面:https://zenodo.org/search
- 关于 Zenodo:https://about.zenodo.org
其他相关资源
- CC BY 3.0 许可证:https://creativecommons.org/licenses/by/3.0/
- CC BY-NC 4.0 许可证:https://creativecommons.org/licenses/by-nc/4.0/
- GitHub 使用指南:https://docs.github.com
- 学术搜索引擎:Google Scholar (https://scholar.google.com)、arXiv (https://arxiv.org)
注:链接有效性可能随时间变化,建议访问时确认是否为最新版本。