CN114170137B - 一种辣椒病害识别方法、识别系统、计算机可读存储介质 - Google Patents
一种辣椒病害识别方法、识别系统、计算机可读存储介质 Download PDFInfo
- Publication number
- CN114170137B CN114170137B CN202111306502.3A CN202111306502A CN114170137B CN 114170137 B CN114170137 B CN 114170137B CN 202111306502 A CN202111306502 A CN 202111306502A CN 114170137 B CN114170137 B CN 114170137B
- Authority
- CN
- China
- Prior art keywords
- model
- training
- pepper
- pictures
- data set
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0012—Biomedical image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Medical Informatics (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Radiology & Medical Imaging (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明属于病虫害检测技术领域,公开了一种识别系统、计算机可读存储介质,收集辣椒叶片、果实和根茎相关的图片,并对图片进行标签划分,构建得到数据集;通过随机分割将整个数据库分为训练集和验证集,并对图像进行数据增强操作处理;将深度学习和迁移学习相结合搭建辣椒病虫害识别模型网络结构,构建新的卷积网络模型;利用数据集中的训练集对模型进行训练,改进网络模型中的各项参数,得到最优的网络模型;将训练好的模型载入手机APP,得到移动应用程序,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果。本发明有很高的可移植性,能使得整套流程中的病虫害识别部分得以最优实现。
Description
技术领域
本发明属于病虫害检测技术领域,尤其涉及一种辣椒病害识别方法、识别系统、计算机可读存储介质。
背景技术
目前,粮食种植户在病虫害识别和防治方面不仅缺乏专业知识,而且缺少专家一线指导,当病虫害发生时,易造成重大的经济损失。因此研究智能化的病虫害检测技术对于控制病虫害的传播至关重要。本发明基于深度学习研究辣椒生长过程中病虫害的识别方法。
中国是一个农业大国,而辣椒是人们日常生活中的一种必要食材。所以近年来,种植辣椒的区域和面积在逐渐扩大。而辣椒病虫害的发生会直接影响辣椒的产量和质量。辣椒常见病害有十几种,病发处多为叶部、茎部,其中尤以叶部的白粉病、褐斑病等最为常见。目前辣椒病害识别主要依靠专家到现场进行肉眼判别,这种方法费时、费力、效率低,且带有一定的主观臆断性。在这样的背景下,基于病变图像的辣椒病害智能化识别一直是精准农业中具有挑战性的研究课题。
目前基于深度学习的粮食病虫害识别工具是卷积神经网络(CNNs)。Lee等人提出了一种基于叶子图像的CNNs系统,用于自动识别植物。Grinblat等人开发了一个结构相对简单但功能强大的神经网络,用于根据叶脉的形态模式成功识别三种不同的豆科植物。Mohanty等人利用14种不同植物叶片图像的开放数据库,比较了两种知名的、已建立的CNN结构在26种植物疾病方面的应用。他们的结果识别的准确率高达99.35%。然而,一个主要的缺点是,整个摄影环境只包括实验室场景的图像,而不是在栽培真实条件下。Sladojevic等人利用互联网上获得的类似数量的数据,开发了一种通过叶片图像检测植物病害的类似方法,其中包括较少数量的病害(13种)和不同的植物(5种)。根据测试数据,他们的模型成功率在91%到98%之间。Fuentes等人研究了一种CNN模型,用于检测9种不同的番茄病虫害,性能令人满意。然而在自然环境下,期望设计的经典算法完全消除场景变化对识别结果的影响往往是不现实的。在真实复杂的自然环境中,植物病虫害检测面临着许多挑战,如病变区域与背景差异小、对比度低、病变区域和各种类型的尺度变化大、病变图像噪声大等。
通过上述分析,现有技术存在的问题及缺陷为:
(1)目前辣椒病害识别主要依靠专家到现场进行肉眼判别,这种方法费时、费力、效率低,且带有一定的主观臆断性。
(2)目前基于深度学习的粮食病虫害识别方法中,整个摄影环境只包括实验室场景的图像,而不是在栽培真实条件下。
(3)在真实复杂的自然环境中,植物病虫害检测面临着许多挑战,如病变区域与背景差异小、对比度低、病变区域和各种类型的尺度变化大、病变图像噪声大等,期望经典算法完全消除场景变化对识别结果的影响是不现实的。
解决以上问题及缺陷的难度为:
(1)辣椒病虫害专家识别主观臆断性,且专家到田间识别效率太低,不能大范围应用;
(2)实验室与田间实际环境的差距存在不可预知性,对病虫害识别有很大干扰
解决以上问题及缺陷的意义为:
(1)本发明可移植的轻量级模型,可以将本专利的核心部分辣椒病虫害识别大范围推广给农民使用,直接在田间就可以识别辣椒的问题,解决辣椒种植户在缺乏一线专家指导的情况下进行病害防治问题;
(2)本发明的数据集80%以上均来自田间真实环境,所以本专利的辣椒病虫害识别模型利用真实田间数据进行训练,在移植到手机上后直接在田间使用对识别结果影响大大降低,并且数据集会定时丰富田间真实图片,最终数据集100%来自田间真实场景,提高模型鲁棒性。
发明内容
针对现有技术存在的问题,本发明提供了一种辣椒病害识别方法、识别系统、计算机可读存储介质,尤其涉及一种基于轻量卷积神经网络模型的辣椒病害识别方法、系统。
本发明是这样实现的,一种辣椒病害识别方法,包括:
对以果实、叶片和根茎特征为分支的原始数据集随机分割成训练集和验证集,并进行图像增强处理;
以构建的卷积网络模型,搭建辣椒病虫害识别网络结构;
根据原始数据集中的训练集对卷积网络模型进行训练,改进卷积网络模型中的各项参数,以及进行深度卷积生成对抗网络判定,得到最优的网络模型;
将训练好的模型,植入手机APP,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果;并且将移动端取得的田间照片上传至云端数据库,照片数据可以进一步用于优化网络模型。
进一步,所述辣椒病害识别方法具体包括以下步骤:
步骤一,数据集准备:收集辣椒叶片、果实和根茎相关的图片,并对图片进行标签划分,按照辣椒果实、叶片、根茎的特征将数据集分为辣椒果实图片、叶片图片、根茎图片三个分支,如果是来自同一株辣椒的三个分支,将所述辣椒果实图片、叶片图片、根茎图片标记为同一株的图片,构建得到数据集;
步骤二,数据预处理与转换:通过随机分割将整个数据库分为训练集和验证集,并对图像进行预处理,包括缩小尺寸和裁剪到256×256像素的尺寸,并归一化(rescale)、图像旋转(rotation_range)、随机进行水平翻转(horizontal_flip)、图像位移(width_shift_range)、缩放(zoom_range)、平滑(smoothing)的数据增强和转换操作;
步骤三,搭建辣椒病虫害识别模型网络结构:将深度学习和迁移学习相结合,构建新的卷积网络模型;
步骤四,模型训练:识别辣椒病虫害是从三个分支结构基础上得到果实、叶片、根茎的病虫害识别结果,利用数据集中的训练集对模型进行训练,改进网络模型中的各项参数;最终得到最优的网络模型;
步骤五,图像识别:将训练好的模型植入手机APP,设计移动应用程序,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果;
步骤六,丰富数据集:将移动端取得的田间照片上传至云端数据库,定期从云端下载田间真实照片丰富数据集,最终达到模型训练的数据集100%来自田间真实场景,提高训练模型的鲁棒性。
进一步,步骤一中,所述数据集准备,包括:
收集辣椒叶片、果实和根茎相关的图片,所述图片来源包括:网络开放的辣椒病害图像库数据集、成都市农林科学院提供的病害图片和团队实地拍摄的图片;按照农林科学院专家的指导,将图片划分为细菌性斑点标签与健康标签;
其中,所述数据集共包含9669张辣椒叶片与果实图片,其中健康和受细菌感染的图片分别是6473张和3196张;所述健康植株可用图像的77%是在田间的真实栽培条件下拍摄的;在真实条件下的图像增加的复杂性,包括图片中有多片叶子和植物的其他部分、不相关的物体、不同的地面纹理以及阴影效果。
进一步,步骤二中,所述数据预处理与转换,包括:
在训练时,整个数据库分为两个数据集,训练集和验证集,通过随机分割9669幅图像,使其中80%形成训练集,20%形成验证集;每部分又分为Bacterial和Healthy两个子类型;对图像进行预处理,包括缩小尺寸和裁剪到256×256像素的尺寸,并进行归一化、图像旋转、随机进行水平翻转、图像位移、缩放以及平滑处理在内的数据增强操作。
进一步,步骤三中,所述搭建辣椒病虫害识别模型网络结构,包括:
使用迁移学习,将深度学习和迁移学习相结合搭建辣椒病虫害识别模型网络结构;迁移学习先保持模型卷积层的结构不变,并向卷积层载入训练好的权重与参数;设计适用于新任务的全连接层,用新设计的全连接层代替原本的全连接层,并与先前的卷积层组成新的卷积网络模型;所述模型结构框架从底层的数据处理开始,对数据集进行处理;到数据集划分;对模型进行训练,根据训练结果对模型参数进行调整,得到最优网络模型;
利用TF-Hub载入卷积神经网络模型,把线性分类器集成在feature_extractor_layer和Hub模型上;在全连接层增加dropout层,同时将LeakyReLU激活函数添加在每层Dropout后,所述LeakyReLU是一个相对优于ReLU的激活函数;
对权值进行正则化处理;KerasLayer层的Output层中None是指每一批样本大小,不影响过程,且可以改变,1280由输入维度决定的输出维度,param指输入参数为2257984;Dense层的Output层中None指样本大小,1280由输入维度决定的输出维度,param指输入参数为1639680;Dropout层的Output层中None指样本大小,1280是输出的维度,param输入参数为0;LeakyReLU的Output层中None指样本大小,1280是输出的维度,param输入参数为0;dense_1层中None是样本大小,512是输出的维度,param输入参数为655872;dropout_1层中None是样本大小,512是输出的维度,parame输入参数为0;Leakyre_lu_1层中None是样本大小,512是输出的维度,parame输入参数为0;dense_2层中None是样本大小,512是输出的维度,param输入参数为1026;输入模型的参数总量为4554562,其中参加训练的参数为2296578,未参加训练的参数为2257984;
使用Keras的序贯模型搭建神经网络,通过调用hub.KerasLayer()方法导入MobilenetV2模型,model.add()方法增加Dropout层和LeakyReLU激活函数。
进一步,步骤四中,所述模型训练,包括:
(1)配置:使用Adam优化器,损失函数选择分类交叉熵函数categorical_crossentropy,标注网络评价指标为accuracy;
(2)训练:生成数据batch并进行训练,设置训练轮次,将样本总数对批次大小做取整除运算,得到的结果作为每一轮训练批次,生成器与模型并行执行以提高效率;所述训练方式是边训练边计算,并不是在训练完一轮后计算总的损失;对于训练集,一个批次一个批次输入到模型中训练,在一轮训练中,每训练完一个批次后立即计算该批次在当前模型的所有参数条件下的损失值,最后训练完成这一轮的所有批次后,通过计算所有批次损失值的平均值来确定这一轮次的损失值;
(3)优化:设计完模型框架后针对模型损失函数Loss Function、优化器optimizer、激活函数activation function、正则项regular terms、归一化normalization、回调函数callback function参数进行调整,从损失值Loss Value、精度Accuracy、置信度Confidence、拟合优度R squared方向优化模型。
进一步,所述图像识别,包括:
设计手机端APP程序,通过拍摄图片进行病害识别;将实现的辣椒病害识别模型,转化为TFLite轻量级模型,内嵌到手机程序APP中,创建一个端到端的安卓应用程序;其中,所述APP在Andriod Studio中用Java语言编写,代码运行成功后导出apk格式文件;用户安装后使用选择本地照片或调用手机摄像头拍照识别功能进行辣椒病害检测,点击选择照片在手机相册中选择已拍照的照片和点击开始拍照选择相机拍照照片,中间图片为已选择或已拍照的照片,点击识别按钮,app在下方给出预测结果;最后将移动端获取的辣椒图片。
进一步,步骤六中,所述丰富数据集,包括:
将移动端取得的田间照片上传至云端数据库,定期从云端下载田间真实照片丰富数据集,最终达到模型训练的数据集100%来自田间真实场景,提高训练模型的鲁棒性。
本发明的另一目的在于提供一种辣椒病害识别系统包括:
数据集准备模块,用于收集辣椒叶片、果实和根茎相关的图片,并对图片进行标签划分,构建得到数据集;
数据预处理与转换模块,用于通过随机分割将整个数据库分为训练集和验证集,并对图像进行数据增强操作处理;
模型网络结构搭建模块,用于利用迁移学习将深度学习和迁移学习相结合搭建辣椒病虫害识别模型网络结构,构建新的卷积网络模型;
模型训练模块,用于利用数据集中的训练集对模型进行训练,根据深度卷积生成对抗网络对三分支预测结果选取最优预测值,改进网络模型中的各项参数,得到最优的网络模型;
图像识别模块,用于将训练好的模型载入手机APP,得到移动应用程序,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果;并上传获取的图片以丰富已有的数据集,最终状态是使模型训练使用的数据集100%来自真实场景,增加模型的鲁棒性;
数据集丰富模块,用于上传田间真实图片,定期下载下来丰富数据集,使得模型训练的数据100%来自真实场景,增加模型的鲁棒性。
本发明的另一目的在于提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
收集辣椒叶片、果实和根茎相关的图片,并对图片进行标签划分,构建得到数据集;通过随机分割将整个数据库分为训练集和验证集,并对图像进行数据增强操作处理;利用迁移学习将深度学习和迁移学习相结合搭建辣椒病虫害识别模型网络结构,构建新的卷积网络模型;利用数据集中的训练集对模型进行训练,改进网络模型中的各项参数,得到最优的网络模型;将训练好的模型载入手机APP,得到移动应用程序,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果;并上传获取的图片以丰富已有的数据集,最终状态是使模型训练使用的数据集100%来自真实场景,增加模型的鲁棒性。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:本发明1.利用卷积神经网络MobileNetV2进行病害的特征提取,并且克服图像背景复杂、对比度低、对象大小不一等问题,实现端到端图像语义分割。2.通过Tensorfolw Hub进行迁移学习,有效减少卷积层的时间和空间复杂度。3.使用TensorFlow Lite将模型轻量化,并移植检测模型于手机APP中,有利于广泛的推广。4.利用深度卷积生成对抗网络对三分支预测结果判别最准确的结果,有效提高模型预测结果,使最后的预测更加准确。5.移动端识别病虫害的同时,保留获取的照片并上传至云端数据库,定期下载数据,丰富已有数据集,最终模型训练的数据集100%来自真实场景,模型鲁棒性增强。
本发明提供的辣椒病害识别方法,提供了一套完整的辣椒病虫害识别方法的流程框架,在TensorFlow框架下,利用Keras深度学习库实现辣椒病害检测模型的构建,在模型设计中分别进行了数据预处理、数据转化、模型训练、参数调整等过程,使得整套流程中的重点(病虫害识别)部分得以最优实现,从而整个流程也最优化。
本发明提供的辣椒病虫害识别方法有很高的可移植性,设计手机端APP程序,通过拍摄图片进行病害识别;将实现的辣椒病害识别模型,转化为TFLite轻量级模型,内嵌到手机程序APP中,创建一个端到端的安卓应用程序。
本发明提供的辣椒病虫害识别方法有很高的数据集中泛化能力,在全连接层增加dropout层,同时将LeakyReLU激活函数添加在每层Dropout之后,这里LeakyReLU是一个相对优于ReLU的激活函数,除了继承ReLU能够降低运算量、以及解决梯度消失的问题和缓解过拟合程度的优点以外,由于该函数给所有输入的负值都给一个非零斜率,从而进入负区间之后神经元仍然保持可以学习的状态,参数alpha值控制负数部分线性函数的梯度。此外,为了控制模型复杂度,减小过拟合,本发明对权值进行正则化处理。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的辣椒病害识别方法流程图。
图2是本发明实施例提供的辣椒病害识别系统结构框图;
图中:1、数据集准备模块;2、数据预处理与转换模块;3、模型网络结构搭建模块;4、模型训练模块;5、图像识别模块;6、数据集丰富模块。
图3是本发明实施例提供的图片数据预处理示意图。
图3(a)是本发明实施例提供的原图。
图3(b)是本发明实施例提供的裁剪示意图。
图3(c)是本发明实施例提供的翻转示意图。
图3(d)是本发明实施例提供的平滑示意图。
图4是本发明实施例提供的模型构建框架示意图。
图5是本发明实施例提供的系统设计思路示意图。
图6是本发明实施例提供的辣椒病虫害识别模型结构示意图。
图7是本发明实施例提供的辣椒病虫害识别模型训练过程示意图。
图8是本发明实施例提供的辣椒病虫害识别模型移植到安卓系统手机端的APP示意图。
图9是本发明对比试验实验室环境下训练集和验证集的准确率及损失值曲线图。
图10是本发明对比实验实验室环境下辣椒叶片数据集的分类预测情况。
图11是本发明对比实验田间真实环境下辣椒叶片损失值及正确率曲线图。
图12是本发明对比实验田间真实环境下辣椒叶片预测情况。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种辣椒病害识别方法、系统、设备及终端,下面结合附图对本发明作详细的描述。
本发明提供一种辣椒病害识别方法,包括:
收集辣椒叶片、果实和根茎相关图片,构建以果实、叶片和根茎特征分为三个分支,得到原始数据集;
把原始数据集随机分割成训练集和验证集,比例是8:2,并进行图像增强等操作处理;
将深度学习和迁移学习相结合,构建新的卷积网络模型,搭建辣椒病虫害识别网络结构;
根据数据集中的训练集对模型进行训练,改进网络模型中的各项参数,对三分支识别的准确率进行深度卷积生成对抗网络判定取得三分支识别结果的那一个分支,最终得到最优的网络模型;
将训练好的模型植入手机APP,设计移动应用程序,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果。并且将移动端取得的田间照片上传至云端数据库;
定期从云端下载田间真实照片丰富数据集,最终达到模型训练的数据集100%来自田间真实场景,从而将的原始数据集丰富为真实场景数据集,提高训练模型的鲁棒性。
形成一套完整的辣椒病虫害检测流程,包括原始数据集采集、数据集处理、病虫害识别网络模型搭建、模型训练参数调优、移植移动端使用、收集真实图片丰富原始数据集,提高模型识别准确率,增强模型的鲁棒性。
具体地,如图1所示,本发明实施例提供的辣椒病害识别方法包括以下步骤:
S101,数据集准备:收集辣椒叶片、果实和根茎相关的图片,并对图片进行标签划分,构建得到数据集;
S102,数据预处理与转换:通过随机分割将整个数据库分为训练集和验证集,并对图像进行数据增强操作处理;
S103,搭建辣椒病虫害识别模型网络结构:利用迁移学习将深度学习和迁移学习相结合,构建新的卷积网络模型;
S104,模型训练:利用数据集中的训练集对模型进行训练,改进网络模型中的各项参数,得到最优的网络模型;
S105,图像识别:将训练好的模型载入手机APP,得到移动应用程序,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果。
S106,数据集丰富:移动端上传田间真实图片,定期下载下来丰富数据集,使得模型训练的数据100%来自真实场景,增加模型的鲁棒性。
步骤S102对图像进行数据增强操作处理包括:缩小尺寸和裁剪到256×256像素的尺寸,并归一化(rescale)、图像旋转(rotation_range)、随机进行水平翻转(horizontal_flip)、图像位移(width_shift_range)、缩放(zoom_range)、平滑(smoothing)等数据增强操作。
如图2所示,本发明实施例提供的辣椒病害识别系统包括:
数据集准备模块1,用于收集辣椒叶片、果实和根茎相关的图片,并对图片进行标签划分,构建得到数据集;
数据预处理与转换模块2,用于通过随机分割将整个数据库分为训练集和验证集,并对图像进行数据增强操作处理;
模型网络结构搭建模块3,用于利用迁移学习将深度学习和迁移学习相结合搭建辣椒病虫害识别模型网络结构,构建新的卷积网络模型;
模型训练模块4,用于利用数据集中的训练集对模型进行训练,改进网络模型中的各项参数,得到最优的网络模型;
图像识别模块5,用于将训练好的模型载入手机APP,得到移动应用程序,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果。
数据集丰富模块6,用于上传田间真实图片,定期下载丰富数据集,使得模型训练的数据100%来自真实场景,增加模型的鲁棒性。
下面结合具体实施例对本发明的技术方案作进一步描述。
实施例1
本发明公开了一种基于卷积神经网络模型的辣椒病虫害识别方法,包括以下步骤:(1)准备数据集:(2)数据预处理与转换;(3)构建模型网络结构;(4)模型训练,利用数据集中的训练集对模型进行训练,改进网络模型中的各项参数,得到最优的网络模型;(5)图像识别,将训练好的模型载入手机APP,得到移动应用程序,可以识别未分类的辣椒病虫害图像,得到待识别图像的识别结果;(6)丰富数据集,上传移动端获取的图片,定期丰富已有数据集,增加模型鲁棒性。本发明具有更高的识别精准度、表征能力和收敛速度,很高的可移植性,以及较高的交互性。
下面对本发明实施例提供的基于深度学习的辣椒病虫害识别方法的各个步骤进行详细阐述:
(1)准备数据集:
本发明首先收集辣椒叶片,果实、根茎相关的图片,主要的图片来源:网络开放数据集和成都市农林科学院提供,与此同时,团队也在实地进行了拍摄。按照农林科学院专家的指导,本发明将图片划分为了细菌性斑点标签与健康标签。从数据集的数量级上来看,本发明的数据集体量较小,可能会导致的问题是训练后相关精度不够高,不能应付复杂的识别环境。
数据集一共包含了9669张辣椒叶片与果实图片,其中健康和受细菌感染的图片,分别是6473张和3196张。数据来源:(1)网络开放的辣椒病害图像库;(2)成都市农林科学研究院提供的病害图片(于2021年4至5月在西昌辣椒种植基地拍摄)。
表1显示了数据集的信息,辣椒(健康和病菌感染)的可用图像数量。表1中健康植株可用图像的(77%)是在田间的真实栽培条件下拍摄的。在真实条件下的图像增加的复杂性,包括图片中有多片叶子和植物的其他部分、不相关的物体(例如土壤)、不同的地面纹理、阴影效果等。
表1数据集的信息,辣椒(健康和病菌感染)的可用图像数量
(2)数据预处理与转换:
在训练时,整个数据库分为两个数据集,训练集和验证集,通过随机分割9669幅图像,使其中80%形成训练集,20%形成验证集。每部分又分为Bacterial和Healthy两个子类型。首先本发明对图像进行预处理,包括缩小尺寸和裁剪到256×256像素的尺寸,并归一化(rescale)、图像旋转(rotation_range)、随机进行水平翻转(horizontal_flip)、图像位移(width_shift_range)、缩放(zoom_range)、平滑(smoothing)等数据增强操作,如图3所示。没有考虑使用图像的灰度版本进行训练的替代方案,因为以前的工作表明,这种方法不能提高深度学习模型的最终分类性能。从图像背景中分割辣椒植株叶片的过程中也没有考虑,这是因为神经网络有能力识别一组图像的重要和不重要的特征,并且在某种程度上忽略了后者。
(3)构建模型网络结构:
卷积神经网络模型训练非常耗时。本发明使用了迁移学习,将深度学习和迁移学习相结合,实现在提高模型的精确度的同时又节约资源。迁移学习首先保持模型卷积层的结构不变,然后向卷积层载入训练好的权重与参数。接着设计适用于新任务的全连接层,用新设计的全连接层代替原本的全连接层,并与先前的卷积层组成新的卷积网络模型,如图4所示为本发明模型结构框架,从底层的数据处理开始,对数据集进行处理;到数据集划分;对模型进行训练,根据训练结果对模型参数进行调整,得到最优网络模型。
本项目设计思路,可分为两个部分:(1)模型实现与训练,如图5(a)所示,主要设计辣椒病虫害模型的设计与优化;(2)手机端APP程序实现,如图5(b)所示,主要将实现的辣椒病虫害模型移植到安卓端上。
利用TF-Hub载入卷积神经网络模型,把线性分类器集成在feature_extractor_layer和Hub模型上。为防止过拟合现象的发生以及提升模型在数据集中的泛化能力,在全连接层增加dropout层,同时将LeakyReLU激活函数添加在每层Dropout之后,这里LeakyReLU是一个相对优于ReLU的激活函数,除了继承ReLU能够降低运算量、以及解决梯度消失的问题和缓解过拟合程度的优点以外,由于该函数给所有输入的负值都给一个非零斜率,从而进入负区间之后神经元仍然保持可以学习的状态,参数alpha值控制负数部分线性函数的梯度。此外,为了控制模型复杂度,减小过拟合,本发明对权值进行正则化处理。如图6所示是训练模型结构的情况,可以看到模型网络层的具体结构,描述每层输出的数据的形(维度)shape以及每层参数的具体数量,还有参数总量以及参加训练和未参加训练的参数数量,可以看到KerasLayer层的Output层(None,1280)中None是指每一批样本大小,不影响过程,且可以改变所以为None,后面的1280由输入维度决定的输出维度,param指输入参数为2257984;Dense层的Output层(None,1280)中None指样本大小,1280由输入维度决定的输出维度,param指输入参数为1639680;Dropout层的Output层(None,1280)中None指样本大小,1280是输出的维度,param输入参数为0;LeakyReLU的Output层(None,1280)中None指样本大小,1280是输出的维度,param输入参数为0;dense_1层(None,512)中None是样本大小,512是输出的维度,param输入参数为655872;dropout_1层(None,512)中None是样本大小,512是输出的维度,parame输入参数为0;Leakyre_lu_1层(None,512)中None是样本大小,512是输出的维度,parame输入参数为0;dense_2层(None,512)中None是样本大小,512是输出的维度,param输入参数为1026;输入模型的参数总量为4554562,其中参加训练的参数为2296578,未参加训练的参数为2257984。
使用Keras的序贯模型(Sequential)搭建神经网络,通过调用hub.KerasLayer()方法导入MobilenetV2模型,model.add()方法增加Dropout层和LeakyReLU激活函数。
(4)模型训练
模型训练过程:
1)配置:使用Adam优化器,损失函数选择分类交叉熵函数(categorical_crossentropy),标注网络评价指标为accuracy。
2)训练:生成数据batch并进行训练,设置训练轮次,将样本总数对批次大小做取整除运算,得到的结果作为每一轮训练批次,生成器与模型并行执行以提高效率。如图7所示本发明可以看到,训练方式是边训练边计算,并不是在训练完一轮后计算总的损失。具体来说,对于训练集,本发明是一个批次一个批次输入到模型中训练,在一轮训练中,每训练完一个批次(batch)后立即计算该批次在当前模型的所有参数条件下的损失值,最后训练完成这一轮的所有批次后,通过计算所有批次损失值的平均值来确定这一轮次的损失值。本发明发现,前面进入模型训练的损失值明显比后面进入的损失值要高,这是因为每批次训练完成后参数就会更新一次,所以随着训练的进行,模型的精度将越来越高,直到收敛。对于验证集而言,计算出验证损失值是要等一轮训练结束之后,此时的模型性能是相对较好的,所以损失值自然要小一些。
3)优化:单纯的优化与线性堆叠不能构建一个优秀的模型,设计完模型框架后针对模型损失函数(Loss Function)、优化器(optimizer)、激活函数(activationfunction)、正则项(regularterms)、归一化(normalization)、回调函数(callbackfunction)等参数进行调整,以求从损失值(Loss Value)、精度(Accuracy)、置信度(Confidence)、拟合优度(R squared)等方向优化模型。
(5)图像识别:
设计手机端APP程序,通过拍摄图片进行病害识别。将前面实现的辣椒病害识别模型,转化为TFLite轻量级模型,内嵌到手机程序APP中,创建一个端到端的安卓应用程序。
该APP在Andriod Studio中用Java语言编写,代码运行成功后导出apk格式文件。用户安装后可以使用:(1)选择本地照片,(2)调用手机摄像头拍照识别,两个功能来进行辣椒病害检测,如图8所示是简单的设计效果,点击选择照片可以在手机相册中选择已拍照的照片和点击开始拍照选择相机拍照照片,中间图片为已选择或已拍照的照片,点击识别按钮,app可以在下方给出预测结果;
(6)丰富数据集:
将移动端取得的田间照片上传至云端数据库,定期从云端下载田间真实照片丰富数据集,最终达到模型训练的数据集100%来自田间真实场景,提高训练模型的鲁棒性。
本发明提供了一套完整的辣椒病虫害识别方法的流程框架,在TensorFlow框架下,利用Keras深度学习库实现辣椒病害检测模型的构建,在模型设计中分别进行了数据预处理、数据转化、模型训练、参数调整等过程,使得整套流程中的重点(病虫害识别)部分得以最优实现,从而整个流程也最优化。
本发明提供的辣椒病虫害识别方法有很高的可移植性,设计手机端APP程序,通过拍摄图片进行病害识别。将实现的辣椒病害识别模型,转化为TFLite轻量级模型,内嵌到手机程序APP中,创建一个端到端的安卓应用程序。
本发明提供的辣椒病虫害识别方法有很高的数据集中泛化能力,在全连接层增加dropout层,同时将LeakyReLU激活函数添加在每层Dropout之后,这里LeakyReLU是一个相对优于ReLU的激活函数,除了继承ReLU能够降低运算量、以及解决梯度消失的问题和缓解过拟合程度的优点以外,由于该函数给所有输入的负值都给一个非零斜率,从而进入负区间之后神经元仍然保持可以学习的状态,参数alpha值控制负数部分线性函数的梯度。此外,为了控制模型复杂度,减小过拟合,本发明对权值进行正则化处理。
实施例2
本发明实施例提供的基于深度学习的辣椒病虫害识别方法包括以下步骤:
步骤1:准备数据集,本发明首先收集辣椒叶片,果实、根茎相关的图片,主要的图片来源:网络开放数据集和成都市农林科学院提供,与此同时,团队也在实地进行了拍摄。按照农林科学院专家的指导,本发明将图片划分为了细菌性斑点标签与健康标签。从数据集的数量级上来看,本发明的数据集体量较小,可能会导致的问题是训练后相关精度不够高,不能应付复杂的识别环境。
数据集一共包含了9669张辣椒叶片与果实图片,其中健康和受细菌感染的图片,分别是6473张和3196张。数据来源:(1)网络开放的辣椒病害图像库;(2)成都市农林科学研究院提供的病害图片(于2021年4至5月在西昌辣椒种植基地拍摄)。
步骤2:对数据集进行预处理,在训练时,整个数据库分为两个数据集,训练集和验证集,通过随机分割9669幅图像,使其中80%形成训练集,20%形成验证集。每部分又分为Bacterial和Healthy两个子类型。首先本发明对图像进行预处理,包括缩小尺寸和裁剪到256×256像素的尺寸,并归一化(rescale)、图像旋转(rotation_range)、随机进行水平翻转(horizontal_flip)、图像位移(width_shift_range)、缩放(zoom_range)、平滑(smoothing)等数据增强操作,如图3所示。没有考虑使用图像的灰度版本进行训练的替代方案,因为以前的工作表明,这种方法不能提高深度学习模型的最终分类性能。从图像背景中分割辣椒植株叶片的过程中也没有考虑,这是因为神经网络有能力识别一组图像的重要和不重要的特征,并且在某种程度上忽略了后者。
步骤3:搭建辣椒病虫害识别网络结构,利用TF-Hub载入卷积神经网络模型,把线性分类器集成在feature_extractor_layer和Hub模型上。为防止过拟合现象的发生以及提升模型在数据集中的泛化能力,在全连接层增加dropout层,同时将LeakyReLU激活函数添加在每层Dropout之后,这里LeakyReLU是一个相对优于ReLU的激活函数,除了继承ReLU能够降低运算量、以及解决梯度消失的问题和缓解过拟合程度的优点以外,由于该函数给所有输入的负值都给一个非零斜率,从而进入负区间之后神经元仍然保持可以学习的状态,参数alpha值控制负数部分线性函数的梯度。此外,为了控制模型复杂度,减小过拟合,本发明对权值进行正则化处理。使用Keras的序贯模型(Sequential)搭建神经网络,通过调用hub.KerasLayer()方法导入MobilenetV2模型,model.add()方法增加Dropout层和LeakyReLU激活函数。
步骤4:模型训练,(1)配置:使用Adam优化器,损失函数选择分类交叉熵函数(categorical_crossentropy),标注网络评价指标为accuracy。
(2)训练:生成数据batch并进行训练,设置训练轮次,将样本总数对批次大小做取整除运算,得到的结果作为每一轮训练批次,生成器与模型并行执行以提高效率。如图7所示本发明可以看到,训练方式是边训练边计算,并不是在训练完一轮后计算总的损失。具体来说,对于训练集,本发明是一个批次一个批次输入到模型中训练,在一轮训练中,每训练完一个批次(batch)后立即计算该批次在当前模型的所有参数条件下的损失值,最后训练完成这一轮的所有批次后,通过计算所有批次损失值的平均值来确定这一轮次的损失值。本发明发现,前面进入模型训练的损失值明显比后面进入的损失值要高,这是因为每批次训练完成后参数就会更新一次,所以随着训练的进行,模型的精度将越来越高,直到收敛。对于验证集而言,计算出验证损失值是要等一轮训练结束之后,此时的模型性能是相对较好的,所以损失值自然要小一些。
(3)优化:单纯的优化与线性堆叠不能构建一个优秀的模型,设计完模型框架后针对模型损失函数(Loss Function)、优化器(optimizer)、激活函数(activationfunction)、正则项(regularterms)、归一化(normalization)、回调函数(callbackfunction)等参数进行调整,以求从损失值(Loss Value)、精度(Accuracy)、置信度(Confidence)、拟合优度(R squared)等方向优化模型。
步骤5:图像识别,设计手机端APP程序,通过拍摄图片进行病害识别。将前面实现的辣椒病害识别模型,转化为TFLite轻量级模型,内嵌到手机程序APP中,创建一个端到端的安卓应用程序。
该APP在Andriod Studio中用Java语言编写,代码运行成功后导出apk格式文件。用户安装后可以使用:(1)选择本地照片;(2)调用手机摄像头拍照识别,两个功能来进行辣椒病害检测,如图8所示是简单的设计效果,点击选择照片可以在手机相册中选择已拍照的照片和点击开始拍照选择相机拍照照片,中间图片为已选择或已拍照的照片,点击识别按钮,app可以在下方给出预测结果;
步骤6,丰富数据集,将移动端取得的田间照片上传至云端数据库,定期从云端下载田间真实照片丰富数据集,最终达到模型训练的数据集100%来自田间真实场景,提高训练模型的鲁棒性。
对分类问题而言,采用准确率Accuracy和损失值Loss作为模型性能的评价指标,实验中的数据集都是以8:2的比例分成训练集和验证集,采用两种实验方式,即在实验室环境下辣椒叶片病害识别,在田间真实环境下辣椒叶片病害识别,。下面具体讨论分析两种环境下的实验结果。
(1)在实验室环境下,仅限于在均质背景下朝上的单叶分类,将数据集分为训练集和验证集各1982和496张。通过验证集对网络模型进行评估,随着迭代次数的增加,该模型在样本数据的训练下交叉熵损失值逐渐下降,最后收敛于0.08,准确率也在迭代49次时达到饱和。这种情况下,验证集的精度逐渐拟合训练集的精度,如图9所示。当得到目标值的标签以及模型的输出值,就可以对两者进行比较,图10为预测情况,可以直观地显示输出图片所在文件目录及文件名称,所属的真值类别,预测后的分类以及置信度。
(2)对田间真实环境下辣椒叶片数据集的4639张图片进行试验,该数据集中训练集和验证集的图片数量各3711张和928张。当图片背景复杂,模型复杂度越高时,模型对新样本的泛化能力有可能下降,此时将容易出现过拟合现象(overfitting),因此采用堆叠层的方式增加Dropout层有效避免过拟合,此外也对权重进行正则化处理,但是在这种情况下,用验证集来计算损失值时既没有采用正则化,同时也没有用Dropout随机屏蔽节点,而正则化和Dropout层都会使得准确率偏低,所以如图11所示,得到的验证集的精度要略大于训练集的精度,最终达到饱和后精度为98.8%,预测情况如图12所示。
从测试结果来看,当仅在实验室条件下,图像识别成功率明显高于田间真实环境下训练所获得的成功率,同时发现图像的背景(阴影,地面,枝干等)也会对准确率造成影响。实验结果表明,实际培养条件下的图像识别比实验室条件下的图像识别更加困难和复杂,并且证明了在实际培养条件下捕获的图像数据对于开发用于自动检测和诊断植物疾病系统的高度重要性。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘Solid StateDisk(SSD))等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (9)
1.一种辣椒病害识别方法,其特征在于,所述辣椒病害识别方法包括:
对以果实、叶片和根茎特征为分支的原始数据集随机分割成训练集和验证集,并进行图像增强处理;
以构建的卷积网络模型,搭建辣椒病虫害识别网络结构;
根据原始数据集中的训练集对卷积网络模型进行训练,改进卷积网络模型中的各项参数,以及进行深度卷积生成对抗网络判定,得到最优的网络模型;
将训练好的模型,植入手机APP,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果;并且将移动端取得的田间照片上传至云端数据库,照片数据可以进一步用于优化网络模型;
所述辣椒病害识别方法具体包括以下步骤:
步骤一,数据集准备:收集辣椒叶片、果实和根茎相关的图片,并对图片进行标签划分,按照辣椒果实、叶片、根茎的特征将数据集分为辣椒果实图片、叶片图片、根茎图片三个分支,如果是来自同一株辣椒的三个分支,将所述辣椒果实图片、叶片图片、根茎图片标记为同一株的图片,构建得到数据集;
步骤二,数据预处理与转换:通过随机分割将整个数据库分为训练集和验证集,并对图像进行预处理,包括缩小尺寸和裁剪到256×256像素的尺寸,并归一化(rescale)、图像旋转(rotation_range)、随机进行水平翻转(horizontal_flip)、图像位移(width_shift_range)、缩放(zoom_range)、平滑(smoothing)的数据增强和转换操作;
步骤三,搭建辣椒病虫害识别模型网络结构:将深度学习和迁移学习相结合,构建新的卷积网络模型;
步骤四,模型训练:识别辣椒病虫害是从三个分支结构基础上得到果实、叶片、根茎的病虫害识别结果,利用数据集中的训练集对模型进行训练,改进网络模型中的各项参数;最终得到最优的网络模型;
步骤五,图像识别:将训练好的模型植入手机APP,设计移动应用程序,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果;
步骤六,丰富数据集:将移动端取得的田间照片上传至云端数据库,定期从云端下载田间真实照片丰富数据集,最终达到模型训练的数据集100%来自田间真实场景。
2.如权利要求1所述的辣椒病害识别方法,其特征在于,步骤一中,所述数据集准备,包括:
收集辣椒叶片、果实和根茎相关的图片,所述图片来源包括:网络开放的辣椒病害图像库数据集、成都市农林科学院提供的病害图片和团队实地拍摄的图片;按照农林科学院专家的指导,将图片划分为细菌性斑点标签与健康标签;
其中,所述数据集共包含9669张辣椒叶片与果实图片,其中健康和受细菌感染的图片分别是6473张和3196张;健康植株可用图像的77%是在田间的真实栽培条件下拍摄的;在真实条件下的图像增加的复杂性,包括图片中有多片叶子和植物的其他部分、不相关的物体、不同的地面纹理以及阴影效果。
3.如权利要求1所述的辣椒病害识别方法,其特征在于,步骤二中,所述数据预处理与转换,包括:
在训练时,整个数据库分为两个数据集,训练集和验证集,通过随机分割9669幅图像,使其中80%形成训练集,20%形成验证集;每部分又分为Bacterial和Healthy两个子类型;对图像进行预处理,包括缩小尺寸和裁剪到256×256像素的尺寸,并进行归一化、图像旋转、随机进行水平翻转、图像位移、缩放以及平滑处理在内的数据增强操作。
4.如权利要求1所述的辣椒病害识别方法,其特征在于,步骤三中,所述搭建辣椒病虫害识别模型网络结构,包括:
使用迁移学习,将深度学习和迁移学习相结合搭建辣椒病虫害识别模型网络结构;迁移学习先保持模型卷积层的结构不变,并向卷积层载入训练好的权重与参数;设计适用于新任务的全连接层,用新设计的全连接层代替原本的全连接层,并与先前的卷积层组成新的卷积网络模型;所述卷积网络模型结构框架从底层的数据处理开始,对数据集进行处理;到数据集划分;对模型进行训练,根据训练结果对模型参数进行调整,得到最优网络模型;
利用TF-Hub载入卷积神经网络模型,把线性分类器集成在feature_extractor_layer和Hub模型上;在全连接层增加dropout层,同时将LeakyReLU激活函数添加在每层Dropout后,所述LeakyReLU是一个相对优于ReLU的激活函数;
对权值进行正则化处理;KerasLayer层的Output层中None是指每一批样本大小,不影响过程,且可以改变,1280由输入维度决定的输出维度,param指输入参数为2257984;Dense层的Output层中None指样本大小,1280由输入维度决定的输出维度,param指输入参数为1639680;Dropout层的Output层中None指样本大小,1280是输出的维度,param输入参数为0;LeakyReLU的Output层中None指样本大小,1280是输出的维度,param输入参数为0;dense_1层中None是样本大小,512是输出的维度,param输入参数为655872;dropout_1层中None是样本大小,512是输出的维度,parame输入参数为0;Leakyre_lu_1层中None是样本大小,512是输出的维度,parame输入参数为0;dense_2层中None是样本大小,512是输出的维度,param输入参数为1026;输入模型的参数总量为4554562,其中参加训练的参数为2296578,未参加训练的参数为2257984;
使用Keras的序贯模型搭建神经网络,通过调用hub.KerasLayer()方法导入MobilenetV2模型,model.add()方法增加Dropout层和LeakyReLU激活函数。
5.如权利要求1所述的辣椒病害识别方法,其特征在于,步骤四中,所述模型训练,包括:
(1)配置:使用Adam优化器,损失函数选择分类交叉熵函数categorical_crossentropy,标注网络评价指标为accuracy;
(2)训练:生成数据batch并进行训练,设置训练轮次,将样本总数对批次大小做取整除运算,得到的结果作为每一轮训练批次,生成器与模型并行执行以提高效率;训练方式是边训练边计算,并不是在训练完一轮后计算总的损失;对于训练集,一个批次一个批次输入到模型中训练,在一轮训练中,每训练完一个批次后立即计算该批次在当前模型的所有参数条件下的损失值,最后训练完成这一轮的所有批次后,通过计算所有批次损失值的平均值来确定这一轮次的损失值;
(3)优化:设计完模型框架后针对模型损失函数LossFunction、优化器optimizer、激活函数activationfunction、正则项regularterms、归一化normalization、回调函数callbackfunction参数进行调整,从损失值LossValue、精度Accuracy、置信度Confidence、拟合优度Rsquared方向优化模型。
6.如权利要求1所述的辣椒病害识别方法,其特征在于,步骤五中,所述图像识别,包括:
设计手机端APP程序,通过拍摄图片进行病害识别;将实现的辣椒病害识别模型,转化为TFLite轻量级模型,内嵌到手机程序APP中,创建一个端到端的安卓应用程序;其中,所述APP在AndriodStudio中用Java语言编写,代码运行成功后导出apk格式文件;用户安装后使用选择本地照片或调用手机摄像头拍照识别功能进行辣椒病害检测,点击选择照片在手机相册中选择已拍照的照片和点击开始拍照选择相机拍照照片,中间图片为已选择或已拍照的照片,点击识别按钮,app在下方给出预测结果;最后将移动端获取的辣椒图片。
7.如权利要求1所述的辣椒病害识别方法,其特征在于,步骤六中,所述丰富数据集,包括:将移动端取得的田间照片上传至云端数据库,定期从云端下载田间真实照片丰富数据集,最终达到模型训练的数据集100%来自田间真实场景。
8.一种应用如权利要求1~7任意一项所述的辣椒病害识别方法的辣椒病害识别系统,其特征在于,所述辣椒病害识别系统包括:
数据集准备模块,用于收集辣椒叶片、果实和根茎相关的图片,并对图片进行标签划分,构建得到数据集;
数据预处理与转换模块,用于通过随机分割将整个数据库分为训练集和验证集,并对图像进行数据增强操作处理;
模型网络结构搭建模块,用于利用迁移学习将深度学习和迁移学习相结合搭建辣椒病虫害识别模型网络结构,构建新的卷积网络模型;
模型训练模块,用于利用数据集中的训练集对模型进行训练,根据深度卷积生成对抗网络对三分支预测结果选取最优预测值,改进网络模型中的各项参数,得到最优的网络模型;
图像识别模块,用于将训练好的模型载入手机APP,得到移动应用程序,识别未分类的辣椒病虫害图像,得到待识别图像的识别结果;并上传获取的图片以丰富已有的数据集,最终状态是使模型训练使用的数据集100%来自真实场景;
数据集丰富模块,用于上传田间真实图片,定期下载下来丰富数据集,使得模型训练的数据100%来自真实场景,增加模型的鲁棒性。
9.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1~7任意一项所述的辣椒病害识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111306502.3A CN114170137B (zh) | 2021-11-05 | 2021-11-05 | 一种辣椒病害识别方法、识别系统、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111306502.3A CN114170137B (zh) | 2021-11-05 | 2021-11-05 | 一种辣椒病害识别方法、识别系统、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114170137A CN114170137A (zh) | 2022-03-11 |
CN114170137B true CN114170137B (zh) | 2023-07-04 |
Family
ID=80478121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111306502.3A Active CN114170137B (zh) | 2021-11-05 | 2021-11-05 | 一种辣椒病害识别方法、识别系统、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114170137B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114742822A (zh) * | 2022-05-20 | 2022-07-12 | 青岛农业大学 | 一种草莓识别计数模型的搭建方法及应用 |
CN116310846B (zh) * | 2023-05-19 | 2023-08-29 | 成都大学 | 一种基于图像识别和数据挖掘的病虫害识别方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3739504A1 (en) * | 2019-05-16 | 2020-11-18 | Basf Se | System and method for plant disease detection support |
CN112215203A (zh) * | 2020-11-02 | 2021-01-12 | 坝道工程医院(平舆) | 一种基于深度学习的路面病害检测方法和装置 |
CN112749675A (zh) * | 2021-01-20 | 2021-05-04 | 云南农业大学 | 一种基于卷积神经网络的马铃薯病害识别方法 |
WO2021144785A1 (en) * | 2020-01-14 | 2021-07-22 | Centure Application Ltd. | System and method for real-time crop management |
CN113158754A (zh) * | 2021-02-04 | 2021-07-23 | 安徽农业大学 | 一种番茄病害图像识别方法 |
CN113344077A (zh) * | 2021-06-08 | 2021-09-03 | 中国农业大学 | 一种基于卷积胶囊网络结构的抗噪茄科病害识别方法 |
CN113420794A (zh) * | 2021-06-04 | 2021-09-21 | 中南民族大学 | 一种基于深度学习的二值化Faster R-CNN柑橘病虫害识别方法 |
CN113609941A (zh) * | 2021-07-27 | 2021-11-05 | 江苏师范大学 | 一种基于深度学习的农作物病虫害识别方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108846362A (zh) * | 2018-06-15 | 2018-11-20 | 温岭市志创网络科技有限公司 | 一种基于大数据云服务器的农作物病害识别系统及方法 |
CN109101891A (zh) * | 2018-07-17 | 2018-12-28 | 哈尔滨理工大学 | 一种融合人工智能的水稻病虫害检测系统及其检测方法 |
CN110458109A (zh) * | 2019-08-13 | 2019-11-15 | 西南林业大学 | 一种基于图像识别技术的茶叶病害识别系统及工作方法 |
CN112052904A (zh) * | 2020-09-09 | 2020-12-08 | 陕西理工大学 | 一种基于迁移学习和卷积神经网络病虫害的识别方法 |
CN112861752B (zh) * | 2021-02-23 | 2022-06-14 | 东北农业大学 | 一种基于dcgan与rdn的作物病害识别方法及系统 |
CN113052168A (zh) * | 2021-03-12 | 2021-06-29 | 西安航天自动化股份有限公司 | 基于多源特征融合的农作物病虫害图像识别方法 |
-
2021
- 2021-11-05 CN CN202111306502.3A patent/CN114170137B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3739504A1 (en) * | 2019-05-16 | 2020-11-18 | Basf Se | System and method for plant disease detection support |
WO2021144785A1 (en) * | 2020-01-14 | 2021-07-22 | Centure Application Ltd. | System and method for real-time crop management |
CN112215203A (zh) * | 2020-11-02 | 2021-01-12 | 坝道工程医院(平舆) | 一种基于深度学习的路面病害检测方法和装置 |
CN112749675A (zh) * | 2021-01-20 | 2021-05-04 | 云南农业大学 | 一种基于卷积神经网络的马铃薯病害识别方法 |
CN113158754A (zh) * | 2021-02-04 | 2021-07-23 | 安徽农业大学 | 一种番茄病害图像识别方法 |
CN113420794A (zh) * | 2021-06-04 | 2021-09-21 | 中南民族大学 | 一种基于深度学习的二值化Faster R-CNN柑橘病虫害识别方法 |
CN113344077A (zh) * | 2021-06-08 | 2021-09-03 | 中国农业大学 | 一种基于卷积胶囊网络结构的抗噪茄科病害识别方法 |
CN113609941A (zh) * | 2021-07-27 | 2021-11-05 | 江苏师范大学 | 一种基于深度学习的农作物病虫害识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114170137A (zh) | 2022-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | EfficientNet-B4-Ranger: A novel method for greenhouse cucumber disease recognition under natural complex environment | |
CN108764372B (zh) | 数据集的构建方法和装置、移动终端、可读存储介质 | |
KR101830056B1 (ko) | 딥러닝 기반의 병해 진단 시스템 및 그 이용방법 | |
CN114170137B (zh) | 一种辣椒病害识别方法、识别系统、计算机可读存储介质 | |
CN107239514A (zh) | 一种基于卷积神经网络的植物识别方法及系统 | |
CN109583301B (zh) | 一种农作物生长过程最优外部种植条件预测方法及装置 | |
CN110321956B (zh) | 一种基于人工智能的牧草病虫害治理方法及装置 | |
CN109344738A (zh) | 农作物病虫草害识别方法及装置 | |
Farooqui et al. | IOT based automated greenhouse using machine learning approach | |
CN110516734A (zh) | 一种图像匹配方法、装置、设备及存储介质 | |
CN115115830A (zh) | 一种基于改进Transformer的家畜图像实例分割方法 | |
CN114898359B (zh) | 一种基于改进EfficientDet的荔枝病虫害检测方法 | |
CN115050020A (zh) | 一种基于改进Mask R-CNN草莓叶面积的智能视觉检测方法及系统 | |
Zhang et al. | Deep learning based rapid diagnosis system for identifying tomato nutrition disorders | |
CN106503047A (zh) | 一种基于卷积神经网络的图像爬虫优化方法 | |
Haichen et al. | Weeds and crops classification using deep convolutional neural network | |
Suo et al. | Casm-amfmnet: A network based on coordinate attention shuffle mechanism and asymmetric multi-scale fusion module for classification of grape leaf diseases | |
He et al. | Recognition of soybean pods and yield prediction based on improved deep learning model | |
CN116863403B (zh) | 一种农作物大数据环境监测方法、装置及电子设备 | |
CN110705698B (zh) | 尺度自适应感知的目标计数深度网络设计方法 | |
CN116612386A (zh) | 基于分级检测双任务模型的辣椒病虫害识别方法及系统 | |
Kodali et al. | Tomato plant leaf disease detection using CNN | |
Vora et al. | An ensemble of convolutional neural networks to detect foliar diseases in apple plants | |
CN115147835A (zh) | 一种基于改进RetinaNet的自然果园场景下的凤梨成熟度检测方法 | |
Rajeswarappa et al. | Crop Pests Identification based on Fusion CNN Model: A Deep Learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |