Plant Health Monitor 是一个基于深度学习的植物病害检测系统,通过分析植物叶片图像实时检测病害。系统采用PyTorch框架构建模型,支持在Windows和树莓派上运行,适用于农业生产环境。
PLANTHEALTHMONITOR
├── dataset
│ └── introduction.md
├── models
│ ├── best_model.pth
│ └── finetuning_model.pth
├── src
│ ├── inference
│ │ ├── raspberry_pi
│ │ │ └─inference_raspberry_pi.py
│ │ └── windows
│ │ └── inference_windows.py
│ ├── training
│ │ └── train.py
├── LICENSE
├── README.md
└── requirements.txt
使用 PlantVillage 数据集,包含超过 5 万张植物病害叶片图像,涵盖26类病害。
-
准备环境安装 Python 3.6+(使用了3.7及以上的dataclass方法,现建议安装3.7以上版本python),建议使用虚拟环境(如在树莓派上安装环境不要破坏原系统python依赖!!!):
python -m venv venv source venv/bin/activate # 激活虚拟环境
-
安装依赖库
pip install -r requirements.txt
-
训练模型 将数据集放入
dataset/
目录下,然后运行:python src/train.py
-
推理
-
Windows确保PC连接摄像头并运行:
python src/inference_windows.py
-
树莓派 确保树莓派连接摄像头、用gpio口喇叭模块并运行:
python3 src/inference_raspberry_pi.py
-
由于剔除了背景的数据集导致在没有树叶的时候错误识别,后续可以重新训练,目前的解决的方法是使用OpenCV HSV色彩空间进行筛选
项目采用Apache许可证,详见 LICENSE。