基于改进残差网络的苹果叶片病害识别研究

2023-05-20 07:39:26聪,于啸,宫
河南农业科学 2023年4期
关键词:残差准确率卷积

陈 聪,于 啸,宫 琪

(山东理工大学计算机科学与技术学院,山东 淄博 255049)

苹果在我国种植历史悠久,种植面积居世界首位。我国已经成为世界最大的苹果生产国和消费国,同时苹果产业成为农民的重要经济来源[1]。但苹果在其生长过程中受到气候、细菌等各种因素的影响会出现叶部病害问题,从而对树体的发育、产量、质量产生重要影响。苹果叶片病害频发于7 月份,主要病害有斑点落叶病、褐斑病和灰斑病等[2]。这几种叶片病害表现特征相似,传统依靠人工和农业专家区分苹果叶片病害效率低下。为此,寻找出精准识别苹果叶片病害的方法显得尤为重要。

随着计算机视觉的发展,卷积神经网络(Convolutional neural networks,CNN)在计算机视觉相关的不同领域得到了广泛应用,其中包括医学图像、无人驾驶和人脸识别等[3⁃5]。近年来,国内外专家也通过CNN 解决农林方面问题。孙鹏等[6]通过在传统的CNN 中加入注意力机制,使得对大豆蚜虫的识别准确率达到96.85%。张建华等[7]通过优化VGG-16 的全连接层数,并且使用六标签SoftMax 分类器实现对6 种棉花病害的准确识别。龙满生等[8]用迁移学习方法将ImageNet 预训练的AlexNet 模型迁移到油茶病害识别任务中,使得病害识别率达到96.5%。马宇等[9]在ResNext50残差网络中添加三通道注意力机制,能够有效地识别10种番茄叶部病虫害。黄英来等[10]针对玉米叶片病害,通过替换7×7卷积核,替代激活函数,改变残差顺序对ResNet-50进行改进,使玉米病害分类正确率达到98.3%。王东方等[11]对SE-ResNeXt-101模型进行改进,并基于迁移学习提出了一种农作物病害分类模型TL-SEResNeXt-101,该模型在真实农业环境中取得不错的识别效果。ZHAO 等[12]将改进的通道和空间注意模块镶嵌到ResNet 的残差块中,使得模型对番茄病害的识别准确率达到97.59%。XU 等[13]在ResNet-50中采用聚焦损失函数,使得模型对草莓病害的平均识别准确率达到98.67%。综上所述,植物病虫害识别的方法主要是在基准CNN 模型基础上进行改进,从而达到识别不同植物病害以及虫害的目的。部分研究采用迁移学习的方法训练网络模型。

以上研究中,CNN 在叶片病害以及虫害的图像识别中取得突破性进展,但是上述研究中大多采用试验室环境数据。然而真实的苹果果园环境背景复杂多样,叶片纵横交错,且苹果在生长过程中受环境等多方面影响,会导致苹果病斑具有特征相似、病斑分布稀疏、病斑较小等特点,采用传统CNN识别效果不佳。因此,对基准网络ResNet-50 进行改进,修改原始网络结构的残差顺序,添加通道注意力机制,采用并行卷积,并且通过迁移学习的方式进行权重初始化,达到能够识别复杂背景下的苹果病害的目的,为苹果病害识别提供方法。

1 材料和方法

1.1 试验数据与处理

供试苹果叶片病害图像来自AI Studio,是由西北农林科技大学在各个试验站采集所得。数据主要在天气晴朗的条件下采集,部分在阴雨天采集,因此,数据来自于复杂背景下,且光照强度不同,存在一定程度的遮挡问题。采集到的苹果叶片病害图像共有2 027 张,其中斑点落叶病409 张、花叶病375 张、灰斑病370 张、褐斑病435 张、锈病438 张。将上述采集的数据集与PlantVillage 中的660 张健康叶片、621 张黑腐病、667 张黑星病以及275 张锈病数据集图像进行合并,共计4 250 张苹果叶片病害图像,所构成的数据集结构如表1 所示。原始数据集中各类病害数量存在不均衡问题,因此,将斑点落叶病、花叶病、灰斑病、褐斑病4 种病害数据集进行随机0.6 倍水平镜像数据扩充。将得到的试验数据集按照4∶1的比例随机划分为训练集和测试集。

表1 试验数据集构成Tab.1 Composition of experimental dataset

苹果叶片病害样本图像如图1 所示,试验数据共包含8 种苹果叶片病害类别,并且组成该数据集的所有试验数据全部由相关专家标注。为了增强网络模型的鲁棒性,降低过拟合,采用数据增强的方式。对训练集数据的增强方式主要为图像大小调整成256×256、进行224×224 的随机裁剪、数据归一化等。

图1 苹果叶片病害样本图像Fig.1 Sample images of apple leaf diseases

1.2 残差网络

随着卷积层数的叠加,CNN 模型的识别能力会相应地增加。然而研究表明,模型达到一定层数后,模型的识别能力会达到饱和,再增加层数不仅不能提高识别能力,反而会使网络收敛速度更慢,难以训练,且易产生梯度消失或梯度爆炸现象。2016 年HE 等[14]提出残差网络,残差网络的出现可以确保网络加深的同时模型的识别能力不会降低,并且能够使模型更好地收敛。

传统的CNN中,将输入设为x,有参网络层设为h,则以x为输入层的输出为h(x)。一般的如Alexnet[15]、VGG[16]等网络可以直接通过训练学习出参数函数h的表达式,从而直接学习x到h(x)的映射。残差网络则是通过捷径连接(Shortcut conections)的方式,直接把输入x作为输出的初始值,进而只需要学习残差,转移了卷积网络的学习目标。残差网络解决了恒等映射问题,并且随着网络的加深,识别效果可以有效提高,残差网络结构如图2所示。

图2 残差结构Fig.2 Residual structure

1.3 REP-ResNet模型

残差网络常见的模型有ResNet-18、ResNet-50、ResNet-151 等,其中数字部分代表网络层数。本研究选用ResNet-50作为基准网络。由于苹果病斑存在特征相似、斑点大小不同等特点,对原始ResNet-50 模型进行残差结构调整(Residual structure adjustment,RSA),采用高效通道注意力机制(Efficient channel attention,ECA)和并行卷积(Parallel convolution,PC)的方式进行改进,并将改进的模型命名为REP-ResNet。ResNet-50 和REP-ResNet的结构对比如表2所示。

表2 ResNet-50和REP-ResNet结构对比Tab.2 Structure comparison of ResNet-50 and REP-ResNet

1.3.1 残差结构调整 2015 年SERGEY 等[17]提出批标准化(Batch normalization)方法,通过批标准化可以将每层神经元的特征值重新符合标准正态分布,使特征值落在激活函数对于输入值较为敏感的区域。使输入的微小变化可导致损失函数较大的变化,使得梯度变大,避免梯度消失,同时也可加快收敛。

ResNet-50 中传统残差块的顺序为卷积层、批标准化、激活函数。这样由于对输入特征未进行归一化,弱化了批标准化的作用。因此,本研究把传统的残差网络结构调整为批标准化、激活函数、卷积层的排列顺序,这样不仅可以很好地发挥批标准化层的作用,还保留了传统残差块结构中的恒等映射部分。原始参数块与改进残差块的结构如图3所示。1.3.2 通道注意力机制 苹果果园环境中,不同叶片之间交替重叠,背景复杂多样。通过添加注意力机制,以提高对不同病斑的识别能力。ECA 为一种高效通道注意力机制,在增加少量参数的情况下,通过赋予通道不同权值,进而提高模型的识别能力。ECA 的模块示意图如图4所示。首先对卷积得到的特征图进行全局平均池化(Global average pooling,GAP),将池化后的特征图进行填充(Padding,P),再使用卷积核大小为3 的1 维卷积进行通道交互,然后使用Sigmoid 激活函数进行激活得到不同通道的特征权重。最后将得到的通道权重与输入特征图相乘得到最后的特征图。

图3 残差块结构对比Fig.3 The comparison of residual block structure

图4 ECA模块示意图Fig.4 Schematic diagram of ECA module

1.3.3 并行卷积 苹果叶片病害在不同时期表现的特征有较大差异,比如斑点落叶病初期的病斑直径为2~3 mm,随着病斑扩大和增多,直径为5~6 mm[18]。为了识别不同时期叶片病害,提高病害分类效果,将ResNet-50 网络的第1 层替换为并行卷积,网络结构如图5所示。采用卷积核并行的方法,从左到右依次采用7×7、5×5、3×3 卷积核组成,并且输出通道数都为32。将3 条分支所得的卷积结果,在通道维度进行合并,最后通过1×1 卷积降低通道数,使通道数与原ResNet-50保持一致。

图5 并行卷积结构Fig.5 Structure of parallel convolution

1.4 迁移学习

迁移学习是一种常见的机器学习方法,是指将源领域学习到的知识迁移到目标领域。深度学习的训练通常需要大量数据,而对于小数据集,从头开始训练难度大容易导致过拟合,泛化能力差。将训练好的参数模型迁移到新模型上训练,不仅可以加快网络的收敛速度,还能提高模型的识别能力,减少小数据集上的过拟合[19⁃20]。迁移学习在深度学习中有3种常见的方式:一种是载入预训练模型后,训练所有参数;一种是只训练CNN 的全连接层;一种是冻结模型部分卷积层,训练剩下的卷积层和全连接层。本研究采用的迁移学习方式是将PlantVillage 上预训练好的模型权重迁移至REPResNet上重新训练。

1.5 试验设置

为验证基于改进残差网络苹果病害识别的可行性,在以下试验环境中进行试验。软件环境为Python3.9.6、pytorch1.9.0,操作系统为linux 操作系统。硬件环境CPU 为AMD EPYC 7302 16-Core Processor,GPU为Tesla T4。

深度学习中超参数是在训练模型之前自定义的参数值,而不是通过训练所获得的参数数值。通常需要通过不断优化模型的超参数,为模型选择一组最优的超参数,从而提高学习性能。本研究在多次试验的基础上,得到一组最优超参数如下:epoch为100;学习率为0.000 1;batch 为64;优化器选用Adam优化器;损失函数采用CrossEntropyLoss。

1.6 模型评价指标

为更好地验证苹果病害识别模型的识别效果,采用准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1-Score 为模型识别效果的评价指标。其计算公式分别如式(1)、式(2)、式(3)和式(4)所示。

式中:TP代表将正类预测为正类数;FN代表将正类预测为负类数;FP代表将负类预测为正类数;TN代表将负类预测为负类数。

2 结果与分析

2.1 消融试验结果

为验证数据扩充和改进模型REP-ResNet 对苹果叶片病害识别效果的影响,采用消融试验的方法进行试验,结果分别如表3—4所示。

由表3 可知,方案1 是使用基准网络模型ResNet-50,在未扩充的数据集上进行试验,在测试集上准确率达到92.69%。方案2 则是在网络模型不变的前提下,在扩充数据集上进行试验,测试集准确率达到94.41%,较方案1 提高1.72 个百分点。为进一步验证数据扩充对模型识别效果的影响,使用改进的模型REP-ResNet 进行试验,结果表明,REP-ResNet 未进行扩充时测试集准确率为95.52%,扩充后准确率达到96.82%,提高了1.30 个百分点。由上述试验可知,数据扩充可以在增强数据多样性的同时避免数据不均衡,进而达到提升模型识别能力的效果。

表3 数据扩充对试验结果的影响Tab.3 Influence of date expansion on experimental results

表4 是在数据扩充的前提下,采用不同改进方式进行试验得到的结果。对比方案1 和方案2、3、4可知,在基准模型ResNet-50 上分别使用RSA、ECA、PC 的改进方式,模型的准确率较基准模型提升1.64、2.03、1.69 个百分点。方案5、6、7 验证了不同改进方式两两组合对叶片病害识别效果的影响,结果表明,不同改进方式的组合不但不会弱化单种改进方式的识别效果,相反可以进一步提升网络的识别准确率。根据方案8 结果可知,REP-ResNet 的识别准确率可达96.82%,较基准网络ResNet-50 提高2.41 个百分点。3 种改进方式在不同程度上能够提高网络的识别准确率。

表4 改进模型对试验结果的影响Tab.4 Influence of improved model on experimental results

2.2 迁移学习对试验结果的影响

为验证迁移学习对病害识别效果的影响,将REP-ResNet 模型在PlantVillage 数据集上进行预训练得到网络模型的权重。然后将训练好的网络模型权重迁移至模型REP-ResNet 上重新在数据集上训练。全新学习和迁移学习在训练集和测试集上的准确率和损失图像如图6所示。

由图6可知,模型使用迁移学习方法训练时,在第3 个迭代次数时验证集准确率达到了95.66%;在第9 个迭代次数时,达到全新学习的最高准确率(96.82%);在第30 个迭代次数时,准确率达到最高为97.69%,较全新学习准确率提高0.87 个百分点。采用迁移学习方法训练时,模型在10个迭代次数后开始收敛且趋于稳定,而全新学习在40个迭代次数后模型开始收敛。

图6 全新学习和迁移学习的准确率和损失值Fig.6 Accuracy and loss of new learning and transfer learning

综上所述,模型提前在大数据集上进行预训练,已经初步具备识别基本特征的能力,具有更好的特征捕获能力。通过迁移学习方法,模型在准确率和收敛速度方面都有相应提升,说明迁移学习不仅可以提高模型识别准确率,还能加快模型的训练速度。

2.3 不同模型性能对比

为了充分验证REP-ResNet 网络对苹果病害的识别效果,在试验条件相同的情况下,对比不同的经典CNN 模型,其中包括AlexNet[15]、VGG[16]、MobileNet[21]、DenseNet[22]、EfficientNet[23]、ResNet 变体[24⁃25],结果如表5所示。并且对不同模型结果采用混淆矩阵可视化,如图7所示。

表5 不同模型试验结果对比Tab.5 Comparison of experimental results of different models%

图7 不同网络模型的混淆矩阵Fig.7 Confusion matrix of different network models

由表5 可知,REP-ResNet 在准确率、精确率、召回率以及F1-Score 4 个评价指标中相较于其他经典CNN 均为最高。由图7可知,REP-ResNet 在斑点落叶病、黑腐病、褐斑病等8种病害中正确分类数量均最多。并且在斑点落叶病、黑斑病这种病斑较小的苹果叶片病害中,其识别效果远高于其他CNN 模型。上述结果表明,REP-ResNet 网络模型适合于苹果病害的识别。

2.4 可视化分析结果

为验证REP-ResNet 网络对病害识别的影响,选取部分病害图像,采用Grad-CAM[26]技术,对网络中最后一层卷积层进行特征可视化分析,结果如图8所示。对于苹果花叶病病害,使用ResNet和REPResNet 进行识别,2 种网络都可以清楚地注意到病害区域,能够精准识别。但是对于斑点落叶病,ResNet 网络对于病害区域关注比较分散,虽然关注到病害区域,但是更多的则是关注到背景部分。REP-ResNet 则可以清楚地关注到病害区域。对于锈病,虽然2 种网络都可以关注到病害区域,但是2种网络关注的程度不同。基准网络ResNet 对于病害位置的关注程度较轻,而改进后的REP-ResNet则可以更好地关注到病害位置。分析可知,由于花叶病病斑较大,所以2 种网络对于该病斑位置都能关注到。但是由于斑点落叶病病斑较小,基准网络ResNet-50 网络识别效果较差,而REP-ResNet 由于对基准的网络结构ResNet-50 进行了改进,所以对具有小病斑的叶片也具有很好的识别效果。由于锈病病斑位置分布较散,REP-ResNet 则更关注病害较重位置,有利提高病害识别效果。综上所述,REP-ResNet 对于病斑较小且背景复杂的苹果病害具有更好的识别效果。

图8 网络模型可视化结果Fig.8 Visualization results of network model

3 结论与讨论

本研究针对苹果病害叶片特征相似、斑点不一、背景复杂、传统CNN 识别效果不佳的问题,在基准网络ResNet-50的基础上进行改进。通过消融试验验证模型改进对苹果病害识别的效果。本研究提出的REP-ResNet 网络在苹果花叶病、斑点落叶病等8 种病害的识别过程中达到96.82%的识别准确率。将模型在公开数据集PlantVillage 预训练的模型权重参数迁移至REP-ResNet 模型上重新训练,不仅模型的收敛速度加快,而且能够提高模型识别准确率。在使用迁移学习的基础上,模型对苹果病害的识别准确率能够达到97.69%。采用Grad-CAM 进行特征可视化分析,有助于分析网络模型的关注区域,验证模型可行性。

传统的CNN 不能满足复杂背景下的苹果病害识别。从本研究结果来看,基于改进的残差网络不仅能提高复杂背景下的苹果病害识别效果,而且还能提高小病斑的苹果病害的识别效果。REPResNet 网络在一定程度上提高了病害识别效果,但是模型参数也相应地增加。在未来的研究工作中,将设计更加轻量高效的模型对复杂背景下的苹果病害进行识别,相应地减少模型参数,使模型更适用于手机端识别。

猜你喜欢
残差准确率卷积
基于双向GRU与残差拟合的车辆跟驰建模
基于3D-Winograd的快速卷积算法设计及FPGA实现
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
健康之家(2021年19期)2021-05-23 11:17:39
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
基于残差学习的自适应无人机目标跟踪算法
基于递归残差网络的图像超分辨率重建
自动化学报(2019年6期)2019-07-23 01:18:32
从滤波器理解卷积
电子制作(2019年11期)2019-07-04 00:34:38
高速公路车牌识别标识站准确率验证法
基于傅里叶域卷积表示的目标跟踪算法