APP下载

基于全局特征提取的农作物病害识别模型

2022-02-08郭小燕于帅卿沈航驰杜佳举

农业机械学报 2022年12期
关键词:全局特征提取农作物

郭小燕 于帅卿 沈航驰 李 龙 杜佳举

(甘肃农业大学信息科学技术学院, 兰州 730070)

0 引言

农作物病害严重影响农作物的产量和质量,对病害的有效识别可为农作物生产提供安全保障。随着人工智能的发展,将深度学习技术[1]运用在农作物病害识别领域成为新的研究方向[2],卷积神经网络[3]作为深度学习技术的代表能够准确提取图像的关键特征,从而可有效完成分类和识别任务[4-5],因此在农作物病害识别方面成为研究热点[6-7]。

文献[8]搭建了一个6层卷积神经网络进行6类小麦病害识别,综合识别率可达99%以上。文献[9]采用一种基于迁移学习的卷积神经网络方法,对玉米健康叶、大斑病叶、锈病叶进行识别,识别准确率为95.33%。文献[10]利用卷积神经网络,借助迁移学习对番茄的8类病害进行识别,准确率为94.5%。对于病害类别较多的识别任务很多学者尝试加入残差块以解决网络层数增加时梯度消失的问题,文献[11]以常见的6种农作物共19类病害叶片图像为研究对象,采用ResNet50网络模型,利用迁移学习进行参数微调,识别准确率达到91.24%。文献[12]利用ResNetV1-101对61类病害进行分类,最高识别准确率为98.2%。余小东等[13]提出了一种基于残差网络ResNet50的CDCNNv2算法,对10类作物的3万多幅病虫害图像进行建模,获得了病害严重程度分类模型,识别准确率为91.51%。除此以外,一些基于卷积神经网络发展而来的经典深度学习网络模型也发挥了重要作用,文献[14]采用AlexNet[15]经典网络模型对茶树叶部病害进行分类识别研究,平均准确率为90%。文献[16]利用改进的MobileNet-V2进行田间农作物叶片病害识别,准确率达到92%。文献[17]提出一种基于Inception与Residual结构组合的Inception-resnet-v2网络模型,用于农作物病虫害识别,准确率达到96.67%,精确度达到90.77%,召回率达到89.72%。文献[18]提出了一种YOLO-JD深度学习网络检测黄麻病害,识别率为96.63%。

利用卷积神经网络进行农作物病害识别已经取得一定的研究成果,但仍存在以下问题:当待检测图像清晰、端正、完整时识别率较高,但当待测样本与训练样本相比出现模糊、倾斜、局部缺失等变化的情况时识别效果并不理想,分析其主要原因发现,现阶段对图像的特征提取多集中在利用卷积操作进行平面图像的局部特征提取,缺少对图像全局以及空间信息的捕捉。有学者通过在训练集中加入图像变换(旋转、裁剪)等扩充数据集的方法进行尝试[19-20],但由于未在网络结构上有所突破,识别效果也受到了较大限制。本文采用ResNet50[21]作为基础网络引入通道特征提取机制(Squeeze-and-excitation,SE)和多头注意力(Multi-head self-attention,MHSA)[22]机制,设计一个全局特征提取深度学习网络GFDL-Net进行农作物病害识别模型,将其应用于辣椒、马铃薯、番茄等15种病害的识别任务中,并和BoTNet[23]、ResNet50、EfficientNet[24-25]模型进行对比。

1 GFDL-Net网络模型

1.1 网络结构

以ResNet50作为基础网络,将SE-Net与DFE-Net嵌入其中设计农作物病害识别网络GFDL-Net,GFDL-Net由特征提取部分与分类部分组成,分别完成样本图像特征提取与病害分类识别任务。特征提取部分包含5个层次:保留原ResNet50的第1个特征提取层,将SE-Net作为GFDL-Net的第2、3个特征提取层,将DFE-Net作为GFDL-Net的第4、5个特征提取层;分类部分包括:全局平均池化层(Avg pooling)、全连接层(Full connection)、Softmax层,如图1所示。

图1 GFDL-Net网络构架图Fig.1 GFDL-Net network structure diagram

执行分类任务时,将一幅预处理好的农作物病害RGB图像映射为3×64×64的特征向量送入网络模型,由Layer1~Layer5进行全局特征提取,生成一个512×4×4的特征向量(对应于512幅4×4的特征图),再将特征向量送入分类部分进行分类识别工作,最后生成一个15×1的特征向量作为分类结果,对应于辣椒、马铃薯、番茄3类农作物的12种病害,以及3种健康叶共15种类型,网络结构如表1所示。

1.2 通道特征提取子网络SE-Net

1.2.1SE-Net网络结构

单纯在平面上的卷积操作忽略了通道空间特征信息,为了能更好地将空间信息和平面信息融合,实现从全局感受野上捕获图像的整体特征,本文在ResNet50的第2个和第3个特征提取层的Bottleneck block中各加入了一个通道特征提取层SE-Layers(Squeeze-and-excitation)[26],设计了通道特征提取子网络SE-Net,以提取输入图像通道中的空间特征,如图2、3所示。

表1 GFDL-Net网络结构Tab.1 Structure of GFDL-Net

图2 ResNet50第2、3层结构Fig.2 ResNet50 2nd and 3rd layers structure

图3 SE-Net网络结构Fig.3 SE-Net network structure

1.2.2SE-Layer工作步骤

(1) 标准卷积操作

给定一个通道数、宽、高分别为C′、W′、H′的图像X,经过标准卷积其维度变为C×W×H的图像U,卷积公式为

X→U(X∈RC′W′H′,U∈RCWH)

(1)

(2)

式中Vc——第c个卷积核

X(s)——具有s个通道的2维图像

Uc——卷积后的图像

RC′W′H′——输入样本空间

RCWH——标准卷积后的样本空间

(2)Squeeze操作

将维度为C×W×H的张量进行全局平均池化(Global average pooling,GAP),转变为维度为C×1×1的张量Zc,计算公式为

(3)

(3)Excitation操作

提取通道中的特征信息,计算公式为

Sc=σ(W2δ(W1Zc))

(4)

式中W1——降维系数

δ——ReLU激活函数

W2——升维系数σ——Sigmoid函数

Sc——C×1×1的张量,为每个通道权重

(4)Fscale操作

将通道权重映射到原始图像,计算公式为

(5)

1.2.3SE-Layer工作机制

SE-Layer工作机制如图4所示,一幅32×32×32的输入图像经过SE-Layer转换为一幅32×16×16的图像。

图4 SE-Layer工作机制Fig.4 SE-Layer working mechanism

1.3 双注意力平面特征提取子网络(DFE-Net)

基于Transformer编码器-解码器构架的MHSA能对图像进行全局推理并生成预测,因此已有相关学者尝试在ResNet网络中加入MHSA以加强关键点的提取,从而提高网络的全局图像特征提取能力,文献[23]提出一种BoTNet网络,在ResNet50网络的最后一层用MHSA替换每个残差块(Bottleneck block)中的3×3卷积层(Convolution layer),试验证明效果较好,为获取更多输入图像的细节特征,本文在ResNet50第4、5个特征提取层的每个Bottleneck block中均用MHSA代替一个3×3卷积层,设计一个双注意力平面特征提取子网络DFE-Net,以提高网络的全局提取能力,如图5、6所示。

图5 ResNet50 第4、5层Fig.5 ResNet50 4th and 5th layers

图6 DFE-Net网络模型Fig.6 DFE-Net network model

2 模型复杂性分析

MHSA提供的全局感受野和注意力机制使网络为输入图像中的关键特征赋予更高的权重,避免了噪声干扰,因此具有高维映射能力和更强的网络表达性能。而MHSA的存在会导致网络计算成本增大,这在训练样本不变的情况下容易产生过拟合、导致网络的泛化能力下降,同时影响响应速度。ResNet50参数量为2.55×107,BoTNet为2.08×107,然而运行时间ResNet50为1.65×105ms,BoTNet为1.83×105ms,分析BoTNet运行时间略高的原因,这与MHSA带来的新的运算量有关,可以断定在Layer 4、Layer5中的每个Bottleneck block加入MHSA会增加运算成本。EfficentNet和标准卷积网络相比在网络的深度、宽度、分辨率3个维度均有提升,并通过一组固定的缩放系数缩放3个维度,在提高准确率的同时降低了网络的复杂度,其网络参数量仅为5.3×106,是ResNet50的20.7%,BoTNet的25.4%。而GFDL-Net为了进一步约简网络,提高响应速度,将每层Bottleneck block中卷积核的数量、尺寸以及Bottleneck block的尺寸都进行了调整、缩减与重新调配(表1),最终GFDL-Net网络的参数量为1.2×106,仅为ResNet50的4.7%、为BoTNet的5.7%、为EfficentNet的22.6%。

3 试验

3.1 试验数据集

在PlantVillage植物病害图像库中选取辣椒、马铃薯、番茄3类农作物,共计20 950幅图像(15种类别)作为数据源,随机抽取80%的数据作为训练集,10%作为测试集,10%作为验证集,如表2、图7所示。

3.2 试验环境

硬件环境为配置NVIDIA Ge Force GTX 1080Ti显卡的GPU图像工作站;软件环境为Ubantu 18.04操作系统、PyTorch深度学习框架以及Python语言。模型训练采用流水线方式,使用随机梯度下降方法优化整个网络模型。网络模型运行100个迭代周期(epoch),选择自适应时刻估计方法(Adaptive moment estimation)作为优化器,设置动量因子为0.90,权重衰减为0.000 1,学习率为0.1。

表2 试验数据集Tab.2 Test dataset

图7 数据集Fig.7 Dataset

3.3 试验设计

为了测试GFDL-Net网络的鲁棒性,设计了旋转测试、色彩变换测试;为了测试网络的响应速度、验证网络的参数约简后对于准确率的影响,设计了速度测试,分别进行20次试验取均值并将结果与ResNet50、BoTNet、EfficientNet进行比对。

3.3.1旋转测试

利用原始病害样本训练好网络以后,将测试样本分别旋转180°、120°、90°、60°、45°、30°进行识别测试,以验证模型对于测试样本任意角度旋转后的鲁棒性。从表3可以看出,在原始图像进行识别测试时,EfficientNet、ResNet50、BoTNet、GFDL-Net 4种模型的准确率均较高,分别为98.67%、98.92%、99.49%、99.32%。BoTNet和GFDL-Net有一定优势(BoTNet略高一些),可见MHSA的引入对于改善网络性能效果明显。当图像旋转180°、120°、90°、60°、45°、30°时,4种网络模型的识别率都有所下降,在待测图像旋转90°、180°时4种模型的识别准确率下降都不是非常明显,在旋转90°时识别率都保持在91%以上,其中BoTNet和GFDL-Net优势明显,分别为96.366%和96.705%,在旋转180°时BoTNet为97.093%,GFDL-Net为96.705%,表明MHSA的加入增强了网络对于直角变换、平面变换的鲁棒性。但当原图像经过旋转30°、45°、60°、120°后,EfficientNet、ResNet50、BoTNet识别准确率剧烈下降, GFDL-Net优势明显,特别在旋转45°时,分别比EfficientNet、ResNet50、BoTNet高出34.496、34.302、30.669个百分点。GFDL-Net平均识别率为94.34%,与EfficientNet、ResNet50、BoTNet相比分别高出21.97、20.05、18.62个百分点,表明其对于样本旋转的鲁棒性优势明显,表现出更强的泛化能力和稳定性。

3.3.2色彩变换测试

利用原始病害图像测试样本训练好网络以后,将测试样本分别加入50%的对比度、50%的饱和度、50%的亮度进行测试,以验证模型测试样本对于色彩变化的鲁棒性,如表4所示。

表3 旋转测试识别准确率Tab.3 Recognition accuracy of rotation test %

表4 色彩变换测试识别准确率

从表4可以看出,在图像中增加50%的对比度、饱和度、亮度后,4种模型的识别准确率都有所下降,表明样本色彩变换对于模型普遍有较为明显的影响。GFDL-Net的平均识别准确率为88.98%,较旋转测试均值94.34%有所下降,证明GFDL-Net对于色彩变换较为敏感。GFDL-Net平均识别准确率与EfficientNet、ResNet50、BoTNet相比分别高出3.98、3.57、0.53个百分点,可见GFDL-Net对色彩变换的鲁棒性更好。

3.3.3速度测试

模型参数量影响模型的速度,从图8可以看出,ResNet50的参数量最大,BotNet其次,EfficientNet参数量相比前两种网络较小,GFDL-Net由于在BoTNet的基础上进行了参数约简使得参数量大幅降低,然而识别准确率较其他3种模型相比却有较为明显的优势,如图8所示。

图8 速度测试气泡图Fig.8 Bubble chart of speed test

从图8可以看出,ResNet50参数量最大,而识别准确率明显低于BoTNet和GFDL-Net,略高于EfficientNet,然而EfficientNet的参数量较小,仅为ResNet50的1/5。BoTNet识别准确率比GFDL-Net略低,参数量却为GFDL-Net的17倍。GFDL-Net与BoTNet相当(BoTNet略高一点),然而GFDL-Net参数量较EfficientNet、 ResNet50、BoTNet有明显减少。为了测试GFDL-Net模型的响应速度,在3.2节所示的同样试验环境下进行速度测试,试验结果显示,BoTNet的运行时间为1.829×105ms,ResNet50为1.645×105ms,EfficientNet为7.47×104ms,GFDL-Net为3.70×104ms,可见参数量的多少与模型的响应速度有直接关系。GFDL-Net在保证模型较好识别性能的同时保持了较轻的体量,因此识别速度较其他3种模型有较为明显的优势,运行速度分别为EfficientNet、ResNet50、BoTNet的2.0、4.4、4.9倍。可见虽然在ResNet50中加入了MHSA和SE-Layer,但GFDL-Net经过参数约简使得网络更加轻量高效,保证了病害识别的实时性。

4 结论

(1)设计了一个基于全局特征提取的农作物病害识别网络GFDL-Net,旨在提高网络的全局特征提取及病害类别的识别能力,当输入样本出现倾斜、颜色失真等变化时保证正常的识别效果。

(2)在ResNet50的第2个和第3个特征提取层的Bottleneck block中加入了一个通道特征提取层SE-Layers(Squeeze-and-excitation)设计通道特征的提取子网络SE-Net,从而提升了网络全局特征提取能力;在ResNet50的基础上加入了MHSA,设计了DEF-Net子网络以聚焦病害关键特征的提取,从而提升了网络的识别能力;在ResNet50中加入MHSA的同时调整Bottleneck block的个数以及卷积核的尺寸与数量,从而减少网络参数。

(3)旋转、颜色变换、速度测试表明GFDL-Net能够在样本颜色失真、倾斜等情况下准确识别农作物病害类别,与ResNet50、BoTNet、EfficientNet方法相比,平均识别准确率分别高出20.05、18.62、21.97个百分点,样本加入明暗度、饱和度、对比度变换后与ResNet50、BoTNet、EfficientNet相比,平均识别准确率分别高出3.57、0.53、3.98个百分点,而识别速度分别为ResNet50、BoTNet、EfficientNet的4.4、4.9、2.0倍。试验证明GFDL-Net在图像全局特征提取能力方面的改进可以有效提升网络的泛化能力与鲁棒性。

猜你喜欢

全局特征提取农作物
高温干旱持续 农作物亟须“防护伞”
俄发现保护农作物新方法
夏季农作物如何防热害
Cahn-Hilliard-Brinkman系统的全局吸引子
量子Navier-Stokes方程弱解的全局存在性
厉害了!农作物“喝”上环保酵素
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于Daubechies(dbN)的飞行器音频特征提取
落子山东,意在全局
Bagging RCSP脑电特征提取算法