YOLO算法智慧农业农作物害虫识别 102类植物病虫害识别 二化螟识别|田间蝼蛄识别|玉米螟识别|麦圆蜘蛛检测|柑橘凤蝶检测(web可视化界面+数据集+模型)
文章目录
🎯 YOLOv8 害虫检测系统
基于YOLOv8的农业害虫目标检测系统,能够识别和定位102种不同类型的害虫。本项目使用YOLOv8深度学习模型,对102害虫数据集进行训练,实现高效的害虫检测和识别。系统提供Web界面,支持单张图片预测、批量图片预测等功能。


🗂️ 项目结构
Project/ ├── YOLOv8/ # YOLO格式数据集 │ ├── train/ │ │ ├── images/ # 训练图片 │ │ └── labels/ # YOLO格式标签 │ ├── val/ │ │ ├── images/ # 验证图片 │ │ └── labels/ # YOLO格式标签 │ ├── runs/ │ │ └── detection/ │ │ └── weights/ │ │ └── best.pt # 训练好的模型权重 │ ├── classes.txt # 害虫类别列表 │ └── data.yaml # 数据集配置文件 ├── main.py # 主程序 - Web界面 ├── voc2yolo.py # 数据格式转换脚本 ├── train.py # 模型训练脚本 ├── predict_image.py # 单张图片预测脚本 └── README.md # 项目说明文档 └── 基于yolo的病虫害目标检测.ipynb # 项目训练脚本 🚀 快速开始
环境要求
- Python 3.8+
- CUDA 11.0+ (GPU训练推荐)
- 至少8GB RAM
安装依赖
pip install ultralytics gradio opencv-python pillow gdown 数据集准备
- 下载数据集
python download.PY - 转换数据格式
python voc2yolo.py 数据集介绍
类别和分布

以下是这些农业害虫名称的**专业中文译名**,结合植保领域常用表述整理,确保准确性和通用性: 1. rice leaf roller —— 稻纵卷叶螟 2. rice leaf caterpillar —— 稻叶夜蛾 3. paddy stem maggot —— 稻秆潜蝇 4. asiatic rice borer —— 二化螟 5. yellow rice borer —— 三化螟 6. rice gall midge —— 稻瘿蚊 7. Rice Stemfly —— 稻秆蝇 8. brown plant hopper —— 褐飞虱 9. white backed plant hopper —— 白背飞虱 10. small brown plant hopper —— 灰飞虱 11. rice water weevil —— 稻水象甲 12. rice leafhopper —— 稻叶蝉 13. grain spreader thrips —— 谷物蓟马 14. rice shell pest —— 稻壳虫 15. grub —— 蛴螬(金龟子幼虫) 16. mole cricket —— 蝼蛄 17. wireworm —— 金针虫(叩甲幼虫) 18. white margined moth —— 白缘蛾 19. black cutworm —— 小地老虎 20. large cutworm —— 大地老虎 21. yellow cutworm —— 黄地老虎 22. red spider —— 红蜘蛛(叶螨的俗称) 23. corn borer —— 玉米螟 24. army worm —— 粘虫 25. aphids —— 蚜虫(统称) 26. *Potosiabre vitarsis* —— 注:学名拼写可能有误,常见近缘种为 *Potamiaena livida*(铅色水蝇),需核对原拼写 27. peach borer —— 桃蛀螟 28. english grain aphid —— 麦长管蚜 29. green bug —— 麦二叉蚜 30. bird cherry-oat aphid —— 禾谷缢管蚜 31. wheat blossom midge —— 小麦吸浆虫 32. *Penthaleus major* —— 麦圆蜘蛛 33. longlegged spider mite —— 长腿叶螨 34. wheat phloeothrips —— 小麦皮蓟马 35. wheat sawfly —— 小麦叶蜂 36. *Cerodonta denticornis* —— 麦秆蝇 37. beet fly —— 甜菜潜叶蝇 38. flea beetle —— 跳甲(叶甲科跳甲属统称) 39. cabbage army worm —— 甘蓝夜蛾 40. beet army worm —— 甜菜夜蛾 41. Beet spot flies —— 甜菜斑潜蝇 42. meadow moth —— 草地螟 43. beet weevil —— 甜菜象甲 44. *Serica orientalis Motschulsky* —— 东方绢金龟 45. alfalfa weevil —— 苜蓿叶象甲 46. flax budworm —— 亚麻蕾螟 47. alfalfa plant bug —— 苜蓿盲蝽 48. tarnished plant bug —— 牧草盲蝽 49. *Locustoidea* —— 蝗总科 50. *Lytta polita* —— 绿芫菁 51. legume blister beetle —— 豆芫菁 52. blister beetle —— 芫菁(统称) 53. *Therioaphis maculata* Buckton —— 苜蓿斑蚜 54. *Odontothrips loti* —— 苜蓿蓟马 55. Thrips —— 蓟马属 56. alfalfa seed chalcid —— 苜蓿种子小蜂 57. *Pieris canidia* —— 菜粉蝶 58. *Apolygus lucorum* —— 绿盲蝽 59. *Limacodidae* —— 刺蛾科 60. *Viteus vitifoliae* —— 葡萄根瘤蚜 61. *Colomerus vitis* —— 葡萄锈壁虱 62. *Brevipalpus lewisi* McGregor —— 二斑叶螨 63. *Oides decempunctata* —— 十星瓢萤叶甲 64. *Polyphagotarsonemus latus* —— 侧多食跗线螨(茶黄螨) 65. *Pseudococcus comstocki* Kuwana —— 康氏粉蚧 66. *Parathrene regalis* —— 咖啡豹蠹蛾 67. *Ampelophaga* —— 葡萄天蛾属 68. *Lycorma delicatula* —— 斑衣蜡蝉 69. *Xylotrechus* —— 脊虎天牛属 70. *Cicadella viridis* —— 大青叶蝉 71. *Miridae* —— 盲蝽科 72. *Trialeurodes vaporariorum* —— 温室白粉虱 73. *Erythroneura apicalis* —— 葡萄斑叶蝉 74. *Papilio xuthus* —— 柑橘凤蝶 75. *Panonychus citri* McGregor —— 柑橘全爪螨 76. *Phyllocoptes oleiverus* Ashmead —— 橄榄瘤瘿螨 77. *Icerya purchasi* Maskell —— 吹绵蚧 78. *Unaspis yanonensis* —— 矢尖蚧 79. *Ceroplastes rubens* —— 红蜡蚧 80. *Chrysomphalus aonidum* —— 褐圆蚧 81. *Parlatoria zizyphus* Lucus —— 褐点盾蚧 82. *Nipaecoccus vastator* —— 椰粉蚧 83. *Aleurocanthus spiniferus* —— 黑刺粉虱 84. *Tetradacus c Bactrocera minax* —— 注:学名格式有误,*Bactrocera minax* 为 柑橘大实蝇 85. *Dacus dorsalis* (Hendel) —— 桔小实蝇(异名,现学名 *Bactrocera dorsalis*) 86. *Bactrocera tsuneonis* —— 蜜柑大实蝇 87. *Prodenia litura* —— 斜纹夜蛾 88. *Adristyrannus* —— 注:学名拼写存疑,暂无法准确翻译 89. *Phyllocnistis citrella* Stainton —— 柑橘潜叶蛾 90. *Toxoptera citricidus* —— 橘蚜 91. *Toxoptera aurantii* —— 棉蚜(也危害柑橘) 92. *Aphis citricola* Vander Goot —— 绣线菊蚜 93. *Scirtothrips dorsalis* Hood —— 桔蓟马 94. *Dasineura* sp. —— 瘿蚊属(某一种) 95. *Lawana imitata* Melichar —— 仿腊蝉 96. *Salurnis marginella* Guerr —— 缘脊叶蝉 97. *Deporaus marginatus* Pascoe —— 芒果切叶象甲 98. *Chlumetia transversa* —— 荔枝蛀蒂虫 99. Mango flat beak leafhopper —— 芒果扁喙叶蝉 100. *Rhytidodera bowrinii* White —— 芒果脊虎天牛 101. *Sternochetus frigidus* —— 芒果象甲 102. *Cicadellidae* —— 叶蝉科 - 
模型训练
python train.py 训练配置:
- 模型: YOLOv8n (可替换为yolov8s.pt/yolov8m.pt)
- 轮数: 30 epochs
- 批次大小: 16
- 图片尺寸: 640x640
启动Web界面
python main.py 访问 http://localhost:7860 使用害虫检测系统。
🎮 功能特性
🔍 单张图片预测
- 上传单张图片进行害虫检测
- 实时显示检测框和置信度
- 详细的检测结果统计

📁 批量图片预测
- 支持多张图片批量处理
- 生成检测结果图库
- 处理进度和结果汇总
⚙️ 系统信息
- 模型详细信息展示
- 害虫类别列表
- 使用说明文档
📊 数据集信息
害虫数据集
- 类别数量: 102种害虫
- 图片数量: 训练集 + 验证集
- 标注格式: Pascal VOC → YOLO格式

主要害虫类别
包括但不限于:
- 稻纵卷叶螟 (rice leaf roller)
- 褐飞虱 (brown plant hopper)
- 玉米螟 (corn borer)
- 蚜虫 (aphids)
- 斜纹夜蛾 (Prodenia litura)
🛠️ 核心脚本说明
download.PY
- 自动下载IP102数据集
- 解压和验证数据完整性
- 创建标准目录结构
voc2yolo.py
- 将Pascal VOC格式转换为YOLO格式
- 生成训练/验证集划分
- 创建data.yaml配置文件
train.py
- YOLOv8模型训练脚本
- 支持多种YOLOv8模型变体
- 自动保存最佳权重
main.py
- Gradio Web界面
- 实时害虫检测
- 用户友好的交互设计
📈 模型性能
- 输入尺寸: 640x640
- 置信度阈值: 可调节 (默认0.25)
- 检测类别: 102种害虫
- 推理速度: 实时检测
🎯 使用示例
单张图片检测
from ultralytics import YOLO model = YOLO("./IP102_YOLOv8/runs/IP102_detection/weights/best.pt") results = model.predict("image.jpg", conf=0.25)批量检测
results = model.predict(["img1.jpg","img2.jpg"], save=True)🔧 自定义配置
调整置信度阈值
在Web界面中滑动调节或在代码中设置:
results = model.predict(source=image, conf=0.5)# 更高阈值使用不同模型
在train.py中修改:
model = YOLO("yolov8s.pt")# 更大型号📝 注意事项
- 首次运行需要下载数据集和训练模型
- GPU加速推荐用于训练和快速推理
- 内存要求批量处理时注意系统内存
- 文件路径确保数据集路径正确配置