查询字段 检索词
  华南农业大学学报  2020, Vol. 41 Issue (6): 82-91  DOI: 10.7671/j.issn.1001-411X.202008022

引用本文  

樊湘鹏, 周建平, 许燕. 基于改进区域卷积神经网络的田间玉米叶部病害识别[J]. 华南农业大学学报, 2020, 41(6): 82-91.
FAN Xiangpeng, ZHOU Jianping, XU Yan. Recognition of field maize leaf diseases based on improved regional convolutional neural network[J]. Journal of South China Agricultural University, 2020, 41(6): 82-91.

基金项目

新疆维吾尔自治区研究生科研创新项目(XJ2019G033);国家级大学生创新创业训练计划(201810755079S);新疆维吾尔自治区天山雪松科技创新领军人才计划(2018xs01)

通信作者

周建平(1973—),男,教授,博士,E-mail: linkzhou@163.com

作者简介

樊湘鹏(1993—),男,博士研究生,E-mail: 15099324673@163.com

文章历史

收稿日期:2020-08-12
网络首发时间:2020-10-19 09:07:21
基于改进区域卷积神经网络的田间玉米叶部病害识别
樊湘鹏1, 周建平1,2, 许燕1    
1. 新疆大学 机械工程学院/新疆维吾尔自治区农牧机器人及智能装备工程研究中心,新疆 乌鲁木齐 830047;
2. 机械制造系统工程国家重点实验室新疆大学分室,新疆 乌鲁木齐 830047
摘要:【目的】 引入区域卷积神经网络Faster R-CNN算法并对其改进,以实现在田间真实环境下背景复杂且具有相似病斑特征的玉米病害的智能诊断。【方法】 在玉米田间和公开数据集网站获取具有复杂背景的9种常见病害图像1 150幅,人工标注后对原始图像进行离线数据增强扩充;对Faster R-CNN算法进行适应性改进,在卷积层加入批标准化处理层,引入中心代价函数构建混合代价函数,提高相似病斑的识别精度;采用随机梯度下降算法优化训练模型,分别选取4种预训练的卷积结构作为Faster R-CNN的特征提取网络进行训练,并测试得到最优特征提取网络,利用训练好的模型选取不同天气条件下的测试集进行对比,并将改进Faster R-CNN与未改进的Faster R-CNN和SSD算法进行对比试验。【结果】 在改进Faster R-CNN病害识别框架中,以VGG16卷积层结构作为特征提取网络具有更出色的性能,利用测试集图像检验模型,识别结果的平均精度为 0.971 8,平均召回率为0.971 9,F1为0.971 8,总体平均准确率可达97.23%;晴天的图像识别效果优于阴天的。改进Faster R-CNN算法与未改进的Faster R-CNN算法相比,平均精度高0.088 6,单张图像检测耗时减少0.139 s;与SSD算法相比,平均精度高0.0425,单张图像检测耗时减少0.018 s,表明在大田环境中具有复杂背景的玉米病害智能检测领域,改进Faster R-CNN算法综合性能优于未改进的Faster R-CNN算法和SSD算法。【结论】 将改进后的Faster R-CNN算法引入田间复杂条件下的玉米病害智能诊断是可行的,具有较高的准确率和较快的检测速度,能够避免传统人工识别的主观性,该方法为田间玉米病害的及时精准防控提供了依据。
关键词玉米病害    复杂背景    数据增强    区域卷积神经网络    批归一化    混合损失函数    
Recognition of field maize leaf diseases based on improved regional convolutional neural network
FAN Xiangpeng1, ZHOU Jianping1,2, XU Yan1    
1. School of Mechanical Engineering, Xinjiang University / Xinjiang Agriculture and Animal Husbandry Robot and Intelligent Equipment Engineering Research Center, Urumqi 830047, China;
2. State Key Laboratory of Mechanical Manufacturing System Engineering Xinjiang University Branch, Urumqi 830047, China
Abstract: 【Objective】 To realize intelligent diagnosis of maize leaf diseases with similar spots and complicated background in real field conditions by introducing and improving a regional convolutional neural network algorithm, Faster R-CNN.【Method】 We obtained 1 150 maize leaf images with complicated background for nine kinds of common diseases from maize field and public dataset websites. After manual annotation of the original images, offline data augmentation was used to enlarge the image data. The Faster R-CNN algorithm was introduced and improved for adaptive application by adding batch normalization processing layer and introducing center cost function to improve the identification accuracy of similar disease spots. We used the stochastic gradient descent algorithm to train and optimize this model. Four pre-trained convolution structures for feature extraction were selected and compared in Faster R-CNN training and testing to get the most optimal model. During the test, the trained model was used to select test sets under different weather conditions for comparison, and improved Faster R-CNN was also compared with unimproved Faster R-CNN and SSD algorithm.【Result】 In the framework of improved Faster R-CNN, VGG16 convolutional feature extraction network had better performance than others. The testing image data set was used to verify the model performance, and the average precision of final recognition result was 0.971 8, the average recall rate was 0.971 9, F1 was 0.971 8, and the overall average accuracy reached 97.23%. The recognition effect under sunny conditions was better than that of cloudy conditions. The average precision of improved Faster R-CNN increased by 0.088 6 and the detection time per image decreased by 0.139 s compared with unimproved Faster R-CNN algorithm. The average precision of proposed method was 0.0425 higher than that of SSD algorithm, and the detection time per image decreased by 0.018 s. The results indicated that the improved Faster R-CNN algorithm was superior to unimproved Faster R-CNN and SSD algorithm in the field of intelligent detection of maize diseases under complex field conditions. 【Conclusion】 It is feasible to introduce improved Faster R-CNN algorithm into the intelligent diagnosis of maize diseases under complex field conditions, and it has higher accuracy and faster detection speed, which can avoid the subjectivity of traditional artificial identification. The proposed method lays a foundation for precise prevention and control of maize disease in field environment.
Key words: maize disease    complicated background    data augmentation    regional convolutional neural network    batch normalization    mixed loss function    

玉米是中国重要的粮食作物,健康的玉米产业对于保障我国的粮食安全、农民增收和国民经济的增长具有重要作用[1-2]。随着气候环境的变化,病虫害胁迫对玉米等农作物造成了不可逆转的损失[3],由各类病菌引起的玉米叶部病害,大大限制了玉米叶部的光合作用和对营养成分的运输,严重影响玉米的产量和品质。只有对症喷洒农药才能控制病害的蔓延并将损失降到最低。及时发现并准确地判断病害类型,选用合适的农药进行精准施治对于病害防治具有十分重要的意义。传统依靠植物病理学专家现场辨识病害类型的方法,费时费力、效率低下且容易出现主观错误,尤其在大田环境中的检测,大大增加了劳动成本。近年来,结合图像处理技术的机器视觉自动识别作物叶片等器官部位病斑类型正在不断克服人工识别易误判、依赖专家经验、耗费人力物力等缺点[4-6]。这些研究的思路往往是根据图像的颜色、纹理和空间结构进行分析[7-8],采用边缘检测、阈值处理、区域生长和决策树分类以及聚类分割等方法[9-11],无论是利用Canny算子从图像边缘提取,还是利用HIS分量分解颜色空间,所设置的阈值并不能满足自然条件下获取的所有复杂背景图像,且最终达到的识别精度有限,存在适应性差、抗干扰能力弱等问题,导致实际推广应用严重受限[12]

随着深度学习技术在目标检测和图像处理领域的深入研究,卷积神经网络(Convolutional neural network, CNN)在图像识别和分类中的应用日益广泛[13-14]。在植物病虫害识别研究中,CNN 被证明比传统机器学习方法具有更好的性能[15-16]。Brahimi等[15]利用1.5万张番茄病害图像,基于AlexNet模型,对数据集中的9种病害进行分类识别,得到较好的识别效果。孙俊等[17]利用改进的CNN识别PlantVillage数据集中的病害图像,降低了模型参量并提高了模型识别准确率。龙满生等[18]将迁移学习应用在卷积网络训练过程中,构建了基于TensorFlow的AlexNet模型,并对油茶的藻斑病、黄化病、煤污病和软腐病进行分类,达到了96.53%的准确率。Kerkech等[19]建立的CNN LeNet-5模型对无人机获取的葡萄树RGB图像检测藤蔓病害,达到了92%的准确率。戴泽翰等[20]利用深度CNN对柑橘黄龙病开展多分类器的识别研究,达到了93.7%的识别准确率。李淼等[21]利用知识迁移和深度学习的方法识别实验室条件下的黄瓜和水稻病害,微调后的模型准确率最高可达98.33%。杨森等[22]利用CNN结合特征聚类构建的特征降维方法,对马铃薯叶部病害进行识别,得到了鲁棒性较高的病害识别模型。Too等[23]基于Keras框架构建了深度CNN模型识别玉米病害,对Plantvillage公共数据集中的病害图像进行研究,在简单背景图像检测中得到了99.75%的准确率。鲍文霞等[24]将深度语义分割方法用于小麦赤霉病害图像的麦穗分割,构建了多路CNN,对单一赤霉病的识别准确率可达100%,但分割麦穗的过程增加了工作量。任守纲等[25]针对病害识别过程中特征提取存在盲目性的缺点构建了反卷积引导的VGGNet模型,对公开数据集中的番茄叶部病害图像识别精度可达99.19%。宋余庆等[26]提出了多层次增强高效空间金字塔卷积深度学习模型,空洞卷积能够提取图像高层语义特征并融合多层特征信息进行分类,提高了CNN对61种作物病虫害的分类准确率。

前人借助深度学习和CNN识别病害类型的方法研究大多是在实验室或受控条件下进行,在田间获取的图像集样本量较少,影响模型的泛化性;在利用大型公开的数据集作为研究对象时,数据集中的图像背景过于简单且数据代表性严重不足。在面对实际应用时,由于数据集的代表性不足使得模型在复杂的背景中提取病害区域特征能力下降,导致检测作物病害时大大降低了识别精度和速度;为提高模型精度,多数研究者通常利用卷积层数较深的深度学习网络结构来提取目标的特征,加大了计算量和对硬件平台的依赖,导致识别过程中耗时较长,严重限制了在大田环境中实际应用的效果。本研究以玉米的9种常见病害图像为研究对象,针对其光照变化大、叶片遮挡和背景复杂的特点,将区域CNN算法Faster R-CNN引入大田环境中具有复杂背景的玉米病害识别分类研究中,根据病害图像的特点和实时性的需求,加入批标准化处理提高模型收敛速度,引入中间代价函数构建混合代价函数提高相似病斑的识别准确率等方式改进Faster R-CNN,采用多种不同特征提取网络训练优化网络,得到精度较高、鲁棒性好的识别模型,以期为后期精准施药和防控作业提供依据。

1 材料与方法 1.1 数据集的获取

试验所需数据集来源于数据集网站和田间采集2个部分。数据集网站包括中国科学数据网( http://www.csdata.org/)和Digipathos网站,在数据集网站精心挑选由真菌引起的9种常见玉米病害图像150幅;另一部分在乌鲁木齐西山农场玉米地拍摄获取,利用尼康D750作为采集设备,分别在晴天、阴天天气条件下,在早、中、晚的不同时间段多角度拍摄含有不同病害的光学图像,拍摄时的背景为田间复杂背景,并能反映玉米在田间生长的众多复杂情况,以保证采集到的图像有更大的代表性。最终采集到的图像1 000幅,像素大小为3 600×2 700,其中晴天条件下光照均匀的样本458张,光照不均匀的样本263幅,阴天条件下的样本279幅。通过田间采集和数据集网站最终获得的9种病害图像数量为1 150,所选9种病害的类别和相应的病原名称[27]表1

表 1 9种病害的图像样本情况 Table 1 Profile of sample images for nine types of diseases
1.2 数据集预处理

对于复杂的田间背景图像,CNN往往需要大量的训练样本才能有效提取图像特征并分类。为了有效提升数据质量、增加数据特征多样性和数据库的大小并降低由于复杂背景导致卷积网络对计算机硬件的依赖性,对收集到的病害图像集进行预处理操作,包括数据标注和数据增强与扩充2个步骤。CNN需要进行有监督的训练,图像本身没有标签和语义,必须进行标注才能用于训练,请专业技术人员比对确认后,按照PASCAL VOC2007标准[28],利用Labelme标注工具标注健康和病斑区域的病害类型,之后将其存储。通过对样本进行扩增可有效减少训练阶段的过拟合,从而提升网络的泛化性能。本文采用多角度翻转、亮度调整、饱和度调整和添加高斯噪声等操作,将相应的数据集扩充到原来的8倍,变换后的图像统一调整为512×512×3(高度×宽度×颜色通道),原图和数据增强后得到的图像效果如图1所示。样本预处理前后的数量和标签标注情况见表1

图 1 原图像和数据增强后的图像 Fig. 1 Original image and data augmented images
1.3 改进区域卷积神经网络病害检测模型 1.3.1 Faster R-CNN结构及特点

CNN可以通过训练习得图像的深层次特征并实现端到端的图像检测,Faster R-CNN算法是区域CNN的经典模型之一。Ren等[28]于2015年提出的经典two-stage目标检测与分类算法Faster R-CNN,其特点在于利用共享卷积层将区域建议网络(Region proposal network,RPN)与Fast R-CNN组合成1个网络,提高了候选框生成速度和检测效率。Faster R-CNN的基本网络结构包括共享卷积层单元、区域生成网络(Region proposal network,RPN)、ROI pooling单元和Softmax分类与回归单元。Faster R-CNN在目标检测过程中,Fast R-CNN和RPN共享卷积层单元的权值参数。输入图像在卷积层单元经过卷积、激活与池化组合操作后提取特征图,RPN的滑动窗口在Feature-map上产生目标候选框(Anchor boxes)并提取感兴趣区域( Region of interest,ROI),Fast R-CNN中的ROI 池化层单元将候选区域分成m×n块小区域并对每块进行最大池化(Max pooling)操作生成特征向量,分类与回归单元使用Softmax可以计算出特征图中锚框的建议区域的类别概率,并输出概率向量,据此来确定锚框是属于前景或者背景,最后使用边界框回归来纠正锚框以获得准确的建议判断候选区的类别,同时获得检测框的最终准确位置。

1.3.2 Faster R-CNN算法的改进

对玉米叶部病害类别准确识别,既要考虑不同病害的粗粒度特征,又要考虑它们之间的细粒度特征,综合提取多种有效特征是表征病害类型的关键。Faster R-CNN在用于目标检测与分类过程中,虽然检测达到了较高的准确率,但是直接将Faster R-CNN用于田间作物病害检测细粒度图像分类时效果不佳,原因在于:首先,Faster R-CNN速度不能满足实时的要求;再者,在田间获取生长特性各异的玉米病害图像中,不同的病害之间具有病斑症状的相似性,而同类型的病害在不同阶段特征差异相对较大,导致部分玉米病斑类型无法被准确识别,从而影响模型精度。本文从以上2个方面进行改进,为加快网络收敛速度,提高模型泛化能力,在卷积层引入批标准化处理(Batch normalization,BN)、利用混合代价函数计算整体损失值提高精度等方法来改善模型的性能。

批标准化处理:为提高网络收敛速度、避免梯度爆炸现象的发生,缓解过拟合现象,在卷积层单元每层输入前加入批标准化处理操作,实现输入数据均值为0、方差为1的标准正态分布,以加快网络收敛速度,提高网络泛化能力。对1个样本的归一化计算通过图像中像素点总数计算均值μσ方差,如式(1)和(2)所示:

$ \mu =\frac{1}{n}{\sum\limits_{i=1}^{n}{x}_{i}},$ (1)
$ \sigma =\frac{1}{n}{\sum\limits_{i=1}^{n}{({x}_{i}-\mu )}^{2}},$ (2)

式中,xi为该图像样本中第i个像素点的值;n为该样本像素点的总数。归一化方程为式(3):

$ x=\frac{{x}_{i}-\mu }{\sqrt{{\sigma }^{2}+\varepsilon }},$ (3)

式中,x为该样本第i个像素归一化后的像素值;ε为大于0的微小常数值,以保证式中分母大于0。

构建混合代价函数(C-S函数):在玉米病害图像中,由于生长特性各异,不同的病害之间具有病斑症状的相似性,尤其是炭疽病和大斑病、热带锈病和南方锈病之间病斑特征类间差异不大,在病害的不同阶段,病害的类内特征差异相对较大,这种现象导致一些不规则生长的玉米病害影像无法被准确识别,影响模型精度。为解决这一问题,实现特征类内差距最小化、类间差距最大化分离,本文将中心代价函数(Center loss,LC)引入模型与Softmax loss函数(LS)联合构建混合损失函数对网络进行训练,增大类间特征差异,加强类内特征内聚,使网络具备提取高区分度病斑特征的能力。LC函数表达式如式(4)所示:

$ {L}_{\rm C}=\frac{1}{2}{\sum\limits_{i=1}^{N}{\Vert f({x}_{i})-{c}_{yi}\Vert }_{2}^{2}},$ (4)

式中,N为训练中的小批量数量,f(xi)为RPN生成的第yi类第i个感兴趣区域的特征即全连接层之前的特征,cyi为第yi类特征的中心。对CNN进行训练的过程是1个损失函数最优化的过程,通过LC函数(4)可知,在训练过程中,LC的值逐渐变小,即特征f(xi)逐渐接近第yi类特征的中心,随着迭代训练的增加,每一类特征的分布情况将向其对应的特征中心聚集,从而实现类内特征的内聚性和类间差异的最大化。此时,混合代价函数(简称C-S函数)表达式为

$ L={L}_{\rm S}+\lambda {L}_{\rm C},$ (5)

由于LC远大于LS,因此引入参数λ来平衡2个函数值,参数λLC的权重。较小的值会使得中心损失项对网络几乎没有什么影响,而较大的值会导致网络出现不收敛的情况。本文经过多次反复试验得到经验值为0.02,其中Softmax loss和 Center loss构建的混合代价函数在网络中的训练方式如图2所示。

图 2 混合代价函数训练方式 Fig. 2 Hybrid loss function training method

在网络每次迭代过程中,公式(4)中的cyi更新依据为每个小批量里某一类别中所有个体的特征向量平均值,此时f(xi)的梯度及特征中心cyi的更新方式如式(6)~(8)所示:

$ \frac{\partial {L}_{{\rm{C}}}}{\partial {x}_{i}}={x}_{i}-{c}_{yi},$ (6)
$ {c}_{j}^{p+1}={c}_{j}^{p}-\alpha \Delta {c}_{j}^{t},$ (7)
$ \Delta {c}_{i}=\frac{{{\displaystyle\sum }_{i=1}^{N}\delta ({y}_{i}=j)\cdot ({c}_{j}-{x}_{i})}}{1+{{\displaystyle\sum }_{i=1}^{N}\delta ({y}_{i}=j)}},$ (8)

式中,当δ(·)括号中条件成立时,此时δ(·)的值为1;反之,δ(·)的值为0;式(7)中参数p为更新迭代的次数,α为控制学习率参数,作用是防止小部分标记错误的样本产生的波动,取值范围为0~1。

1.4 试验环境

试验平台选择Windows7(64位)操作系统,其他软件环境为Anaconda 3.5.0,Python 3.6,CUDA 8.0,cuDNN 6.0,Windows7(64位)搭载Intel(R) Xeon(R) CPU E5-2630 v4 @2.20 GHz处理器,使用开源深度学习框架Tensorflow作为开发环境,计算机内存16 GB。

1.5 模型训练方法

为提升模型性能,减少过拟合,以本文预训练模型进行参数初始化设置,使用引入动量的随机梯度下降法(Stochastic gradient descent,SGD)并结合Dropout策略优化改善模型。学习率是SGD算法中的重要参数,过大可能会导致参数在最优值两侧波动,过小会大大拖慢优化速度,为保证参数以合适的速度达到最优值,利用指数衰减法设置学习率,即最初设置较大的学习率以较快的速度得到较优的值,当迭代次数增加时学习率逐渐变小,并在训练的后期趋于稳定达到收敛。学习率随迭代次数衰减的公式为:

$ r={r}_{_0} {\rho }^{\frac{I}{\theta }},$ (9)

式中,r为优化过程中的学习率;r0为初始设置的学习率,本文初始值设为0.01;I为迭代次数;θ为迭代过程中的衰减速度;ρ为衰减系数。指数衰减法在TensorFlow中的实现命令为“tf.train.exponential_decay”。在本试验中,ρ设置为0.96,迭代次数I最大值设为6 000,动量因子设置为0.9,Dropout设置为0.25,小批量大小设为256,直到迭代次数达到最大值后停止训练。数据集中训练集的比例为80%,剩余20%为测试集。训练结束后,利用测试集对模型效果进行验证,保留置信度大于0.85的病害识别目标,并且在测试集的图像数据中输出病害的识别与分类情况。

1.6 试验评价指标

为了评价所提方法对病害进行识别分类测试试验的结果,对样本进行测试后分别计算精度(Precision)和召回率(Recall),利用综合评价指标F1作为准确率和召回率的评估值。同时,引入计算简便的平均准确率(Average accuracy,AA)和单张图片检测耗时(t)作为评价指标,其中AA=分类正确的数量/测试总数量×100%,t=测试总耗时/测试图像数量。其他指标的计算方法如下所示:

$ \rm{Precision}=\frac{TP}{TP+FP},$ (10)
$ \rm{Recall}=\frac{TP}{TP+FN},$ (11)
$ F1=\frac{2\times {\rm{Precision}}\times {\rm{Recall}}}{{\rm{Precision}}+{\rm{Recall}}},$ (12)

式中,Precision为精度;Recall为召回率;TP为预测为正的正样本;FP为预测为正的负样本;FN为预测为负的正样本。

2 结果与分析 2.1 不同特征提取网络的识别性能

Faster R-CNN的共享卷积层单元采用不同结构和参数的特征提取网络,最终训练得到的模型性能不同。本文在Faster R-CNN对病害进行识别分类试验中,分别利用AlexNet、VGG16、ResNet50和ResNet101这4种预训练的卷积网络模型作为Faster R-CNN中卷积层单元的特征提取网络进行对比试验。表2描述了不同特征提取网络构建的Faster R-CNN模型训练后对测试集的识别准确率和耗时情况。由表2可知,AlexNet的单张图像检测耗时最短,为0.243 s,平均准确率为91.73%;VGG16的平均准确率最高(97.23%),单张图像检测耗时为0.278 s;ResNet50和ResNet101的平均准确率分别为88.97%和86.03%,单张图像检测耗时分别为0.437和0.572 s。基于检测速度和准确率的综合考量,本文后续试验中均以VGG16作为特征提取网络构建Faster R-CNN模型。

表 2 共享卷积层不同特征提取网络的在测试集上的性能 Table 2 Performance of different feature extraction networks in shared convolutional layer on testing dataset
2.2 识别结果与混淆矩阵

以大斑病和普通锈病为例,在图3中展现了利用改进Faster R-CNN算法在测试集中的识别结果,可以发现所提方法能够利用定位框对病斑进行准确定位,并输出识别概率。在有玉米茎秆、土壤等背景干扰下也可以对病斑进行准确识别定位(图3a),由图3可见,改进Faster R-CNN对具有复杂背景包括不同光照条件下、含有玉米茎秆、土壤、叶片重叠等情况下的图像识别可以做到较高的准确率(大部分病斑的识别概率高于0.9)。为了更清楚地展现基于改进Faster R-CNN方法的识别精度与分类结果,在测试集上模型分类结果基础上绘制得到的混淆矩阵(图4)。表3展示了所提方法分类效果的更多细节,结合病害识别结果的混淆矩阵分析,所提方法在对炭疽叶斑病、热带锈病、南方锈病、普通锈病、小斑病、叶斑病、条纹病、褐斑病、大斑病这9种不同病害类型识别时,每种病害类型的精度和召回率有所不同,这与每种病害的特征类型有一定关系,但每种病害类型的识别精度均保持在0.965~0.978,平均精度为0.9718;召回率均保持在0.954~0.983,平均召回率为0.9719,F1为0.959~0.979,模型的平均准确率为97.23%,这说明所提方法在建立的数据集中表现良好,可应用于实际田间环境中作物病害的检测。

图 3 大斑病和普通锈病识别结果示例 Fig. 3 Example of recognition results of northern leaf blight and common rust 图中数据为识别概率 Data in the figure are recognition probabilities

表 3 测试集混淆矩阵分析统计参数1) Table 3 Statistical parameters from the confusion matrix analysis of testing dataset

图 4 测试集分类结果的混淆矩阵分析 Fig. 4 Confusion matrix analysis of the classification results of testing dataset ANTH、TRT、SCR、CR、SLB、PHLS、DLS、PHRS、NLB分别代表炭疽叶斑病、热带锈病、南方锈病、普通锈病、小斑病、叶斑病、条纹病、褐斑病和大斑病;图中颜色较深的对角线的值分别代表每个类别正确分类的数量和召回率 ANTH, TRT, SCR, CR, SLB, PHLS, DLS, PHRS and NLB represent Anthracnose leaf blight, Tropical rust, Southern corn rust, Common rust, Southern leaf blight, Phaeosp haeria leaf spot, Diplodia leaf streak, Physoderma brown spot and Northern leaf blight respectively; The darker diagonal values in figures represent the number of correct classifications and the recall rate of each category, respectively
2.3 不同天气条件下测试集的识别效果

为研究在田间实际应用过程中不同天气条件对识别率的影响,对晴天和阴天条件下的玉米病害图像进行同等数量划分,晴天和阴天病害图像各600幅,其中在晴天条件中的光照均匀的图像有400幅,光照不均匀的图像有200幅。将以上图像分别采用之前训练好的模型,在2种天气条件下进行识别,晴天和阴天的单张图像检测耗时分别为0.209和0.297 s,识别的平均准确率分别为98.6%和94.7%。由此可以看出,在对阴天环境获取的图像样本进行测试识别时,识别时间更长且识别精度低,而对晴天条件下的样本测试识别时,由于光线较充足,病斑特征更容易识别且耗时更短。因此,为提高模型在实际应用中的效果,应在训练集中增加在阴天环境条件下的样本数量。

2.4 与其他分类算法的对比试验结果

为进一步验证本文所提改进Faster R-CNN算法的性能,将其与未改进的标准型Faster R-CNN和主流目标检测算法SSD相比较,同样采用16层的VGG特征提取网络,使用相同的数据集,训练方式均为随机梯度下降法(SGD),且3种方法的初始学习率均为0.01,dropout值为0.6,最大迭代次数为6000,得到3种分类检测算法的损失值随迭代次数的变化曲线图(图5)和精度随迭代次数的变化曲线图(图6),表4是3种方法得到的平均准确率和耗时情况。通过图5图6表4可知,3种方法损失值均随着迭代次数的增加递减,一开始的损失值下降最快,这是因为初始学习率设置较大的原因,随着迭代次数的增加,学习率逐渐变小,曲线变化趋于平缓直到收敛。SSD算法在试验过程中的损失值一开始高于Faster R-CNN方法的损失值,在迭代次数2400左右损失低于Faster R-CNN,精度为0.9293,单张图像检测耗时为0.296 s。改进后的Faster R-CNN在3者中的损失值最小,且最快达到收敛,所提算法最终达到的精度为0.9718,单张图像检测耗时为0.278 s。SSD算法的性能优于Faster R-CNN算法,但改进后的Faster R-CNN由于加入了批归一化处理层、引入中间代价函数构建了混合损失函数,因此速度和精确率有所提升。试验结果表明,不论是检测速度还是检测精度,改进后的Faster R-CNN算法都优于原有的Faster R-CNN算法和主流目标检测算法SSD,综合性能更优,可用于田间复杂背景下的玉米病害实时性检测。

表 4 不同分类检测算法检测结果的比较 Table 4 Comparison of the detection results for different classification and detection algorithms

图 5 不同分类检测算法的损失值随迭代次数的变化曲线 Fig. 5 The loss curves of different classification and detection algorithms varying with the iteration number

图 6 不同分类检测算法的精度随迭代次数的变化曲线 Fig. 6 The precision curves of different classification and detection algorithms varying with the iteration number
3 讨论与结论

在农作物病害自动识别领域,深度学习方法比传统机器视觉方法更具有优势,CNN模型无需手动提取图像特征就可以实现端到端的输入检测和分类输出。本研究为了实现田间实际环境中具有复杂背景的病害诊断,根据其病害图像的特点,将区域CNN模型Faster R-CNN引入玉米病害的智能识别与分类过程中,在卷积层单元每层输入前加入批标准化处理提高网络收敛速度、加入中心代价函数构建混合代价函数提高网络提取高区分度病斑特征的能力,建立了一种基于改进Faster R-CNN算法的田间玉米病害检测方法。

本研究比较了在Faster R-CNN架构下的VGG16、AlexNet、ResNet50和ResNet101这4种特征提取网络的综合性能。在4种不同特征提取网络下,利用SGD指数衰减法优化模型训练过程并进行测试,综合对比分析其识别性能和检测速度,不同的特征提取网络具有不同的结构和参数,其特征提取能力有所差异。AlexNet结构只有3个全连接层和5个卷积层且在第1层采用了11×11的大尺寸卷积核,当在底层设置大尺寸卷积核时仅对粗粒度特征响应敏感,而不趋向于响应细粒度特征;而VGG16中包含了13个卷积层和3个全连接层,其最大的特点是它采用了相对较小的卷积核尺寸(3×3)和最大池化尺寸(2×2),在保证感受野的同时能够提取出输入领域内更多非常细小的特征,可以拟合更加复杂的特征,因此具有较高的精度;ResNet50和ResNet101属于更深层次的共享卷积层网络,随着网络结构的增加,其深度和参数也不断增多,会占用更多的存储资源和计算单元,神经网络在反向传播过程中造成梯度衰减,导致权重调整失效、训练退化,模型的实时性和识别性能降低,因此在本研究中,VGG16特征提取网络更适合用于田间玉米病害检测的研究。以VGG16特征提取网络为基础构建的Faster R-CNN模型,训练后对具有复杂背景的9种病害图像识别的平均精度为 0.9718,平均召回率为0.9719,F1为0.9718,平均准确率达97.23%,单张图像检测耗时0.278 s。

改进的Faster R-CNN模型与原始的Faster R-CNN模型相比,单张图像检测耗时减少了0.139 s,这是因为Faster R-CNN加入了批归一化处理层后可以提高模型的数据处理速度,不论是在训练过程还是测试过程中,都可以节省大量的时间。在Faster R-CNN模型中引入了中间损失函数构建混合损失函数后使得模型对类内差距较大、类间差距较小的图像数据集有更强的识别分类性能,与未改进的Faster R-CNN模型相比平均精度提高了0.0886。将所提方法与主流目标检测算法SSD相比,精度高出0.0425,单张图像检测耗时降低0.018 s,改进后的Faster R-CNN模型采用区域建议网络RPN代替原来的比较费时的Selective search算法,通过将真实的边框位置相对于预设边框的偏移来构建训练病害图像样本,RPN生成的2 000多个框能够快速准确地找到玉米病害图像中的病斑感兴趣区域,大大提高了目标检测的精度和检测速度,本试验结果表明改进的Faster R-CNN模型比SSD更适于田间玉米病害这种粗粒度和细粒度特征兼具的目标检测,且能够满足实时性检测的需求。

通过对不同天气条件下获取的图像进行识别测试,晴天的图像识别准确率比阴天的高出3.9%,表明天气条件对模型的识别效果影响较大。在田间实际环境中,天气多变,因此为提高实际应用时模型的性能,应在训练过程中保证不同天气条件下的病害图像数量具有均衡性和代表性,在这种条件下训练出来的模型能够应对不同天气条件对病斑特征的影响,从而保证一定的泛化性和适用性。

本研究可为田间环境下的玉米病害智能监测提供方法和思路,为玉米病害的及时精准防控奠定基础。同时在本研究思路的基础上,也可为后续针对连续帧视频的大田范围内的病害巡视监测提供依据。尽管本文所提方法有较好的性能,但本次试验所用数据有限,数据集对CNN来说并不是一个特别大的数据量,因此在今后将扩大图像数据集,建立更具代表性、样本特征更丰富的玉米病害数据库。

参考文献
[1]
许景辉, 邵明烨, 王一琛, 等. 基于迁移学习的卷积神经网络玉米病害图像识别[J]. 农业机械学报, 2020, 51(2): 230-236. DOI:10.6041/j.issn.1000-1298.2020.02.025 (0)
[2]
李静, 陈桂芬, 安宇. 基于优化卷积神经网络的玉米螟虫害图像识别[J]. 华南农业大学学报, 2020, 41(3): 110-116. DOI:10.7671/j.issn.1001-411X.201907017 (0)
[3]
SINGH A K, GANAPATHYSUBRAMANIAN B, SARKAR S, et al. Deep learning for plant stress phenotyping: Trends and future perspectives[J]. Trends Plant Sci, 2018, 23(10): 883-898. DOI:10.1016/j.tplants.2018.07.004 (0)
[4]
张明, 王腾, 李鹏, 等. 基于区域亮度自适应校正算法的脐橙表面缺陷检测[J]. 中国农业科学, 2020, 53(12): 2360-2370. DOI:10.3864/j.issn.0578-1752.2020.12.005 (0)
[5]
张芳, 王璐, 付立思, 等. 基于支持向量机的黄瓜叶部病害的识别研究[J]. 沈阳农业大学学报, 2014, 45(4): 457-462. DOI:10.3969/j.issn.1000-1700.2014.04.014 (0)
[6]
张开兴, 吕高龙, 贾浩, 等. 基于图像处理和BP神经网络的玉米叶部病害识别[J]. 中国农机化学报, 2019, 40(8): 122-126. (0)
[7]
党满意, 孟庆魁, 谷芳, 等. 基于机器视觉的马铃薯晚疫病快速识别[J]. 农业工程学报, 2020, 36(2): 193-200. DOI:10.11975/j.issn.1002-6819.2020.02.023 (0)
[8]
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. (0)
[9]
赖君臣, 李少昆, 明博, 等. 作物病害机器视觉诊断研究进展[J]. 中国农业科学, 2009, 42(4): 1215-1221. DOI:10.3864/j.issn.0578-1752.2009.04.012 (0)
[10]
刘涛, 仲晓春, 孙成明, 等. 基于计算机视觉的水稻叶部病害识别研究[J]. 中国农业科学, 2014, 47(4): 664-674. DOI:10.3864/j.issn.0578-1752.2014.04.006 (0)
[11]
毛彦东, 宫鹤. 基于SVM和DS证据理论融合多特征的玉米病害识别研究[J]. 中国农机化学报, 2020, 41(4): 152-157. (0)
[12]
赵立新, 侯发东, 吕正超, 等. 基于迁移学习的棉花叶部病虫害图像识别[J]. 农业工程学报, 2020, 36(7): 184-191. DOI:10.11975/j.issn.1002-6819.2020.07.021 (0)
[13]
姜洪权, 贺帅, 高建民, 等. 一种改进卷积神经网络模型的焊缝缺陷识别方法[J]. 机械工程学报, 2020, 56(8): 235-242. (0)
[14]
董秋成, 吴爱国, 董娜, 等. 用于卷积神经网络图像预处理的目标中心化算法[J]. 中南大学学报(自然科学版), 2019, 50(3): 89-96. (0)
[15]
BRAHIMI M, BOUKHALFA K, MOUSSAOUI A. Deep learning for tomato diseases: Classification and symptoms visualization[J]. Appl Artif Intell, 2017, 31(4): 299-315. DOI:10.1080/08839514.2017.1315516 (0)
[16]
FERENTINOS K P. Deep learning models for plant disease detection and diagnosis[J]. Comput Electron Agr, 2018, 145: 311-318. DOI:10.1016/j.compag.2018.01.009 (0)
[17]
孙俊, 谭文军, 毛罕平, 等. 基于改进卷积神经网络的多种植物叶片病害识别[J]. 农业工程学报, 2017, 33(19): 209-215. DOI:10.11975/j.issn.1002-6819.2017.19.027 (0)
[18]
龙满生, 欧阳春娟, 刘欢, 等. 基于卷积神经网络与迁移学习的油茶病害图像识别[J]. 农业工程学报, 2018, 34(18): 194-201. DOI:10.11975/j.issn.1002-6819.2018.18.024 (0)
[19]
KERKECH M, HAFIANE A, CANALS R. Deep learning approach with colorimetric spaces and vegetation indices for vine diseases detection in UAV images[J]. Comput Electron Agr, 2018, 155(12): 237-243. (0)
[20]
戴泽翰, 郑正, 黄莉舒, 等. 基于深度卷积神经网络的柑橘黄龙病症状识别[J]. 华南农业大学学报, 2020, 41(4): 111-119. DOI:10.7671/j.issn.1001-411X.201909031 (0)
[21]
李淼, 王敬贤, 李华龙, 等. 基于 CNN 和迁移学习的农作物病害识别方法研究[J]. 智慧农业, 2019, 1(3): 46-55. (0)
[22]
杨森, 冯全, 张建华, 等. 基于深度学习与复合字典的马铃薯病害识别方法[J]. 农业机械学报, 2020, 51(7): 22-29. DOI:10.6041/j.issn.1000-1298.2020.07.003 (0)
[23]
TOO E C, LI Y J, NJUKI S, et al. A comparative study of fine-tuning deep learning models for plant disease identification[J]. Comput Electron Agr, 2019(161): 272-279. (0)
[24]
鲍文霞, 孙庆, 胡根生, 等. 基于多路卷积神经网络的大田小麦赤霉病图像识别[J]. 农业工程学报, 2020, 36(11): 174-181. DOI:10.11975/j.issn.1002-6819.2020.11.020 (0)
[25]
任守纲, 贾馥玮, 顾兴健, 等. 反卷积引导的番茄叶部病害识别及病斑分割模型[J]. 农业工程学报, 2020, 36(12): 186-195. DOI:10.11975/j.issn.1002-6819.2020.12.023 (0)
[26]
宋余庆, 谢熹, 刘哲, 等. 基于多层特征融合的农作物病虫害识别方法[DB/OL].[2020-06-09]. http://kns.cnki.net/kcms/detail/11.1964.S.20200515.1754.010.html. (0)
[27]
王晓鸣, 段灿星. 玉米病害和病原名称整理及其汉译名称规范化探讨[J]. 中国农业科学, 2020, 53(2): 288-316. DOI:10.3864/j.issn.0578-1752.2020.02.006 (0)
[28]
REN S, HE K M, GIRSHICK R, et al. Faster R- CNN: Towards real-time object detection with region proposal net-works[C]//NIPS. Proceedings of Advances in Neural Information Processing Systems. Montreal, Quebec, Canada: NIPS, 2015: 91-99. (0)