一种基于卷积神经网络的果树病虫害识别方法及系统

文档序号:30789737发布日期:2022-07-16 09:34阅读:304来源:国知局
一种基于卷积神经网络的果树病虫害识别方法及系统

1.本发明属于计算机视觉应用技术领域,具体涉及一种基于卷积神经网络的果树病虫害识别方法及系统。


背景技术:

2.柑橘是日常生活中随处可见的水果,气味芬芳、味道鲜美且营养丰富,深受消费者喜爱。但是传统柑橘产业在病虫害防治方面仍停留在对病虫害现象进行目测、人工防治与干预层面,目前各大柑橘种植园区主要依靠人工筛选果树苗,每年定时修剪枝桠、翻耕园区、清理虫蛀幼果,浪费大量时间精力,增加人力物力成本。


技术实现要素:

3.为解决以上现有技术存在的问题,本发明提出了一种基于卷积神经网络的果树病虫害识别方法,该方法包括:获取果树图像,将果树图像输入到训练好的果树病虫害识别模型中,得到果树病虫害识别结果;根据病虫害结果对果树进行治疗;所述果树病虫害识别模型包括分割模型和卷积神经网络;其中分割模型用于对果树图像中的果叶和果实进行分割,得到果实图像和果叶图像;卷积神经网络用于对果树的病虫害进行识别。
4.优选的,对果树病虫害识别模型进行训练的过程包括:
5.s1:构建果树病虫害图像数据集,对图像数据集中的数据进行预处理;
6.s2:将预处理后的数据输入到分割模型中,得到果实图像和果叶图像;
7.s3:对果实图像和果叶图像进行图像增强处理;
8.s4:将增强后的果叶图像和增强后的果实图像分别输入到卷积神经网络中,得到识别结果;
9.s5:根据识别结果确定果树的病虫害类别;
10.s6:根据病虫害类别计算模型的损失函数;
11.s7:不断调整模型的参数,当损失函数值最小时,完成模型的训练。
12.进一步的,对果实图像和果叶图像进行图像增强处理的过程包括:对图像进行仿射变换和添加高斯噪声;仿射变换即对目标图像矩阵进行缩放、平移、旋转、拉伸以及收缩操作。
13.优选的,采用分割模型对输入数据进行处理的过程包括:该分割模型为卷积神经网络,其处理数据的步骤包括:
14.步骤1:将预处理后的图像进行数据划分,将划分后的图像数据依次输入到卷积神经网络中;
15.步骤2:通过神经网络前向传播过程对图像特征进行提取;
16.步骤3:将提取的特征与标签数据进行对比,若对比结果与标签数据不符,则进行反向传播过程,得到图像分割结果;
17.步骤4:计算图像分割结果与标签的误差,根据误差进行权值更新;
18.步骤5:重复步骤2~步骤4,直到误差收敛,得到一个稳定的网络权值,保存结果并结束训练过程。
19.优选的,采用神经网络对果实图像和果叶图像进行处理的过程包括:
20.步骤1:根据hsv颜色空间构建颜色字典;
21.步骤2:根据颜色字典对果实图像进行成熟度划分;
22.步骤3:将不同果实成熟度的果实图像和树叶图像依次进行划分,并将划分后的不同果实成熟度的果实图像依次输入到果实卷积神经网络,将划分后的树叶图像输入到树叶卷积神经网络;
23.步骤4:通过神经网络前向传播过程对病虫害特征进行提取;
24.步骤5:将提取的特征与标签数据进行对比,若对比结果与标签数据不符,则进行反向传播过程,得到病虫害类别结果;
25.步骤6:计算病虫害类别结果与标签的误差,并根据误差进行权值更新;
26.步骤7:重复步骤4~步骤5,直到误差收敛,得到一个稳定的网络权值,保存结果并结束训练过程。
27.进一步的,根据颜色字典对果实图像进行成熟度划分的过程包括:设置掩膜mask,根据设置的掩膜mask对果实图像中的每个像素点进行检索,将检索到的像素点与构建颜色字典进行对比,通过数据可视化分类出不同成熟果实;果实的成熟度包括:未成熟果实、中熟果实以及完全成熟果实。
28.优选的,模型的损失函数表达式为:
[0029][0030]
其中,iou表示预测框和真实框之间交并比的差值,α是权重函数,v用来度量长宽比的相似性。
[0031]
一种基于卷积神经网络的果树病虫害识别系统,该系统包括:数据获取模块、果树图像分割模块、数据增强模块、病虫害识别模块以及结果输出模块;
[0032]
所述数据获取模块用于获取待进行病虫害识别的果树图像,并将该图像输入到果树图像分割模块中;
[0033]
所述果树图像分割模块用于对果树图像进行分割处理,得到果实图像和果叶图像;
[0034]
所述数据增强模块用于对果实图像和果叶图像进行增强处理;
[0035]
所述病虫害识别模块用于对增强后的果实图像和果叶图像进行病虫害识别,得到识别结果;
[0036]
所述结果输出模块用于输出病虫害识别模块的识别结果。
[0037]
为实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现任一上述基于卷积神经网络的果树病虫害识别方法。
[0038]
为实现上述目的,本发明还提供一种基于卷积神经网络的果树病虫害识别装置,包括处理器和存储器;所述存储器用于存储计算机程序;所述处理器与所述存储器相连,用于执行所述存储器存储的计算机程序,以使所述一种基于卷积神经网络的果树病虫害识别
装置执行任一上述基于卷积神经网络的果树病虫害识别方法。
[0039]
本发明的有益效果:
[0040]
本发明改变了传统果树产业在病虫害防治方面仍停留在对病虫害现象进行目测、人工防治与干预层面,现将病虫害的识别改为运用卷积神经网络的自动化机器识别,减少时间精力的浪费,降低人力物力成本;同时由于机器自动识别的统一性与准确性,减少了人眼的识别差异。为柑橘种植人员提供柑橘的病虫害信息,有助于种植人员及时采取措施对病虫害进行治疗,有效提高柑橘的产量和品质。
附图说明
[0041]
图1为本发明的基于深度学习的柑橘病虫害识别系统流程图;
[0042]
图2为本发明的数据集存放流程图;
[0043]
图3为rgb颜色空间图;
[0044]
图4为hsv颜色空间图;
[0045]
图5为柑橘成熟度颜色字典图;
[0046]
图6为高斯卷积核图;
[0047]
图7为yolov5网络结构总图;
[0048]
图8为yolov5网络结构细图;
[0049]
图9为目标检测层结构图;
[0050]
图10为橙色柑橘原始图像;
[0051]
图11为橙色柑橘橙色(完全成熟)像素点数据可视化后图像;
[0052]
图12为橙色柑橘黄色(中熟)像素点数据可视化后图像;
[0053]
图13为橙色柑橘绿色(不成熟)像素点数据可视化后图像;
[0054]
图14为橙色柑橘原始图像添加高斯噪声后图像。
具体实施方式
[0055]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0056]
一种基于卷积神经网络的果树病虫害识别方法,该方法包括:获取果树图像,将果树图像输入到训练好的果树病虫害识别模型中,得到果树病虫害识别结果;根据病虫害结果对果树进行治疗;所述果树病虫害识别模型包括分割模型和卷积神经网络;其中分割模型用于对果树图像中的果叶和果实进行分割,得到果实图像和果叶图像;卷积神经网络用于对果树的病虫害进行识别。
[0057]
对果树病虫害识别模型进行训练的过程包括:
[0058]
s1:构建果树病虫害图像数据集,对图像数据集中的数据进行预处理;
[0059]
s2:将预处理后的数据输入到分割模型中,得到果实图像和果叶图像;
[0060]
s3:对果实图像和果叶图像进行图像增强处理;
[0061]
s4:将增强后的果叶图像和增强后的果实图像分别输入到卷积神经网络中,得到
识别结果;
[0062]
s5:根据识别结果确定果树的病虫害类别;
[0063]
s6:根据病虫害类别计算模型的损失函数;
[0064]
s7:不断调整模型的参数,当损失函数值最小时,完成模型的训练。
[0065]
本发明以柑橘为例,一种基于卷积神经网络的柑橘病虫害识别方法,如图1所示,该方法包括:首先将获取的柑橘果树图像输入到训练好的图像分割网络中,分割出图像中的柑橘果实和柑橘树叶,随后对分割的数据进行提取和随机数据增强(翻转,旋转,仿射变换,缩放,添加噪声等)以适应室外多变的环境因素,再分别将果实和树叶输入两个卷积神经网络中,识别出柑橘不同种类病虫害。
[0066]
如图1所示,对柑橘病虫害识别系统的训练过程包括:
[0067]
步骤1:建立各类柑橘病虫害图像数据集;
[0068]
步骤2:输入柑橘果树图像,并进行图像分割;
[0069]
步骤3:对所得到的各种柑橘病虫害果实、树叶图像进行数据增强;
[0070]
步骤4:将各种柑橘病虫害果实、树叶图像输入到果实卷积神经网络和树叶卷积神经网络中,进行对柑橘果树病虫害识别的训练;
[0071]
步骤5:得到各类病虫害数据。
[0072]
建立数据集包括图像收集、划分数据集以及数据标注处理;其中图像收集包括在互联网与各大公开数据集上收集各类病虫害的图像数据。划分数据集包括:建立文件夹网络训练数据集,在其中建立图像数据和标签数据文件夹,再分别在其中建立训练图像、测试图像、验证图像三个文件夹,此为训练集、测试集、验证集,并按照90%:5%:5%的比例划分训练数据集。
[0073]
在农业专家指导下,对收集到的数据利用软件labelimg对图像数据进行标注,图像数据文件夹存放原始图片,标签数据存放对应图像中病虫害的种类和图像中病虫害的位置信息。利用labelimg框选所需识别训练的柑橘病虫害部位,输出.txt格式并保存至标签数据文件下,此为带标签图像的数据。同时在数据集中添加一定比例的无病害空白图像防止模型在病虫害数据中过拟合。其数据集数据存放如图2所示。
[0074]
图像分割是将同一照片中的柑橘果实和树叶分割开,针对果实和树叶进行不同的卷积神经网络的训练,以求提高病虫害识别系统的准确率。
[0075]
图像分割同样利用以yolov5算法为核心的卷积神经网络,训练网络以分割出柑橘果树中的柑橘果实和树叶。随后对柑橘果实进行成熟度的划分,该步骤基于果实颜色而进行。
[0076]
在计算机中,绝大部分图像都是在rgb颜色空间下储存和现实的。rgb表示红,绿,蓝三个颜色通道。理论上这三个颜色通道可以表示人类肉眼所能分辨出来的所有颜色。rgb颜色空间虽然在电脑显示器和工业中表现良好,但是在日常生活中,由于光照和阴影的影响,现实中颜色的组成并不是只由色调组成。rgb颜色空间对于自然界的颜色的描述经常不准确。rgb颜色空间如图3表示。
[0077]
因此为了准确提取图像中现实世界的颜色,引入hsv颜色空间。hsv颜色空间是根据颜色的直观特性创建的一种颜色空间。hsv模型中颜色空间的参数分别是h(色调),s(饱和度),v(明度)。这种描述可以让颜色的表示更加直观。hsv颜色空间如图4所示。
[0078]
为了判断图片中柑橘的成熟程度,根据柑橘的颜色和客户的需求将果子分成三种类型:未成熟(不可采摘);中熟(可以采摘),完全成熟(可以采摘)。根据多对一的映射生成需要的颜色字典,其中每个类别分别对应成熟度的颜色区间。柑橘果实生长不同时期,各项病虫害的形状不尽相同,而划分出不同成熟度的柑橘果实,可以提高病虫害的识别准确率。颜色字典如图5所示。
[0079]
然后根据转换公式把rgb颜色空间的图片转换为hsv颜色空间,利用hsv颜色空间对颜色描述的直观性来获取图片主色调。由于图片被yolov5网络检测并分割成功,主色调即为果子的颜色。
[0080][0081]
δ=c
max-c
min
;c
max
=max(r

,g

,b

);c
min
=min(r

,g

,b

)
[0082][0083][0084]
v(value)=c
max
[0085]
其中,r

表示红色通道标准化值,r表示红色颜色通道值,g

表示绿色通道标准化值,g表示绿色颜色通道值,b

表示蓝色通道标准化值,b表示蓝色颜色通道值,c
max
表示r

、g

、b

中的最大值,c
min
表示r

、g

、b

中的最小值,δ表示r

、g

、b

中最大值与最小值的差,h表示hue色调,s表示saturation饱和度,v表示value明暗度。
[0086]
随后进行图像分类处理,设置一个掩膜mask来对图像中的每个像素点检索。如果图像中的像素点匹配颜色字典中的颜色,将匹配的像素点设置为白色,不匹配的则设置为黑色。随后进行阈值划分,图像膨胀等操作。最后统计图片中所有像素点所在的颜色区间的个数并输出最多像素点对应区间,即为图片主色调。
[0087]
最后将数据可视化,通过数据可视化发现颜色字典中橙色(完全成熟)像素点投票最多,黄色(中熟)像素点投票其次,绿色(不成熟)投票最少,由此可以判断该果为橙色(完全成熟)的可能性最大。举例,原始橙色柑橘如图10,橙色(完全成熟)像素点数据可视化后如图11,黄色(中熟)像素点数据可视化如图12,绿色(不成熟)像素点数据可视化如图13。
[0088]
数据增强则是对于已分类并标注好的数据集,对其进行随机数据增强,进行翻转,旋转,仿射变换,缩放,添加噪声等操作,提高数据集的泛化程度,避免网络在数据集上过拟合,提高网络在复杂条件下的正确率。
[0089]
计算机中图像是有像素点构成的,可以看做一个矩阵。仿射变换即令图像乘以一
个矩阵(线性变换)接着再加上一个向量(平移),对目标矩阵(图像)进行缩放、平移、旋转、拉伸、收缩等操作。对数据进行随机仿射变换,提高模型的泛化能力,让模型可以应对各种情况。仿射变换公式为:
[0090]
y=ax+b
[0091]
其中,a表示图像矩阵,x表示向量,b表示偏置量。
[0092]
高斯噪声是指其概率密度函数服从高斯分布(即正态分布)的一类噪声。高斯核函数为:
[0093][0094]
其中,σ表示高斯噪声。
[0095]
通过opencv生成高斯卷积核,利用高斯卷积核卷积图像,为图像添加一定噪声,提高模型的鲁棒性。高斯卷积核如图6所示,图11的橙色柑橘添加高斯噪声后如图14。
[0096]
本技术的卷积神经网络采用yolov5算法,yolov5网络结构详细图如图7和8所示。在测试过程中,大多数情况下柑橘的病害特征目标较小,有时会检测不到,这将造成特征被忽略。本技术对yolov5算法的检测层进行了改进,即将图片进行分割,将分割后的小图输入到目标检测网络中,对于最小目标像素的下限会大大降低,减少了特征被忽略的可能性。yolov5网络目标检测层结构如图9所示。
[0097]
在yolo算法中,针对不同的数据集,设定初始长宽的锚框。
[0098]
算法包括:输入端、基准网络backbone、neck网络、prediction。
[0099]
yolov5使用mosaic数据增强操作提升模型的训练速度和网络的精度;并提出了一种自适应锚框计算与自适应图片缩放方法。
[0100]
yolov5中不仅使用了cspdarknet53结构,而且使用了focus结构作为基准网络。
[0101]
neck网络通常位于基准网络和头网络的中间位置,利用它可以进一步提升特征的多样性及鲁棒性。
[0102]
数据训练好后,会产生两个后缀为.pt的权重文件,一个是最后一轮训练的权重文件,一个是拟合度最高的权重文件。通过这个算法,可以框选出柑橘病虫害部位,并加以分类。
[0103]
在网络训练中,网络在初始锚框的基础上输出预测框,进而和真实框groundtruth进行比对,计算两者差距,再反向更新,迭代网络参数。
[0104]
yolov5中采用ciou做边界框的损失函数:
[0105][0106]
其中,ρ2(b,b
gt
)分别表示预测框的中心点的欧氏距离以及真实框的中心点的欧氏距离,c表示能够同时包含预测框和真实框的最小闭包区域的对角线距离,α是权重函数:
[0107][0108]
v用来度量长宽比的相似性,定义为:
[0109][0110]
则完整的ciou损失函数定义为:
[0111][0112]
由上述公式可得损失值。
[0113]
yolov5中,将此功能嵌入到代码中,每次训练时,会自适应的计算不同训练集中的最佳锚框值。
[0114]
根据损失函数分析需要修改的参数,进行梯度下降处理优化模型。再次输出结果,计算准确率,达到预设值百分之九十即模型训练成功,否则返回模型优化再次训练模型。
[0115]
通过种植人员的确认与深度学习所识别的结果进行比较,计算其准确率,即被准确识别的样本数除以总样本数。通常来说,准确率越高,分类器越好,即准确率越高,识别效果越好。
[0116]
图像采集包括在互联网以及各大公开数据集中收集柑橘有关图像以及到农业基地实地考察,拍摄柑橘果实图像。
[0117]
将柑橘病虫害识别模型数据以及各类图片数据标签数据上传至bs网络模型数据库,经由云服务器计算,最终呈现至浏览器网页。bs网络模型数据库包括:客户端通过浏览器,浏览web服务器上的网页,这样的模型叫bs模型,b指客户端browser,s指服务端server。此模型可以结合上文架构的柑橘病虫害识别的数据,将基于深度学习的柑橘病虫害识别数据整合、处理,并上传至数据库中储存,以便于随时调用,对用户进行展示。
[0118]
数据库系统由数据库及其管理软件组成,为实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。mysql是一种关系型数据库管理系统,具有速度快、灵活性强的特点。本发明将借用mysql数据库管理系统,把柑橘病虫害图片数据集、识别病虫害的网络框架、无人机拍摄的视频、图片存入数据库中,建立柑橘病虫害识别系统的数据库,随时提取使用。
[0119]
web服务器一般指网站服务器。云服务器是云计算技术衍生的产品,是一种可弹性伸缩的计算、网络、存储服务,其管理方式高效简单。本发明考虑到数据量大小、成本等,选择使用云服务器技术,再链接云服务器与mysql数据库。
[0120]
将浏览器以超文本形式向云服务器提出访问数据请求,浏览器将生成一个数据包并发送到服务器。web服务器将对浏览器发送的请求进行响应,客户端浏览器对服务器的响应进行解析,以友好的web页面形式显示出来。
[0121]
一种基于卷积神经网络的果树病虫害识别系统,该系统包括:数据获取模块、果树图像分割模块、数据增强模块、病虫害识别模块以及结果输出模块;
[0122]
所述数据获取模块用于获取待进行病虫害识别的果树图像,并将该图像输入到果树图像分割模块中;
[0123]
所述果树图像分割模块用于对果树图像进行分割处理,得到果实图像和果叶图像;
[0124]
所述数据增强模块用于对果实图像和果叶图像进行增强处理;
[0125]
所述病虫害识别模块用于对增强后的果实图像和果叶图像进行病虫害识别,得到识别结果;
[0126]
所述结果输出模块用于输出病虫害识别模块的识别结果。
[0127]
本发明系统的具体实施方式与方法实施方式相同。
[0128]
在本发明一实施例中,本发明还包括一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一所述基于卷积神经网络的柑橘病虫害识别方法。
[0129]
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0130]
一种基于卷积神经网络的柑橘病虫害识别装置,包括处理器和存储器;所述存储器用于存储计算机程序;所述处理器与所述存储器相连,用于执行所述存储器存储的计算机程序,以使所述一种基于卷积神经网络的柑橘病虫害识别装置执行任一上述基于卷积神经网络的柑橘病虫害识别方法。
[0131]
具体地,所述存储器包括:rom、ram、磁碟、u盘、存储卡或者光盘等各种可以存储程序代码的介质。
[0132]
优选地,所述处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0133]
以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1