基于MindSpore的农作物病虫害识别系统设计

2023-06-15 02:15杨祖鉴黄勇萍
无线互联科技 2023年3期

杨祖鉴 黄勇萍

摘要:广西是农业大省区,农作物种类繁多,包括甘蔗、水稻等。部分地区以农作物为主要经济来源,由于气候原因,农作物病虫害频发。文章研究了广西主要农作物的常见病虫害,采集了甘蔗等农作物的常见病虫害数据,使用AI计算框架MindSpore以及深度学习算法MobileNetV2实现了数据的特征提取以及模型训练,使用端侧推理框架MindSpore Lite实现了快速准确的端侧推理。测试结果表明,该系统有较高的识别准确率,并且与传统的识别软件相比,系统可以进行无网络、轻量级实时识别。

关键词:MindSpore;病虫害识别;端侧推理

中图分类号:TP391;TP311  文献标志码:A

0 引言

广西是农业大省区,农作物种类繁多,部分地区以农作物为主要经济来源,由于气候原因,农作物病虫害频发。一些农户由于缺少病虫害的识别技能,病虫害的防治效果不佳,影响农民的收入。农民对病虫害的判断失误、使用的药物不具有针对性,还会造成环境污染、生产成本增加等问题。在多数情况下,农民不会直接使用针对性药物,而是根据以往的病虫害预防经验使用药物,并且往往不能准确把握药物的用量,在面对另一种虫害时,往往会出现诊断不及时、预防不及时的问题,导致病虫害泛滥。为了让农户快速准确地识别农作物病虫害,本研究根据主要农作物的常见病虫害特征,使用深度学习算法,基于华为的MindSpore框架,采用Android Studio等技术构建了识别速度快、精度高的界面友好农作物病虫害识别App。农户只要使用智能手机,即使在断网的情况下,也可以快速准确地识别农作物病虫害,从而有针对性地采取防治措施,有效地提高农作物产量。

1 数据采集及处理

首先,本研究明确了甘蔗、玉米、柑橘等农作物的常见病虫害,如甘蔗的主要病虫害有赤腐病、凤梨病、黑穗病、鞘腐病、轮斑病、锈病、螟虫、棉蚜等,玉米的主要病虫害为玉米螟,柑橘的主要病虫害为黄龙病、溃疡病等。其次,本研究针对各种病虫害进行特征分析,例如甘蔗黑穗病属真菌性病害,其明显特征是蔗茎顶端部生长出一条黑色鞭状物,短者笔直,长者或卷曲或弯曲,无分枝。最后,本研究使用数码相机或智能手机进行病蟲害特征图片数据采集,主要包括广西壮族自治区崇左市、百色市、桂林市等地的玉米、甘蔗、柑橘三大农作物主要病虫害,每种病虫害的样本数为400张,采集的部分数据集如图1所示。

图片采集分类后,本研究采用Decode,Resize,CenterCrop,Normalize,HWC2CHW等技术进行数据处理,建立有效的数据集。

2 模型构建和训练

本研究基于华为MindSpore框架,使用MobileNetV2算法实现模型构建和数据训练。MindSpore是华为自主研发的一款支持端、边、云独立/协同的统一训练和推理AI计算框架,提供全场景统一API,为全场景AI的模型开发、模型运行、模型部署提供端到端能力[1]。MindSpore提供一套新的数据引擎(Data Engine),方便数据读取、增强处理等操作。本研究使用数据引擎中的dataset模块进行数据集读取及增强处理,首先使用函数mindspore.dataset.ImageFolder Dataset读取数据并进行分类。在测试中,黑穗病被标记为“0”,黄龙病被标记为“1”,溃疡病被标记为“2”,轮斑病被标记为“3”,锈病被标记为“4”,玉米螟被标记为“5”。

导入数据集之后,本研究使用MindSpore.dataset中的vision.c_transforms模块进行数据增强。vision.c_transforms模块包含多种数据增强操作工具,本研究使用4种工具:RandomCropDecodeResize,Random HorizontalFlip,Normalize,HWC2CHW。RandomCrop DecodeResize将数据组合、解码以及调整大小。RandomHorizontalFlip按照给定的概率,随机地水平翻转输入图像。Normalize根据均值和标准差对输入图像进行归一化处理。HWC2CHW是将输入图像从形状(H,W,C)转置为形状(C,H,W)。处理以及增强数据后,本研究将构建模型网络,使用MobileNetV2神经网络模型进行模型的训练。

MobileNetV2是一种轻量级的深度学习图像检测模型,使用深度可分离卷积,大大提高运算速度,相比于经典的大型网络,MobileNetV2具有参数量少、模型体积小等优点。同时,MobileNetV2凭借网络结构优化,在更少的参数及更少的计算量下,网络精度反而超过了部分大型神经网络。MobileNetV2可以在移动终端实现众多应用,包括目标检测、目标分类、目标识别等。模型的构建要用到微分,手动微分求解不仅求导过程复杂,而且结果很容易出错,MindSpore等深度学习框架具有自动微分的特性,可以帮助开发者利用自动微分技术实现自动求导,解决这个复杂、关键的问题[2]。MindSpore中提供了MobileNetV2预训练模型的ckpt文件,预训练模型的宽度系数α=1.0。本研究首先导入预训练模型,之后进行模型超参、损失函数、优化器的定义。对训练模型而言,超参是可以进行调整的参数,可以定义其中的训练轮次(epoch)、批次大小(batch size)以及学习率(learning rate)。本研究定义10个epoch进行数据集的训练。在定义数据集次数的同时,本研究也定义了批次的大小。学习率也影响着模型训练的精度,学习率过小,模型收敛速度会变得十分缓慢;学习率过大,模型不收敛,导致预测不准确。本研究进行了多次小规模测试,最终确定学习率为0.01。损失函数是评价模型预测程度的重要数值,mindspore.nn.loss定义了多种损失函数可供选择,如MSELoss(均方误差损失)、SmoothL1Loss(范数损失)、CrossEntropySmooth(交叉熵平滑)等,本研究使用CrossEntropySmooth损失函数进行模型的评估,之后使用动量(Momentum)算法进行模型优化,若梯度方向与之前历史的梯度是一致的,趋势就增大,若趋势不一致则减少。本研究设定动量算法的学习率(learning_rate)为0.01,引入之前设定的超参以及当前组别的权重,然后开始模型训练。训练结束之后,本研究进行模型的验证,选择模型中精度最高的ckpt文件,并将其转换为MindIR格式,用于后续手机侧的推理。

3 端側推理

本研究应用MindSpore Lite实现端侧推理,将网络训练模型结果进行转换,使其在不具备大算力和强深度学习环境的终端设备上也可以快速有效运行。MindSpore Lite是华为自主研发的一款极速、极智、极简的AI引擎,在手机、穿戴感知、智慧屏等设备上得到广泛应用。本研究首先将模型训练后得到的MindIR格式模型转化为适用于端侧部署的ms模型,具体步骤:(1)下载MindSpore Lite模型转换工具(Converter),解压并配置环境变量。(2)进入converter_lite可执行文件所在的目录,将MindIR格式模型文件放入同一路径下,在电脑终端执行转换命令:call converter_lite --fmk=MINDIR --modelFile=mobilenet_v2_1.0_224.mindir --outputFile=mobilenet_v2_1.0_224,其中,--fmk代表输入模型的原始格式,--modelFile指输入模型文件;--outputFile指输出模型文件,自动添加.ms后缀。得到ms模型后,将其加载到App应用,然后进行模型编译、获取图片数据、执行推理,最后将推理结果输出给App应用。

4 安卓应用程序开发

为了让农户只要持有智能手机就可以进行农作物病虫害识别,本研究设计和实现界面友好、操作方便的病虫害识别App。App支持安卓7.0以上移动终端,使用Pycharm,Android Studio进行开发,提供两种图片数据输入接口,用户可以从相册导入病虫害图片作为数据。除此以外,App调用Android Camera 2 API实现了通过摄像头获取图像,因此,用户可以实时拍摄病虫害图片并将其作为数据。App在获取用户输入的图片数据后,先将图片进行格式、大小等处理,然后输入ms模型进行推理,最后将推理结果进行显示,包括病虫害分类、置信度以及响应时间等,如图2所示。同时App提供识别结果详情,包括病虫害的特征描述以及相应的防治措施等,可以较好地满足农业发展对于信息化和智能化技术的需求[3]。

5 结语

本系统基于华为自主研发的MindSpore AI计算框架实现,使用轻量级经典图像检测算法MobileNetv2进行特征提取和模型训练,可以部署到高端手机,也可以部署到手表等对资源要求极为苛刻的设备,从而满足全场景部署的需求。系统使用MindSpore Lite实现农作物病虫害端侧识别,无须将图片数据传输到模型训练服务器中,并且可以大幅度地加快识别速度,即使在不具备网络通信的环境中也可以完成推理识别。最终作品以界面友好、操作方便的App形式呈现,方便农户进行农作物病虫害图片扫描识别,同时提供识别结果详情、病虫害的特征描述以及相应的防治措施,使农户只要持有智能手机就可以进行农作物病虫害识别。

参考文献

[1]陈雷.深度学习与MindSpore实践[M].北京:清华大学出版社,2020.

[2]于璠.新一代深度学习框架研究[J].大数据,2020(4):69-80.

[3]甄珍.人工智能技术在移动互联网发展中的应用分析[J].无线互联科技,2020(21):63-65.

(编辑 王雪芬)

Design of crop pest identification system based on MindSpore

Yang  Zujian, Huang  Yongping*

(College of Mathematics,Physics and Electronic Information Engineering,Guangxi Normal University for Nationalities, Chongzuo 532200, China)

Abstract:  Guangxi is a large agricultural province, a wide variety of crops, such as sugar cane, rice and so on. In some areas, crops are the main source of economy, and crop diseases and insect pests occur frequently due to climate reasons. This paper studied the common diseases and insect pests of major crops in Guangxi, collected the data of common diseases and insect pests of sugarcane and other crops, used the AI computing framework to achieve the feature extraction and model training of the data using MindSpore and the deep learning algorithm MobileNetV2, and used the end-side inference framework to achieve fast and accurate end-side inference framework MindSpore Lite. The test results show that the proposed system has a high recognition accuracy, and compared with the traditional recognition software, the system can perform network-free, lightweight real-time recognition.

Key words: MindSpore; identification of pests and diseases; end side reasoning