基于迁移学习和改进CNN的葡萄叶部病害检测系统
2021-06-02樊湘鹏周建平李志磊王小荣
樊湘鹏,许 燕,周建平,李志磊,彭 炫,王小荣
基于迁移学习和改进CNN的葡萄叶部病害检测系统
樊湘鹏1,2,3,许 燕1,2,3,周建平1,2,3※,李志磊1,2,4,彭 炫2,4,王小荣1,2,4
(1. 新疆大学机械工程学院,乌鲁木齐 830047;2. 新疆维吾尔自治区农牧机器人及智能装备工程研究中心,乌鲁木齐 830047;3. 械制造系统工程国家重点实验分室,乌鲁木齐 830047;4. 新疆大学工程训练中心,乌鲁木齐 830047)
为建立高效、准确的葡萄叶部病害检测系统,引入迁移学习机制,利用大型公开数据集对VGG16模型预训练,保持模型前端13个层的参数和权重不变,对全连接层和分类层改进后利用新数据集微调训练模型,包括对训练优化器、学习率和中心损失函数平衡参数的优选试验,最后将模型部署在Android手机端。试验表明,在微调训练阶段选择Adam优化器、初始学习率设为0.001、中心损失函数平衡参数设为0.12时,改进的VGG16模型性能最优,对葡萄6类叶部图像的分类平均准确率为98.02%,单幅图像平均检测耗时为0.327 s。与未改进的VGG16模型相比,平均准确率提高了2.82%,平均检测耗时下降了66.8%,权重参数数量减少了83.4%。改进后的模型综合性能优于AlexNet、ResNet 50和Inception v3等模型。将模型跨平台部署在Android手机端,自然环境下验证的平均准确率为95.67%,平均检测耗时为0.357 s。该研究建立的基于迁移学习和改进卷积神经网络的病害检测系统可实现对葡萄叶部病害的快速、智能诊断,为葡萄病害的及时防控提供依据。
图像识别;病害;葡萄叶;迁移学习;卷积神经网络;全局平均池化;手机识别系统;智能诊断
0 引 言
新疆是中国最大的葡萄生产基地,葡萄年产量约占全国总产量的20%[1]。随着新疆葡萄种植规模的不断扩大,各类真菌和病菌导致的病害也变得复杂多样。病害在叶片、枝蔓和果实等部位蔓延会严重损害葡萄的品质和产量。快速、准确地判断葡萄病害类型是植保精准施药、控制病害蔓延的前提和基础[2-4]。利用图像处理和机器视觉技术自动识别作物病害类型能够克服人工识别易误判、依赖专家经验、耗费人力物力大等缺点[5-7],但传统图像处理技术需要手动提取目标特征,且最终达到的识别精度有限,在复杂的实际生产环境中往往难以进行应用[4]。
深度学习不同于传统图像处理技术,它可以依靠不同的功能对数据特征进行转换,对数据特征进行分层表示,并且适应密集型图像计算任务[8],尤其是卷积神经网络(Convolutianal Neural network,CNN)通过学习不同领域、不同场景、不同尺度的目标特征可以实现端到端的检测[9-10]。卷积神经网络与农业信息感知的结合为作物表型病害识别拓展了全新的研究视角[11],已成为农业信息化技术领域中的研究热点[12]。Mohanty等[13]建立了PlantVillage数据集,利用AlexNet和GoogleNet深度网络识别38种病害类型,准确率高达99.35%。孙俊等[14-15]同样以PlantVillage数据集训练卷积神经网络模型,对病害识别分类的准确率均高于99%。Brahimi等[16]基于AlexNet模型,利用番茄9种病害1.5万张图像试验得到较好的识别效果。樊湘鹏等[17]改进了CNN模型,利用自然条件下获取的玉米叶部病害图像训练模型,平均精度达到了97%以上。Ferentinos等[18]利用来自实验室和田间环境的87 848多张作物病害图像训练卷积神经网络模型,取得了99%以上的成功率,但模型复杂、训练耗时长。鲍文霞等[19]针对小麦赤霉病的识别,利用深度语义分割网络分割麦穗并构建了多路卷积神经网络,精度可达100%。在葡萄病害检测方面,Kerkech等[20]建立CNN LeNet-5模型检测葡萄树藤蔓疾病,达到了92%的准确率。刘阗宇等[21]利用改进区域卷积神经网络模型对图像中葡萄叶片进行判别,可以诊断6种葡萄病害的类型,平均精度为75.52%。在此基础上,乔虹等[22]对摄像机视场中的葡萄叶片进行检测,实现了自然条件下葡萄病害的连续在线监测,但仅对姿态端正的正面叶片有效;何欣[23]设计SE模块建立了多尺度ResNet模型,对葡萄叶部病害识别准确率最高达90.83%。Ji等[24]设计UnitedModel,在Plantvillage中选取了健康和3种病害葡萄叶片图像1 619张,所用方法的准确率可达98.57%。
基于CNN的作物叶片病害检测方法虽然取得了较高的识别率,但仍然存在以下几个问题:1)深度卷积神经网络往往需要数万张图像,在实际中很难做到获取大数量级的图像,且人工标注过程耗费大量成本和精力;2)大多数学者采用图像背景简单公开数据集,难以反映作物生长的真实环境,数据集所训练的模型在实际应用中精度大幅下降;3)不少学者设计了复杂结构的深度网络模型,虽然精度较高,但是模型对计算机硬件依赖强,易用性不足。基于上述问题,本文利用经典CNN结构VGG16模型在大型数据集上进行预训练并将参数迁移,对目标网络结构改进和优化,利用自然环境中采集的葡萄叶片病害图像数据集微调训练改进CNN模型,使模型获得高准确率和强鲁棒性。将训练好的模型部署到手机端建立智能检测系统,实现对葡萄叶部病害的快速、智能诊断。
1 试验数据
1.1 数据集的建立
由于本文采用迁移学习方法对模型进行充分训练,之后进行新数据集上的微调训练,因此数据集分为网络资源中获取的预训练数据集和自然状态下采集的葡萄病害数据集两部分。
1.1.1 预训练数据集
预训练数据集用于对卷积神经网络进行预训练。为克服大量样本难以在自然环境中获取的问题,利用网络资源获取试验所需大样本数据和大型公开数据集,以充分训练模型参数。与本文相关的3种大型公开数据集的性质如表 1所示。原始的VGG系列卷积神经网络是在ImageNet数据集上训练得到的,但是ImageNet中的数据为生活场景中的粗粒度图像,与目标领域的葡萄叶部病害图像差距较大,难以保证迁移学习的效率[25]。在农作物病害检测领域的PlantVillage和AI Challenger数据集包含了多种作物的病害和健康叶片的数万张图像,具有的细粒度特征适合本研究类型,因此选用这2个数据集的组合图像作为本研究的预训练数据集,以获得训练充分的模型参数。
表1 3种大型公开数据集的性质
1.1.2 葡萄病害数据集的获取
本研究以葡萄白粉病(Powdery Mildew,PM)、霜霉病(Downy Mildew,DM)、黑霉病(Black Mould Bblight,BMB)、花叶病毒病(Mosaic Virus Disease,MVD)、褐斑病(Brown Spot,BS)这5种常见叶部病害图像和葡萄健康叶片(Healthy Leaf,HL)为研究对象。在新疆大学南校区多个葡萄种植片区利用华为Honor Play手机(相机型号COR AL10)在早中晚的不同时刻进行多角度采集,在采集过程中保证各个类别的样本数量均衡,获取的图像数量分别为314(PM)、337(DM)、356(BMB)、330(MVD)、343(BS)和310(HL),总计1 990张。图像格式为JPEG,颜色模式为RGB,像素大小为2 560×2 560(比例为1∶1)。
1.2 数据集预处理
卷积神经网络需要进行有监督的训练学习,因此利用LabelMe标注工具,按照PASCAL VOC2007标准进行存储。本文利用几何变换、亮度调整、颜色变换以及添加噪声等方式,将数据集扩大为原来的10倍以提高采集样本的数量和多样性,增强后的数据集大小为19 900。另外,本模型要求输入固定维度的图像,因此将所有图像统一调整为224像素×224像素×3通道。
2 基于迁移学习和改进CNN的病害检测模型
2.1 卷积神经网络和VGG16模型
CNN通过模拟人脑结构,学习特征后可以将输入图像或数据的底层和抽象特征进行深层次的理解和表达[26],是深度学习的经典网络算法。当前应用比较成功的卷积结构有AlexNet、GoogLeNet、VGG、Inception和ResNet系列等[27]。CNN的结构对模型性能有着很大的影响,结构太浅容易导致学习特征不充分,无法表达图像的深层次特征;结构太深会增加模型的冗余性,减缓训练甚至导致训练退化。经过对比AlexNet、VGG系列、ResNet系列和Inception系列的多种经典结构模型,选择具有16个权重层的VGG16网络作为本研究的基本结构并对其改进优化。VGG16模型中包含了13个卷积层和3个全连接层,在卷积层之间有5个最大池化层,网络的最后一层是Softmax分类器,输出分类结果。
2.2 基于迁移学习和改进CNN模型的试验方法
在农业场景中很难获得大规模的数据集,CNN模型在大型数据集上经过充分训练后可习得图像分类识别能力。龙满生等[28-29]的研究表明,应用深度特征网络参数迁移并使用微调训练模型的少数几层可以高效获得性能良好的模型。因此,本文采用迁移学习的策略,对VGG16卷积神经网络进行预训练,改进优化模型结构,再通过新数据集对迁移后的网络参数进行微调,建立具有强泛化性和鲁棒性的葡萄叶部病害检测模型。基于迁移学习和改进CNN的葡萄叶部病害检测流程如图1所示,分为数据集的获取与建立、模型预训练、模型改进和模型的迁移学习微调训练这4个连续过程。预训练采用PlantVillage和AI Challenger的组合数据集得到训练充分的模型参数;为防止模型发生过拟合、降低模型参数,对预训练的VGG16结构改进,包括在卷积层后面添加批归一化(Batch Normalization,BN)加速训练、采用全局平均池化(Global Average Pooling,GAP)代替参数巨大的2个全连接层进行特征降维、利用6标签的Softmax分类层代替原有的分类层并引入中间损失函数提高模型的细分类能力这3个方面。之后利用真实环境中获取的葡萄叶部病害和健康叶片图像对改进CNN模型微调训练并测试,最后将最优模型部署到Android手机端。
2.3 VGG16结构的改进
2.3.1 批归一化处理
利用BN对卷积层后形成的每个样本的特征图进行归一化处理能够很好地解决模型在训练过程中中间层数据分布发生改变的问题,加快收敛、提高精度、降低过拟合现象。归一化过程中,首先求取特征图的所有像素点总数的平均值和方差,然后利用归一化方程对样本归一化操作。
式中为像素点总数的平均值,为像素点总数的方差值;x表示该图像样本中第个像素点的值;表示该样本像素点的总数。`表示该样本像素归一化后的值;为保证分母大于0的微小常数值。
2.3.2 GAP代替全连接层
VGG16网络虽然具备细粒度图像分类能力,但全连接层存在大量的参数,计算量过大,极大地限制了在移动端的使用。使用全局平均池化对整张特征图所有值求平均,可充分利用每张特征图的信息提取关键特征并减少计算量[14]。因此本文利用GAP代替VGG16中的前2个全连接层,在多个卷积层和池化层后进行一次个卷积核的卷积操作(为需要分类的类别数),然后对形成的特征图进行全局平均池化操作,形成含有个元素的列向量,对特征矩阵进行降维,在保证分类效果的同时,可改善参数量过大、耗时过长及发生过拟合的问题。图2为全局平均池化代替全连接层对特征降维的过程。
图2中,来自CNN前端的特征图矩阵C向下采样到全局平均池化fm中,特征矩阵经全局平均池化后相当于对整个输入矩阵求取平均值,全局平均池化过程中的权重矩阵调整方式如公式(4)所示
其中2表示输入特征图大小;和分别代表输出神经元和输入特征图的数量,W 是调整后的权重矩阵,是全局平均池化之前的特征矩阵,调整后的权重矩阵相当于将中的每个矩阵简化为由1×1×(GAP深度)组成的列向量,此时便实现了特征图的降维过程。
2.3.3 Softmax结构和损失函数改进
在原始VGG16结构中,Softmax分类层有1 000个类别,由于本研究只有5种病害和1个健康类别,因此用6分类Softmax结构替换原有的分类层。在多分类问题中,常用Softmax Loss作为网络的损失函数,由于葡萄枝叶生长状态多样,同类病害的特征之间差别较大,不同病害的特征具有相似性,导致识别率下降。为保证模型增强对类内特征的聚合性和类间特征差异的最大化,将中心损失函数Center Loss引入模型,与Softmax Loss构建混合损失函数(简称C-S Loss)来提高对多种葡萄病害的识别率,混合损失函数的表达式为
式中L为分类器中Softmax Loss函数,L为中心损失函数;参数表示损失函数的平衡参数,由于L的值远大于L的值,因此引入来平衡2个函数值;为训练中的小批量数量,(x)表示特征向量,c表示第y类特征的中心。CNN的训练过程是一个损失函数最优化的过程,通过C函数(6)可知,在训练过程中,C的值逐渐变小,即特征向量(x)逐渐接近第y类特征的中心,随着迭代训练的增加,每一类特征的分布情况将向其对应的特征中心聚集,从而实现类内聚合性和类间分离性。
2.4 模型的微调训练
2.4.1 微调阶段的训练机制
学习率是模型中的重要参数,太大可能会导致参数在最优值两侧来回移动震荡剧烈,太小则会大大降低学习效率和优化速度。本文分别利用带动量的随机梯度下降算法(Stochastic Gradient Descent,SGD)和自适应学习率算法Adam优化器训练模型,冻结13个卷积层和池化层的参数,只训练全局平均池化层、剩余1个全连接层和Softmax分类层的参数。
2.4.2 环境配置和超参数设置
试验运行环境操作系统为Windows 7(64位),内存为16GB,搭载Intel(R) Xeon(R) CPU E5-2630 v4 @2.20GHz处理器,采用Anaconda 3.5.0,CUDA 8.0编程平台,cuDNN 6.0,以Tensorflow作为开发环境,编程使用Python 3.5.6。试验方法包括模型训练、测试和不同方法之间的对比验证。试验选取所有图像样本的80%(15 920张)用于训练,剩余20%(3 980张)作为测试集对模型效果进行验证并输出病害类别的识别情况。为了使模型训练性能更优异,本试验中所设置的超参数根据前人的经验和本研究的对比试验情况进行设置。本文2种训练方式的学习率初始值分别设为0.01和0.001,最大迭代次数设为5 000,SGD算法中的动量因子设置为0.9,衰减系数设置为0.96,中心损失函数的平衡参数分别在0~0.2之间进行搜索优选。
2.5 模型的评价指标
为了评价所提方法对葡萄病害检测分类结果的好坏,对样本进行测试后分别计算精度(Precision)和召回率(Recall),利用综合评价指标1得分作为精度和召回率的评估值。同时,引入计算简便的平均准确率和单张图片检测耗时作为评价指标,其中平均准确率=分类正确的数量/测试总数量,=测试总耗时/测试图像数量,其他指标的计算方法如下所示
式中TP为预测为正的正样本;FP为预测为正的负样本;FN代表预测为负的正样本。
3 结果与分析
3.1 训练方式和学习率对模型性能的影响
在微调训练阶段选择2种训练机制,并分别将初始学习率设为0.01和0.001,比较不同训练优化机制和初始学习率对模型性能的影响,模型的性能对比情况如图3所示。在图3中,黑色曲线为采用SGD训练算法并设置初始学习率为0.001的模型性能变化,蓝色曲线为采用SGD训练算法并设置初始学习率为0.01的模型性能变化,绿色曲线为采用Adam优化器并设置初始学习率为0.01的模型性能变化,红色曲线为采用Adam优化器并设置初始学习率为0.001的模型性能变化。从中可以发现,初始学习率和训练方式对模型的性能影响较大。相同的训练方式下,当采用学习率为0.001时模型的损失值曲线和平均准确率变化曲线比学习率为0.01时的模型曲线更平稳,模型的损失值更低、准确率更高;相同的学习率条件下,利用Adam优化器训练的模型损失值更小、平均准确率更高,比利用SGD算法得到的模型更稳定。当采利用Adam优化器并设置学习率为0.001时,模型在迭代次数为3 500左右时就已经收敛,最终获得的平均准确率在98%左右。在模型的微调训练阶段,初始学习率设为较小值时训练得到的模型性能较优,其原因在于:在迁移学习方式下,网络的前端各层均已获得良好的训练,模型的权重参数已接近最优解;如果在微调训练阶段使用较大的学习率容易导致模型跳过最优解,产生较大的震荡,从而使损失值变大、准确率降低。由于SGD训练算法是针对每个数据点调整权重,网络的性能在训练过程中存在较多上下波动的情况,因此使用Adam优化器算法比SGD训练算法具模型更快达到收敛,且性能更稳定。因此,微调训练阶段选用Adam优化器训练参数,并设置0.001作为模型微调训练的初始学习率。
3.2 中心损失函数对模型性能的影响
中心损失函数平衡参数用于调节中心损失函数的权重,的大小对模型性能有一定影响。为获得最佳平衡参数,将值设定在0~0.2之间,每隔0.02取值试验。模型在不同平衡参数下的损失值和平均准确率变化情况如图4所示。通过图4可知,当值为0时,此时相当于未加入中心损失函数,模型的准确率在95.80%左右,损失值在0.65附近,此时模型的类内聚合性和类间分离性能较弱;随着逐渐增加,损失值有所降低,准确率有所增加,损失值最低为0.046 7,模型准确率最高达98.02%,此时的值为0.12;当值继续增加时,模型的损失值逐渐上升,准确率反而逐渐下降。由此说明,利用中心损失函数改进模型的Softmax Loss函数在一定平衡范围内可以增强模型的分类能力,当中心损失函数权重过大时反而会破坏模型原有的分类效果。通过本试验的结果来看,中心损失函数的平衡参数为0.12时,模型的效果最优。
3.3 模型检测结果及定量分析
为了更清楚表现模型的病害检测与分类结果,统计了模型检测过程中更多的数据细节信息,如表2所示。葡萄白粉病、霜霉病、黑霉病、花叶病、褐斑病和健康叶片的精度值Precision和召回率Recall值有所不同,这与每种葡萄叶片的特征类型有一定关系,但模型的总体识别分类性能较好。表2中的Precision值均在0.972 0~0.991 5之间,Precision的平均值为0.980 0;Recall值均在0.9713~0.988 7之间,平均为0.980 1,1值均在0.972 1~0.988 7之间,平均为0.980 1,最终模型的平均准确率为98.02%。表明所提方法在建立的数据集中表现良好,通过迁移学习将预训练的参数转移到新的模型并对模型进行微调后可以获得性能优秀的检测模型。
3.4 与其他模型性能的对比
为进一步验证所建立模型检测葡萄病害的效果,在相同试验条件下对比了AlexNet、ResNet 50、Inception v3和未改进VGG 16 Net这5种CNN模型的检测效果,试验过程同样采用迁移学习的方法,参数与本文所提的方法设置一致。试验结果如表3所示,模型的结构和参数对模型的性能影响较大。
表2 模型检测过程参数统计与结果分析
在5种CNN模型中,参数量最大、占用空间最多的是VGG16网络,其耗时也最长,平均准确率为95.20%;AlexNet结构较为简单,虽然平均测试耗时最少,但识别准确率较低,为91.33%;Inception v3卷积网络结构可以取得平均测试耗时和准确率上的平衡,权重所占空间较小。本研究以VGG16为基础框架建立的改进CNN模型平均准确率最高,为98.02%,平均检测耗时为0.327 s,综合性能指标有一定优势。在未改进VGG16 Net模型中,参数的数量有1.38×108多个,其中3个全连接层的权重参数数量多达1.23×108个,由于改进后的CNN采用全局平均池化层代替了参数量巨大的2个全连接层,模型权重参数的数量由原来的1.38×108减少到2.29×107,减少了83.4%,权重所占空间大大减少。与原VGG16 Net相比,本文改进的VGG16模型平均准确率提高了2.82%,平均测试耗时降低了66.8%,性能有明显提升。
表3 卷积神经网络模型性质及检测结果
3.5 手机端病害检测系统试验
为验证所提方法在实际应用中的效果,利用开发的手机端识别系统开展现场试验,系统工作流程和识别示例如图5所示。用户可以通过拍照或者获取本地图库两种方式获取目标图像,在拍照时需保证有完整的叶片在显示界面中,获取图像将被自动裁剪为224像素×224像素,点击识别按钮后系统调用识别模型并输出葡萄病害的类别和相应的可信度。在新疆大学南校区葡萄种植区开展自然环境中的叶部病害检测试验,选择在现场拍摄图像的方式获取图像。试验使用内置Android 9.0操作系统的智能手机,运行内存为6 GB,验证过程拍摄有效图像300张,其中判断正确的287张,检测有误的13张,平均准确率达95.67%,具体的试验结果如表4所示。在手机识别系统测试的平均耗时为0.357 s。识别有误的原因在于拍摄过程中存在抖动以及叶片上较多的杂质等干扰因素,因此实际测试结果准确率低于试验室环境下的准确率。与Prasad等[30]的研究相比,该识别系统不需要手工设计特征并上传至服务器;与刘洋等[31]基于MobileNet模型建立的诊断系统相比,在耗时上虽有增加,但平均准确率高出19%;本系统比余小东等[32]的病虫害检测系统的准确率高出5.17%。总体而言,基于改进VGG16模型的手机端病害检测系统开发过程简单,经过了大量数据的预训练并且采用复杂背景图像对模型微调训练,可以保持较高的准确率和实时性,具有一定的优势。后续将对识别系统进行优化,添加图像去模糊和背景抑制算法,降低图像噪声对系统的干扰,进一步提高在自然环境中应用的性能。
表4 基于手机端葡萄叶部病害检测系统的测试结果
4 结 论
本研究利用大型公开数据集对VGG16模型预训练并迁移学习,改进VGG16 Net结构后利用自然条件下的新数据微调训练模型,对葡萄健康叶片和5种病害叶片图像检测与分类,讨论了训练机制、学习率、中心损失函数等对模型性能的影响,并与其他模型进行对比,最后将最优模型部署在Android手机端试验,得到如下结论:
1)迁移学习和微调训练方法,能够在短时间内得到性能优越的模型。对VGG16结构改进和优化训练后,病害检测平均准确率为98.02%,单幅图像平均检测耗时为0.327 s。与原VGG16 Net相比,平均准确率提高了2.82%,检测耗时降低了66.8%,权重参数数量减少了83.4%。
2)不同的训练机制和超参数对改进CNN微调训练结果表明,采用Adam优化器算法训练模型比SGD算法训练得到的模型更稳定、准确率更高;在迁移学习方式下,网络的前端各层参数均已获得良好的训练,初始学习率设为0.001时效果优于初始学习率为0.01时得到模型;中心损失函数在一定范围内可提高模型的性能,本文中心损失函数平衡参数取0.12时模型效果更优。
3)识别模型的对比试验结果表明,全局平均池化层代替全连接层后模型参数数量和检测耗时大大降低,适合部署在移动端建立葡萄病害检测系统。手机检测系统在自然环境中的试验平均准确率高达95.67%,证明了本研究模型跨平台调用的可行性。
本文所提方法建立了准确率高、泛化性强的葡萄叶部病害检测模型并部署在手机端,开发成本低、检测速度快、智能化水平高。在今后的研究中,将针对葡萄病害扩大其种类,并在图像数据集中增加葡萄藤蔓、果实等非叶部的病害图像,进一步优化训练模型,为将病害检测系统在更大范围的病害检测提供支持。
[1]栗苗苗. 葡萄种植产业现状与发展对策探讨[J]. 农业与技术,2020,40(11):110-111. Li Miaomiao. Discussion on current situation and development countermeasures of grape planting industry [J]. Agriculture and technology, 2020, 40(11): 110-111. (in Chinese with English abstract)
[2]Jensen H G, Jacobsen, L B, Pedersen S M, et al. Socioeconomic impact of widespread adoption of precision farming and controlled traffic systems in Denmark[J]. Precision Agriculture, 2012, 13(6): 661-677.
[3]Boulent J, Foucher S, Jérme Théau, et al. Convolutional neural networks for the automatic identification of plant diseases[J]. Frontiers in Plant Science, 2019, 10: 941.
[4]岑海燕,朱月明,孙大伟,等. 深度学习在植物表型研究中的应用现状与展望[J]. 农业工程学报,2020,36(9):1-16. Cen Haiyan, Zhu Yueming, Sun Dawei, et al. Current status and future perspective of the application of deep learning in plant phenotype research[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2020, 36(9): 1-16. (in Chinese with English abstract)
[5]张芳,王璐,付立思,等. 基于支持向量机的黄瓜叶部病害的识别研究[J]. 沈阳农业大学学报,2014,45(4):457-462. Zhang Fang, Wang Lu, Fu Lisi, et al. Identification of cucumber leaf diseases based on support vector machine[J]. Journal of Shenyang Agricultural University, 2014, 45(4): 457-462. (in Chinese with English abstract)
[6]田杰,韩冬,胡秋霞,等. 基于PCA和高斯混合模型的小麦病害彩色图像分割[J]. 农业机械学报,2014,45(7):267-271. Tian Jie, Han Dong, Hu Qiuxia, et al. Segmentation of wheat rust lesion image using PCA and Gaussian mix model[J]. Transactions of the Chinese Society for Agricultural Machinery, 2014, 45(7): 267-271. (in Chinese with English abstract)
[7]Singh V, Misra A K. Detection of plant leaf diseases using image segmentation and soft computing techniques[J]. Information Processing in Agriculture, 2016, 4(1): 41-49.
[8]Hinton G E, Osindero S, Teh Y W. A fast learning algorithm for deep belief nets[J]. Neural Computation, 2006, 18(7): 1527-1554.
[9]林景栋,吴欣怡,柴毅,等. 卷积神经网络结构优化综述[J]. 自动化学报,2020,46(1):24−37. Lin Jingdong, Wu Xinyi, Chai Yi, et al. Structure optimization of convolutional neural networks: A survey[J]. Acta Automatica Sinica, 2020, 46(1): 24-37. (in Chinese with English abstract)
[10]刘颖,刘红燕,范九伦,等. 基于深度学习的小目标检测研究与应用综述[J],电子学报,2020,48(3):590-601. Liu Ying, Liu Hongyan, Fan Jiulun, et al. Research and application of small target detection based on deep learning[J]. Acta Electronica Sinica, 2020, 48(3): 590-601. (in Chinese with English abstract)
[11]孙红,李松,李民赞,等. 农业信息成像感知与深度学习应用研究进展[J]. 农业机械学报,2020,51(5):1-17. Sun Hong, Li Song, Li Minzan, et al. Research progress of image sensing and deep learning in agriculture[J]. Transactions of the Chinese Society for Agricultural Machinery, 2020, 51(5): 1-17. (in Chinese with English abstract)
[12]傅隆生,宋珍珍,Zhang Xin,等. 深度学习方法在农业信息中的研究进展与应用现状[J]. 中国农业大学学报,2020,25(2):105-120. Fu Longsheng, Song Zhenzhen, Zhang Xin, et al. Applications and research progress of deep learning in agriculture[J]. Journal of China Agricultural University, 2020, 25(2): 105-120. (in Chinese with English abstract)
[13]Mohanty S P, Hughes D P, Salathé M. Using deep learning for image-based plant disease detection[J]. Frontiers in Plant Science, 2016, 7: 1-10.
[14]孙俊,谭文军,毛罕平,等. 基于改进卷积神经网络的多种植物叶片病害识别[J]. 农业工程学报,2017,33(19):209-215. Sun Jun, Tan Wenjun, Mao Hanping, et al. Recognition of multiple plant leaf diseases based on improved convolutional neural network[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2017, 33(19): 209-215. (in Chinese with English abstract)
[15]任守纲,贾馥玮,顾兴健,等. 反卷积引导的番茄叶部病害识别及病斑分割模型[J]. 农业工程学报,2020,36(12):186-195. Ren Shougang, Jia Fuwei, Gu Xingjian, et al. Recognition and segmentation model of tomato leaf diseases based on deconvolution-guiding[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2020, 36(12): 186-195. (in Chinese with English abstract)
[16]Brahimi M, Boukhalfa K, Moussaoui A. Deep learning for tomato diseases: Classification and symptoms visualization[J]. Applied Artificial Intelligence, 2017, 31(4): 299-315.
[17]樊湘鹏,周建平,许燕,等. 基于改进卷积神经网络的复杂背景下玉米病害识别[J]. 农业机械学报,2021,52(3):210-217. Fan Xiangpeng, Zhou Jianping, Xu Yan, et al. Corn disease recognition under complicated background based on improved convolutional neural network[J]. Transactions of the Chinese Society for Agricultural Machinery, 2021, 52(3): 210-217. (in Chinese with English abstract)
[18]Ferentinos, Konstantinos P. Deep learning models for plant disease detection and diagnosis[J]. Computers and Electronics in Agriculture, 2018, 145: 311-318.
[19]鲍文霞,孙庆,胡根生,等. 基于多路卷积神经网络的大田小麦赤霉病图像识别[J]. 农业工程学报,2020,36(11):174-181. Bao Wenxia, Sun Qing, Hu Gensheng, et al. Image recognition of field wheat scab based on multi-way convolutional neural network[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2020, 36(11): 174-181. (in Chinese with English abstract)
[20]Kerkech M, Hafiane A, Canals R, et al. Deep learning approach with colorimetric spaces and vegetation indices for vine diseases detection in UAV images[J]. Computers and Electronics in Agriculture, 2018, 155(12): 237-243.
[21]刘阗宇,冯全,杨森. 基于卷积神经网络的葡萄叶片病害检测方法[J]. 东北农业大学学报,2018,49(3):73-83. Liu Tianyu, Feng Quan, Yang Sen. Detecting grape diseases based on Convolutional neural network[J]. Journal of Northeast Agricultural University, 2018, 49(3): 73-83. (in Chinese with English abstract)
[22]乔虹,冯全,张芮,等. 基于时序图像跟踪的葡萄叶片病害动态监测[J]. 农业工程学报,2018,34(17):167-175. Qiao Hong, Feng Quan, Zhang Rui, et al. Dynamic monitoring of grape leaf disease based on sequential images tracking[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(17): 167-175. (in Chinese with English abstract)
[23]何欣. 基于深度学习的葡萄叶片病害识别方法研究[D]. 杨凌:西北农林科技大学,2020.
He Xin. Research on Grape Leaf Disease Identification Method Based on Deep Learning[D]. Yangling: Northwest A&F University, 2020:27-36. (in Chinese with English abstract)
[24]Ji M M, Zhang L, Wu Q F. Automatic grape leaf diseases identification via UnitedModel based on multiple convolutional neural networks[J]. Information Processing in Agriculture, 2020, 7(3): 418-426.
[25]赵立新,侯发东,吕正超,等. 基于迁移学习的棉花叶部病虫害图像识别[J]. 农业工程学报,2020,36(7):184-191. Zhao Lixin, Hou Fadong, Lyu Zhengchao, et al. Image recognition of cotton leaf diseases and pests based on transfer learning[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2020, 36(7): 184-191. (in Chinese with English abstract)
[26]姜洪权,贺帅,高建民,等. 一种改进卷积神经网络模型的焊缝缺陷识别方法[J]. 机械工程学报,2020,56(8):235-242. Jiang Hongquan, He Shuai, Gao Jianmin, et al. An improved convolutional neural network for weld defect recognition[J]. Journal of Mechanical Engineering, 2020, 56(8): 235-242. (in Chinese with English abstract)
[27]Waheed A, Goyal M, Gupta D, et al. An optimized dense convolutional neural network model for disease recognition and classification in corn leaf[J]. Computers and Electronics in Agriculture, 2020, 175: 105456.
[28]龙满生,欧阳春娟,刘欢,等. 基于卷积神经网络与迁移学习的油茶病害图像识别[J]. 农业工程学报,2018,34(18):194-201. Long Mansheng, Ouyang Chunjuan, Liu Huan, et al. Image recognition of Camellia oleifera diseases based on convolutional neural network and transfer learning[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(18): 194-201. (in Chinese with English abstract)
[29]Kaya A, Keceli A S, Catal C, et al. Analysis of transfer learning for deep neural network based plant classification models[J]. Computers and Electronics in Agriculture, 2019, 158: 20-29.
[30]Prasad S, Peddoju S K, Ghosh D. Multi-resolution mobile vision system for plant leaf disease diagnosis[J]. Signal, Image and Video Processing, 2016, 10(2): 379-388
[31]刘洋,冯全,王书志. 基于轻量级CNN的植物病害识别方法及移动端应用[J]. 农业工程学报,2019,35(17):194-204. Liu Yang, Feng Quan, Wang Shuzhi. Plant disease identification method based on lightweight CNN and mobile application[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2019, 35(17): 194-204. (in Chinese with English abstract)
[32]余小东,杨孟辑,张海清,等. 基于迁移学习的农作物病虫害检测方法研究与应用[J]. 农业机械学报,2020,51(10):252-258. Yu Xiaodong, Yang Mengji, Zhang Haiqing, et al. Research and application of crop diseases detection method based on transfer learning[J]. Transactions of the Chinese Society for Agricultural Machinery, 2020, 51(10): 252-258. (in Chinese with English abstract)
Detection system for grape leaf diseases based on transfer learning and updated CNN
Fan Xiangpeng1,2,3, Xu Yan1,2,3, Zhou Jianping1,2,3※, Li Zhilei1,2,4, Peng Xuan2,4, Wang Xiaorong1,2,4
(1.,,830047,;2.,830047,;3.,830047,;4.,,830047,)
Leaf diseases have a severe threat to the quality and yield of grapes. However, there is often difficulty in the disease detection and low application rate of convolutional neural network (CNN) in a complicated field environment. In this study, an accurate and intelligent detection system was established to realize the strong robustness and real-time performance for grape leaf diseases using transfer learning and an updated CNN model. Firstly, 1990 images were captured for the healthy leaves and five types of infected leaves from field conditions. The combined datasets of PlantVillage and AI Challenger were used to pre-train the VGG16 network for the fully trained parameters. Secondly, the batch normalization, global average pooling layer, and Center Loss function were utilized to modify the structure of the pre-trained VGG16 network, where there was no change in the parameters of the thirteen front convolutional layers and pooling layers. The updated CNN was fine-tuned with the augmented images of grape leaves from field conditions. Stochastic gradient descent (SGD) and adaptive moment estimation (Adam) optimizers were adopted at the initial learning rates of 0.01 and 0.001 in the phase of fine-tuning for experimental comparison. Thirdly, different equilibrium parameters of Center Loss function were utilized in Softmax classification layer for optimal performance. The updated CNN model was also compared with the state-of-the-art models. Finally, the optimal CNN model was deployed in mobile phones to carry out in field condition. The experimental results showed that the updated model using Adam optimizer behaved with a higher accuracy and more stable performance than those using the SGD in the fine-tuning training phase. There were a higher accuracy, a lower loss value, and smaller vibration in the trained model with a small initial learning rate of 0.001 than those with a larger initial learning rate of 0.01, indicating that a smaller learning rate was more reasonable for fine-tuning training. In addition, the accuracy of the model was improved by the equilibrium parameter with a certain range in a Center Loss function. When the equilibrium parameter was set as 0.12, optimal performance of the updated CNN model was achieved at the initial learning rate of 0.001, where the average classification precision was 0.980 0, the recall was 0.980 1, the1 score was 0.980 1, the average accuracy was 98.02%, and the testing time per image was 0.327 s. The accuracy of updated CNN increased by 2.82%, while the detection time was reduced by 66.8%, and the number of parameters decreased by 83.4%, compared with the original VGG16 network. The comprehensive performance of the updated VGG16 model was also better than that of AlexNet, ResNet50, and Inception v3 models, indicating obvious advantages in the accuracy, weight space occupation, and testing time for the detection of grape leaf diseases. It infers that the Batch normalization layer can speed up the learning process, whereas, the Global average pooling layer without fully connected layers can greatly reduce the number of weight parameters of the model. Center Loss function improved the ability of fine classification. After deployed into smart phone platform, the detection system maintained an accuracy of 95.67% and detection time of 0.357 s per image for the portable and intelligent diagnostics of grape leaf diseases. The transfer learning provided the possibility of quickly acquiring high-performance model under the condition of small datasets. The finding can provide precise guide for the prevention and control of grape diseases in fields.
image recognition; diseases; grape leaf; transfer learning; convolutional neural network; global average pooling; mobile phone recognition system; intelligent diagnosis
樊湘鹏,许燕,周建平,等. 基于迁移学习和改进CNN的葡萄叶部病害检测系统[J]. 农业工程学报,2021,37(6):151-159.doi:10.11975/j.issn.1002-6819.2021.06.019 http://www.tcsae.org
Fan Xiangpeng, Xu Yan, Zhou Jianping, et al. Detection system for grape leaf diseases based on transfer learning and updated CNN[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2021, 37(6): 151-159. (in Chinese with English abstract) doi:10.11975/j.issn.1002-6819.2021.06.019 http://www.tcsae.org
2020-10-16
2021-03-02
国家自然科学基金项目(51765063);新疆维吾尔自治区天山雪松科技创新领军人才计划项目(2018xs01);新疆维吾尔自治区研究生科研创新项目(XJ2019G033)
樊湘鹏,研究方向为机电控制与机器人、农业机械化与信息化。Email:15099324673@163.com
周建平,教授,博士生导师,研究方向为机电一体化、农业机械化与信息化、特种加工技术。Email:linkzhou@163.com
10.11975/j.issn.1002-6819.2021.06.019
TP2;S24
A
1002-6819(2021)-06-0151-9