基于可见光谱和支持向量机的黄瓜叶部病害识别方法研究
李鑫星1, 朱晨光1, 白雪冰1, 毛富焕1, 傅泽田1,2, 张领先1,*
1. 中国农业大学信息与电气工程学院, 北京 100083
2. 农业部农业信息获取技术重点实验室, 北京 100083
*通讯联系人 e-mail: zlx131@163.com

作者简介: 李鑫星, 1983年生, 中国农业大学信息与电气工程学院副教授 e-mail: lxxcau@cau.edu.cn

摘要

以黄瓜叶部病害作为研究对象, 基于可见光谱反射率差异识别黄瓜叶部病害, 研究基于SVM的黄瓜叶部病害识别预测模型。 采用小波变换进行数据预处理; 选取Otsu、 边缘分割法和 K均值聚类三类分割方法进行病斑分割, 比较错分率和运行时间, K均值聚类方法更适合黄瓜叶部病斑分割; 提取纹理、 颜色和形状特征参数, 共15个特征参数; 通过交叉验证选择最优参数 c g, 对核函数参数进行优化处理, 并通过比较线性核、 多项式核、 RBF核等不同核函数情况下SVM的正确识别率, 确定RBF核SVM模式识别方法能够更精准地识别黄瓜叶部病害。 并将基于SVM与另外两种常见的黄瓜叶部病害识别方法, BP神经网络和模糊聚类进行比较, 结果表明, 基于SVM的识别模型对霜霉病的正确识别率为95%, 白粉病和褐斑病的正确识别率均为90%, 平均诊断正确率为92%; 该模式识别方法识别效果最佳, 运行时间最短, 为基于可见光谱的黄瓜病害识别模型提供参考。

关键词: 可见光谱; 黄瓜叶部病害; 病害识别; 支持向量机; BP神经网络
中图分类号:O433.4 文献标志码:A
Recognition Method of Cucumber Leaves Diseases Based on Visual Spectrum and Support Vector Machine
LI Xin-xing1, ZHU Chen-guang1, BAI Xue-bing1, MAO Fu-huan1, FU Ze-tian1,2, ZHANG Ling-xian1,*
1. College of Information and Electrical Engineering, China Agricultural University, Beijing 100083, China
2. Key Laboratory of Agricultural Information Acquisition Technology, Ministry of Agriculture, Beijing 100083, China
Abstract

In this paper, we used cucumber leaves disease as the research object, and identified cucumber leaves disease based on the difference of visible spectral reflectance. The support vector machine recognition is an efficient recognition method, which is always used as identification model. For cucumber leaves diseases, if we constructed the support vector machine based on digital image process, we can get accurate and efficient recognition. Consequently, this paper studied the cucumber leaves disease recognition method based on support vector machine. Firstly, the method of wavelet domain denoising was applied to image denoising. The segmentation results were compared with K mean clustering, OTSU and edge segmentation. The results showed that K-means clustering method was more accurate. We extracted texture, color and shape feature parameters, 15 feature parameters. Then, the optimal parameters of c and g were selected by cross-validation, and the parameters of the kernel function were optimized and using RBF kernel to construct SVM classifier. By comparing the linearity kernel, polynomial kernel and RBF kernel of the SVM recognition’s correct rate, we got that the RBF kernel is most accurate for the recognition of the cucumber leaf disease. Therefore, we used RBF kernel to construct SVM classifier. Finally, there was an identification model of cucumber leaf disease which was based on SVM classifier, and two other efficient identification models, back Propagation neural network, fuzzy clustering identification model. We constructed three kinds of identification models through comparing the correct recognition rate and running time. The results of the test showed that the cucumber downy mildew's correct recognition rate based on SVM classifier was 95%. The correct recognition rate of cucumber powdery mildew and brown spot was 90%, and the average diagnosis accuracy was 92%. In addition, the method running time was the shortest. In summary, the results show that, among the three recognition methods, cucumber leaves disease recognition based on the SVM classifier is the most suitable, demonstrating that the method can be used to rapidly identify cucumber leaves diagnosis based on visual spectrum.

Keyword: Visible spectrum; Cucumber leavesdiseases; Disease recognition; Support vector machine; Back propagation neural network
引 言

黄瓜作为人们日常必需的蔬菜之一, 由于病害治理不及时引起的品质下降和产量减少, 严重影响了黄瓜种植的经济效益。 常见的黄瓜病害有: 霜霉病、 角斑病、 白粉病等, 这些病害早期发生时, 就可能出现叶部症状。 然而, 在农业实际生产过程中, 农业专家往往不能给农民提供及时的帮助[1]。 因此, 基于可见光谱技术对黄瓜叶部病斑进行识别, 排除诊断主观性和对专家的依赖性, 进而对病害进行诊断, 成为现代农业病害诊断的一个研究热点。

近年来, 许多专家学者对基于光谱技术的作物叶片病害识别进行了研究。 杨兴川[2]等探究植物叶片病害与光谱信息的相关性, 并建立植物叶片病害的预测模型。 Xie[3]采用高光谱技术研究了茄子叶部病害的光谱和纹理特征, 结果表明, 光谱和纹理特征在茄子叶片早期疫病检测中是有效的。 Yuan等[4]利用光谱反射率差异区分健康植株与患病植株, 建立了高识别精度的判别模型。 Zhang[5]等利用光谱技术分别对植物叶片中某种元素含量进行测定, 为植物叶片病害监测提供了技术手段。 基于SVM的识别方法在病害识别时训练样本少, 具有很好的分类性能和泛化能力, 是一种常用的模式识别方法。 宰松梅[6]、 Yang[7]等建立了基于光谱成像技术的叶片病害SVM识别模型。 张建华[8]提出了一种基于最优二叉树支持向量机的蜜柚叶部病害识别方法, 使训练时间和识别精度都得到优化。

为了能够快速、 准确地获取黄瓜叶部病害信息, 本文利用作物染病叶片上病斑与正常叶片在可见光范围的光谱差异, 以黄瓜病害叶片可见光图像为研究对象, 所用图片为天津农科院等合作单位的植保专家协助拍摄, 结合计算机视觉技术来进行病害信息的快速获取, 研究基于可见光图像的黄瓜病害识别方法。 建立SVM病害识别方法, 其中采用的核函数影响着分类的精准度, 通过交叉验证选择最优参数cg, 对核函数参数进行优化处理, 并比较3种核函数情况下SVM的正确识别率; 并与BP神经网络和模糊聚类识别模型进行对比, 选择识别效果最优的方法, 为基于可见光谱的黄瓜病害识别模型提供参考。

1 实验部分
1.1 试验数据采集

试验结果是从天津市农科院植保所农业创新基地日光温室6号棚中采集到黄瓜褐斑病、 白粉病、 霜霉病叶片, 并由植保专家协助拍摄, 每种病害照片各70幅。 图像采集于晴天, 采集时间为: 2016年5月15日早上4:00— 6:00, 图像采集设备为Cannon SX710HS数码相机, 采用自动模式。 在获取图后, 将图的尺寸统一处理为1 200× 900并保存为JPEG格式。 图像处理算法采用Matlab2017a 编程实现。

1.2 样本数据的选择

通过总结分析国内外相关研究现状[9], 并结合所采集的黄瓜可见光图像数量, 选用训练集与测试集50:20的比例。 从采集的黄瓜叶部病害图像中, 挑选其中病斑特征较明显、 正常光照条件下、 正常角度下的病害图像, 挑选霜霉病、 白粉病、 褐斑病各50幅图像为训练样本, 每种病害各20幅为测试样本。 在作物叶片特征参数研究方面, 贾建楠[10]提取了面积、 周长、 矩形度等10个黄瓜叶部病斑形状特征, 并将其运用于黄瓜病害的识别; 丁永军[11]提取了面积、 矩形度、 圆形度等4个番茄冠层叶片形状特征参数, 为基于多光谱图像分析的番茄叶片营养素含量检测提供了一定的技术支持; Bashish[12]提取了植物病斑的熵、 惯性矩、 逆差矩等10个纹理特征, 作为后续病害识别的依据, 结果正确率达到 93%。 Muthukannan[13]提取了惯性矩、 能量、 相关度、 逆差矩、 面积等5个特征参数, 进行植物叶部病害识别; Verma[14]提取了惯性矩、 相关性、 能量、 熵, R/G/B一阶矩、 R/G/B二阶矩等水稻叶片特征参数。 Singh[15]提取了惯性矩、 能量、 逆差矩、 熵等4个植物叶片纹理参数, 达到了较高的病害正确识别率。 邓立苗[16]圆形度, RGB和HSV颜色空间的R, G, B, H, S和V六个分量的一阶矩、 二阶矩, 熵等玉米叶片参数, 实现了玉米品种的识别在总结分析国内外相关文献的基础上, 在植物叶片特征参数提取领域内, 很多学者提取面积、 周长、 矩形度、 惯性矩、 逆差矩, 5个形状特征参数; 能量、 熵、 圆形度、 纵横轴比, 4个纹理特征参数; R/G/V一阶矩、 R/G/V二阶矩, 6个纹理特征参数, 因此, 本研究提取该15个特征值。 另外, 对RGB颜色空间下的霜霉病、 褐斑病和白粉病的各分量灰度图进行处理, 发现通过R和G分量灰度图比较清楚看到黄瓜病斑, 受光照影响较小。

1.3 数据预处理

小波分析具有低熵性、 多分辨率、 去相关性和选基灵活性的特点, 广泛应用于去除光谱背景噪音、 仪器干扰方面。 由于经过软阈值函数的作用, 小波系数在小波域就比较光滑了, 得到的图像很平滑。

因此利用软阈值估计小波系数, 软门限去噪滤波器阈值表达式为式(1), 小波系数表达式为式(2), 完成表达式为式(3)。 完成软门限去噪算法处理后, 各高频子带进行小波反变换。

其中, N是图像像素个数, σ 为方差。

f(i, j)=sign(y(i, j))×(|y(i, j)|-λ)=y(i, j)-λ, y(i, j)> λ0, y(i, j)=λy(i, j)+λ, y(i, j)< λ(3)

1.4 支持向量机

支持向量机(SVM)是二十世纪九十年代兴起的一种机器学习方法, 它遵循结构风险最小化原则, 能解决传统机器学习中在小样本、 非线性等情形下常见的陷入局部最优以及过学习等问题, 对于非线性建模、 解决样本量偏少和数据挖掘领域具有很强的能力。 SVM使用的核函数通过将数据映射到高维空间, 来解决在原始空间中线性不可分的问题。 在SVM分类中, 不同的核函数, 分类精度也不同, 本研究通过交叉验证选择最优参数cg, 对核函数参数进行优化处理, 并对比3种核函数, 建立识别效果最好的核函数SVM识别模型。

2 结果与讨论
2.1 基于可见光图像的病害分割

采用K均值聚类算法, 使用最大类间方差确定的阈值作为K均值聚类算法初始聚类中心的数据筛选参考, K均值聚类方法的公式如式(4)。 采用大津法、 Sobel算子分割和Canny算子分割与K均值聚类算法进行对比, 如图1和图2所示, 其中图中标题“ 最终结果” 是K均值聚类算法的效果图。

peakDis=i=0Mdis(i)M(4)

图1 霜霉病分割方法结果对比Fig.1 Comparison of the downy mildew segmentation results

图2 褐斑病分割方法结果对比Fig.2 Comparison of the target leaf spot segmentation results

图3 白粉病分割方法结果对比Fig.3 Comparison of the powdery mildew segmentation results

随机选取30幅黄瓜叶部病害样本进行病斑分割, 对三种分割结果进行对比分析, 如表1所示。

表1 4种分割方法效果对比 Table 1 Comparison of segmentation results

对提取出来的病斑数据进行复原, 得到彩色病斑图, 如图4所示。

图4 病斑特征提取结果部分图像Fig.4 The detection results of the lesion image

从图1— 图4可看出, 基于K均值聚类算法能够完整的保留病斑信息, 同时也会把部分健康叶片保留下来, 虽有可能会形成一定的干扰, 但并不会影响最终的结果。

2.2 基于SVM的核函数的选择

2.2.1 核函数参数优化处理

使用不同的核函数表现为不同的SVM算法。 常用的核函数主要有: 线性核函数、 多项式核函数、 径向基核函数等, 如下所示:

①线性核函数

K(X, Y)=< X, Y> (5)

②多项式核函数

K(X, Y)=(< X, Y> +c)q(6)

式(5)和式(6)中: c为常数; q为多项式指数。 当c=0, q=1时, 该核函数就是线性核函数。

③径向基核函数

K(X, Y)=exp|X-Y|22σ2(7)

式(7)中: |X-Y|为两个向量之间的距离; g=1/2σ 2是特定范围内的常数。

2.2.2 核函数参数优化处理

在MATLAB中可利用程序段随机生成在[0, 100]范围内的参数c和在[-100, 100]范围内的参数g。 对于取定的cg把训练样本作为原始数据样本利用常见的K折交叉验证法(K-CV)得到在此组cg下训练集验证分类准确率, 最终取最高准确率的那组cg作为最佳参数, 若存在最高准确率相同的情况, 选择c最小时搜索到的第一组cg, 因为过高的c会导致过学习状态发生。 将cg划分网格进行搜索, 采用K-CV方法将训练样本大致分为k组, 以此时的训练样本作为测试样本, 其他作为训练样本, 记录下此时的准确率。 由于必须将cg的值进行离散化查找, 在这里将cg在2的指数范围网格内进行查找。 其中训练样本和训练样本标签是必须输入的参数, 其他的采用默认值即可。 可以先在大的范围内寻找最佳参数cg, 参数粗略选择结果如图5所示。

图5 参数cg粗略选择结果Fig.5 Parameter c and g rougi selection results chart

图5中x轴表示c取以2为底的对数后的值, y轴表示g取以2为底的对数后的值, 等高线表示的取相应的cg后对应的K-CV方法的准确率, 从图5看出, 可将c的范围缩小至2-2~24, 同时g的范围可以缩小至2-4~24, 即可进行精细参数选择, 参她精细选择结果图如图6所示, 由图6可知, c取值为0.13, g取值为0.13为最优参数。

图6 参数cg精细选择结果图Fig.6 Parameter c and g fine selection results chart

2.2.3 多种核函数分析对比

此时在不同核函数情况下的正确识别率如图7所示。

图7 不同核函数的病害正确识别率(%)Fig.7 The correct identification rate of diseases with different kernel functions(%)

由图7实验结果可知, 当选用上文中确定的c为0.13, g为0.13的参数值, 并采用RBF核函数时, 病害平均正确识别率最高91.667%; 因此本研究采用RBF核函数作为SVM的核函数, 惩罚参数c=0.13, 核函数参数g=0.13。

2.3 三种识别方法的模式比较分析

模式识别是对时间和空间不同方面的信息分布, 通过某种模型方法, 将具体的模式分类到不同的类别中去。 随着近些年来学者们对模式识别技术研究不断深入, 常用的模式识别方法除了SVM识别方法外, 还有BP神经网络识别方法和模糊聚类识别方法。

利用这3种常见模式识别方法分别构建黄瓜叶部病害识别模型, 并通过分析比较3种不同模式识别方法对黄瓜霜霉病、 褐斑病、 白粉病的正确识别率和对应的运行时间, 验证出最佳的模式识别方法。 本研究构建BP神经网络模型: 首先结合本研究, 确定一个3层BP神经网络, 输入层含15个神经元(15个特征参数), 输出层含3个神经元(3种病害), 通过最小二乘法拟合值确定隐含层节点个数的初始值8, 选用试凑法确定最佳的节点数, 当隐含层节点数为16时, 收敛速度适中、 误差小, 收敛适中且分类误差率小。 在MATLAB软件的BP网络工具箱中包含的多种工具函数, 进行BP网络分析和设计。 本研究构建模糊聚类模型: 根据黄瓜病害识别的特征向量及其他约束条件, 要将待识未知病害图像分配到各自的模式类中去。 试验中分类器的设计分为样本训练和模糊聚类。 样本训练就是为了得到标准的模糊模式, 使其与未知病害图像数据进行比较, 从而对输入的图像数据分类。 根据农业植保专家提出的黄瓜这三种病害(霜霉病、 褐斑病、 白粉病)诊断标准, 选择150个样本(三种病害各50个样本)作为训练样本集, 得到训练样本的特征向量矩阵, 再把150个样本划分成k个区域(设k=3)。 样本训练结束后, 模式库中就保存了已知样本的模式特征, 这些特征将作为输入黄瓜未知病害图像的分类依据。 利用模糊C-均值算法对黄瓜病害进行聚类分析, 该算法基于最小方差准则的模糊聚类。 算法流程如下: (1)输入病害的150个样本; (2)提取15个特征值, 组成特征向量, 并将其归一化, 组成模糊向量; (3)计算3个模式中的聚类中心; (4)输入待识别样本; (5)提取样本的15个特征值, 将特征向量归一化, 转换为模糊向量; (6)计算样本与各聚类中心的贴近度, 将其指派到最大贴近度的聚类中心的类中。

2.3.1 正确识别率的分析

将60个测试样本(霜霉病、 褐斑病、 白粉病各随机20个)所提取的特征值作为SVM和BP神经网络和模糊聚类三种分类器的输入, 进行各模型验证测试。 图8— 图10中横坐标表示测试样本数, 纵坐标表示病害种类, “ 1” 表示霜霉病实际值, “ 2” 表示褐斑病实际值, “ 3” 表示白粉病实际值;

图8 SVM病害识别正确识别率对比Fig.8 Classification results of SVM identification model

图9 BP神经网络病害识别正确识别率对比Fig.9 Classification results of BP neural network identification model

图10 模糊聚类病害识别正确识别率对比Fig.10 Classification results of fuzzy clustering identification model

“ 蓝色线” 表示预测值。 以下是基于正确识别率对识别结果进行的比较与分析。

从上述病害分类识别结果图可看出, 基于SVM的霜霉病分类识别中20个测试数据有1个出现分类识别错误, 故正确识别率为95%; 同理可知, 基于SVM的褐斑病分类识别中20个测试数据有2个出现分类识别错误, 正确识别率为90%; 白粉病与褐斑病相同, 也有2个错误识别, 正确识别率为90%。 由于白粉病与褐斑病在形状、 纹理特征方面有较高的相似性, 出现了白粉病和褐斑病的识别错误, 在以后的研究中, 会加强特征参数提取方面的研究。 基于BP神经网络的霜霉病分类识别中20个测试数据中出现了2个分类识别错误, 故正确识别率为90%; 同理可知, 褐斑病分类识别中20个测试数据有3个出现分类识别错误, 正确识别率为85%; 白粉病分类识别中20个测试数据有4个出现分类识别错误, 正确识别率为80%。 基于模糊聚类的霜霉病和褐斑病分类识别中均出现了3个分类识别错误, 故正确识别率均为85%; 白粉病分类识别中20个测试数据有5个出现分类识别错误, 正确识别率为75%。

将上述结论进行总结, 如表2所示。

表2 基于不同分类器3种黄瓜病害的正确识别率 Table 2 Correct identification rate of three kinds of identification model

2.3.2 运行时间的分析

运行时间多少直接影响识别效率的高低, 因此在考虑正确识别率的同时, 运行时间的长短也要作为评判方法优劣的必要因素。

表3可以看出, 识别同种病害时, 无论是白粉病、 褐斑病还是霜霉病都是SVM运行时间明显加快; 若不考虑病害种类, 仍然是采用支持向量机模式识别方法运行时间最短。

表3 基于不同分类器的3种黄瓜病害识别的运行时间(s) Table 3 Disease identification operation time three kinds of identification model

2.3.3 综合比较与分析

综合以上两点分析指标, 通过柱状图的表达方式, 可以更加直观地对不同病害不同识别方法进行比较, 如图11、 图12所示。

图11 基于不同分类器3种黄瓜病害分类识别的正确识别率(%)Fig.11 The correct recognition rate of three cucumber diseases classification based on different classifiers

图12 基于不同分类器的3种黄瓜病害识别的运行时间(s)Fig.12 The operation times of three cucumber disease identification based on different classifiers

试验结果表明, 对于白粉病, 模糊聚类分类方法识别准确率为75%, 识别效果较差, 而基于SVM分类方法有较好的识别效果, 识别准确率高达90%; 对于褐斑病来说, 模糊聚类和BP神经网络的识别准确率均为85%, 基于SVM分类方法的识别准确率为90%; 对于霜霉病来说, 模糊聚类和BP神经网络均有较好的识别效果, 识别准确率均为90%, 而基于SVM分类方法识别准确率高达95%, 识别效果最佳。 对于黄瓜以上三种病害的识别基于SVM识别方法准确率均高于另两种识别方法, 可见基于支持向量机的模式识别法是一种可行的识别方法。 从运行时间上看, 在同样条件下基于SVM的三种病害识别速度比BP神经网络和模糊聚类识别速度都快, 且有一定差距。 综合考虑正确识别率和识别速度, 分析可得出基于SVM的识别方法更适合黄瓜叶部病害识别。

3 结 论

研究了基于可见光光谱和支持向量机的黄瓜病害识别方法。 采用小波变换进行去噪处理; 结合可见光光谱的特征, 对基于K均值的模糊聚类算法处理后叶部病斑图像进行了特征提取; 为了提高黄瓜病害识别的准确率, 采用交叉验证法实现了对核函数参数的优化, 并分析了多种核函数, 根据比较结果, 采用正确识别率最高的RBF核函数; 为了验证基于SVM的黄瓜识别模式效果, 对3种常见黄瓜叶部病害识别模型的模式识别方法(SVM、 BP神经网络、 模糊聚类)的进行了比较, 得出基于SVM的识别方法更适合黄瓜叶部病害识别, 为基于可见光谱的设施蔬菜病害诊断的方法研究提供参考。

参考文献
[1] MA Jun-cheng, WEN Han-jie, LI Xin-xing, et al(马浚诚, 温皓杰, 李鑫星, ). Transactions of the Chinese Society of Agricultural Machinery(农业机械学报), 2017, 48(2): 195. [本文引用:1]
[2] YANG Xing-chuan, LUO Hong-xia, ZHAO Wen-ji, et al(杨兴川, 罗红霞, 赵文吉, ). Spectroscopy and Spectral Analysis(光谱学与光谱分析), 2017, 37(9): 2873. [本文引用:1]
[3] Xie C, He Y. Sensors, 2016, 16(5): 676. [本文引用:1]
[4] Yuan L, Huang Y, Loraamm R W, et al. Field Crops Research, 2014, 156: 199. [本文引用:1]
[5] Zhang X, Liu F, He Y, et al. Biosystems Engineering, 2013, 115(1): 56. [本文引用:1]
[6] ZAI Song-mei, WEN Ji, GUO Dong-dong, et al(宰松梅, 温季, 郭冬冬, ). Transactions of the Chinese Society of Agricultural Engineering(农业工程学报), 2011, 27(3): 237. [本文引用:1]
[7] Yang C, Odvody G N, Fernand ez C J, et al. Precision Agriculture, 2014, 16(2): 201. [本文引用:1]
[8] ZHANG Jian-hua, KONG Fan-tao, LI Zhe-min, et al(张建华, 孔繁涛, 李哲敏, ). Transactions of the Chinese Society of Agricultural Engineering(农业工程学报), 2014, 30(19): 222. [本文引用:1]
[9] Mohanty S P, Hughes D P, Salathé M. Frontiers in Plant Science, 2016, 7: 1419. [本文引用:1]
[10] JIA Jian-nan, JI Hai-yan(贾建楠, 吉海彦). Transactions of the Chinese Society of Agricultural Engineering(农业工程学报), 2013, 29(supl): 115. [本文引用:1]
[11] DING Yong-jun, ZHANG Jing-jing, LEE WonSuk, et al(丁永军, 张晶晶, LEE WonSuk, ). Transactions of the Chinese Society for Agricultural Machinery(农业机械学报), 2017, (9): 32. [本文引用:1]
[12] Bashish D, Braik M, Bani-Ahmad S. Information Technology Journal, 2011, 10(2): 267. [本文引用:1]
[13] Muthukannan K, Latha P, Selvi R P, et al. Journal of Engineering and Applied Sciences, 2015, 10(4): 1913. [本文引用:1]
[14] Verma T, Dubey S. Advances in Computational Sciences and Technology, 2017, 10(5): 721. [本文引用:1]
[15] Singh V, Misra A K. Information Processing in Agriculture, 2017, 4(1): 41. [本文引用:1]
[16] DENG Li-miao, TANG Jun, MA Wen-jie(邓立苗, 唐俊, 马文杰). Journal of Chinese Agricultural Mechanization(中国农机化学报), 2014, 35(6): 72. [本文引用:1]