陆仲达,张春达,张佳奇,王子菲,许军华
1.齐齐哈尔大学 机电工程学院,黑龙江 齐齐哈尔161000
2.齐齐哈尔大学 计算机与控制工程学院,黑龙江 齐齐哈尔161000
植物病害是危害世界农业发展的主要因素,每年都会造成严重的经济损失,随着机器学习技术的发展,植物病害识别受到了越来越多学者的关注。目前植物病害识别已经成为模式识别以及现代化农业发展的重要研究领域。早期的植物病害识别是人工从图片中提取病变区域,根据分割出的植物病斑,采用均值聚类(-means clustering algorithm)、人工神经网络(artificial neural network,ANN)以及支持向量机(support vector machine,SVM)的方法进行病害诊断。但是由于植物病斑的复杂性,提取出有效的病斑特征也并不容易。即使提取到有效的病斑特征进行诊断,也会因方法本身而出现识别率低、泛化能力弱的缺点。2012 年AlexNet 的提出使深度卷积神经网络(convolutional neural network,CNN)更加广泛地应用于图像识别领域,在其基础上VGG-16、GooLeNet、ResNet 等更多优良的模型被提出。张建华等人采用迁移学习的方式对VGG-16 进行调整,实现了对油茶的病害识别。胡志伟等人提出注意力机制和残差相结合的ARNet 实现了对番茄的病害识别。王昌龙等人提出病斑灰度图和LBP(local binary pattern)特征图相结合的双通道卷积神经网络实现了对南瓜的病害识别。上述方法对植物病害识别均取得了较好的效果,但对于复杂背景环境和病斑相似性引起的类内、类间差距仍有进一步研究的空间。
为了更好地解决此问题,本文在双线性卷积神经网络B-CNN(bilinear CNN)基础上,提出了一种新型苹果叶部病害识别方法DBNet(dual branch network),用于识别苹果叶部5 种较为常见、发病率较高的花叶病、锈病、灰斑病、斑点落叶病和褐斑病。DBNet 包含多尺度联合分支(multi-scale branch,MS)以及多维度注意力分支(multi-dimensional attention branch,DA)。多尺度联合分支(MS)通过对Inception结构进行改进,从而提取不同感受野的图像特征,并通过跨层连接从而融合不同层级的特征信息。多维度注意力分支(DA)是在SENet的基础上,提出的一种新型注意力机制,该机制能够提取3个不同维度的注意力特征。然后DBNet 将两个分支的多尺度特征和多维度特征进行融合,并在西北农林大学发布的苹果叶部病害数据集上取得了较高的识别精度。
由于复杂背景和病斑相似性的影响,给苹果叶部病害识别造成了较大困难,本文提出了一种新型双分支网络的苹果叶部病害识别方法(DBNet)。接下来对DBNet 网络结构、多尺度联合分支(MS)的模型构建、多维度注意力分支(DA)的原理进行详细研究。
苹果叶部病害识别是对同一基础类别进行更加细致的子类划分。受病斑相似性影响子类与子类之间的类间差距细微,并且受复杂背景环境的影响,导致子类的类内差距较大。如图1 可知,锈病、灰斑病和斑点落叶病的病斑间颜色、纹理相似,导致类间差距较小,并由于不同的拍摄条件以及背景的复杂性,同种子类间会受到单张叶片和一簇叶片的影响,导致类内差距较大。使卷积神经网络在识别过程中有较大概率出现误判的情况。
图1 苹果叶部病害图像Fig.1 Leaf disease diagram of apple
B-CNN 主要用于细粒度图像分类任务,与传统的卷积神经网络相比,其特殊之处在于该架构采用分流结构,具有两个分支,每个分支采用基础卷积神经网络作为特征提取器,两分支为对称结构或不对称结构均可。特征提取结束后,采用双线性池化操作实现特征融合。B-CNN 采用双分支的结构能够提取到更多物体特征和局部特征,但并未考虑到注意力机制以及多尺度信息对网络性能的影响。本文在B-CNN 的基础上,提出了一种新型双分支卷积神经网络模型(DBNet)。DBNet 网络设计的出发点是缓解复杂背景环境和病斑相似性对病害识别造成的不良影响,因此设计了双分支结构,且各分支的权值不共享。其网络结构的关键在于采用双分支网络提取更多有效的病斑的特征,且由于各分支网络结构不同,提取到的特征也不尽相同。多尺度联合分支(MS)采用标准卷积与空洞卷积等不同卷积核并行的方式获得不同的感受野,从而既可以提取全局的整体信息,又可以提取局部的细节信息。多维度注意力分支(DA)采用标准卷积和注意力机制相结合的方式,在病害识别时,使网络更加关注图像的病斑区域,关注病害之间存在的微小差异,从而提升网络识别的准确率。DBNet 网络结构如图2 所示,其中Ⓒ表示Concat 连接,⊗表示“*”,⊕表示“+”,FC 表示全连接层,Softmax 表示一种激活函数。
图2 DBNet网络结构图Fig.2 DBNet network structure
DBNet网络结构可以分为三部分,多尺度联合分支(MS)、多维度注意力分支(DA)以及最后的特征融合部分。输入一张尺寸为3×224×224 的病害图像,该图像分别通过MS 分支和DA 分支提取特征。两分支均采用VGG-16 作为基础网络,并根据两分支在DBNet 中的不同功能,对VGG-16 网络进行调整。MS 分支通过不同尺寸的卷积核来获取不同感受野下的图像特征,并将提取到的特征进行聚合,同时通过跨层连接与浅层网络的低等级图像信息连接,获取多级特征,从而达到多尺度信息融合的目的。DA分支是通过在通道、宽、高三个维度的注意力机制,将空间注意力和通道注意力相结合,对特征图每个位置进行三维的注意力调整,使卷积神经网络能够更好地关注到图像的显著性病斑区域。最后,MS 分支和DA 分支提取到的特征经过全局平均池化,在减少模型参数的同时,采用Concat 方式进行特征融合,最终采用Softmax 函数实现苹果叶部病害识别。
由于植物不同病害的病斑图像会有所差异,例如苹果叶部的花叶病、褐斑病与锈病、灰斑病、斑点落叶病有所区别,前两者的病斑区域遍布整张叶片,而后三者的病斑区域只占据叶片中的一小部分。并且由于单张叶片和一簇叶片等复杂背景的影响,对同种类病害图像识别也会造成较大困难。仅在一个卷积分支下来获取多尺度物体的特征并不是最优的方法。因此构建MS 分支最主要的目的是通过使用不同尺寸的卷积核,获取不同的感受野,当图像中病斑信息分布比较分散时,大核卷积能够获得更多的全局特征,而病斑信息分布比较集中时,小核卷积能够获得更多的局部特征。MS 分支模块结构如图3 所示,表示通道数,表示宽度,表示高度,表示空洞率,Ⓒ表示Concat连接,⊕表示“+”。MS 分支可以分为多尺寸卷积和跨层连接两部分。多尺寸卷积部分由6 个不同大小的卷积核组成,分别由1×1 和3×3 卷积,空洞率为2、3 的空洞卷积以及1×3、3×1不对称卷积组成。
图3 MS 分支结构图Fig.3 MS branch structure
其中,空洞卷积是在标准卷积基础上添加了一个空洞率的超参,在实现时可采用数字0 对卷积核进行填充。如图4(a)所示:3×3 的标准卷积空洞率为1,感受野为3×3;空洞率为2 的卷积是在3×3 标准卷积中用一个0 进行填充,感受野为5×5;空洞率为3 的卷积是在3×3 标准卷积中用两个0 进行填充,感受野为7×7。深度卷积神经网络中通常会采用下采样的方式增加感受野,但会降低图像分辨率,造成空间细节信息的丢失。而空洞卷积通过设置空洞率来扩大感受野,并且设置不同的空洞率还能够捕获多尺度的上下文信息。由图4(a)可知,空洞率为2、3 的空洞卷积在不增加额外参数的基础上,将3×3 卷积的感受野扩大为5×5 和7×7,捕获了图像的多尺度信息。
标准的×卷积可以分解成为两个1×和×1 不对称卷积,×标准卷积计算量为×,分解为不对称卷积后计算量变为2×。不对称卷积1×3 和3×1 最初是为了减少计算量而设计,但会存在少量的精度损失,于是将3×3 卷积与1×3、3×1 卷积的结果相加,在原来3×3 卷积的基础上,又额外学习了水平核和垂直核,如图4(b)所示。其核心思想是采用3 个并行层,将输入特征与标准卷积和两个不对称卷积进行运算,再利用卷积的可加性,将不对称卷积等效地融合到标准卷积中,可以将3 个卷积核视为一个增强的卷积核,即通过不对称卷积增强标准卷积的核骨架。
图4 空洞卷积和非对称卷积Fig.4 Dilated convolution and asymmetric convolutions
多尺寸卷积部分的具体操作如下所示:
式中,表示不同类型卷积操作;表示输入;sum 表示加和操作;Ⓒ表示Concat连接。
MS 分支的输入图像尺寸为××,通道数为,通过6 种不同大小的卷积核生成4 组特征图,考虑到计算量以及多尺度信息冗余的影响,将每种卷积核的数量设置为/4,然后经过Concat 连接,将4 组通道数为/4 的特征图聚合,得到特征图的通道数为,与原输入尺寸相同。
跨层连接是将卷积神经网络低层和高层的信息相结合,既保留了低等级的纹理信息,也提升了卷积神经网络高等级的语义信息。如图5 所示,跨层连接将卷积神经网络上层输出的特征图与卷积神经网络下层输出的特征图连接,通道数会变为原来的2 倍,并将此特征图做为下一层的输入。
图5 跨层连接Fig.5 Skip connections
与传统图像分类相比,部分植物不同种类病害之间的差距仅包含在微小的局部细节当中,同时又受到背景和病斑形状的影响,使识别难度增强。MS分支通过多尺度信息的融合,能够处理复杂背景、病斑分布不均等产生的类内差距,对于部分病斑之间微小的类间差距,作用效果并不明显,而且在下采样的过程中还会造成重要的局部信息丢失。本文在SENet 的基础上,提出了一种新型注意力机制——多维度注意力,并通过多维度注意力机制构建了多维度注意力分支(DA)。DA 分支采用注意力机制来对图像中病斑区域进行定位,从而得到更多有效的病斑特征,也可缓解因图像尺寸改变带来的不利影响。多维度注意力模块结构如图6 所示。其中,表示通道数,表示高度,表示宽度,1×1 conv 表示1×1 卷积,Softmax()表示对某一维度进行Softmax 激活操作,⊗表示“*”,⊕表示“+”。
图6 DA 分支注意力模块结构图Fig.6 DA branch attention module structure
DA 分支模块输入尺寸为××的特征图,经过1×1 卷积后,分别在通道、高度、宽度3 个维度进行Softmax 操作,如式(2)所示,x表示不同状态下输入,表示卷积操作,Softmax()表示对某一维度进行Softmax 运算:
在经过Softmax 运算后分别乘以一个维度比重系数,该系数表示各自维度所占的比重,从而得到各维度注意力所占总体的比重。式(3)中A表示不同维度注意力,sum 表示加和操作:
然后,将不同维度注意力相加,与输入图像相乘,获得注意力特征,最终与输入图像累加得到更显著的图像特征:
DA 分支注意力模块原理如图7 所示。其中,输入矩阵(××)大小为2×3×4,各元素值为:
图7 多维度注意力原理图Fig.7 Diagram of multi-dimensional attention
空间注意力是将特征图在(,)两个维度的每个位置进行调整,通道注意力是对通道维度进行调整。多维度注意力模块则是将卷积神经网络中特征图视为一个三维矩阵,且各位置元素间相互独立。通过对Softmax 函数分别计算3 个维度、、的注意力矩阵,但由于3 个维度、、尺寸并不相同,使得各维度所占总体的比重也并不相同,并且随着卷积神经网络层数的不断加深,3 个维度、、还会变化,因此还需乘以一个维度比重系数如式(3)所示。在浅层卷积神经网络中,由于图像的宽度、高度较大,通道数较少,宽、高两个维度起主要作用。随着卷积神经网络下采样的进行,通道数不断增多,宽度、高度不断减小,因此在深层卷积神经网络中通道维度起主要作用。因此,DA 分支的注意力机制还能够随着网络层数的不断加深,而改变各维度注意力所占比重。
实验采用西北农林大学开源的苹果叶部病害数据集如图1 所示,数据集采用BM-500GE 彩色相机,在室外环境和实验室环境进行拍摄,共26 377 张图片,其中花叶病4 875 张、褐斑病5 655 张、锈病5 694张、灰斑病4 810 张、斑点落叶病5 343 张。将数据集的70%作为训练,30%作为测试,训练集与测试集之比为7∶3,并保持训练集与测试集数据分布相同,具体数据分布如表1 所示,训练集18 462 张图片,验证集7 915 张图片。实验环境具体配置如表2 所示,采用32 GB 显存NVIDIA Tesla V100 显卡,深度学习框架采用PaddlePaddle 1.8.4 版本。
表1 数据分布表Table 1 Data distribution
表2 实验环境配置表Table 2 Experiment environment
实验参数设置如表3 所示。输入图像尺寸为224×224,采用GPU 加快神经网络训练速度,选择自适应矩估计算法(adaptive moment estimation,Adam)作为模型参数优化器(optimizer),学习率(learningrate)为0.001,损失函数采用交叉熵损失(cross entropy loss),神经网络每批次(batchsize)训练60 张图片,训练周期(epoch)为30 轮。
表3 实验参数表Table 3 Experiment parameters
为验证所提DBNet 方法的有效性,将此方法与常用的卷积神经网络模型AlexNet、VGG-16、ResNet-50、B-CNN 进行对比分析。在苹果叶部病害数据集上,对每个模型从头开始训练,直至模型收敛,并保证每个模型的训练条件相同。模型训练过程中,训练集每完成一次训练迭代,对验证集进行一次测试,能够更直观地显示模型在训练过程中的性能的变化。图8 表示不同网络模型在苹果叶部病害数据集上损失函数及准确率的变化情况。其中Loss 表示损失函数,Epoch 表示训练周期,Accuracy(acc)代表准确率。
图8 不同网络模型训练结果Fig.8 Results of different network models
由图8 可知,DBNet、AlexNet、VGG-16、ResNet-50、B-CNN 在30 轮训练周期内,模型均达到收敛。虽然DBNet 模型相较于其他模型具有更多的注意力模块以及多尺度部分,但并没有影响到模型损失函数的下降速度和收敛速度。通过训练集和验证集的训练结果可知,在苹果叶部病害数据中,DBNet 并没有因自身模型结构产生严重的过拟合现象。
DBNet、AlexNet、VGG-16、ResNet-50、B-CNN 网络模型准确率如表4 所示。本文提出的DBNet 在苹果叶部病害数据集上取得了最高97.662%的识别精度,与AlexNet、VGG-16、ResNet-50、B-CNN 相比识别精度分别提升了0.107 64、0.054 07、0.046 49、0.031 2。验证了DBNet 方法在苹果叶部病害识别方面的有效性。
表4 网络模型准确率Table 4 Accuracy of network models
图9 表示不同模型在苹果叶部病害数据上准确率变化情况。图中各网络模型整体呈上升趋势,在前20 个训练周期内,各网络模型准确率波动幅度较大,在后10 个训练周期内,准确度明显提高,并逐渐趋于稳定。AlexNet 包含5 个卷积层和3 个全连接层,网络深度为8 层,在数据集上准确率仅为86.898%。VGG-16网络深度为16层,与AlexNet准确率相比提升了0.053 57,说明网络深度对准确率影响较大。实验更深的ResNet-50 网络,准确率与VGG-16 相比提升了0.007 58,提升幅度不高,因此网络深度达到一定层次后,再次加深神经网络,效果并没有预计的可观,但随着网络模型深度的增加,模型会更加复杂。实验两条VGG-16 组成的B-CNN 网络,与准确率最高的单分支网络ResNet-50 相比,提升了0.015 29,说明双分支网络在苹果叶部病害识别任务上,要优于单分支网络。双分支网络能够提取到更多的图像特征。实验本文提出的DBNet,其包含MS分支和DA 分支,与B-CNN 的两条VGG-16 分支相比,能够更好地缓解复杂背景环境和病斑相似性带来的不利影响,准确率也达到了97.662%。
图9 不同网络模型准确率变化对比Fig.9 Comparison of accuracy changes of different network models
同时为验证DBNet 模型的复杂程度,本文从模型参数(Params)、浮点运算次数(FLOPs)以及CPU 预测时间三方面对其进行分析,如表5 所示。AlexNet受网络深度影响,模型参数、浮点运算次数、预测时间都是最少的,但其准确率也受到了影响。ResNet-50 采用了瓶颈模块,与VGG-16 相比减少了参数量,B-CNN 则由于双分支网络以及双线性池化使模型过于复杂。本文的DBNet 虽采用两个VGG-16 作为基础网络,但DBNet 中的DA 分支将VGG-16 中的普通卷积替换为深度可分离卷积,MS 分支则采用浅层信息与深层信息相结合的跨层连接,极大减少了模型参数以及浮点运算次数,降低了预测时间。
表5 网络复杂度Table 5 Network complexity
为验证不同组合的卷积类型对MS 分支的影响,设置9 组消融实验,结果如表6 所示:当单个3×3 卷积核增加至多卷积核,MS 分支中网络宽度的增加,准确率呈上升趋势;并设置3 种不同空洞率的空洞卷积实验对网络的影响,当空洞率=4 时,准确率有所下降,最终选择空洞率=2,3 的空洞卷积;3×1 和1×3的不对称卷积增加网络的非线性,提高了模型的表达能力,并额外学习了水平核与垂直核的特征,增加了捕获特征的多样性,从而提高了分类精度。
表6 MS 消融实验Table 6 MS ablation experiments
为验证MS 分支和DA 分支对DBNet网络性能的影响,分别设置四种网络结构VGG+VGG、VGG+MS、VGG+DA、MS+DA 的消融实验。经过30 轮训练,四种网络结构在验证集准确率变化如图10 所示。VGG+MS 结构和VGG+DA 结构准确率均优于VGG+VGG 结构,MS+DA 结构准确率最高,说明MS分支和DA 分支对苹果叶部病害识别具有促进作用。
图10 四种结构准确率变化Fig.10 Accuracy of four structures
VGG+VGG、VGG+MS、VGG+DA、MS+DA 四种网络结构对不同苹果叶部病害识别情况如表7 所示。VGG+MS 结构对五种苹果叶部病害识别的准确度均高于VGG+VGG 结构,说明MS 分支能够提取多尺度特征,有效缓解复杂背景环境以及病斑形状分布不均带来的不利影响。VGG+DA 结构对于锈病、灰斑病、斑点落叶病识别精度较高,说明DA 分支能够运用多维注意力机制,有效缓解病斑相似性带来的不利影响。因此,本文最终结合MS 分支和DA 分支构成了DBNet,能够有效地提升识别精度,并缓解复杂背景环境和病斑相似性带来的不利影响。
表7 消融实验Table 7 Ablation experiments %
为验证DBNet 网络性能,与其他叶部病害识别模型进行对比,如表8 所示,其准确率相较于其他四种方法分别提升了0.028 43、0.024 12、0.014 4、0.012 5。结果显示,本文提出的DBNet 模型在苹果叶部病害识别方面具有一定先进性。
表8 模型对比实验Table 8 Contrast experiment of models
本文提出了一种双分支网络的苹果叶部病害识别方法,该方法能够有效结合病斑图像的多尺度特征以及多维注意力特征,从而有效缓解复杂背景环境以及病斑相似性给苹果叶部病害识别带来的不利影响。并通过实验验证该方法具有较高的识别精度。同时在研究过程中提出了一种新型注意力机制,能够提取通道、宽、高三个维度的注意力特征。并考虑在未来工作中,将多维注意力机制引入语义分割等其他计算机视觉任务中。