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

一种基于布谷鸟搜索算法的番茄病害识别方法与流程

2022-02-22 01:52:49 来源:中国专利 TAG:


1.本发明属于图像识别技术领域,尤其是一种基于布谷鸟搜索算法的番茄病害识别方法。


背景技术:

2.番茄是我们日常生活中常见的蔬菜,富含丰富的维生素,被许多人喜爱。随着科学技术的发展,温室大棚可以实现番茄4季种植,而大棚种植环境下也经常会出现番茄病害。
3.番茄的生长过程中主要且经常发生的病害有:灰霉病、白粉病、晚疫病3种。当温室大棚湿度较大时植株感染病菌产生灰霉病,严重影响果实;白粉病和灰霉病一样也是病菌感染,严重影响植株生长;温室大棚单一的种植方式造成晚疫病的发生,晚疫病传播速度很快,影响植株生长。这3种病害在温室大棚环境下极易发生,严重影响番茄的产量。及早发现病害然后有针对性地进行治疗尤其重要。因此,准确的番茄植物病害识别具有重要意义。
4.由于番茄病害多为病菌产生,发病情况相似,很难区分。长久以来,番茄病害的发现都比较晚,并且是由种植人员自己断定并施药,其缺点是易判别错误,无法有效防治。随着科学技术的发展,神经网络和深度学习开始用于植物病害识别,而现有的研究中很少针对番茄病害识别,或者病害识别准确率低、速度较慢。


技术实现要素:

5.本发明提出一种基于布谷鸟搜索算法的番茄病害识别方法,利用布谷鸟搜索算法,使3种番茄病害的识别准确率达到最优。
6.一种基于布谷鸟搜索算法的番茄病害识别方法,包括以下步骤:
7.步骤1,建立番茄病害检测数据集,该数据集采用相机分别拍摄灰霉病、白粉病、晚疫病3种番茄病害叶片和正常叶片各100张;
8.步骤2,对采集到的图片分类存储在相应类别的文件夹中,然后进行图像处理;
9.步骤3,对图像进行背景分离、病斑分割;
10.步骤4,提取分类特征;
11.步骤5,利用relief f算法选取47个优良分类特征;
12.步骤6,采用cs(布谷鸟搜索算法)优化bp神经网络构建分类器模型;
13.步骤7,对模型进行训练,从而得到植物病害检测结果。
14.所述步骤3的具体实现方法为:用k-means聚类方法将病害图像先处理成r、g、b值,然后将k-means聚类总数k设为2,实现对三维数据的初始聚类,将聚类结果作为初始值传给gmm模型拟合出数据集的概率分布,实现背景分离;再将病害图像转为hsi颜色模型,通过调节所需色度范围分离出病害部位,实现病斑分割。
15.所述步骤4的具体实现方法为:提取rgb颜色模型的r、g、b颜色成分,颜色空间hsv的色调h、饱和度s、明度v,颜色模型hsi中的色度h、饱和度s、强度i共9种颜色特征;利用灰度-梯度共生矩阵方法分别提取病害图像在rgb模型,hsv模型,hsi模型上的灰度平均、逆差
距、惯性、混合熵、梯度熵、灰度均方差、梯度平均、灰度熵、相关性等共45个纹理特征;利用tamura方法提取rgb模型上的粗糙度、对比度2个纹理特征;总计提取56个特征。
16.所述步骤6的具体实现方法为:用cs算法(布谷鸟搜索算法)寻优得到最优鸟巢,直接作为bp网络权值阈值。
17.所述步骤7的具体实现方法为:采用保留交叉验证方式,选择65%作为训练集将47个优良分类特征输入模型进行训练,35%作为测试集用于验证。
18.本发明具有以下优点:
19.一、先提取了56个特征,然后利用relieff算法选取47个优良分类特征,剔除了不相干和冗余的特征,使识别特征维度降低,有效保留了优良特征,提高模型精确度,简化分类模型,提高模型运行速度。
20.二、布谷鸟搜索算法寻优时不停变换角度和距离,可以加快寻优速度,利用cs算法(布谷鸟搜索算法)寻优得到最优鸟巢,直接作为bp网络权值阈值,经cs算法优化的bp神经网络更加科学有效。
附图说明
21.图1为基于布谷鸟搜索算法的番茄病害识别方法流程示意图;
22.图2为背景分离流程图;
23.图3为分割背景结果;
24.图4为病斑分割结果;
25.图5-1为部分颜色特征数据;
26.图5-2为rgb模型下的灰度-梯度共生矩阵纹理特征;
27.图5-3为hsi模型下的灰度-梯度共生矩阵纹理特征;
28.图5-4为hsv模型下的灰度-梯度共生矩阵纹理特征;
29.图6-1为cs-bp算法流程示意图;
30.图6-2为本模型神经网络示意图;
31.图7为分类器检测结果。
具体实施方式
32.为了便于理解本发明,下面将参照相关附图进一步详述。
33.本实例中,番茄病害识别方法的训练和测试过程是在软件matlab r2014b实现的,因此首先需要在pc机上安装此软件,pc机和matlab版本无具体要求,可以正常运行代码即可。
34.本发明如图1所示的一种基于布谷鸟搜索算法的番茄病害识别方法,主要包括以下步骤:
35.步骤1,建立番茄病害检测数据集。该数据集采用相机分别拍摄灰霉病、白粉病、晚疫病3种番茄病害叶片和正常叶片各100张;拍摄照片过程经由专业人士指导,确保采集番茄病害图片的准确性。
36.步骤2,对采集到的图片分类存储在相应类别的文件夹中,然后进行图像处理。
37.建立番茄病害识别文件夹,在其中建立灰霉病、白粉病、晚疫病、正常4个文件夹,
将采集照片分别对应放入。
38.步骤3,对图像进行背景分离、病斑分割。
39.背景分离流程图如图2所示,背景分离结果如图3所示。
40.对于病害图像背景分离,利用背景部分与番茄病害叶片部分存在的差异,采用了gmm(gaussian mixture model)聚类算法分割病害图像中杂草,阴影等模糊背景,利用gmm模型拟合出数据集的概率分布,实现聚类分离带病斑的番茄植株叶片与模糊背景。
41.对于病斑分割将病害图像转为hsi颜色模型,通过调节所需色度范围分离出病害部位,提取出有效病害。首先提取经背景分离得到的带病斑的病害叶片中的r、g、b分量,再由转换公式转换成h、s、i分量,然后归一化提取到的色度分量,将其作为色度调节因子h,通过改变h范围去除绿色部分,最后分离出形状完整的病斑。同时对白粉病,灰霉病,晚疫病在不同h值时的分割结果做了研究,当背景颜色为绿色时,直接以调节因子h∈[1/6,0.5]为基本值进行分割,基本能分割掉绿色背景部分,保留下完整病斑3种番茄病害病斑分割结果如图4所示。在matlab中分割400张图像病斑耗时7.61s,病斑分割算法执行速度较快,分割结果良好。
[0042]
步骤4,提取分类特征。
[0043]
首先提取颜色特征包括rgb颜色模型的r、g、b颜色成分,颜色空间hsv的色调h、饱和度s、明度v,颜色模型hsi中的色度h、饱和度s、强度i共9种颜色特征,对400个样本部分颜色特征如图5-1所示。
[0044]
其次,利用灰度-梯度共生矩阵方法分别提取病害图像在rgb模型,hsv模型,hsi模型上的灰度平均、逆差距、惯性、混合熵、梯度熵、灰度均方差、梯度平均、灰度熵、相关性等共45个纹理特征,400个样本的部分特征如图5-2、图5-3、图5-4所示。
[0045]
然后tamura方法提取rgb模型上的粗糙度、对比度纹理特征共2个。因此与灰度梯度矩阵方法结合起来共提取纹理特征47个。
[0046]
步骤5,利用relief f算法选取47个优良分类特征;
[0047]
relief算法属于一种特征权重算法,主要应用与特征维度较多时,去除线性相关的、对识别结果影响小的特征维度。本文利用relieff处理四分类特征权重计算问题。实验步骤如下:
[0048]
首先,每次从训练样本集中随机取出一个样本r,然后从和r同类的样本集中找出r的k个近邻样本(near hits),即式1中的hj,然后,从每个r的不同类的样本集中均找出k个近邻样本(near misses),即式1中的mj,最后更新每个特征的权重,更新公式如下:
[0049][0050]
本文选择k=20,分别执行40次得到每次权重。取权重的平均值,以0.05为阈值去除9个多余特征,分别为:hsv颜色空间下的h分量,灰度分布的不均匀性,梯度分布的不均匀性;rgb颜色空间下的灰度分布的不均匀性,梯度分布的不均匀性,惯性;hsi颜色空间下的灰度分布的不均匀性,梯度分布的不均匀性,逆差矩。最终得到维度空间[400,47]的优良特征集。
[0051]
步骤6,采用cs(布谷鸟搜索算法)优化bp神经网络构建分类器模型。
[0052]
本方法构造分类器输入的识别特征共47个,作为神经网络输入值x={x1,x2,..,x47},第一层输入a1=x,最终输出y值为识别的病害种类,模型图如图6-2所示。
[0053]
布谷鸟优化bp神经网络(cs-bp)由cs算法寻优得到最优鸟巢,直接作为bp网络权值阈值,如图6-1所示。步骤如下:
[0054]
1)首先初始化bp权值阈值,每一个鸟巢的维度d对应着一组bp神经网络的阈值权值,神经网络根据每一个鸟巢xn对训练集进行训练。
[0055]
2)在最优鸟巢位置上做levy飞行,通过公式(2)确定飞行步长,
[0056]
levy=alpha
·s·
(x
n-xb)
ꢀꢀꢀꢀꢀꢀ
式(2)
[0057]
其中s指levy飞行步长,alpha=0.01。
[0058]
3)通过更新公式(3)得到新的鸟窝位置,将产生的新一代鸟窝位置pt=[x1(t),x2(t),x3(t),...,xn(t)]t通过bp神经网络训练后,比较找出新巢最优位置fmin,此时最优鸟巢x
b(t)
(x
b(t)
∈p
t
)。
[0059]
x(t 1)=x(t) randn
·
levy
ꢀꢀꢀꢀꢀꢀ
式(3)
[0060]
4)再次比较新gt与旧pt的fmin,得到较优位置pt=[x1(t),x2(t),x3(t),...,xn(t)]t。
[0061]
5)再次计算pt每组鸟巢位置对应的适应度值,找出适应度最优位置fmin,此时最优鸟巢xb(b{1,n})。
[0062]
不断循环,当达到迭代条件或其他规则时停止,找出的最优值fmin对应的最优鸟巢位置xb即为优化bp的权值阈值。
[0063]
步骤7,对模型进行训练,从而得到植物病害检测结果。
[0064]
采用保留交叉验证方式,选择65%作为训练集将47个优良分类特征输入模型进行训练,35%作为测试集用于验证,结果如图7所示,平均准确率80.7%。
[0065]
从实验结果可以看出,基于布谷鸟搜索算法优化的bp神经网络可以实现番茄黑霉病、白粉病、晚疫病3种病害的识别,准确率较好。
再多了解一些

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

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

相关文献