基于InceptionV3 的烟草病害识别

2021-11-22 09:15张文静孙秀朋乔永亮白鹏姜红花王玉军杜传印宗浩
中国烟草学报 2021年5期
关键词:烟草预处理准确率

张文静,孙秀朋,乔永亮,白鹏,姜红花*,王玉军,杜传印,宗浩

1 山东农业大学 信息科学与工程学院,271018;

2 山东农业大学 植物保护学院,泰安 271018;

3 悉尼大学 工学院,悉尼,2006,澳大利亚;

4 山东科技大学,泰安 271019;

5 山东潍坊烟草有限公司,潍坊 261205;

6 临沂烟草公司,临沂 276003

烟草是我国重要的经济作物,对改变种植地区经济面貌具有重要的作用[1]。烟草病害问题一直困扰着广大烟农,已成为制约烟草生产的重要因素[2]。明确烟草病害发生情况,加强烟草病害防治,是保证烟草产量和品质、减少烟农损失的重要措施[3]。

烟草病害的诊断是烟草病害科学防治的前提和基础[4]。目前烟草病害识别主要利用机器学习的方法,通过提取病害特征信息构建病害识别模型,包括支持向量机(SVM),K-means 聚类算法,卷积神经网络(Resnet 网络、VGG-16 网络、InceptionV3 网络)等[5,21]。濮永先[6]提出了基于病斑特征融合的烟草病害图像检索方法,实现了烟草7 种常见病害的诊断。谢裕睿[7]通过基于SVM 和ResNet 的图像处理方法诊断5 种常见的烟草病害。王平[8]基于深度模型VGG-16 的迁移学习方法构建网络对烟草病害进行识别,准确率达87%。王建玺等[9]提出基于图像处理和模糊模式识别的烟叶病害识别方法,实现了病害的自动识别并表现出较高的识别准确率。喻勇[10]提出了基于计算机视觉的烟叶病害识别分类方法,选取赤星病和野火病2 种病害6 个病害识别特征参数,采用基于标准特征库的模糊模式识别算法对病害进行识别分类并取得良好的识别率。基于深度学习的烟草病害诊断方法能在一定程度上提高烟草病害的识别准确率,但烟草病害发生情况复杂,相似病害特征容易混淆[11],容易导致检测过程中特征提取不完整,从而影响识别的准确率。

InceptionV3 网络是在处理图像分类任务时较为常用的深度学习网络[12],具有2 个优势:一是采用非对称卷积结构拆分的方式增加了网络深度,在减小计算量的同时,可以处理更多、更丰富的病害特征,增加了病害特征的多样性,有效解决了病害特征提取不完整的问题;二是采用并行降维结构方式增加了网络宽度,保留了大量烟草病害图像信息,避免了表达瓶颈问题,大大提升网络精度,从而提高识别准确率。因此,本文提出了一种基于图像融合技术的图像预处理方法,减少了光照影响,提升了图像质量,并采用InceptionV3 网络构建烟草病害识别模型,以较高的网络精度,提高了烟草病害识别的准确率和实时性,实现了复杂环境下烟草病害的分类。

1 材料和方法

1.1 数据采集

本文以烟草花叶病毒病、黄瓜花叶病毒病、烟草赤星病、烟草野火病、烟草气候性斑点病5 种较为常见的烟草病害为研究对象,采集了大量烟草成苗期病害图像[13]。采集图像数量为每类病害350 张,共计1750 张,其中训练集数量为1250 张(每种250 张),测试集数量为500 张(每种100 张)。5 种烟草病害田间发病症状如图1 所示。

图1 烟草病害种类示例图Fig. 1 Image example of the different tobacco diseases

1.2 烟草病害识别方法

针对5 种烟草常见病害,构建基于InceptionV3网络和迁移学习方法的烟草病害识别模型(图2)。模型由图像预处理模块、特征提取模块和分类模块3部分构成。图像预处理模块采用了图像增强方法、MSRCR 算法、Gamma 校正以及图像融合方法对烟草病害数据集进行扩充并消除图像光照影响。特征提取模块包含了卷积模块、Inception 模块以及Inception模块所连接的池化层和全连接层,其中卷积模块由卷积层和池化层组成,Inception 模块由3 个卷积模块组构成。基于所构建的病害识别模型,对图像预处理构建的数据集进行训练与测试,最终通过分类模块对特征进行分类。

图2 基于InceptionV3 的烟草病害识别模型Fig. 2 Tobacco disease identification model based on InceptionV3

1.2.1 图像预处理

在烟草病害识别模型训练过程中,由于模型层数过多,使得模型过度学习训练数据中的细节,从而导致模型泛化性能差,出现过拟合现象。为解决训练过程中易出现的过拟合问题,使用图像预处理方法扩充数据集,通过随机变换增加样本量,提高了模型的泛化能力。本文使用的图像预处理方法主要有图像增强、MSRCR 算法、Gamma 校正以及图像融合等。

1.2.1.1 图像增强

通过对数据集图像进行镜像翻转、上下翻转和随机旋转,以及调节锐度的方法扩充数据。通过锐化操作增强图像细节及对比反差,在增强图像边缘的同时添加了噪声,以消除不同设备采拍的数据集图像清晰度不一致的问题,有利于后期的目标识别。扩充后的数据集达到每种800 张,测试集每种100 张,总计4500 张。本文使用Keras ImageDataGenerator 图片增强批量生成器方法实现数据增强,图像随机旋转的角度设置为顺时针旋转90 度,其他参数均设置为0.2。增强后的图像如图3 所示。原始图像及锐度增强后图像对比如图4 所示。

图3 图像增强Fig. 3 Image enhancement

图4 增大锐度后病害图像Fig. 4 Tobacco disease image after sharpening

1.2.1.2 彩色恢复多尺度MSRCR 算法

光照不均影响烟草病害识别的准确率,常用消除光照不均影响的算法有SSR 或MSR[14]。SSR 算法对于图像细节的保持较差,MSR 算法虽然对细节的保持有所提升,但对色彩保持不佳。MSRCR 算法引入了颜色恢复因子,提升了色彩及细节的保持能力,在处理病害图像时既能保证了病害图像的灰度,又一定程度地提升了图像色彩的饱和度[15],对图像色彩保持效果最好。因此本文选用MSRCR 算法来处理烟草病害图像,算法公式如式(1)所示:

式(1)实现过程如图5 所示。首先对输入图像每个尺度进行高斯模糊,然后对每个尺度的高斯模糊结果进行加权平均计算,并分别计算出log[R(x, y)]中R/G/B各通道数据的平均值(Mean)以及均方差(Var)。设置动态参数(Dynamic),Dynamic 取值越小,图像对比度越强,一般来说Dynamic 取值2 ~3 之间能取得较为明显的增强效果,又能保持图像的清晰度,本文取Dynamic=2。用式(2)(3)计算出各通道的min 和max 值,对log[R(x, y)]中的每一个值进行映射。最后增加一个溢出判断,即可得到输出图像,如图6(a)所示。

图5 MSRCR 流程图Fig. 5 MSRCR flow chart

1.2.1.3 Gamma 校正

考虑到田间光照环境的影响,本文使用Gamma校正来消除光照影响。Gamma 校正通过对输入图像灰度值的非线性操作,校正图像亮度[16]。首先将烟草病害图像像素值归一化处理,使其值域分布在[0, 1]内,其次通过给定γ 值对像素值非线性映射。最后通过反归一化处理使得图像像素值为[0, 225]之间,输出校正图像。为避免图像过暗或过亮导致图像失真,取γ=1.5,图6(b)为Gamma 校正后的图像。

1.2.1.4 图像融合

MSRCR 算法可显著提高图像暗部区域的细节从而降低光照对图像的影响,但会出现图像泛白、颜色失真等问题[22]。Gamma 校正可提高图像对比度,但会一定程度上降低图像信息熵[16]。在此基础上,本文综合2 种算法的特点,采用加权平均算法对图像加权融合,即对原图像的像素值取相同权值,加权平均得到融合后图像像素值,并通过多次试验选定最佳加权系数。加权平均算法公式为:

图6(a)(b)(c)(d)所示分别为原图、Gamma 校正图、MSRCR 处理后图及图像融合示例图。图7 分别为4 种不同训练集图像直方图,原图像直方图偏左或偏右或集中在一个较窄的区域,直方图的分布现象说明原图像光照不均,明暗差别较大。采用图像融合方法对图像预处理后,原图像中亮度过高区域的亮度得到了衰减,亮度过低区域的亮度得到了增强,并在一定程度上压缩了图像的动态范围。该方法具有较好的光照不均校正效果,降低了光照不均对图像的影响,提高了图像质量。

图6 4 种不同训练集示例图Fig.6 Example image of four different training set

图7 4 种不同训练集图像直方图Fig. 7 Image histograms of four different training set

1.2.2 基于InceptionV3 的特征提取模块

由于Alexnet 网络运行速度慢、准确率低,VGG16 和VGG19 训练时会产生大量参数,造成内存占用,增加了计算量[19-20,23]等问题,本文基于InceptionV3 进行特征提取,通过引入Inception 模块增加了网络的宽度和深度。与GoogLeNet 相比,InceptionV3 采用多层的3x3 小卷积核替换5x5 的卷积核,在保持感受野不变的情况下,一定程度上减少了计算量。Inception 模块同时将2 个辅助分类器变为1个,在辅助分类器中采用批量归一化方法增大学习率,扩展Inception 模块中的滤波器组,加速了网络训练过程,提升了烟草病害分类准确率[24]。

1.2.3 分类模块

本文分类模块采用基于softmax 的分类函数,以概率形式表示多分类结果。该方法在保证各预测结果概率为1 的前提下,将InceptionV3 网络预测结果转化为指数函数,保证了概率的非负性,公式如下:

其中Si为第i 类烟草病害输入的概率,vi为前一层运算单元的输出作为Softmax 的输入,i为特征分类的类别索引,烟草病害类别总数m=5。

2 迁移学习及模型训练

2.1 迁移学习

迁移学习可缓解小样本产生的过拟合问题[18],本文将 ImageNet 数据库中训练好的模型权重参数迁移至基于InceptionV3 的烟草病害识别网络中,来提升所构建模型分类效果。具体做法是保持原始InceptionV3 网络最后一层之前各层参数,删除网络最后一层全连接层,加入一层池化层和全连接层,随后加入烟草病害数据集对模型参数进行微调,并采用dropout 处理避免模型过拟合。烟草病害分类网络激活函数为ReLU, 分类函数为softmax,输出类别个数为5(不同病害种类)。表1 为基于inceptionV3 的烟草病害识别模型结构。

表1 基于InceptionV3 的烟草病害识别模型结构Tab. 1 InceptionV3 based tobacco disease identification model structure

2.2 损失函数

训练过程中损失函数选用交叉熵函数,用p表示样本真实标记分布,q表示网络模型训练后预测标记的分布,交叉熵损失函数用来衡量p与q的相似性。函数公式如(6)所示,类别数量m=5,p(xij)表示若该类别和样本i类别相同则为1,否则为0;q(xij)表示测试样本i对病害类别的预测概率:

2.3 模型训练与评价指标

试 验 环 境 为Windows10 操 作 系 统,CPU 为Intel(R) Core(TM) i7-7700,主频3.6GHz的4核处理器,开发环境为TensorFlow1.10.0、Anaconda3。训练过程中Learning rate 设置为0.001,batch 为32,模型共迭代3000 次。

模型有2 个评价指标:一是准确率,如式(7)所示,即分类正确样本个数和总样本数的比值。TP表示当前病害类别被准确识别,TN表示非当前病害被错误识别,FP表示非当前病害被正确识别。FN表示当前病害没有被正确识别;二是识别单张数据的耗时。

3 结果与分析

基于InceptionV3 网络构建烟草病害识别模型,按照8:1 的比例划分训练集和测试集,训练集用于模型训练,测试集用于最终得出模型的准确率。对4 种不同训练集进行测试从而形成对比实验,分别为原始训练集(总计1250 张),经图像增强后的数据集(总计4500 张),在增强数据集上进行MSRCR 处理的训练集(总计4500 张)以及图像融合训练集(总计4500 张)。模型训练时,每类数据集训练时参数不变。

原始数据集和图像增强数据集的识别准确率如表2 所示,增强后数据集的病害分类准确率高于原始数据集,对赤星病和黄瓜花叶病毒病的识别准确率可达90%。图像增强扩充了数据集,增加了样本数量,提高了模型的泛化能力,特别是扩充数据集后,黄瓜花叶病预测标签为赤星病的概率降为0,整体识别准确率相较于原始数据集高了32.35%。

表2 原始数据集及图像增强数据集的识别率Tab. 2 Identification rate on original data set and image enhancement data set %

MSRCR 数据集及图像融合数据集的识别率如表3 所示,黄瓜花叶病和气候性斑点病识别准确率在MSRCR 数据集中分别为90%、86%,而在图像融合数据集中分别为94%、89%,准确率有所提升。MSRCR 数据集在提高图像饱和度的同时可减少光照不均的影响,因此分类效果优于图像增强数据集和原始数据集。图像融合数据集在降低光照影响的基础上增强了图像的对比度,进一步增强了图像的特征信息,使得气候性斑点病误判为赤星病与黄瓜花叶病的概率降低。该结果验证了本文方法的有效性。

表3 MSRCR 数据集及图像融合数据集的识别率Tab. 3 Identification rate on MSRCR training set and image fusion training set %

4 种不同数据集的识别准确率及相应的识别时间如表4 所示,经图像预处理的数据集平均识别准确率高于原始数据集。图像预处理增加了样本数量并在一定程度上抑制了图像中的无用信息,在训练过程中更利于特征的提取,故准确率相较于原始数据集有显著提升。因图像融合在降低光照不均的同时保留了图像的细节特征,避免图像失真,增强了图像的色彩保持效果,所以图像融合数据集上的平均识别准确率最高,为90.80%,比原始数据集提高了29.71%。随着图像预处理技术复杂程度的增加,平均识别时间相应延长0.27 s,虽然图像预处理带来的时间延时略有提高,但提高了29.71%的识别精度,加之烟田机具作业速度有限,这种轻微的时间延时不会制约田间烟草病害的作业防治。

表4 4 种不同预处理数据集识别准确率Tab. 4 The identification accuracy on four different preprocessed data sets

图像融合数据集上的烟草病害正确识别样例与错误识别样例如图8 所示,正确识别样例中(图8a)烟草赤星病、黄瓜花叶病与野火病的病害特征明显、病斑颜色与叶片颜色形成较大反差,均能被正确识别。

错误识别样例(图8b)均为病害发生初期,野火病发病初期出现褐色水渍状小圆点,周围产生明显的黄色晕圈,以后病斑逐渐扩大,性状与赤星病较为相似;气候性斑点病初期特征为针尖大小的水渍状灰白色或褐色小点,病害特征不明显,易与烟草花叶病混淆。故病害性状相似,病害特征不明显的图像分类错误率较高,从而影响分类效果。

图8 烟草病害识别结果样例图Fig. 8 Tobacco disease identification results

4 应用前景

本研究构建的烟草病害识别模型解决了传统识别方法识别精度低的问题,对制定合理的烟草病害防治措施,提高烟草产量及品质具有重要意义;对节省烟草病害田间实地诊断成本,研发烟草智能喷雾机器人提供科学依据。该研究成果可应用于病害的在线实时准确识别,从而实现精准防治,大大提升烟草产量,降低病害造成的经济损失;也有助于丰富数字烟草研究。目前团队已经构建了烟草物联网设备(图9)及山东省现代烟草辅助决策系统(图10 和图11),为后期集成检测、识别和防治一体化的烟草数字化智能防治的推进奠定了良好的基础。

图9 烟草物联网设备Fig. 9 Tobacco IoT devices

图10 烟草病虫害查询Fig. 10 Tobacco pests and diseases query

图11 烟草病虫害明细Fig. 11 Details of tobacco pests and diseases

5 结论

本文基于深度学习网络和迁移学习方法构建了烟草病害识别模型。该方法首先对烟草病害数据集进行图像预处理,综合MSRCR 算法和Gamma 校正两种算法特点,提出了一种基于加权平均的图像融合方法,对光照不均有较好的校正效果。基于不同预处理方法获得图像增强数据集、MSRCR 数据集、图像融合数据集3 种不同数据集,通过对比试验可知图像融合数据集上的识别准确率比原始数据集上的识别准确率提高了29.71%,验证了基于图像融合方法的有效性。

利用基于InceptionV3 网络和迁移学习方法构建的烟草病害识别模型对5 种烟草病害进行试验验证,5 种病害的平均识别准确率达90.80%,实现了烟草病害的准确识别,为烟草病害的科学防治提供理论基础与数据支撑。

本文算法对特征不明显的病害图像识别率仍需进一步提高,特别是烟草病害发病初期的特征不明显且某些病害特征较为相似,造成烟草病害初期的识别率偏低。针对上述问题,后期将继续扩充数据集,改进InceptionV3 网络,增强模型对细节特征的把控,提高模型泛化能力,进一步降低误识别率。未来研究将结合烟草病害识别与防治的实际需要,逐步构建并完善烟草病害识别系统,进一步优化烟草病害的自动化识别,促进智能烟田的进一步发展。

猜你喜欢
烟草预处理准确率
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
高速公路车牌识别标识站准确率验证法
基于预处理MUSIC算法的分布式阵列DOA估计
烟草依赖的诊断标准
浅谈PLC在预处理生产线自动化改造中的应用
烟草中茄酮的富集和应用
络合萃取法预处理H酸废水
基于自适应预处理的改进CPF-GMRES算法