卷积神经网络在农业病虫害识别中的应用
2023-02-27张耀丽许宁宋裕民孟庆山侯旭李虎
张耀丽,许宁,宋裕民,孟庆山,侯旭,李虎
(1.255000 山东省 淄博市 山东理工大学 农业工程与食品科学学院;2.250131 山东省 济南市 山东省农业机械科学研究院;3.215127 江苏省 苏州市 苏州大学 艺术学院)
0 引言
农业是提供支撑国民经济建设与发展的基础产业,但农作物病虫害大大限制了农业生产,不仅制约农民的收入,也影响经济的发展[1]。得益于计算机视觉技术与深度学习在图像分类、检测等领域的跨越式发展,在病虫害识别领域的专家学者和研究人员也有了新的思路。相较于速度慢、效率差、主观性强、准确率低的传统人工识别病虫害方法,依靠深度学习的图像处理技术不仅可以提高病虫害识别的效率和准确度,还可以通过不断学习病虫害样本,更加准确地进行分类,给出正确的病虫害应对策略来帮助农业生产。其中在病虫害识别领域中应用最为广泛的是卷积神经网络(Convolutional Neural Network,CNN)。
1 卷积神经网络概述
1998 年,Yann LeCun 提出了卷积神经网络,并且在MNIST 手写体数字识别表现出色。卷积神经网络是一类前馈神经网络(Feedforward Neural Networks),又叫“平移不变人工神经网络”,其具有能够以层级对输入内容进行平移不变分类的能力。卷积神经网络比传统神经网络的网络结构参数更低,网络的泛化能力更强。其结构如图1 所示,它分为2 部分,一是输入层,可以处理多维数据,二是隐含层,又包含卷积层、池化层和全连接层。
图1 卷积神经网络概述Fig.1 Overview of convolutional neural networks
2012 年,Alex Krizhevsky 凭借AlexNet 赢得了ILSVRC 竞赛。现在卷积神经网络已经成为计算机视觉范畴最有影响力的一部分。本文将介绍卷积神经 网 络 中LeNet、AlexNet、VGGNet、GoogLeNet、以及ResNet几种经典模型在病虫害识别中的运用。
1.1 LeNet 模型
LeNet 是整个卷积神经网络的先驱之作,是最为经典和基础的模型,它的出现直接确立了卷积神经网络的基础结构,后来层出不穷的卷积神经网络模型大部分都是基于LeNet 模型的结构进行改进和完善。其结构如图2 所示,该模型由2 个卷积层和2 个全连接层组成,包括60 000 个训练参数。后来,Yan LeCun 等人创造性地添加了池化层,并提出了一种更优化的LeNet-5 神经网络。该网络结构已成功应用于笔迹数学识别、人脸识别、手势识别等领域。
图2 LeNet 模型结构图Fig.2 LeNet model structure
国外,Amara 等[2]基于LeNet 神经网络模型检测并分类了几种香蕉叶病虫害。Tm 等[3]提出了一种识别和检测番茄叶片病害的方法,利用3 种预训练的深度学习架构:AlexNet、GoogLeNet 和LeNet架构,并比较了它们相应的性能。在对这些架构进行微调后,该模型在LeNet 架构中表现出最佳性能。
在国内,张善文等[4]采用LeNet 模型识别黄瓜病害,收集并预处理了1 200 幅黄瓜病害彩色图像,调整了RGB 颜色通道。实验表明,到达了在90%的高精度,高于传统方法。
1.2 AlexNet 模型
作为最好的神经网络模型之一,在2012 年的ILSVRC 竞赛中,Hinton 设计了AlexNet 模型,并且取得了比赛的冠军。其结构如图3 所示,他创造性地使用了ReLU 激活功能来取代以前的Sigmoid功能。该网络基于对经典LenNet-5 模型和BP 网络的深入理解,并将其集成到更广泛和更深的网络中,且引入了Dropout。相对于LeNet,层次更深,使图像识别的准确率由75%以上提高到85%,进一步将图像识别领域进行细分。它保持了LenNet-5 网络旋转空间不变性和权值共享的特点,从而使局部信息的集成减少了模型的参数,提高了模型的适应性。它还保持了BP 神经网络的稳定结构和适应复杂问题的能力。卷积神经网络借助AlexNet 模型第一次在ILSVRC 竞赛上获得冠军。由此,开启了深度学习的广泛应用。
图3 AlexNet 模型结构图Fig.3 AlexNet model structure
国外,Mokhtar 等[5]提出了一种基于AlexNet和SqueezeNet 的用于实时机器人的迁移学习架构,以自动检测田间或温室中的植物病害。其中考虑了细菌性斑点病、叶霉斑病、叶螨、靶斑病、晚疫病、花叶病毒、黄叶卷曲病毒等10 个类别。AlexNet能够提供97.22% 的准确率,而SqueezeNet 显示出94.3%的准确率,这是因为AlexNet 比SqueezeNet大得多,隐藏层数也更多。Arya 等[6]将AlexNet 架构应用于马铃薯和芒果叶病检测。基于模型模拟和分析,观察到AlexNet 架构需要更多时间来训练模型。因为与CNN 架构相比,它的层次更加丰富。与CNN 准确率90.85%相比,AlexNet 架构能够达到98.33%的更高准确率。Brahim 等[7]引入AlexNet 作为一种学习算法。通过直接对原始图像进行处理,自动提取特征,利用视觉方法了解症状并定位叶片中的病害区域,准确率为99.18%,可作为农民保护番茄免受病害侵害的实用工具;Zhang 等[8]设计了一种基于AlexNet 的全局组合神经网络,研究了黄瓜叶片病害的识别方法,对6 种病害的识别精度达到94.65%。
在国内,龙满生等[9]利用AlexNet 网络和迁移学习方法研究了油茶叶病害图像的识别,并对4种油茶叶病叶和健康叶进行了识别测试,达到了96.53%的准确率。杨国国等[10]利用图像意义分析和Grubcut 算法定位茶园中存在的虫害,并运用AlexNet 模型实现对茶园虫害的识别。孙云云等[11]利用预处理方法作为最小N×N 病害提取和超分辨率病害染色重建,结合经典AlexNet 网络模型对茶叶病害和虫害进行鉴定。孙俊等[12]基于AlexNet模型识别了多种植物叶片疾病。
1.3 VGGNet 模型
国外,Simonyan 等提出了VGG 模型,结构如图4 所示,它有6 种不同的网络结构,每个结构包含5 组卷积。比起AlexNet11x11 的滤波器,VGGNet 每组卷积使用3×3 的卷积滤波器,和2×2 的最大池化层,然后是3 个全连接层。在高阶网络的训练过程中,可以先训练低阶网络,然后用从第一个网络获得的权值初始化高阶网络,从而加快网络的收敛速度。而VGGNet 比AlexNet 多了8~11 层。总之,VGGNet 不仅是滤波器更小,同时结构更深。
图4 VGGNet 模型结构图Fig.4 VGGNet model structure
Jia 等[13]使用并提出一种基于深度学习的模型,用于自动检测番茄叶片上的病毒和害虫。该模型使用VGG-16 与SVM 从番茄叶图像中检测疾病,其中VGG-16 用于提取特征,然后使用SVM 进行分类。第2 个基于VGG-16 的Fine-tuning 原始分类模型用于番茄叶片浸染分类,平均分类准确率分别为88%和89%。Kumar[14]等提出了一项关于不同的微调CNN 架构的研究,用于识别番茄叶片中的疾病。使用包含14 903 张患病和健康番茄叶子的图像PlantVillage 数据集在4 个著名的基于迁移学习的架构上进行了实验,即LeNet、Inception、ResNet-50 和VGG-16,他们相应获得的番茄叶片病害识别分类准确率分别为96.27%、98.13%、98.65%和99.25%,发现VGG-16 表现出更好的性能;Alvaro 等[15]提出了一种基于深度学习的番茄植株虫害检测方法。得益于快速检测框架和VGG-16 模型,可以成功检测和鉴定了9 种不同种类的虫害和疾病;Zhang 等[16]设计了一个利用深度学习技术判断苹果叶片致病性感染的系统。将采集的苹果叶分为4 类:健康叶、感染早期叶、感染中期叶和感染晚期叶。针对传统的神经卷积网络在实际应用过程中耗时长、数据量大的问题,采用VGG-16 模型对叶片进行分类,准确率达到90.54%。
在国内,蒲秀夫等[17]采用二元神经网络模型进行虫害识别研究,并基于VGG-16 模型进行网络组建。通过实验,该模型的识别速度和准确率均优于传统模型;陈洋等[18]通过比较VGG-16 和多功能卷积神经网络,检测了21 种培养物和虫害疾病。实验结果表明,多功能卷积神经网络的分类效果明显优于普通的农业分类系统;周云成等[19]研究了番茄主要器官的检测方法。首先通过优化和调整网络结构,在VGGNet 上建立8 个分类模型,提取图像功能,然后使用选择性搜索算法生成番茄器官候选区域。番茄果实、茎和花叶的平均检测准确率分别为81.64%、84.48%和53.94%;张建华等[20]基于VGG-16 网络模型优化了完整连接层的数量,提出了改进的VGG 网络模型,可以准确识别棉花的病害,识别准确率约为89.5%。
1.4 GoogLeNet 模型
作为2014 年ILSVRC 竞赛的冠军,GoogLeNet以6.67%的错误率击败了前VGGNet 冠军。其结构如图5 所示,GoogLeNet 比VGGNet 网络结构深,有22 层。网络仔细控制计算量和参数,以确保分类效果的准确性。它采用了Inception 模块,其结构如图5 所示,使其在参数更小的情况下仍然具有计算的高效率,特别是使用几个具有不同的接收场的并行滤波器分别输入信息,最后的输出结果按深度细分,形成输出层。此外,它取消了连接层。更改大小为1×1 的卷积层中的完全连接级别,显著提高了训练速率。
图5 GoogLeNet 模型中Inception 模块结构图Fig.5 Structure of Inception module in GoogLeNet model
国外,Mohanty 等[21]使用GoogLeNet 和迁移形成模型识别了多种病叶图像,证明了卷积神经网络可以同时识别不同类型作物病害和虫害的图像;Ramcharan 等[22]将迁移学习应用于GoogLeNet 模型InceptionV3 的改良版本的构筑,识别红薯的病虫害;Brahimi 等[23]比较了AlexNet 和GoogLeNet 在番茄14 828 叶片上检测9 种病害和虫害的效果。结果表明,GoogLeNet 有更好的效果。同时,从测试结果显示,卷积神经网络模型的准确率远远高于传统的图像识别模型。
为了提高玉米叶片病害识别的准确性,减少网络参数的数量,Zhang 等[24]提出了一种基于深度学习的GoogLeNet 和Cifar10 玉米叶片病害识别模型。通过调整参数、改变池组合、增加输出、将单位函数修正为线性和减少分类器数量,得到了2种改进模型,用于9 种玉米叶片图像的训练和测试。在玉米叶片8 种病害的识别中,GoogLeNet 模型的平均识别准确率达到98.9%。改进后的方法可以提高玉米叶病诊断的准确性,减少收敛迭代次数,从而有效提高模型的训练和识别效率。
在国内,黄双萍等[25]提出在通用视觉领域使用GoogLeNet 结合领域知识进行穗瘟病害检测,实验准确率达到92%,能有效识别稻瘟病;谭云兰等[26]基于GoogLeNet 模型,进行了调整和构建,用来检测纹枯病,获得93%的准确率。
1.5 ResNet 模型
何凯明提出的ResNet 模型是2015 年ILSVRC竞赛的冠军,错误率仅为3.57%,其参数量低,识别效果好。ResNet 能使网络的训练过程时间更短、速度更快,提升识别准确率,有较强的的推广性,可以直接将该模块插入InceptionNet 网络进行优化。ResNet 的创新点是该网络首次结合了残差学习思想,大幅度提高网络传输效率,加深网络深度,简化了训练过程,其结构如图6 所示,ResNet 在网络结构里直接加入的直连通道具体形。早前的网络是将输入进行非线性变换,ResNet 网络按比例保持前一网络的输出,并且可以在不转换输入信息的情况下直接传输到下一层。ResNet 解决了深度CNN 模型难训练的问题。
图6 ResNet 模型结构Fig.6 ResNet model structure
国外,Malathi 等[27]通过微调ResNet-50 模型的超参数和层,将迁移学习方法应用于Pest数据集。通过比较结果值,微调后的ResNet-50 模型在其他模型中产生了95.012%的更高精度。所得结果值描述了该模型在病虫害分类中的有效性能。
在国内,为了提高作物病害的严重性分类效果,余小东[28]等提出一种基于ResNet-50 模型的CDCNNV2 算法,形成10 种作物类型的30 000 张以上的害虫图像,获得了具有91.51%识别精度的虫害重症分类模型;俞佩仕[29]改进了一种SSD 算法,并用ResNet-50 代替VGG-16 网络完成了水稻纹枯病病斑的局部识别;李善军等[30]提出一种改进的SSD 检测柑橘类水果的方法。特征提取网络采用ResNet18,比原SSD 模型具有更高的精度和速度;通过改进ResNet,陈娟等[31]提出通过改进ResNet 识别花园害虫;为解决传统深度学习模型中参数庞大、耗时长、成本高等问题,王春山[32]等提出了一种改进ResNet 病害识别模型。
2 卷积神经网络在病虫害识别中的局限性
(1)由于数据源的多样性和混沌性,需要花费大量的时间对数据进行规范化处理以满足模型的需要。
(2)在实际采集数据时,很难采集到大量真实的病虫害图片,且难以保证图片质量,对模型的识别精度产生较大影响。在实验室采集的植物病虫害图像数据大多过于理想化,不足以代表实际作物病虫害情况。
(3)模型在建立以及运算过程中会产生大量的数据,这需要大量的内存等计算机资源。一些硬件设备结构体积较大,应用条件较高,导致现场使用困难。
3 展望
未来,基于卷积神经网络的病虫害识别必定会向着轻量化发展。开发移动端识别系统,实现更小的结构体积、更快的速度、更高的效率,并在手机等移动设备上实现应用。该系统可以快速识别病虫害,并提供防治方案,这是当前农业病虫害识别领域中智能化的必然趋势。