基于多层EESP深度学习模型的农作物病虫害识别方法

2020-08-27 08:23宋余庆邹小波
农业机械学报 2020年8期
关键词:空洞类别准确率

宋余庆 谢 熹 刘 哲 邹小波

(1.江苏大学计算机科学与通信工程学院, 镇江 212013; 2.江苏大学食品与生物工程学院, 镇江 212013)

0 引言

我国是农业大国,农业是国民经济的基础。我国农作物种类较多、种植范围较广,仅依靠人工方式对病虫害进行管理消耗大量人力[1]。只有对各种农作物病虫害进行及时诊断和预防,才能确保农业生产的丰收[2]。

近年来,随着科学技术的迅速发展,计算机视觉研究取得了极大的进步,国内逐渐将其应用到农业生产上。谢春燕等[3]利用光谱和图像之间的关系设计了图像和光谱信息融合的病虫害叶片检测系统,基本做到了无损检测与识别。随着深度学习的快速发展,图像分类任务的精度得到了较大提升[4-5]。最早提出的LeNet-5[6]用于MNIST数据集分类,取得了较高的准确率,随后又提出了AlexNet[7]、GoogleNet[8]、VGG[9]、ResNet[10]、DenseNet[11]、CSPNet[12]等模型,在图像分类[7]上准确率得到进一步提升。深度学习方法也逐渐应用于农作物病虫害检测研究中,ZHANG等[13]利用VGG-16模型对不同时期病菌感染的苹果叶片进行分类,准确率达到90.4%。YANG等[14]提出基于深度卷积神经网络的模型,对水稻病叶进行识别,精度达到了95.48%。由此看出,深度学习方法能够快速从大规模数据集中学习到需要进行分类任务的特征,使计算机视觉任务能够获得更高的效率和精度。本文提出通过多层次网络模型深度学习方法来提高农作物病虫害的识别率。

1 相关理论

1.1 空洞卷积

空洞卷积(Dilated/atrous convolution),也叫膨胀卷积,是在标准的卷积核里面注入空洞,以此来增加感受野[15]。相比一般的卷积操作,空洞卷积多了一个超参数称为空洞率,指卷积核中每个元素之间的间隔数量,传统的空洞卷积操作如图1所示。

图1 空洞卷积Fig.1 Dilated convolution

图1a为空洞率为1的3×3卷积。图1b为空洞率为2的3×3卷积,实际的卷积核还是3×3,但是空洞数为1,也就是对于一个7×7的图像,只有其中9个红色的点和3×3的卷积核进行卷积操作,其余点忽略。可以看到虽然卷积核为3×3,但感受野已经增大到了7×7。图1c是空洞率为4的卷积操作,在空洞率为1和空洞率为2的卷积后面,能达到15×15的感受野。对比传统的卷积操作,3个步长为1的3×3卷积操作叠加起来只能达到7×7的感受野,随着卷积数量的线性增长,空洞卷积的感受野呈指数级增长。

1.2 深度可分离卷积

传统卷积是同时考虑区域和通道的,而在可分离卷积中,可将区域和通道分开计算,先进行卷积计算,再进行通道数转换[16],如图2所示。比如,假设一个n×n的滤波器,其输入通道数为c,输出通道数为c′。传统卷积的参数量为n2cc′,而采用可分离卷积,参数量仅需n2c+cc′=(n2+c′)c,随着输出通道数增多,参数量增长趋势变慢。

图2 深度可分离卷积计算过程Fig.2 Computation of depth separable convolution

2 基于EESP模型的农作物病虫害识别过程

本研究基于深度学习方法对农作物病虫害图像进行分类识别,首先加载数据集,对数据进行预处理,然后将图像送入构建的多层EESP网络进行训练,进行多层次特征提取,最后通过Softmax函数对获取到的特征进行病虫害种类识别。基本流程如图3所示,其中,Pn表示预测为第n种病虫害的概率。

图3 本文方法流程图Fig.3 Flow chart of the proposed method

2.1 基于重采样的数据预处理

目前,大多数分类数据集包含较多的类别,且每个类别包含的样本数量各不相同,少则几乎没有,多则几千幅图像,如图4所示。

图4 数据集各类别样本分布Fig.4 Sample distribution for each category of dataset

样本不平衡会带来过拟合等一系列问题[17],另外训练集和验证集不同类别样本分布几乎一致,因此进行重采样非常有必要。

为了解决样本不平衡问题,可剔除样本数量过少的类别。对于剩余类别,进行样本重采样处理,具体算法如下:

输入:D: 病虫害数据集;

c: 类别数

输出:L: 列表

计算类别i的样本数量,取平均数下界Savg;

fori=1:cdo:

ifi<=Savg:

为类别i生成一个长度为Savg的随机排列的列表Li;

用列表Li中的id值对对应类别的数量Si取余,获得对应的索引值;

根据索引值找到对应的图像;

将第i类的列表添加到总列表L中.

end if

end for

对L做一个随机排序,得到最后的图像列表.

returnL

图5为重采样算法的一个案例。通过重采样算法的预处理,解决了不同类别之间样本不均衡的问题,同时保证了数据集不会过大,处理后的数据集分布如图6所示。

图5 重采样算法Fig.5 Resampling algorithm

图6 重采样算法处理之后的数据集样本分布Fig.6 Sample distribution of dataset after resampling

2.2 基于多层特征融合的网络模型

2.2.1ESP和EESP模块

高效空间金字塔(Efficient spatial pyramid, ESP)卷积模块最早由MEHTA等[18]在2018年提出,最开始用于图像的语义分割。不过由于它具备很好的拓展性和鲁棒性,经过改进之后在计算机视觉的其它任务中也获得很多应用,具体结构如图7a所示。ESP模块基本步骤如下:①对M维的输入特征使用d个M×1×1的卷积核,将特征降至d维。②使用k个不同膨胀率的卷积核对步骤①输出的特征进行卷积,得到k个大小相同的特征图。③对上一层输出的k个特征图按一定规则进行拼接和融合,得到最终的输出。

为了使计算更加高效,MEHTA等[19]又提出了增强高效空间金字塔(EESP)卷积模块,如图7b所示,对ESP模块做了如下改进:①将ESP的point-wise卷积层替换为group point-wise 卷积层。②将ESP的传统空洞卷积层替换为depth-wise空洞卷积层。③在ESP步骤③之后使用一个group point-wise卷积层来学习输入层之间的线性组合。

与ESP相比,EESP可以减少许多参数,从而很大程度上提高效率。

图7中,Conv表示传统的可分离卷积操作,DConv-k表示空洞率为k的空洞卷积,DDConv-k表示空洞率为k的depth-wise空洞卷积。(n×n×d,d)表示d个通道数为d的n×n卷积核。

图7 ESP、EESP模块结构Fig.7 Structure of ESP and EESP

2.2.2多层次EESP模型的结构

EESP模块显著提升了视觉任务的效率,但是由于各种植物的病虫害区域及尺寸各不相同,单一的EESP模块在农业病虫害数据集上并不能很好地进行分类,所以考虑使用多层EESP模块,将它们的输出堆叠到一起进行分类,能显著提升分类的准确率。

为了解决图像的尺度不平衡问题,本文采用多层EESP模型进行分类,如图8所示,其中pi(i=1,2,…,5)为对应层特征图的尺寸。

原图经过预处理后通过一个步长为2的卷积,先进入第1层EESP组合模块(EESP-1),它由5个EESP模块串联构成,EESP-1中每个EESP模块的空洞卷积的空洞率依次设为1、2、3、…,可以保证在一个块内提取比较细小的病虫害特征。第5个EESP模块处理完成后,进行一次下采样操作,执行步长为2的平均池化操作。为了增强图像病虫害区域的原始特征信息,将它的输出和经过3×3平均池化操作(步长为2)的原图进行叠加操作,再将叠加的结果作为输入进入第2层EESP组合模块(EESP-2),以此类推,直到第5层EESP组合模块(EESP-5)处理完成。模型各层的参数设定如表1所示(输入图像为224像素×224像素)。

5层EESP组合模块都处理完成之后,将每层叠加的结果进行全局平均池化,进行层级拼接操作。层级之间的拼接原则如下:一阶EESP:选取最后一层处理之后特征。二阶EESP:选取第4层和第5层处理之后特征。三阶EESP:选取第3、4、5层处理之后特征。四阶EESP:选取第2、3、4、5层处理之后特征。五阶EESP:选取5个层处理之后特征。

图8 多层EESP模型结构Fig.8 Multi-level EESP model structure

每层特征提取出来之后,各自进行一次池化操作,池化层的卷积核根据对应层特征图的尺寸进行选择,确保池化之后得到的特征图尺寸为1×1。然后把各层的特征进行拼接(Concat)操作,之后再进行分类。这样能够保证不同尺寸的病虫害区域被识别并正确分类,从而显著提高分类精度。

2.3 算法实现

多层EESP模型的训练算法如下:

输入:I: 病虫害图像

n: 输出层数

输出:θ: 网络参数

θ: 初始化参数

表1 多层EESP模型各层参数Tab.1 Parameters for each layer of multi-level EESP model

fori=1∶5 do:

分配EESP模块空洞卷积的空洞率:i,i+1,i+2, …;

ifi>5-n:

进行池化及特征拼接操作;

计算每幅图像的类别得分;

和真实类别对比,计算损失函数L(θ);

end for

returnθ

3 实验结果与分析

3.1 数据集与实验环境

采用的数据集来自AI Challenger 2018 (https:∥challenger.ai/competition/pdr2018),按照物种-病害-程度分类,包含10个物种,共61个病虫害。带标签的数据包含32 768幅训练集图像和4 992幅验证集图像。表2展示了部分植物不同程度的病虫害图像。

使用该数据集59个类别(去除第44、45类),共计32 766幅图像进行训练。采用Pytorch框架进行实现,在2块NVIDIA GTX 2080Ti显卡上进行实验,并使用CUDA9.0和cuDNN作为支持。

3.2 实验

3.2.1模型参数设置

目前训练网络模型的方式有多种,包括所有网络的权重随机初始化生成,也可以使用在其他网络上预训练的网络权重参数。本文选择在ImageNet[20]上训练好的权重参数进行初始化,采用和ESPNetv2[19]相同的训练方式,每次迭代的学习率ηt计算公式为

表2 部分植物不同程度病虫害图像
Tab.2 Images of different crop diseases in several plants

ηt=ηmax-(t mod T)ηmin

(1)

式中t——迭代次数

ηmin——学习率的下界

ηmax——学习率的上界

T——循环周期 mod——求余操作函数

取ηmin=0.1,ηmax=0.5,T=5。网络的Batch size设置为256,迭代次数设置为300,每50次迭代后学习率减半。例如,第128次迭代的学习率为0.05。通过优化交叉熵损失函数来训练得到最优模型。

(2)

其中

式中fni(x)——经过Softmax函数处理后的分类向量中的第i项

xi——预测分类向量中的第i项元素

xj——预测分类向量中的第j项元素

yni——指示标量,指示第i个样本预测的类别,将该类对应的值标识为1,其余标识为0

N——样本数量

wj——第j个预测分类向量的权重向量

R(wn)——L2正则项C——类别数量

λ——自定义常量,设为4×10-5

3.2.2评价指标

该模型在4 992幅验证集图像上进行测试(同样去除对应的第44、45类)。采用图像分类任务里面常用的Top1和Top5评价指标进行模型评价。Top1指取最后输出的概率向量中概率最大的类别作为预测类别,如果和真实类别一致则预测正确,否则预测错误;Top5指取最后概率向量中最大的前5个概率的类别,其中只要包含了真实类别即为预测正确。

3.3 实验结果分析

对一阶和三阶EESP结构模型进行比较,训练损失如图9所示。从图中可以看出,三阶EESP模型损失下降得更快,因为三阶EESP模型从3个不同的EESP进行输出,融合了不同尺度下的特征,使得不同农作物病虫害特征更加丰富,分类更加准确。另外,在经过200次迭代后,由于加入了L2正则项,损失变得逐渐平缓,模型趋于稳定,所以训练后期的曲线会出现一定的波动。

图9 训练损失值的变化曲线Fig.9 Change curves of train loss

各模型的测试准确率见表3。从表3中可以发现,三阶EESP的模型分类效果最佳,即把第3、4、5层处理之后的特征叠加起来能获得最佳的特征。主要原因是不同层能够提取不同分辨率的病虫害图像特征,小的特征在前面的层得以保留,大的特征在后面的层更加明显,不同层的特征拼接之后能够进行准确分类。不过并不是层数越多就越好,可以看到四阶和五阶EESP模型得到的准确率和三阶模型非常接近,原因是从低层EESP模块提取到的病虫害区域特征不明显,将特征拼接之后对分类的帮助并不大,准确率提升并不显著,反而增加了模型的复杂度。

表3 各模型测试准确率Tab.3 Testing accuracy of models of different levels %

另外,比较各阶模型在不同迭代次数下的准确率,如图10所示。可以看出,针对任意阶EESP模型,随着训练迭代次数的增加准确率不断提高,在300次后趋于平稳,因此选择迭代次数为300。

图10 不同模型的Top1准确率Fig.10 Top1 accuracy of different models

表4为传统分类网络[24]结果比较,发现使用多层EESP结构之后Top1准确率明显提升,Top5依然稳定在较高水平,这说明使用不同分辨率的空洞卷积对特征提取有较大的帮助。

表4 传统分类网络测试准确率Tab.4 Testing accuracy of classical models %

4 结论

(1)基于多层特征融合,结合空洞卷积理论构建多层EESP模型,提出了基于多层特征融合的农作物病虫害识别方法,实现了对农作物病虫害图像的精确分类,Top1分类准确率最高达到88.4%。

(2)通过与传统网络模型进行比较,结果表明,本文方法对农作物病虫害图像的分类效果提升较为明显。

猜你喜欢
空洞类别准确率
番茄出现空洞果的原因及防治措施
论陶瓷刻划花艺术类别与特征
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
一起去图书馆吧
如何避免想象作文空洞无“精神”
空洞的眼神
选相纸 打照片