一种适用于无人机植保的玉米病虫害检测方法

2024-06-26 07:52赵玲娜
电脑知识与技术 2024年13期
关键词:卷积神经网络

赵玲娜

摘要:长期以来,玉米生产一直面临着病虫草害的威胁,从而导致品质和产量下降,增加了生产成本,使得种植的综合收益降低。相比于传统的防治方式,利用无人机进行玉米病虫害的防控植保具有防治效果好、对环境污染影响少、使用成本低等特点,因此该手段尤其适合用于应对暴发性病虫害。经过研究提出一种适用于无人机植保的玉米病虫害检测方法,可以通过无人机采集的玉米叶图像,利用卷积神经网络进行实时处理,并判断区域内玉米的健康状况。同时,无人机可以在玉米田范围内自动巡航,并记录时间、地点、可能的病因及 GPS 坐标,减少了人工巡查,提高了巡检效率。农民可以直接依靠无人机反馈的信息前往患病玉米区域进行治疗,从而促进玉米产量和质量的提高。

关键词:卷积神经网络;无人机植保;玉米病虫害

中图分类号:TP29 文献标识码:A

文章编号:1009-3044(2024)13-0045-04 开放科学(资源服务)标识码(OSID) :

0 引言

玉米生长常受天气条件、栽培方法、管理技术等各种因素的制约[1]。在玉米的生长周期中,通常主要的病虫害包括小斑病、大斑病、丝黑穗病、花茎基腐病、玉米螟等,玉米植株从根部到穗部都可能受到不同程度的病虫害侵袭。由于玉米种植密度较大,农田之间的封闭性较高,大约60% 的玉米在生长中后期都有病虫害发生 [2]。如果采用人工检测进行玉米病虫害的防治,难度较大,作业效率较低,农药利用率也低。

因此,许多玉米的病虫害防治采用了无人机植保。无人机植保是指利用无人机作为载体,搭载农药喷洒系统,对农作物进行病虫害防治的技术。无人机植保具有高效、灵活、安全、环保等优点,是农业现代化的重要标志之一。未来,无人机植保的新技术手段将在地面遥感信息反演、作业效率优化、作业过程管控智能化等方面带来革命性的进步,使植保作业数据化和透明化,全过程可视化和可控化,推动农业生产管理从机械化向智能化和智慧化迈进[3]。

然而,目前植保领域的无人机大多仅能够实现农药喷洒等智能化较低的功能。因为目前农作物识别的方法主要有:1) 利用RGB颜色直方图波峰分布位置,来提取叶片的颜色特征[4],但此方法提取的特征不明显,较难区分不同农作物所患疾病。2) 利用遗传算法优化神经网络的结构和参数来识别植物病虫害图像[5],然而这种方式大多并未基于卷积神经网络(CNN) ,而是基于循环神经网络(RNN) 、极限学习机(ELM) 等,因此计算量大,实时性较差,难以搭载在嵌入式系统上。

为了提高无人机在玉米植保中的自动化和智能化程度,本文提出了一种适用于无人机植保的玉米病虫害检测方法。该方法利用无人机摄像头远程采集玉米作物的图像,基于卷积神经网络实时处理并判断区域内玉米的健康状况。同时,无人机在玉米田范围内进行自动巡航,并记录时间、地点和可能的病因及GPS 坐标,以此来减少人工巡查,提高巡检效率,从而进行有效准确的喷洒。

1 玉米病虫害检测方法

在玉米的病虫害疾病中,大斑病是玉米最易患的一种病,有其独特的患病特征。为了正确识别这些特征,需要提取相应的特征向量,并训练出具有高准确度的识别模型,以便无人机能够进行正确判断。同时,这个模型还需要具有较快的识别速度,以满足无人机的需求。考虑到YOLO拥有准确性与速度兼具,且网络结构简单的特点,基于YOLOv5进行识别模型训练可以较好地满足上述需求。

1.1 获得数据集

数据集主要由已有的开源病虫害玉米叶片数据集和通过Python在网络上爬取的图像组成。其中,病虫害玉米叶片数据集主要包括麦白粉病、叶锈病、花生黑斑病和大斑病等。在获得数据集后,我们对其进行了标记,并对错标或漏标的图片进行重新标注或删除;对于质量低下的图片进行了删除,并将图片格式转换为jpg,以适应模型。

为了提高算法在不同条件下的识别率,我们对数据集进行了扩充:重新爬取了高质量的图片,并进行了标注,以扩充数据集。利用图像增强技术,对原有图片进行了变换,以增强算法的鲁棒性。由于实际环境的复杂多变,为了增强算法在各类场景下的检测效率,我们通过改变亮度、图片翻转等方式使得图像更加多样化。将改变后的图片放入神经网络进行训练可以提高网络的鲁棒性,降低各方面额外因素对识别的影响。

为了达到训练目标,我们在确定了玉米叶片图像集合后,首先对其健康状况进行记录,并将图片文件与标签文件一一对应。标签文件被放置在Annotation 文件夹中,而图片文件则被放置在JPEGImages文件夹中。为了随机划分数据集,我们将所有玉米叶片图像集合的60% 设置为训练集,20% 设置为验证集,最后20% 设置为测试集。

1.2 对数据进行预处理

在机器视觉中,通常需要对图形进行一些随机的改变,形成相同而又不完全一致的样本[3]。其功能为扩展训练信息集合,抑制过拟合现象,提高模型的泛化水平,该项目采用的主要方法是灰度拉伸[4]。

灰度拉伸需要采用的转换函数有:

其中,r 是变换前的灰度;T 是变换后的像素;[l1,l2 ] 为原灰度级范围,[l3,l4 ]为目标灰度级范围,由此可以提高图像的对比度,使图像得到增强。

数据预处理是训练神经网络时非常重要的步骤。合适的预处理方法可以帮助模型更好地收敛,并防止过拟合。

1.3 特征提取及检测网络搭建

基于Tensorflow的YOLOv5算法可以通过无人机传输的视频数据流信息实现基本的实时检测。但为了加快YOLOv5算法的检测速度,提高检测效率和准确率,需要对其中的Backbone算法进行优化,采用性能更优越的CNN网络。我们采用了MobileNet v3网络结构,并将最后的激活函数Rule 换成了h-swish。Swish具备无上界有下界、平滑、非单调的特性,并且在深层模型上的效果优于ReLU。仅仅使用Swish单元替换ReLU就能在ImageNet上的top-1分类准确率提高0.9%。h-swish 是用一个近似函数来逼近这个Swish,使得模型几乎可以在所有的软件和硬件框架上都可以使用,具体转化如下:

f (x) = x × sigmoid ( βx) (2)

在深度学习中,学习率的调整非常重要。学习率较大时,可以加快学习效率,有助于跳出局部最优值。然而,过大的学习率可能导致模型不精确,甚至导致模型训练不收敛。相反,学习率较小时,有利于模型的收敛,可以帮助模型细化,提高模型精度,但收敛速度较慢,可能导致无法跳出局部最优值。因此,学习率大和学习率小的功能几乎是相反的。为了最大程度地提高训练性能,我们需要适当地调整学习率。我们利用Callback类来实现学习率的指数型下降。指数型下降意味着学习率会随着指数函数的不断下降,具体公式如下:

learning_rate = learning_rate_base × decay_rateglobal_epoch

其中,learning_rate 为当前的学习率,learn?ing_rate_base为基础学习率,decay_rate为衰减系数。

1.4 模型训练

通过卷积层网络获取数据,然后再利用全连结层得到预测值。在网络结构上,采用了GooLeNet模型[5],其中包含了24个卷积层级和2个全连接层级。对于卷积层,通常使用1×1卷积来做共波干道消融,并紧跟3×3 卷积。而对于卷积层和全连接层,通常使用Leaky ReLU激活函数[6]:

f (x) = max (αx,x) (4)

其中,α是负斜率的系数,一般取值为0.01-0.1。

构造损失函数可以确定神经网络的特性,并针对不同的部分选择了不同的权重系数。首先是定位误差和分类偏差。针对定位误差,如边框位置的偏差,一般选择最大的权重。然后将它划分成不含有目标的边框和含有目标的边框间的置信度,并针对前者,一般选择最少的权重值。其他数值设为一。

损失函数计算如下:

其中,1objij 指代第ij个单元格的存在目标,第1项为边界框中心位置的偏差项,而第2项则为边界框的高度与宽度的偏差项。第3项是包含目标的边界框的置信度计算偏差项,而第4项则是不含目标边界的置信度计算偏差项。最后,第5项是含目标单元格的分类偏差项。默认λcoord = 5,λnoobj = 0.5。

利用玉米病虫害样本训练集图像对构建的神经网络进行训练,并在训练过程中利用遗传算法对神经网络的参数进行更新优化,从而得到基于YOLOv5 [7]的玉米病虫害识别模型。

2 实验与分析

玉米病虫害识别模型训练的预定计划包括三个阶段:数据收集和预处理、模型训练和优化、模型评估。在第一阶段,我们计划从公共数据集中采集数据,对数据进行清洗、标注和增强处理。在第二阶段,我们将使用YOLOv5模型对数据进行训练和优化,并测试不同的网络结构、超参数和损失函数。在第三阶段,我们将对模型进行评估,测试模型的准确率。

2.1 实验准备

由于原始图片来源于网页爬取,包含多种不同分辨率,为了获取较好的实验效果,我们将数据集中的图片数据裁剪并压缩到统一分辨率。我们使用的玉米叶片图像数据集,每张图片除了包含类别标签外,还需要一个标注的物体边框,涉及的病虫害种类主要有麦白粉病、叶锈病、花生黑斑病和大斑病等。

玉米叶片病虫害数据集中,训练集含有741张图片,验证集含有217张图片,测试集包含239张图片。在实验开始前,我们对每张图像都使用LabelImg工具进行了标注,标注出图像中玉米叶片的物体边框,以及玉米叶片的局部关键信息和病虫害属性信息。

将YOLOv5模型部署到Jetson Nano上,此过程主要分为三个阶段:第一阶段,在Nano 上安装好Py?Torch、OpenCV等YOLOv5模型所需要的依赖库;第二阶段,安装ONNX Runtime 和TensorRT,通过使用torch.onnx.export()函数将PyTorch 模型转换为ONNX 格式的模型文件,再使用ONNX Runtime将ONNX格式的模型转换为TensorRT格式,并最终保存转换后的TensorRT模型。第二阶段的模型转换主要是为了提高模型的推理速度。第三阶段是将转换后的模型部署到Jetson Nano上,使用图像和视频数据对模型进行测试,评估模型的准确率和性能。

2.2 实验结果

我们已完成了数据收集和预处理阶段,并针对模型训练和优化阶段出现的问题进行了解决。采用了深度学习的方法,结合卷积神经网络和目标检测技术,对玉米的病虫害进行识别和分类。我们从公共数据集中选取了部分图像进行训练,使用voc格式数据集,将训练集和相应的配置文件上传至云端,并利用Colab云端服务器实现了云端训练。随后,下载训练得到的权重文件,运行YOLOv5网络,实现对目标的识别。

模型召回率是指模型正确辨识的样本数量与测试的相应物体总量的百分比,是衡量某疾病辨识模型效果优劣的一项关键参数,即该模型在不同置信率下对相关病人的召回次数。

在不同置信度下,本模型识别玉米黄叶病和大斑病的回调率。可以看出在置信度约为0.6时,本模型对两种疾病的平均召回率超过60%,说明本模型对目标疾病的识别效果较好,满足实际应用需要(如图2 所示)。

总体而言,本模型对玉米疾病的识别效果较好,但对不同疾病之间的识别效果也存在一定的差异。表1 对本模型识别不同疾病时的各项指标进行了比较。

通过上述指标可以看出,该模型在识别两种疾病的患病位置时表现良好,对大斑病的识别正确率较高,并且稳定性也较好。

图3为模型对大斑病的实际识别效果。可以看出,该模型正确识别了大斑病,并且对患病区域的定位较为准确。总体而言,该模型可以较好地满足实际应用中的需求。

3 结论

在目标识别和分类方面,深度学习模型,如卷积神经网络(CNN) ,是一种常用的技术。CNN 可以通过对大量的图像数据进行训练来实现高精度的目标检测。针对玉米病虫害的检测与防治,本文提出了一种适用于无人机植保的玉米病虫害检测方法。该方法采用YOLOv5算法,通过对大量的玉米叶病虫害图像进行卷积神经网络的训练,得到了一个高效准确的病虫害识别模型。经实验验证,该模型可以实时地对无人机拍摄的玉米田图像进行分析,判断玉米叶片是否存在病虫害,以及病虫害的类型和程度。

未来,希望将该方法部署在无人机的机载运算平台上,开发一套玉米病虫害智能化的无人机植保系统。该系统可以根据预设的航线,自动地控制无人机在玉米田内进行巡航,实现对大面积玉米田的快速覆盖,节省人力资源,提高检测效率。此外,该系统还可以根据检测结果,为农民提供专业的防治建议,指导农民采取合理的施药措施,降低农药用量,提高玉米产量和质量。

参考文献:

[1] 韩鼎,陈乔,王晖,等. 植保无人机在玉米生产中的应用[J]. 种子科技,2020,38(17):139-140.

[2] 赵胜利. 玉米病虫害防治与种植技术应用研究[J]. 农家参谋,2022(9):52-54.

[3] 徐旻,张瑞瑞,陈立平,等. 智能化无人机植保作业关键技术及研究进展[J]. 智慧农业,2019,1(2):20-33.

[4] 汪京京,张武,刘连忠,等. 农作物病虫害图像识别技术的研究综述[J]. 计算机工程与科学,2014,36(7):1363-1370.

[5] 孙亮,柯宇航,刘辉,等. 计算机视觉技术在植物病虫害识别上的研究进展[J]. 热带生物学报,2022,13(6):651-658.

[6] 王万亮,江高飞,严江伟,等. 基于卷积评价及对抗网络的花粉、孢子图像增广算法[J]. 江苏农业学报,2021,37(5):1190-1198.

[7] 唐圣凯. 基于Otsu 可控灰度拉伸的直方均衡化算法[D]. 兰州:兰州大学,2019.

[8] HUANG J, HU Y, YANG W L.Adapted GooLeNet for visual ques?tion answering[C]//2018 3rd Interna?tional Conference on Mechanical,Control and Computer Engineering(ICMCCE). Huhhot, China. IEEE,2018:603-606.

[9] ZHANG X H,ZOU Y X,SHI W. Dilated convolution neural net?work with LeakyReLU for environmental sound classification[C]//2017 22nd International Conference on Digital Signal Pro?cessing (DSP). London,UK. IEEE,2017:1-5.

[10] JIANG P Y,ERGU D J,LIU F Y,et al.A review of yolo algo?rithm developments[J].Procedia Computer Science,2022,199:1066-1073.

【通联编辑:梁书】

基金项目:2022—2024 安徽高校自然科学研究项目(2022AH052300)

猜你喜欢
卷积神经网络
基于深度神经网络的微表情识别
卷积神经网络中减少训练样本时间方法研究
卷积神经网络语言模型研究
基于卷积神经网络的车辆检索方法研究
基于卷积神经网络温室智能大棚监控系统的研究
基于深度卷积神经网络的物体识别算法
深度学习算法应用于岩石图像处理的可行性研究
基于深度卷积网络的人脸年龄分析算法与实现
深度学习技术下的中文微博情感的分析与研究
基于卷积神经网络的树叶识别的算法的研究