基于深度学习的植物表型特征图像识别系统
2024-02-09周为中杨庭睿钟志宏
关键词:植物疾病;植物表型特征;卷积神经网络
中图分类号:G424 文献标识码:A
文章编号:1009-3044(2024)36-0049-04"开放科学(资源服务) 标识码(OSID) :
0引言
植物病理识别在农业生产和生态环境保护中具有至关重要的作用。植物病害种类繁多,包括真菌病、细菌病、病毒病以及其他病原体引发的病害,这些病害不仅降低了农作物的产量,还影响作物的质量和市场价值。例如,小麦锈病和苹果黑星病等严重病害可以导致作物产量显著下降,甚至引发大规模的经济损失。传统的植物病害识别方法主要依赖人工观察和经验判断,这种方法不仅效率低下,而且准确性受限,难以应对大规模农业生产中的挑战。
为了提高植物病害识别的效率和准确性,研究者们积极探索新技术。近年来,深度学习技术,特别是卷积神经网络(CNNs) [1],在图像识别领域取得了显著的进展。深度学习通过自动提取图像特征并进行分类,克服了传统方法中的许多限制。例如,张昕莹[2]等采用深度学习技术构建了中药材病虫害图像识别系统,优化了SE网络与MobileNetV2网络的融合,并引入Momentum优化算法,取得了显著的计算性能提升。
梁万杰[3]等通过数据预处理和增强技术构建了涵盖多种作物的病害数据集,并使用VGG16和ResNet50模型进行识别,建立了单作物多病害和多作物多病害识别模型,并开发了智能识别系统。这些研究为植物病害的快速识别和防控提供了重要技术支持,但仍存在一些不足,如对复杂病害的识别准确性和系统的实时性等问题。
此外,王丽妍[4]通过迁移学习的方法有效处理了病虫害图像数量众多且分布不均的问题,而张守震[5]等优化了IR-DCGAN模型,提升了对抗网络的图像识别准确率。这些研究在提升识别率方面取得了显著成果,但在处理植物病害的复杂性和提高系统的用户交互友好性方面仍有改进空间。
本文旨在针对当前植物病害检测中的复杂性和识别率低等问题,提出一种基于深度学习的植物表型特征图像识别系统[6]。该系统不仅具有高识别准确率,还具备实时性强和用户交互友好的特点。通过这一系统的研发,期望能够为植物病害监测领域提供一种新的解决方案,并推动农业生产的现代化和智能化发展。
1 系统总体框架设计
现代农业的核心之一是及时准确地识别并处理农作物的病虫害。为了解决这一问题,研发了一个植物表型特征识别的桌面应用系统[7-8],旨在为农民提供一款全面、高效且用户友好的农作物管理工具。系统设计分为用户层、业务层、表现层和数据库管理层四个主要层次,如图1所示。
用户层提供了一个直观且友好的界面,使用户能够轻松地与系统进行交互。用户可以通过该界面上传农作物图像、查看检测结果,并获取关于病虫害的详细信息。
业务逻辑层处理用户的请求,执行图像识别和病虫害检测算法,分析农作物图像,提取关键的表型特征,并识别可能存在的病虫害。同时,业务逻辑层利用病虫害数据库为用户提供问答方面的数据支撑。
表现层负责将业务逻辑层处理的结果以图形或文本的形式展示给用户,包括图像标记、检测结果报告及相关建议。
数据管理层负责存储和检索病虫害特征数据,确保系统能够高效地进行数据查询和更新。
2 基本理论模型
2.1 ResNet模型
残差神经网络(Residual Neural Network,ResNet) 是一种深度神经网络架构,它在2015年由微软研究院的Kaiming He[9]等提出,并在同年的ImageNet大规模视觉识别挑战赛(ILSVRC) 上获得了分类任务的第一名。ResNet 通过引入一种创新的“残差学习”(Re⁃ sidual Learning) 机制,解决了深度网络训练过程中遇到的梯度消失/爆炸问题,从而使得网络能够达到前所未有的深度。其中,最著名的版本之一是深度为152层的ResNet-152。残差模块如图2所示。
ResNet的残差学习机制通过在每层之间引入残差连接(skip connections) ,使网络能够直接学习输入和输出之间的残差,而不是直接学习复杂的映射。这种设计简化了深层网络的训练问题,将其转化为较浅层网络的训练问题,从而避免了随着网络层数增加而导致的梯度消失和爆炸问题。具体来说,传统神经网络中的每一层试图直接学习一个映射 H (x),而在ResNet中,每一层学习的是残差映射:
这种方式如果最优映射更接近于恒等映射,残差映射F (x)会更容易优化。
相比传统卷积神经网络(CNN) ,ResNet具有显著的优势。首先,ResNet支持构建更深的网络结构,通过引入残差连接,ResNet可以轻松地训练超过100层的深层网络,而不会出现梯度消失或爆炸的问题。其次,ResNet在多个计算机视觉任务中表现出色,显著提高了模型的准确性。此外,ResNet模型在多个数据集上表现出良好的泛化能力,能够有效应对不同任务和数据集。其模块化结构也使得ResNet容易在不同任务和数据集上进行调整和扩展,可以通过调整残差块的数量和配置,轻松构建适合特定需求的变体模型。
2.2 ResNet101_vd_ssld模型
ResNet101_vd_ssld模型是ResNet101的一个改进版本,由PaddleClas提供。在原始ResNet101的基础上,ResNet101_vd_ssld进行了多项优化以适应特定任务或数据集。vd(Variational Dropout) 表示对原始ResNet101结构进行了一些修改或变体设计。通过引入变分丢弃,网络在训练过程中更加稳定,有效地减轻了过拟合问题。变分丢弃采用自适应的丢弃概率,使得不同层的神经元根据其重要性进行丢弃,从而提高模型的表达能力和性能。
SSLD(Self-Supervised Label Distillation) 代表自监督标签蒸馏技术,这种技术通过自监督学习,利用无标签或弱标签的数据来辅助模型训练,从而提高模型的泛化能力和性能。SSLD技术让模型在训练过程中不仅学习标注数据的直接知识,还能从无标签数据中提取有用信息。这种方法特别适用于标注数据有限的情况,能够有效提升模型的准确性和鲁棒性。PaddleClas提供的SSLD方案是一种半监督标签蒸馏方法,允许模型在训练过程中利用少量的标注数据和大量的无标签数据,显著提高训练效率和模型性能。
通过这些改进,ResNet101_vd_ssld模型在减少推理时间的同时,显著提高了识别准确率。尤其在标注数据有限的情况下,这种方法能够更有效地利用大量未标注的数据,提升模型的总体性能和准确性。
2.3 植物表现特征图像分类识别模型
本文选择植物表型特征作为研究对象,构建识别模型,如图4所示。
3 实验与结果
3.1 实验数据集
本研究使用的数据集主要来自AI Studio平台,包括10种作物和61类病害特征。数据集按照物种和病害程度分类,包含24709幅训练图像和24708幅验证图像。数据集示例如表1所示。
3.2 模型选择
在模型选择上,本文采用了PaddlePaddle平台提供的ResNet101_vd_ssld模型。此模型是ResNet系列的改进版,旨在减少推理时间并提高识别准确率。ResNet101_vd_ssld能够提供更高的准确性,增强模型的鲁棒性和泛化能力,并提升执行速度。与传统的ResNet101相比,ResNet101_vd_ssld在半监督标签知识蒸馏(SSLD) 方案的支持下,精度提升超过3%。
3.3 模型训练
模型训练使用PaddlePaddle框架,并基于AI Stu⁃ dio提供的训练集、验证集和测试集进行实验。图像调整为224×224,并进行了数据增强,包括水平随机翻转、随机旋转(0-360度) 、随机垂直翻转等,以增加样本多样性。数据范围归一化至(0-1),并采用ImageNet 数据集的均值和标准差进行归一化。训练参数设置如下:批大小为330,训练轮数为50,学习率为0.001。
图5展示了训练损失值的收敛趋势,其中x轴为迭代次数(1至1 621次) ,y轴为训练损失值(0至1之间) 。训练初期,损失值显著下降,训练结束时降至0.04063,表明模型有效地学习了数据特征并提升了预测能力。
在测试阶段,模型对61类病虫害图像共4540张进行测试,平均准确率达到84.16%。结果表明,模型在植物表型特征识别中表现良好,能够有效区分不同的植物病害特征。
3.4 模型实现
在测试集中,选用了61类病虫害图像共4540张图像进行测试,经过计算可得平均准确率为84.16%,说明该模型在植物表型特征识别过程中具有较好的性能,能够在一定程度上理解和区分不同植物表型的特征,具有较高的可行性。如图6所示为部分测试样本的预测结果图。
4 系统实现
经过需求分析、系统设计、桌面应用程序实现、测试与试运行、功能调整等过程,病虫害识别系统最终实现了病害识别、实时监测和咨询专家等功能。
系统支持识别10种作物和61类病害特征,识别精度平均达到84.16%,识别速度可在几秒内完成。进入主界面后,用户可以点击上传相册或拍照获取需要检测的图片数据。系统接收到图片数据后,会对图片进行预处理,包括大小调整、缩放等操作,然后调用训练好的ResNet101_vd_ssld模型进行预测,最终将识别结果显示给用户。病害识别结果如图7所示。
系统支持多种视频输入方式,包括上传图像或视频文件以及通过RTMP协议[10]打开视频连接。用户可以选择使用本地存储的图像或视频文件进行实时检测,也可以通过RTMP协议连接到远程服务器上的实时视频流。
系统会对获取到的视频数据进行预处理,包括调整大小、颜色空间转换等操作,然后调用网络模型对每一帧图像数据进行识别,并实时返回结果给用户。检测速度和精度保持较高水平,确保了实时性的实现。实时检测结果如图8所示。
在咨询专家界面,用户可以根据识别结果进行提问。系统内置的专家系统基于丰富的知识库,通过预先设定的推理机制和问答方式,能够对用户的问题作出合理解释并提供相应的解决方案。用户输入问题后,系统会结合识别结果和知识库内容,快速生成针对性的回答,帮助用户了解病害详情并获得有效的处理建议。咨询专家结果如图9所示。
5 结论
本研究成功开发了一种基于深度学习技术的植物病害识别系统。该系统采用ResNet101_vd_ssld模型,通过对图像的预处理和增强,实现了植物病害识别,并达到了平均84.16%的识别准确率。该系统不仅具有较高的准确性,还集成了实时检测和专家咨询功能,提供了高效、便捷的用户体验。本研究的主要贡献包括提出一种基于深度学习的植物病害识别方法,为植物病害的早期诊断和防治提供了新的思路,具有重要的应用价值。通过系统的开发,证明了深度学习技术在植物病害识别中的可行性和有效性,提升了识别效率和准确性,推动了农业病害检测的智能化进程。
展望未来工作,计划将研究成果应用于实际生产环境,开发移动端应用,以便农民能够随时随地使用该系统进行病害检测。此外,将构建更大规模的植物病害数据库,进一步提升系统的识别能力和准确性。未来,还将探索更先进的模型和算法,以提高系统的处理速度和智能化程度,如实现自动化的病害预警和治理建议,为现代智能农业的发展提供更加全面的技术支持。