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

一种基于改进残差网络的水稻害虫识别方法与流程

2021-11-05 18:45:00 来源:中国专利 TAG:


1.本发明涉及深度学习技术领域,尤其涉及一种基于改进残差网络的水稻害虫识别方法。


背景技术:

2.近年来,随着人工智能的兴起,深度学习在计算机视觉、自然语言处理、情感计算等领域得到了广泛的关注和应用,很多科研工作者将深度学习应用到农业领域,在作物害虫的识别上已有了初步探索。
3.目前,卷积神经网络已经广泛应用于图像识别领域,其中具有代表性的网络主要有alexnet,vgg,googlenet,resnet和densenet,基于以上网络模型,提出了很多改进的网络模型,这相比于常规的人工识别农作物病虫害取得了较好的效果,但是,在构建深层卷积神经网络的过程中,当梯度信号从底层反向传播到最顶层时,会逐步衰减,从而导致大量的特征信息的丢失。
4.胶囊网络的关键特性使其可以保留有关图像位置和姿势的详细信息,这些信息在图像识别中占据着突出的位置。将胶囊网络嵌入残差网络中构建改进的残差网络模型,能够解决在构建网络过程中信息丢失的问题。


技术实现要素:

5.本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种基于改进残差网络的水稻害虫识别方法。
6.本发明解决其技术问题所采用的技术方案是:
7.本发明提供一种基于改进残差网络的水稻害虫识别方法,该方法包括以下步骤:
8.训练阶段:
9.步骤1:获取大规模的害虫识别数据集;
10.步骤2:对害虫识别数据集进行预处理,包括:旋转、翻转、光照度处理、对比度处理、色彩平衡处理以及锐度处理;
11.步骤3:构建图片分类网络模型,即改进的残差网络模型:对输入的图像进行卷积和下采样,以提取图像的特征,通过四个basicblock,降低特征图的尺寸并提升特征图的通道;将特征图进行胶囊化编码,转为多个胶囊,随后进行层间路由,采用dynamic routing算法这种近似全连接的方式映射到一定的空间;在多个害虫分类识别的问题中,dynamic routing算法将胶囊特征映射到m
×
n的空间,即每个类对应1个n维的特征,然后使用非线性映射将其压缩成1个m维的向量,取l2范式的最大值作为最终的预测值标签,最终胶囊的向量输出;
12.步骤4:将害虫识别数据集按照一定比例分为训练集和测试集,通过训练集对构建的图片分类网络模型进行训练,保存训练好的图片分类网络模型;
13.测试阶段:
14.步骤5:将测试集图像输入训练好的改进的残差网络模型中进行水稻害虫识别,输出识别结果准确率。
15.进一步地,本发明的所述步骤1中:
16.害虫识别数据集是层级结构,分为8种农作物大类和102种害虫小类,包含超过75000张害虫样本;其类别包括:稻卷叶虫、稻螟蛉、稻潜叶蝇、二化螟、三化螟、稻瘿蚊、稻秆蝇、稻褐飞虱、白背飞虱、灰稻虱、稻水象虫、稻叶蝉、禾蓟马、水稻壳害虫。
17.进一步地,本发明的所述步骤2中对害虫识别数据集进行预处理的方法具体为:
18.旋转,旋转角度分别为90
°
、180
°
、270
°

19.翻转,翻转方式为上下翻转、水平翻转;
20.采用包括光照度处理、对比度处理、色彩平衡处理以及锐度处理在内的数据增强技术,达到数据均匀,总的图片数量达到20670张,提升了模型的泛化能力和模型的鲁棒性。
21.进一步地,本发明的所述步骤3中构建的改进的残差网络模型具体为:
22.先对输入的图像进行卷积和下采样,以提取图像的特征;提取特征的方法为:
23.输出图像大小=(输入图像

1)*stride outputpadding

2*padding kernel_size
24.其中,stride表示步长,outputpadding表示输出边补充0的层数,padding表示填充量,kernel_size表示卷积核大小;
25.通过四个basicblock,将特征图的尺寸降到7
×
7、特征图的通道提升到512,通过这种方式可以捕获到更多的样本特征;
26.接着,将512
×7×
7的特征图进行胶囊化编码,转为32个8
×
8的胶囊,再经过2次conv1d,最终得到32个8
×2×
2的胶囊,随后进行层间路由,采用dynamic routing算法这种近似全连接的方式映射到14
×
16的空间;
27.在14个害虫分类识别的问题中,dynamic routing算法将胶囊特征映射到14
×
16的空间,即每个类对应1个16维的特征,然后使用非线性映射,即squash,将其压缩成1个14维的向量,取l2范式的最大值作为最终的预测值标签,最终胶囊的向量输出如下:
[0028][0029]
其推导过程为:
[0030]
每个上层胶囊i连接到下层j的概率为:
[0031][0032]
式中c
ij
为权重系数,b
ij
是胶囊i连接到胶囊j的先验概率,初始为0;然后应用一个转换矩阵w
ij
,将u
i
转换为预测向量
[0033][0034]
接着对所有得到的预测向量进行加权求和:
[0035]
[0055]
其中,θ0和θ1是参数;i=1,2,

,m表示样本数,j=0,1表示特征数,α是学习率,θ
i
是参数,y
j
是对应的回归值。
[0056]
本发明产生的有益效果是:本发明的基于改进残差网络的水稻害虫识别方法,选取残差网络作为基本网络模型,在此基础上加入胶囊网络,让胶囊网络作为resnet网络模型的全连接层,这样可以弥补残差网络在输出时丢失大量信息的缺陷,提高模型的识别准确率。其优点在于:(1)提取的图像特征信息更加丰富;(2)模型识别准确度更高。
附图说明
[0057]
下面将结合附图及实施例对本发明作进一步说明,附图中:
[0058]
图1是本发明实施例的改进的残差网络结构图。
具体实施方式
[0059]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0060]
本发明实施例的基于改进残差网络的水稻害虫识别方法,包括以下步骤:
[0061]
(1)输入训练数据集
[0062]
2019年,伍小平等人公布了一个大规模的害虫识别数据集ip102,并进行了专业的图像标注工作。该数据集类别依然是层级结构,分为8种农作物大类和102种害虫小类。ip102是迄今为止规模最大的害虫识别数据集,包含75000张害虫样本,其类别几乎囊括了当前最常见的害虫种类。目前来说,ip102为害虫识别领域提供了优秀的实验基准,一定程度上解决了害虫图像数据集样本少的问题。从这个ip102数据集中,本发明选取其中的水稻害虫进行特定研究,涉及稻卷叶虫、稻螟蛉、稻潜叶蝇、二化螟、三化螟、稻瘿蚊等14个类别,图像总数为8417张,作为本发明实验研究的水稻害虫图片数据集。表1给出了该数据集的详细信息。
[0063]
表1数据集详细信息
[0064]
[0065]
(2)数据集的预处理
[0066]
ip102数据集水稻害虫存在样本过多或过少的现象,导致样本分布不平衡,为了弥补样本存在的种类不平衡对模型识别准确率的影响,本发明在训练之前,对数量较少的样本数据进行增强处理。在深度学习中,数据增强是指通过某些技术手段将数据量小的数据集扩充得到更多的数据。本发明通过旋转(旋转角度分别为90
°
、180
°
、270
°
)、翻转(翻转方式为上下翻转、水平翻转)、光照度处理、对比度处理、色彩平衡处理以及锐度处理等数据增强技术,达到数据均匀,总的图片数量达到20670张,提升了模型的泛化能力和模型的鲁棒性。
[0067]
(3)图片分类模型设计
[0068]
先对输入的图像进行卷积和下采样,以提取图像的特征;提取特征的方法为:
[0069]
输出图像大小=(输入图像

1)*stride outputpadding

2*padding kernel_size
[0070]
其中,stride表示步长,outputpadding表示输出边补充0的层数,padding表示填充量,kernel_size表示卷积核大小;
[0071]
通过四个basicblock,将特征图的尺寸降到7
×
7、特征图的通道提升到512,通过这种方式可以捕获到更多的样本特征。
[0072]
接着,将512
×7×
7的特征图进行胶囊化编码,转为32个8
×
8的胶囊,再经过2次conv1d,最终得到32个8
×2×
2的胶囊,随后进行层间路由,以一种近似全连接的方式(即dynamic routing)映射到14
×
16的空间。
[0073]
在14个害虫分类识别的问题中,dynamic routing算法将胶囊特征映射到14
×
16的空间,即每个类对应1个16维的特征,然后使用非线性映射(即squash)将其压缩成1个14维的向量,取l2范式的最大值作为最终的预测值标签,最终胶囊的向量输出如下:
[0074][0075]
其推导过程为:
[0076]
每个上层胶囊i连接到下层j的概率为:
[0077][0078]
式中c
ij
为权重系数,b
ij
是胶囊i连接到胶囊j的先验概率,初始为0;然后应用一个转换矩阵w
ij
,将u
i
转换为预测向量
[0079][0080]
接着对所有得到的预测向量进行加权求和:
[0081][0082]
其中s
j
被称为高层胶囊j总的输入向量。用非线性压扁函数squashing来代替传统的神经网络的激活函数relu,确保了向量的方向保持不变,但它的长度被强要求不超过1,最终胶囊的向量输出如下:
[0083][0084]
取向量输出的l2范式的最大值作为最终的预测值标签,每一个向量对应着一个分类类别的可能性。
[0085]
dynamic routing算法的具体方法为:
[0086]
1)首先得到所有的预测向量定义迭代次数r,以及当前输入胶囊属于网络的第l层;
[0087]
2)对于所有的输入胶囊i和输出胶囊j,定义一个参数b
ij
,被初始化为0,对于该参数的作用,在下一步进行描述;
[0088]
3)开始迭代步骤4)~步骤7),迭代次数为r;
[0089]
4)计算向量c
j
的值,即胶囊i的所有路由权值,要保证∑
j
c
ij
=1,因此使用softmax函数来保证每个c
ij
非负且和为1;
[0090]
由于第一次迭代b
ij
初始化为0,因此c
ij
在第一轮迭代中都相等,即1/p,p是指较高层胶囊的数量;
[0091]
5)预测向量进行加权求和;
[0092]
6)最后一步的向量通过非线性函数squash,这确保了向量的方向保持不变,但它的长度被强制不超过1;这一步输出最终的向量v
j

[0093]
7)这一步是权重发生更新的地方,通过胶囊j的输出v
j
与预测向量的点积 原有的权重b
ij
,为新的权重值;进行点积处理,是为了检测胶囊输入与输出的相似性;更新权重后,进行下一轮迭代;
[0094]
8)经过r次迭代后,返回最终的输出向量v
j

[0095]
(4)网络模型学习训练
[0096]
随机将水稻害虫数据集按8:2划分成训练集和测试集,在训练过程中,采用小批量梯度下降作为网络训练优化器,并设动量参数为0.8。初始学习率设置为0.005,批量大小为32,迭代次数100轮。
[0097]
小批量梯度下降法是批量梯度下降法和随机梯度下降法的折衷,也就是对于m个样本,我们采用x个样本来迭代,1<x<m。一般可以取x=10,当然根据样本的数据,可以调整这个x的值。对应的更新公式是:
[0098][0099]
其中,线性回归的假设函数为:
[0100]
h
θ
(x
(i)
)=θ1x
(j)
θ0[0101]
其中,θ0和θ1是参数;i=1,2,

,m表示样本数,j=0,1表示特征数,α是学习率,θ
i
是参数,y
j
是对应的回归值。
[0102]
(5)将测试集图像输入训练好的改进的残差网络模型中进行水稻害虫识别,输出
识别结果准确率。
[0103]
应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
再多了解一些

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

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

相关文献