基于批归一化与AlexNet网络的水稻病害识别 下载: 606次
1 引言
水稻病害是影响水稻产量的最大因素之一,且水稻病害多种多样,靠以往的人工识别费时费力,因此实现对水稻病害的自动识别,是必要的,也是必然的[1]。目前常见的植物病害识别方法主要包括传统图像处理识别和卷积神经网络识别。
赵玉霞等[2]对玉米叶部病斑图像进行图像处理及特征提取后,使用贝叶斯分类器实现病害识别。谢泽奇等[3]对黄瓜病害进行Otsu图像分割并提取病斑特征,使用属性约简算法进行特征选择后,利用最近邻分类器进行病害识别。传统的植物病害识别大多依赖提取病斑图像的颜色特征、纹理特征及形状特征等[4-6],其过程繁琐且识别率不高,而卷积神经网络的图像识别则避免了这些复杂过程[7-9]。张善文等[10]提出一种改进的DCNNs模型,提高了病害的识别率, 大幅度缩短了模型的训练和识别时间。Sladojevic等[11]利用卷积神经网络实现了13种植物病害的识别, 该模型具备分辨植物叶片与其周围环境的能力, 最终模型的正确识别率为96.3%。杨晋丹等[12]将不同的网络深度和卷积核进行交叉组合,得到9种神经网络结构,实验表明对草莓叶部白粉病病害的识别准确率可达98.61%。
在水稻病害识别方面,吴露露等[13]采用色度学模型、边缘提取和形态学等方法对叶瘟病进行识别,最终识别率为90.26%。管泽鑫等[14]对3种水稻病害图像进行分割,然后通过逐步判别分析法筛选有效参数,最后使用贝叶斯判别法实现病害的分类识别,识别准确率最高为97.2%。刘成[15]采用传统图像处理和卷积神经网络分别对稻曲病进行识别,然后在此基础上基于神经网络对6种水稻病害进行识别,获得了较好的结果。虽然目前对水稻病害的研究已有较好的成果,但水稻病害种类繁多,而郭丹[16]、刘婷婷[17]、刘立波[18]、Sumam[19]等所研究的水稻病害种类较少,无法满足模型对多种病害识别的需求。为了改善该问题,本文选择了常见的8种水稻病害,为进一步研究卷积神经网络对这8种水稻病害的识别效果,采用LeNet-5和AlexNet经典网络进行实验,对比结果说明AlexNet网络的识别效果更佳。在AlexNet网络的基础上,添加批归一化层的模型(BN_model)优于采用模糊C均值聚类(FCM)图像处理后训练得到的网络模型(FCM_model)。BN_model减少了传统图像识别繁杂的过程,取得了较高的识别精度,为水稻病害的检测与诊断提供了有价值的参考。
2 材料与方法
2.1 数据样本
针对水稻干尖线虫病、白叶枯病、细菌性条斑病、胡麻斑病、叶黑粉病、赤枯病、稻瘟病、水稻纹枯病等8种水稻病害进行识别分类。为避免图像样本过少对卷积神经网络识别造成的影响,通过随机旋转、左右翻转,随机改变亮度、对比度、色度、饱和度等方法将图像样本扩充近15倍,各类病害的主要特征及扩充后各病害图像数量见
表 1. 病害特征及图像数量
Table 1. Disease characteristics and image quantity
|
本文实验采用的图像数据均为简单背景下的病害图像,各类病害病斑图像如
图 1. 水稻病害病斑图像。(a)叶黑粉病;(b)白叶枯病;(c)细菌性条斑病;(d)胡麻斑病;(e)干尖线虫病;(f)赤枯病;(g)稻瘟病;(h)水稻纹枯病
Fig. 1. Images of rice disease spot. (a)Leaf smut; (b)bacterial leaf blight; (c)bacterial leaf streak; (d)brown spot;(e)aphelenchoides bessyi; (f)red blight; (g)rice blast; (h)rice sheath blight
2.2 AlexNet网络
本文使用的卷积神经网络主要为AlexNet[20-21]。AlexNet网络由5层卷积层(Conv)、3层池化层(Pooling)、2层全连接层(Fc)、1层Softmax层组成。AlexNet网络输入层大小为227×227的三通道彩色图像,第1层卷积层的步长为4,padding为“valid”,后4层卷积层的步长均为1,padding为“same”。池化层不会改变特征图的深度,即池化层的输入与输出有相同的深度,它的步长均设为2。为使整个神经网络的模型不是线性的,每一层卷积层后都根据ReLU激活函数进行计算,最后的Softmax层输出为8,即识别类别为8种,其可看作8×1的概率矩阵。AlexNet整个网络结构参数见
2.3 LeNet-5网络
LeNet-5[22]是一个经典的卷积神经网络,其在手写体数字图像识别的问题上获得了较好的结果。LeNet-5网络的输入层图像大小为32×32,该网络共为6层,2层卷积层、两层池化层及两层全连接层。针对本文8种水稻病害彩色图像的识别,LeNet-5的网络参数如
表 2. LeNet-5网络结构参数
Table 2. Structure parameter of Lenet-5 network
|
2.4 批归一化
在网络训练过程中,由于每一层的参数不断地向前传播,不断地更新,所以各层的输入数据分布都在不断地发生改变,即其分布会逐渐发生偏移,而Ioffe等[23]针对该现象提出批归一化(BN)算法,通过BN算法可以使输入数据保持正态分布,加速收敛,缩短深度神经网络的训练时间。BN算法的主要步骤如下。
Step1:记批次样本数据的数量为m,输入数据集合
Step2:计算该批输入数据方差V,表达式为
Step3:使用求得的均值和归一化值对该批次数据作归一化处理,即
其中ε是为了避免除数为0使用的微小正数,一般接近于0。
Step4:添加网络训练,网络自我学习时获得的两个参数γ,β分别为尺度因子和平移因子矩阵,经计算后得到的输出数据记为
从(4)式中可以看出,该操作就是对归一化值进行缩放和平移,最终将归一化值调整为标准正态分布。
2.5 模糊C均值聚类(FCM)图像分割
模糊C均值聚类(FCM)算法[24-25]是一种经典的图像分割方法,它根据定义的类别数将图像进行聚类,且引入了隶属度概念来优化目标函数,使得类内的差别尽可能小,进而完成病斑图像的分割。为统一实验过程,FCM算法将每张病斑图像划分为3簇,再与原图像进行减法运算完成分割(见
图 3. FCM算法分割的病害图像。(a)叶黑粉病;(b)白叶枯病;(c)细菌性条斑病;(d)胡麻斑病;(e)干尖线虫病;(f)赤枯病;(g)稻瘟病;(h)水稻纹枯病
Fig. 3. Disease images segmented by FCM algorithm. (a)Leaf smut; (b)bacterial leaf blight; (c)bacterial leaf streak;(d)brown spot; (e)aphelenchoides bessyi; (f)red blight; (g)rice blast; (h)rice sheath blight
2.6 整体流程
将病害图像分别基于AlexNet与LeNet-5网络进行病害识别,结果可知AlexNet_model模型的识别结果优于LeNet_mode模型。为了提高AlexNet网络对简单背景下8种水稻病害的识别准确率,利用FCM图像分割及AlexNet网络添加批归一化等方法对图像进行识别,并对其实验结果进行分析及对比。本研究实验流程如
3 结果与分析
3.1 AlexNet对水稻病害图像的识别结果
本研究使用AlexNet进行水稻病害分类识别,将网络迭代次数(epochs)初始值选为200,网络优化器使用随机梯度下降(SGD)法,其初始学习率(learning_rate)设为0.01,学习衰减率设为0.01/200。为减小学习率对参数更新速度的影响,使学习率随训练次数增加逐渐衰减。实验结果发现,由初始参数训练得到的模型存在不稳定的现象,可能存在过拟合。对网络进行调参后,将随机下降梯度优化器的学习率调整为0.1,迭代次数缩减为150,学习衰减率相应改变,训练后得到模型AlexNet_model,其训练、测试的损失值精度与准确率随迭代次数的改变如
图 5. AlexNet_model训练与测试损失精度
Fig. 5. Loss precision value of training and test for AlexNet_model
从
3.2 LeNet-5对水稻病害图像的识别结果
在实验中,LeNet-5网络同样设置初始迭代次数为200,优化器为SGD,初始学习率和学习衰减率分别为0.01和0.01/200,该网络训练得到的模型为LeNet_model。从
图 7. LeNet_model训练与测试损失精度
Fig. 7. Loss precision value of training and test for LeNet _model
3.3 FCM图像分割对网络识别的影响
将经FCM算法分割后的图像输入AlexNet初始参数网络中进行分类训练,得到模型FCM_model,其训练结果与测试结果如
从
3.4 BN层对网络识别的影响
本文实验将BN层放于激活函数后,即每一层卷积层的输出数据经过ReLU激活函数激活,再经BN层计算,最后将输出数据作为下一层的输入数据。添加BN层后的网络流程如
经过训练后,得到模型BN_model,从
3.5 AlexNet_model、FCM_model、BN_model与LeNet_model的识别结果对比及模型分析
从
表 3. 模型最终结果对比表
Table 3. Comparison table of the final results of the models
|
识别准确率往往不能作为模型选择的唯一标准,还需对模型的一些评价性能指标进行分析。其中精准率表示分类正确的正样本个数占分类器判定为正样本的样本个数的比例,在表中可看到每种模型下每类病害的精准率。由
在BN_mode模型中,叶黑粉病、稻瘟病和水稻纹枯病的精准率均为1,可知该模型对这3种水稻病害的识别效果较好,在判定为这3种病害的水稻图像中没有出现错误,但单从精准率来看,该模型无法判定识别过程中是否将叶黑粉病、稻瘟病和水稻纹枯病这3种病害误判为其他病害。ROC曲线则可以较全面地观察模型对这8种病害的识别效果,它是反映敏感性和特异性连续变量的综合指标。不同模型的ROC曲线如
表 4. 各模型下每类病害识别的精准率
Table 4. Precision rate of disease recognition under each model
|
图 14. 不同模型的ROC曲线。(a)AlexNet_model;(b)LeNet_model;(c)FCM_model;(d)BN_model
Fig. 14. ROC of different models. (a)AlexNet_model; (b)LeNet_model; (c)FCM_model; (d)BN_model
从每类病害的AUC值来看,BN_model对其中7种病害识别得到的AUC值均为1,只有白叶枯病的AUC值为0.98,这说明BN_model模型对白叶枯病的识别效果较差。从模型整体ROC曲线来看,BN_model的识别结果最佳,AlexNet_model和FCM_model这两个模型对这8种病害的识别情况相差不大。LeNet_model模型的总平均AUC值才为0.97,且从各病害ROC曲线及精准率(
4 讨论
本研究使用卷积神经网络模型,结合批归一化与AexNet网络(BN_model模型)对水稻病害进行识别分析,相比其他研究中神经网络模型和传统图像处理模型,BN_model 能区分更多的水稻病害病理特征,且训练成本较低。与AlexNet_model相比,细菌性条斑病和赤枯病的平均识别精准率分别提高了0.02和0.01,细菌性条斑病和稻瘟病的AUC值均提高0.01。相较于FCM_model,BN_model对水稻干尖线虫病、细菌性条斑病、稻瘟病和水稻纹枯病的平均识别精准率分别提高了0.01,0.01,0.01和0.02,白叶枯病、胡麻斑病、赤枯病和稻瘟病的AUC值均提高了0.1。相比LeNet_model,BN_model对识别精确率最低的白叶枯病和细菌性条斑病分别提高了0.07和0.06,对AUC值最低的水稻干尖线虫病和白叶枯病分别提高了0.05和0.02。
其中叶黑粉病在4个模型中的识别精确率和AUC值都分别为1.00、1.00、1.00、0.99,可知卷积神经网络提取的8种病害病理特征中,叶黑粉病在Softmax分类器中最易区分。白叶枯病在4个模型中的识别精确率和AUC值分别为0.99、0.99、0.99、0.92和0.98、0.97、0.98、0.96,可知该病害在各模型中的精确率虽然高,但其AUC值与其他病害相比偏低,这说明卷积神经网络对该病害的病理特征提取存在较大差异,会导致分类器对该病害的识别错误率增加。
经过AlexNet_model与FCM_model的对比可知,AlexNet网络提取的特征与FCM算法分割后提取的特征对分类器的识别影响相差不大,这说明叶片正常部分对卷积提取病斑病理特征没有影响。通过LeNet模型与AlexNet_model、FCM_model、BN_model模型的对比,可知简单的卷积神经网络提取的特征还不够明确,深层次的网络对特征的提取更为细致,有利于分类器的识别。批归一化层会将提取的图像特征进行规范化[26],从BN_model与AlexNet_model的对比结果可知,BN层进行均值、方差与归一化计算对网络识别是有效的。因此,本研究在AlexNet网络添加批归一化的BN_model模型,是一种对水稻这8种病害行之有效的鉴别方法。
本文主要的研究对象为简单背景下的8种水稻病害图像。而马浚诚等[27]的研究对象是含有较多光照不均匀和复杂背景等噪声的黄瓜病害图像,其识别率达到95.7%, Lu等[28]采用深度卷积神经网络对10种水稻病害进行识别,在10倍交叉验证下准确率达95.48%。由以上可知,水稻病害的下一步研究方向包括:1)水稻病害种类繁多,尽可能多地增加研究类别;2)自然环境下拍摄的病害图像多数是复杂背景,提高复杂背景下水稻病害的识别率,为其实践提供参考依据;3)研究不同图像处理或者特征提取方法与神经网络结合的模型,提升对水稻病理特征的识别准确率。
5 结论
AlexNet网络对简单背景下的水稻干尖线虫病、白叶枯病、细菌性条斑病、胡麻斑病、叶黑粉病、赤枯病、稻瘟病、水稻纹枯病等8种水稻病害图像的识别准确率比LeNet-5网络的识别准确率高4个百分点以上,尤其是AlexNet网络结合批归一化层进行分类识别的模型效果最佳,其测试准确率高达99.11%,故该模型有效提高了水稻病害识别准确率,且鲁棒性较强,在解决水稻病害图像识别问题时具有明显的优势。
[1] 谢锡水. 水稻病虫害防治中的突出问题及其对策浅析[J]. 中国农业信息, 2017( 19): 54- 56.
Xie XS. A brief analysis of the prominent problems and counter measures in rice pest control[J]. China Agricultural Information, 2017( 19): 54- 56.
[2] 赵玉霞, 王克如, 白中英, 等. 贝叶斯方法在玉米叶部病害图像识别中的应用[J]. 计算机工程与应用, 2007, 43(5): 193-195.
Zhao Y X, Wang K R, Bai Z Y, et al. Bayesian classifier method on maize leaf disease identifying based images[J]. Computer Engineering and Applications, 2007, 43(5): 193-195.
[3] 谢泽奇, 张会敏, 张善文, 等. 基于颜色特征和属性约简的黄瓜病害识别方法[J]. 江苏农业学报, 2015, 31(3): 526-530.
[6] 毛彦栋, 宫鹤. 基于SVM和DS证据理论融合多特征的玉米病害识别研究[J]. 中国农机化学报, 2020, 41(4): 152-157.
[7] 许景辉, 邵明烨, 王一琛, 等. 基于迁移学习的卷积神经网络玉米病害图像识别[J]. 农业机械学报, 2020, 51(2): 230-236, 253.
[8] 刘阗宇, 冯全. 基于卷积神经网络的葡萄叶片检测[J]. 西北大学学报(自然科学版), 2017, 47(4): 505-512.
[9] Mohanty S P, Hughes D P, Salathé M. Using deep learning for image-based plant disease detection[J]. Frontiers in Plant Science, 2016, 7: 1419.
[10] 张善文, 张晴晴, 李萍. 基于改进深度卷积神经网络的苹果病害识别[J]. 林业工程学报, 2019, 4(4): 107-112.
[11] Sladojevic S, Arsenovic M, Anderla A, et al. Deep neural networks based recognition of plant diseases by leaf image classification[J]. Computational Intelligence and Neuroscience, 2016, 2016: 3289801.
[12] 杨晋丹, 杨涛, 苗腾, 等. 基于卷积神经网络的草莓叶部白粉病病害识别[J]. 江苏农业学报, 2018, 34(3): 527-532.
[13] 吴露露, 郑志雄, 齐龙, 等. 基于图像处理的田间水稻叶瘟病斑检测方法[J]. 农机化研究, 2014, 36(9): 32-35.
Wu L L, Zheng Z X, Qi L, et al. Detection method of rice leaf blast based on image processing[J]. Journal of Agricultural Mechanization Research, 2014, 36(9): 32-35.
[14] 管泽鑫, 唐健, 杨保军, 等. 基于图像的水稻病害识别方法研究[J]. 中国水稻科学, 2010, 24(5): 497-502.
[15] 刘成. 基于机器学习的水稻病害识别算法的研究[D]. 合肥: 安徽大学, 2018.
LiuC. Study on identification algorithm of rice diseases based on machine learning[D]. Hefei: Anhui University, 2018.
[16] 郭丹, 路阳, 李建宁, 等. 基于深度信念网络的水稻纹枯病识别方法研究[J]. 农机化研究, 2019, 41(12): 42-45, 85.
[17] 刘婷婷, 王婷, 胡林. 基于卷积神经网络的水稻纹枯病图像识别[J]. 中国水稻科学, 2019, 33(1): 90-94.
Liu T T, Wang T, Hu L. Rhizocotonia solani recognition algorithm based on convolutional neural network[J]. Chinese Journal of Rice Science, 2019, 33(1): 90-94.
[18] 刘立波, 周国民. 基于多层感知神经网络的水稻叶瘟病识别方法[J]. 农业工程学报, 2009, 25(S2): 213-217.
[20] Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks[J]. Communications of the ACM, 2017, 60(6): 84-90.
[21] 杨旭, 尚振宏. 基于改进AlexNet的人脸表情识别[J]. 激光与光电子学进展, 2020, 57(14): 141026.
[22] 吴丽娜, 王林山. 改进的LeNet-5模型在花卉识别中的应用[J]. 计算机工程与设计, 2020, 41(3): 850-855.
[23] IoffeS, SzegedyC. Batch normalization: accelerating deep network training by reducing internal covariate shift[EB/OL]. (2015-02-11)[2020-07-02]. https://arxiv.org/abs/1502.03167.
[25] 贾洪, 郑楚君, 李灿标, 等. 基于局部线结构约束的FCM聚类视网膜血管分割[J]. 光学学报, 2020, 40(9): 0910001.
[26] NahS, Kim TH, Lee KM. Deepmulti-scale convolutional neural network for dynamic scene deblurring[C] //2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA.New York: IEEE Press, 2017: 257- 265.
[27] 马浚诚, 杜克明, 郑飞翔, 等. 基于卷积神经网络的温室黄瓜病害识别系统[J]. 农业工程学报, 2018, 34(12): 186-192.
Article Outline
杨红云, 万颖, 王映龙, 罗建军. 基于批归一化与AlexNet网络的水稻病害识别[J]. 激光与光电子学进展, 2021, 58(6): 0610007. Yang Hongyun, Wan Ying, Wang Yinglong, Luo Jianjun. Identification of Rice Diseases Based on Batch Normalization and AlexNet Network[J]. Laser & Optoelectronics Progress, 2021, 58(6): 0610007.