纸张复制代码(水稻叶片和统一基准)
摘要
大米是全球一半以上人口的主食,极易感染细菌和真菌疾病,如白叶枯病、褐斑病和叶黑穗病,这会严重降低产量。传统的人工检测是劳动密集型的,通常会导致干预延迟和化学物质过度使用。尽管卷积神经网络(CNN)等深度学习模型实现了高精度,但它们的计算需求阻碍了在资源有限的农业环境中的部署。我们提出了MCP-X,这是一种超紧凑的CNN,只有21万个参数,用于实时、设备上的水稻病害分类。MCP-X集成了浅层编码器、多分支专家路由、双层递归仿真编解码器(BRSE)、高效信道注意力(ECA)模块和轻量级分类器。从零开始训练,MCP-X在PlantVillage上的准确率为98.93%,在水稻病害检测数据集上的准确度为96.59%,无需外部预训练。从机制上讲,专家路由使特征分支多样化,ECA增强了通道信号相关性,BRSE捕获了病变规模和纹理线索,从而产生了通过消融研究证实的互补的阶段性增益。尽管FLOP略高于MobileNetV2,但MCP-X优先考虑最小的内存占用(约1.01 MB)和可部署性,而不是原始速度,在RTX A5000上以53.83 FPS(2.42 GFLOP)的速度运行。它的参数分别比MobileNetV2、ResNet152V2、ViT-Base和VGG-16少16.7倍、287倍、420倍和659倍。当集成到多分辨率集成中时,MCP-X的准确率达到99.85%,在受控和现场数据集上表现出卓越的鲁棒性,同时保持了现实世界农业应用的效率。
关键词:水稻病害分类;卷积神经网络;轻量化模型;高效渠道关注;PlantVillage数据集;资源受限部署
环境(精确、可重复):
- 仅使用
environment.yml(县):
conda env create -f environment.yml
conda activate tf_env注:未提供pip requirements.txt;始终使用 environment.yml.
数据集
- 集
--data_root到水稻叶病的数据集根(ImageFolder结构)。
培训/评估
python train.py --data_root "PATH_TO_RICE_LEAF_DATASET" --use_transfer_learning --epochs 20 --batch_size 64统一基准
python unified_benchmark.py --models mcpx_no_attn,mobilenet_v2,resnet152v2,vgg16_bn,vit_base --num_classes 3 --input_size 224鲁棒性
python robustness_eval.py --device auto --max_images 16能量(GPU)
python energy_eval.py --device auto --backbones mcpx_no_attn,mobilenet_v2,resnet152v2,vgg16_bn --input 224 --batch 32Grad CAM
python gradcam_generate.py合奏学习(历史最佳剧本)
python ensemble_eval.py --data_root "PATH_TO_TEST_OR_SPLIT_ROOT" \
--models runs_fixed/vit_base_e100/finetuned_mcpx_fixed.pth \
runs_fixed/resnet152v2_e100/finetuned_mcpx_fixed.pth \
runs_fixed/mobilenet_v2_e100/finetuned_mcpx_fixed.pth \
runs_fixed/vgg16_e100/finetuned_mcpx_fixed.pth \
runs_fixed/mcpx_no_attn_e100/finetuned_mcpx_fixed.pth \
--out_dir ensemble_outputs --workers 0 --fusion mean注:
- 此存储库仅提供
ensemble_eval.py用于组装。
