一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于SK-EfficientNet的轻量级农作物病害识别方法与流程

2021-11-09 21:20:00 来源:中国专利 TAG:

一种基于sk

efficientnet的轻量级农作物病害识别方法
技术领域
1.本发明涉及植物病害图像识别技术领域,尤其涉及一种基于sk

efficientnet的轻量级农作物病害识别方法。


背景技术:

2.随着计算机技术的不断发展,以机器学习为代表的识别方法也应用到了农作物的病害识别之中。在农作物病害的识别过程中,该识别模式需提取出农作物病害图像的多个特征并加以判断,最终便可通过训练学习的方式识别出病害的类别,具有较好的效果。与此同时,也出现了一系列图像预处理方法及特征选择技术,如图像增强和主成分分析方法等,加强了对病害特征的提取程度,因此,特征的提取与处理成为了该识别模式效果好坏的一个关键因素。但无论该识别模式如何发展,在识别之前需手动提取特征,一方面造成了较大的工作量,另一方面对于特征的处理不当则会造成识别效果的降低。因此,该识别模式具有一定的局限性,在实际中也无法大量推广。
3.近年来,深度学习在图像识别领域中应用较为广泛,而卷积神经网络是深度学习的典型代表之一,该网络不仅具有很强的学习能力,而且可以实现图像特征的自动提取并达到很好的识别效果,相比于传统的机器学习方法,深度学习可以直接将图像作为输入,并从原始像素中经过少量的预处理得到图像的有效表征。卷积神经网络能够提取农作物病害图像中丰富、抽象、深层次的语义信息,在很大程度上优于传统的农作物病害识别方法。其中具有代表性的网络主要有alexnet,vgg,googlenet和resnet。然而,这些经典的网络构建的越来越深,所需模型参数也越来越多,过多的参数会导致网络运行速度下降和占用内存增大,不利于模型的部署与应用。
4.当前基于cnn的分类模型朝向了更深或更宽层的复杂结构演进。虽然在一定程度上取得不错效果,但是深层意味着网络模型具有更多的参数,这不仅增加了计算开销,同时对计算机硬件设备要求更高。


技术实现要素:

5.本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种基于sk

efficientnet的轻量级农作物病害识别方法。
6.本发明解决其技术问题所采用的技术方案是:
7.本发明提供一种基于sk

efficientnet的轻量级农作物病害识别方法,该方法包括以下步骤:
8.训练阶段:
9.步骤1:获取包含多种病害种类的植物病害图像,作为输入的训练数据集;
10.步骤2:对训练数据集中的植物病害图像进行预处理,包括:随机裁剪、旋转、高斯模糊添噪、颜色增亮、调整各种类图像数量、统一图像尺寸;
11.步骤3:构建基于sk

efficientnet的分类模型;针对efficientnet的核心模块移
动翻转瓶颈卷积mbconv进行改进,将原有senet模块替换为sknet,首先将mbconv模块卷积核为k的卷积替换为3
×
3深度可分离卷积和dilation为2的3
×
3空洞卷积,对输入特征进行不同卷积核大小的完整卷积操作,再通过全局平均池化来获得全局信息、两个全连接层找到不同卷积核所占权重比,最后在通道方向进行softmax操作,形成sk

mbconv网络结构;将sk

mbconv融合原始efficientnet模型,形成sk

efficientnet网络模型;
12.步骤4:对sk

efficientnet分类模型进行学习训练;将训练数据集中的植物病害图像输入sk

efficientnet分类模型进行训练,保存训练好的模型;
13.测试阶段:
14.步骤5、输入待识别的植物图像,通过训练好的sk

efficientnet分类模型对植物图像进行识别,获得特征向量,利用全连接层进行病害识别判定,获得该植物图像在每一类下的概率,概率值最大的即为对应的图像类别。
15.进一步地,本发明的所述步骤1中:
16.输入的训练数据集采用plantvillage数据库,该数据库收录了大量的植物病害图像,提取其中番茄叶片图像作为源数据,共10个类别,包括9种病害和健康叶片,9种病害包括:细菌性斑点病、早疫病、晚疫病、叶霉病、斑枯病、二斑叶螨病、轮斑病、花叶病、黄化曲叶病,图像总数超过18160张。
17.进一步地,本发明的所述步骤2中:
18.1)随机裁剪:在植物病害图像的不同区域随机裁剪出局部图像从而得到更多的数据;
19.2)旋转:将部分植物病害图像沿着顺时针随机旋转90、180和270度,模拟真实农业场景角度差异情况,以提高变形适应性;
20.3)高斯模糊添噪:对植物病害图像添加椒盐噪声和高斯噪声,模拟拍摄不同清晰度的样本;
21.4)颜色增亮:以指数方式更改每个像素的饱和度s和亮度v分量,并保持色相h不变,以增加照明变化;s和v通道分别使用从[0.25,4]均匀得出的系数进行缩放;
[0022]
5)调整各种类图像数量:对样本数量明显过多的类别,随机剔除一部分样本,使该类别的植物病害图像数量维持在一个平均水平上;
[0023]
6)统一图像尺寸:最后将所有植物病害图像的尺寸统一为256
×
256像素。
[0024]
进一步地,本发明的所述步骤3中sk

mbconv网络结构具体为:
[0025]
首先对特征图进行1
×
1普通卷积升维,再分别进行3
×
3深度可分离卷积和dilation为2的3
×
3空洞卷积,得到两个新的特征图和再将两个分支的结果通过逐元素求和来融合,得到新的特征图u,接着将新的特征图u依次经过全局平均池化层、两个全连接层和softmax操作,再经过1
×
1普通卷积降维,最后将droupout失活函数得到的特征图与原始特征图进行融合,得到最终的特征图。
[0026]
进一步地,本发明的所述步骤3中sknet具体为:
[0027]
选择性卷积核机制sknet采用非线性的方法融合来自不同核的特征,使神经元对于不同尺寸的输入信息进行自适应的调整其感受野的大小,其包含了三个操作:split操作产生多个不同核尺寸的通道与神经元的不同感受野尺寸相关;fuse操作组合融合来自多通道的信息从而获得一个全局及可理解性的表示用于进行权重选择;select操作根据挑选得
到的权重对不同核尺寸的feature map进行融合。
[0028]
进一步地,本发明的所述步骤3中选择性卷积核机制sknet的具体方法为:
[0029]
1)split:使用不同的卷积核对输入特征图进行卷积;对输入向量x进行不同3
×
3和5
×
5的完整卷积操作,得到两个特征图和为进一步提高效率,使用膨胀大小为2,卷积核为3
×
3的空洞卷积替代传统5
×
5的卷积;
[0030]
2)fuse:将多个分支的结果通过逐元素求和来融合,以获得选择权重的全局和综合表示;首先两个特征图进行求和操作,得到新的特征图u:再通过简单的全局平均池化来嵌入全局信息,生成信道统计信息s∈r
d
×1,其中c是模型图中s的特征维数,其公式为:
[0031][0032]
其中,fgp表示全局平均池化,uc表示将步骤一split融合后得到的新的特征图,h、w分别代表特征图uc的高和宽,i和j代表uc在h和w上不同的通道图,sc表示对每一个通道图的所有像素值求平均值得到的新的通道图;
[0033]
然后对输出s做全连接找到每一个通道占的比重z,确保卷积核的准确性和自适应性,其公式为:
[0034][0035]
其中,δ表示relu函数,表示批正则化处理bn;表示全连接层,ws表示通道s的权重;z的通道数为d,d表示特征图降维后的维度,其公式为:
[0036]
d=max(c/r,l)
[0037]
其中,c表示特征维数,r表维数的降低率,l表示d的最小值,取值32;
[0038]
3)select:根据选择权重聚合不同大小内核的特征图;首先通过softmax回归出通道和卷积核之间的权重信息,输出矩阵a
c
,b
c
,两分支情况下,b
c
为冗余矩阵,b
c
=1

a
c
,其公式为:
[0039][0040]
其中,a,b∈r
c
×
d
,a,b分别表示的平滑注意力向量,a
c
∈r1×
d
表示a的第c行,a
c
表示a的第c个元素值;对于b向量同理;
[0041]
然后将a
c
,bc分别与split卷积后的特征和进行相乘再求和操作;其公式为:
[0042][0043]
进一步地,本发明的所述步骤3中形成的sk

efficientnet网络模型为:
[0044]
将sk

mbconv融合原始efficientnet模型,形成sk

efficientnet网络模型,由16个sk

mbconv卷积模块、2个卷积层、1个全局平均池化层和1个分类层构成;包括以下阶段:
[0045]
第一阶段,对输入的2242243的图像进行3
×
3卷积,再依次经过批归一化层和swish激活函数,输出一个维度为112
×
112
×
32的特征图;
[0046]
第二阶段,对前一阶段输出的112
×
112
×
32的特征图进行sk

mbconv,即改进移动
翻转瓶颈卷积,其中sk

mbconv扩张比例为1,深度卷积核大小为3
×
3,空洞卷积核大小为3
×
3,核步长1
×
1,输出一个维度为112
×
112
×
16的特征图;
[0047]
第三阶段,对前一阶段输出的112
×
112
×
16的特征图进行两次sk

mbconv,其中两次sk

mbconv的扩张比例都为6,深度卷积核大小为3
×
3,空洞卷积核大小为3
×
3,核步长2
×
2,输出一个维度为56
×
56
×
24的特征图;
[0048]
第四阶段,对前一阶段输出的56
×
56
×
24的特征图进行两次sk

mbconv,其中第一次sk

mbconv的扩张比例为6,深度卷积核大小为5
×
5,空洞卷积核大小为5
×
5,核步长为2
×
2,第二次sk

mbconv的核步长为1
×
1,输出一个维度为28
×
28
×
40的特征图;
[0049]
第五阶段,对前一阶段输出的28
×
28
×
40的特征图进行三次sk

mbconv,其中第一次sk

mbconv的扩张比例为6,深度卷积核大小为3
×
3,空洞卷积核大小为3
×
3,核步长为2
×
2,第二次和第三次的核步长为1
×
1,输出一个维度为14
×
14
×
80的特征图;
[0050]
第六阶段,对前一阶段输出的14
×
14
×
80的特征图进行三次sk

mbconv,其中三次sk

mbconv的扩张比例都为6,深度卷积核大小为5
×
5,空洞卷积核大小为5
×
5,核步长为1
×
1,输出一个维度为14
×
14
×
112的特征图;
[0051]
第七阶段,对前一阶段输出的14
×
14
×
112的特征图进行四次sk

mbconv,其中第一次sk

mbconv的扩张比例为6,深度卷积核大小为5
×
5,空洞卷积核大小为5
×
5,核步长为2
×
2,第二、三、四次sk

mbconv的核步长为1
×
1,输出一个维度为7
×7×
192的特征图;
[0052]
第八阶段,对前一阶段输出的7
×7×
192的特征图进行一次sk

mbconv,其中sk

mbconv的扩张比例为6,深度卷积核大小为3
×
3,空洞卷积核大小为3
×
3,核步长为1
×
1,输出一个维度为7
×7×
320的特征图;
[0053]
第九阶段,对对输入的7
×7×
320的特征图像依次进行1
×
1普通卷积、批归一化、swish激活函数、全局平均池化层、全连接层和softmax激活函数,输出分类结果。
[0054]
进一步地,本发明的所述步骤4中进行学习训练的方法具体为:
[0055]
1)模型参数设置;
[0056]
在模型训练过程中,采用批量训练的方法将训练集与验证集分为多个批次batch,其中训练批次设置为16,验证批次为8;遍历一次训练集中的所有图片作为一次迭代epoch,共迭代70轮;采用随机梯度下降优化算法sgd对模型进行优化,设置初始学习率为0.01,为防止过拟合,将正则化系数设为0.0005,学习率分阶段逐次衰减为原来的0.1倍;
[0057]
2)模型训练;
[0058]
采用sk

efficientnet作为基础网络进行训练,包括16个sk

mbconv卷积模块、2个卷积层、1个全局平均池化层和1个分类层构成;首先利用卷积核为32核3
×3×
3,步长为2
×
2对输入的224
×
224
×
3的图像进行升维操作,得到维度维112
×
112
×
32的特征图,接着进行sk

mbconv卷积操作,先经过kxk的深度卷积和dilation为2的3
×
3空洞卷积,对输入特征进行不同卷积核大小的完整卷积操作,再通过全局平均池化来获得全局信息,两个全连接层找到不同卷积核所占权重比,最后在通道方向进行softmax操作;当出现相同的sk

mbconv时,进行连接失活和输入的跳跃连接;最后经过1
×
1的逐点卷积恢复原通道,并使用全连接层进行分类;每一个卷积操作后都会进行批归一化和swish激活函数。
[0059]
本发明产生的有益效果是:针对目前大多数深度卷积神经网络模型识别所需网络参数量较多,速度慢,精确度不够高的问题,本发明提出一种基于sk

efficientnet的轻量
级农作物病害识别方法,结合efficientnet高速度与精度、sknet高特征提取能力的优点,在减少模型参数的同时更好地识别出不同农作物的多种病害类别,尤其是复杂的农作物病害,并具有更高的识别精度。本发明的sk

efficientnet模型具有以下优点:(1)模型所需参数更少;(2)模型识别精确度更高;(3)模型识别速度更快;(4)模型更方便部署与应用。
附图说明
[0060]
下面将结合附图及实施例对本发明作进一步说明,附图中:
[0061]
图1是本发明实施例的病害叶片示例图;
[0062]
图2是本发明实施例的每类番茄病害样本数量;
[0063]
图3是本发明实施例的各数据增强处理效果;
[0064]
图4是本发明实施例的sk

mbconv网络结构;
[0065]
图5是本发明实施例的选择性卷积核机制结构图;
[0066]
图6是本发明实施例的sk

efficientnet网络模型。
具体实施方式
[0067]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0068]
如图1所示,本发明实施例的基于sk

efficientnet的轻量级农作物病害识别方法,该方法包括以下步骤:
[0069]
训练阶段:
[0070]
步骤1:获取包含多种病害种类的植物病害图像,作为输入的训练数据集;
[0071]
本发明所用数据集来源plantvillage(www.plantvillage.org)数据库。该数据库收录了大量的植物病虫害图像,本发明提取其中番茄叶片图像作为源数据,共10个类别,包括9种病害和健康叶片,图像总数18160张。图1和图2给出了该数据集的示例样本以及每类样本的数量。
[0072]
步骤2:对训练数据集中的植物病害图像进行预处理,包括:随机裁剪、旋转、高斯模糊添噪、颜色增亮、调整各种类图像数量、统一图像尺寸;
[0073]
为了弥补plantvillage数据样本分布不均匀对模型识别性能影响,以及避免网络过度拟合,本发明在训练之前,对数量较少的样本数据进行增强处理。使用的增强方法有:1)随机裁剪:在较大图像的不同区域随机裁剪出局部图像从而得到更多的数据。2)旋转:将部分图像沿着顺时针随机旋转90、180和270度,模拟真实农业场景角度差异情况,以提高变形适应性;3)高斯模糊添噪:对图像添加椒盐噪声和高斯噪声,模拟拍摄不同清晰度的样本。4)颜色增亮:以指数方式更改每个像素的饱和度s和亮度v分量,并保持色相h不变,以增加照明变化。s和v通道分别使用从[0.25,4]均匀得出的系数进行缩放;各增强方法的预处理效果如图3所示。5)调整各种类图像数量:对样本数量明显过多的类别,随机剔除一部分样本,使该类别的图像数量维持在一个平均水平上。6)统一图像尺寸:最后将所有图像的尺寸统一为256
×
256像素。经过预处理以后,最终得到的图像样本共31117张,作为最终实验的番茄病害样本数据集。
[0074]
步骤3:构建基于sk

efficientnet的分类模型;
[0075]
1)构建sk

mbconv核心模块;
[0076]
针对efficientnet的核心模块移动翻转瓶颈卷积(mobile inverted bottleneck convolution,mbconv)进行改进,将原有senet模块替换为sknet,首先将mbconv模块卷积核为k的卷积替换为3
×
3深度可分离卷积和dilation为2的3
×
3空洞卷积,对输入特征进行不同卷积核大小的完整卷积操作,再通过全局平均池化来获得全局信息、两个全连接层找到不同卷积核所占权重比,最后在通道方向进行softmax操作,形成sk

mbconv网络结构,如图4所示,sk

mbconv网络结构具体为:
[0077]
首先对特征图进行1
×
1普通卷积升维,再分别进行3
×
3深度可分离卷积和dilation为2的3
×
3空洞卷积,得到两个新的特征图和再将两个分支的结果通过逐元素求和来融合,得到新的特征图u,接着将新的特征图u依次经过全局平均池化层、两个全连接层和softmax操作,再经过1
×
1普通卷积降维,最后将droupout失活函数得到的特征图与原始特征图进行融合,得到最终的特征图。
[0078]
选择性卷积核机制sknet采用一种非线性的方法融合来自不同核的特征可以使神经元对于不同尺寸的输入信息进行自适应的调整其感受野的大小,其包含了三个操作:split操作产生多个不同核尺寸的通道与神经元的不同感受野尺寸相关;fuse操作组合融合来自多通道的信息从而获得一个全局及可理解性的表示用于进行权重选择;select操作根据挑选得到的权重对不同核尺寸的feature map进行融合。选择性卷积核机制结构图如图5所示。
[0079]
1)split:使用不同的卷积核对输入特征图进行卷积;对输入向量x进行不同3
×
3和5
×
5的完整卷积操作,得到两个特征图和为进一步提高效率,使用膨胀大小为2,卷积核为3
×
3的空洞卷积替代传统5
×
5的卷积;
[0080]
2)fuse:将多个分支的结果通过逐元素求和来融合,以获得选择权重的全局和综合表示;首先两个特征图进行求和操作,得到新的特征图u:再通过简单的全局平均池化来嵌入全局信息,生成信道统计信息s∈r
d
×1,其中c是模型图中s的特征维数,其公式为:
[0081][0082]
然后对输出s做全连接找到每一个通道占的比重z,确保卷积核的准确性和自适应性,其公式为:
[0083][0084]
其中,δ表示relu函数,表示批正则化处理bn;z的通道数为d,其公式为:
[0085]
d=max(c/r,l)
ꢀꢀꢀ
(3)
[0086]
3)select:根据选择权重聚合不同大小内核的特征图;首先通过softmax回归出通道和卷积核之间的权重信息,输出矩阵a
c
,b
c
,两分支情况下,b
c
为冗余矩阵,b
c
=1

a
c
,其公式为:
[0087][0088]
其中,a,b∈r
c
×
d
,a,b分别表示的平滑注意力向量,a
c
∈r1×
d
表示a的第c行,a
c
表示a的第c个元素值;对于b向量同理;
[0089]
然后将a
c
,b
c
分别与split卷积后的特征和进行相乘再求和操作;其公式为:
[0090][0091]
2)构建sk

efficientnet识别模型
[0092]
将sk

mbconv融合原始efficientnet模型,形成sk

efficientnet网络模型,由16个sk

mbconv卷积模块、2个卷积层、1个全局平均池化层和1个分类层构成。其网络模型如图6所示,形成的sk

efficientnet网络模型为:
[0093]
将sk

mbconv融合原始efficientnet模型,形成sk

efficientnet网络模型,由16个sk

mbconv卷积模块、2个卷积层、1个全局平均池化层和1个分类层构成;其网络模型如图6所示,图中不同的颜色代表了不同的阶段,第一阶段,对输入的2242243的图像进行3
×
3卷积,再依次经过批归一化层和swish激活函数,输出一个维度为112
×
112
×
32的特征图。第二阶段,对前一阶段输出的112
×
112
×
32的特征图进行sk

mbconv(改进移动翻转瓶颈卷积),其中sk

mbconv扩张比例为1,深度卷积核大小为3
×
3,空洞卷积核大小为3
×
3,核步长1
×
1,输出一个维度为112
×
112
×
16的特征图。第三阶段,对前一阶段输出的112
×
112
×
16的特征图进行两次sk

mbconv,其中两次sk

mbconv的扩张比例都为6,深度卷积核大小为3
×
3,空洞卷积核大小为3
×
3,核步长2
×
2,输出一个维度为56
×
56
×
24的特征图。第四阶段,对前一阶段输出的56
×
56
×
24的特征图进行两次sk

mbconv,其中第一次sk

mbconv的扩张比例为6,深度卷积核大小为5
×
5,空洞卷积核大小为5
×
5,核步长为2
×
2,第二次sk

mbconv的核步长为1
×
1,输出一个维度为28
×
28
×
40的特征图。第五阶段,对前一阶段输出的28
×
28
×
40的特征图进行三次sk

mbconv,其中第一次sk

mbconv的扩张比例为6,深度卷积核大小为3
×
3,空洞卷积核大小为3
×
3,核步长为2
×
2,第二次和第三次的核步长为1
×
1,输出一个维度为14
×
14
×
80的特征图。第六阶段,对前一阶段输出的14
×
14
×
80的特征图进行三次sk

mbconv,其中三次sk

mbconv的扩张比例都为6,深度卷积核大小为5
×
5,空洞卷积核大小为5
×
5,核步长为1
×
1,输出一个维度为14
×
14
×
112的特征图。第七阶段,对前一阶段输出的14
×
14
×
112的特征图进行四次sk

mbconv,其中第一次sk

mbconv的扩张比例为6,深度卷积核大小为5
×
5,空洞卷积核大小为5
×
5,核步长为2
×
2,第二、三、四次sk

mbconv的核步长为1
×
1,输出一个维度为7
×7×
192的特征图。第八阶段,对前一阶段输出的7
×7×
192的特征图进行一次sk

mbconv,其中sk

mbconv的扩张比例为6,深度卷积核大小为3
×
3,空洞卷积核大小为3
×
3,核步长为1
×
1,输出一个维度为7
×7×
320的特征图。第九阶段,对对输入的7
×7×
320的特征图像依次进行1
×
1普通卷积、批归一化、swish激活函数、全局平均池化层、全连接层和softmax激活函数,输出分类结果。
[0094]
步骤4:对sk

efficientnet分类模型进行学习训练;将训练数据集中的植物病害图像输入sk

efficientnet分类模型进行训练,保存训练好的模型;
[0095]
1)模型参数设置;
[0096]
在模型训练过程中,采用批量训练的方法将训练集与验证集分为多个批次
(batch),其中训练批次设置为16,验证批次为8。遍历一次训练集中的所有图片作为一次迭代(epoch),共迭代70轮。采用随机梯度下降优化算法(stochastic gradient descent,sgd)对模型进行优化,设置初始学习率为0.01,为防止过拟合,将正则化系数设为0.0005,学习率分阶段逐次衰减为原来的0.1倍。
[0097]
2)模型训练;
[0098]
采用sk

efficientnet作为基础网络进行训练,包括16个sk

mbconv卷积模块、2个卷积层、1个全局平均池化层和1个分类层构成。首先利用卷积核为32核3
×3×
3,步长为2
×
2对输入的224
×
224
×
3的图像进行升维操作,得到维度维112
×
112
×
32的特征图,接着进行sk

mbconv卷积操作,先经过kxk的深度卷积和dilation为2的3
×
3空洞卷积,对输入特征进行不同卷积核大小的完整卷积操作,再通过全局平均池化来获得全局信息,两个全连接层找到不同卷积核所占权重比,最后在通道方向进行softmax操作。当出现相同的sk

mbconv时,进行连接失活和输入的跳跃连接。最后经过1
×
1的逐点卷积恢复原通道,并使用全连接层进行分类。注意该模块中的每一个卷积操作后都会进行批归一化和swish激活函数。
[0099]
测试阶段:
[0100]
步骤5、输入待识别的植物图像,通过训练好的sk

efficientnet分类模型对植物图像进行识别,获得特征向量,利用全连接层进行病害识别判定,获得该植物图像在每一类下的概率,概率值最大的即为对应的图像类别。
[0101]
应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献