免费文献传递   相关文献

基于支持向量机的黄瓜叶部病害的识别研究



全 文 :收稿日期:2014-02-25
基金项目:国家自然科学基金项目(61202258);辽宁省科学事业公益研究基金项目(2012005015)
作者简介:张 芳(1976-),女,沈阳农业大学副教授,硕士,从事农业信息化技术研究。 * 通讯作者 Corresponding author:付立思(1964-),男,沈阳农
业大学教授,博士,从事智能检测与监控研究。
沈阳农业大学学报,2014-08,45(4):457-462
Journal of Shenyang Agricultural University,2014-08,45(4):457-462
基于支持向量机的黄瓜叶部病害的识别研究
张 芳 1,王 璐 2,付立思 1*,田有文 1
(1.沈阳农业大学 信息与电气工程学院,沈阳 110161;东北大学 信息科学与技术学院,沈阳 110819)
摘要:为了减少黄瓜叶部病害给农业生产者带来的损失,提高病害的识别率和精度,提出一种基于支持向量机的复杂背景下的黄
瓜叶部病害的识别方法。 采用 K-均值聚类算法和 LOG 算子等理论, 并提出一种基于超像素 (super pixel) 和形状上下文(shape
context)的复杂背景下的黄瓜叶片图像分割算法,将黄瓜病害叶片从复杂背景中成功地分离出来;采用分水岭等算法将病斑从黄
瓜病害叶片中分割出来;再根据病斑的特点,分别为黄瓜白粉病和霜霉病提取了颜色、形状、纹理 3 个方面的比较典型的特征参
数;分别建立了黄瓜叶片白粉病检测器和黄瓜叶片霜霉病检测器,将黄瓜叶片病害检测器分为 2 部分,第 1 部分为病斑检测器,第
2 部分是根据病斑检测器的结果来进一步判断叶片是否患有某种病害。试验结果表明:对于黄瓜白粉病的识别,采用基于径向基核
函数的 SVM 病斑检测器的结果进行黄瓜叶片白粉病检测的识别率较高(98.33%),说明采用径向基核函数的方法更适合于白粉病
病斑检测器的设计;对于黄瓜霜霉病的识别,采用基于线性核函数的 SVM 病斑检测器的结果进行黄瓜叶片霜霉病检测的识别率
较高(95%),说明采用线性核函数的方法更适合于霜霉病病斑检测器的设计。 以上提出的基于支持向量机的方法能有效地进行黄
瓜白粉病和霜霉病的识别。
关键词:黄瓜叶部病害;支持向量机;图像分割;特征提取;病害;识别
DOI:10.3969/j.issn.1000-1700.2014.04.014
中图分类号:TP391.41 文献标识码: A 文章编号:1000-1700(2014)04-0457-06
Recognition of Cucumber Leaf Disease Based
on Support Vector Machine
ZHANG Fang1,WANG Lu2,FU Li-si1*,TIAN You-wen1
(1.College of Information and Electrical Engineering,Shenyang Agricultural University, Shenyang 110161, China;2.College of Information Science
and Technology, Northeastern University, Shenyang 110819, China)
Abstract: In order to reduce the loss caused by cucumber leaf disease, improve the recognition rate and accuracy of disease, a
recognition method of cucumber leaf disease based on the complicated background of support vector machine was proposed. First,
the K-means clustering algorithm, LOG operator and other theories were used, and an image segmentation algorithm for cucumber
leaf based on the complex background of the super pixel and shape context was proposed. The disease of cucumber leaf was
separated from the complex background successfully; then watershed algorithm and other algorithms were used to split out the
scab from the cucumber disease. According to the characteristics of the scab, the three typical parameters of color, shape and
texture of powdery mildew and downy mildew of cucumber were extracted respectively. The cucumber leaf mildew detector and
cucumber leaf downy mildew detector were established respectively, and the cucumber leaf disease detector could be divided into
two parts, scab detector and the part for further determining leaf disease based on the results of the scab detector. The
recognition rate of cucumber leaf powdery mildew used by the results of SVM scab detector based on Radial Basis Function
(RBF) was higher(98.33%), indicating the method based on Radial Basis Function(RBF) was more suitable for the design of the
powdery mildew scab detector. For the recognition of cucumber downy mildew, the recognition rate of cucumber leaf downy
mildew detection used by the results of SVM scab detector based on the linear kernel function was higher(95%), indicating that the
method of linear kernel function was more suitable for the design of downy mildew scab detector. The above method proposed based
on support vector machine (SVM) can effectively recognize the powdery mildew and downy mildew of cucumber.
Key words: cucumber leaf disease;support vector machine; image segmentation;feature extraction;disease; recognition
黄瓜是我国比较重要的园艺作物。 黄瓜在生长过程中, 由于受到不良生态环境及非生物因子等各种因素
的影响,会导致黄瓜发生各种病害[1]。 目前,人们诊断黄瓜病害的传统方法是通过眼睛进行识别和判断,但是实
践证明,传统方法诊断的准确率和农业生产技术人员的知识、经验水平及主观意识有很大关系,必然会存在一
第 45卷沈 阳 农 业 大 学 学 报- -
定的主观性及局限性,病害识别的准确率也因此会大大降低 [2]。 本研究主要以北方常见的复杂背景下的黄瓜白
粉病和霜霉病为研究对象,采用计算机图像处理技术和模式识别方法,并根据黄瓜染病时叶部病斑所表现出
的颜色、形状和纹理等特征,对黄瓜病害进行自动识别和诊断,这样农业生产者就会及时、准确地掌握黄瓜受
害的类型及受害程度,以减少病害给农民带来的各种损失。
目前,用于解决图像识别的分类方法主要有统计模式识别方法、人工神经网络分类法和支持向量机分类
法等。 在实际的病害诊断中,对于某种病害一般不具有大量的病害样本。 然而,很多模式识别方法(如 BP人工
神经网络)都需要大量的病害样本才能达到比较理想的识别效果。而支持向量机(support vector machine,SVM)
是一种新的模式识别方法,它主要采用统计学习理论的风险最小化原则,并且兼顾泛化能力和训练误差。 对于
两类分类问题,SVM是在高维空间中找到一个超平面作为两类的分割,以确保分类的错误率达到最小。SVM分
类方法在解决非线性、小样本、高维数以及局部极小值等模式识别问题中表现出很多独特的优势,已经广泛应
用在农业、医疗等许多领域中[3]。 田有文等[4]运用支持向量机的方法研究了黄瓜玉米等病害的识别问题,取得了
较好的识别效果。 李冠林等[5]采用支持向量机的方法对小麦条锈病和叶锈病进行识别,其识别率较高。 刘婷婷
[6]对水稻纹枯病进行识别时也采用了支持向量机的方法,其识别效果较好。 以上的研究都取得了较好的识别效
果,但是所研究的病害都是基于简单背景或局部病害区域,对基于复杂背景下黄瓜叶部病害的研究还很少,也
尚未形成一个通用的模式识别系统。 因此,本研究采用计算机图像处理技术对复杂背景下的黄瓜白粉病和霜
霉病进行预处理、病斑分割以及提取有效的特征,最后利用支持向量机的方法对黄瓜叶部病害进行自动识别,
以弥补人工识别的缺陷和不足,提高病害识别的准确率。
1 材料与方法
1.1 黄瓜叶部病害图像处理
1.1.1 黄瓜病害叶片的分割 由于本研究所采集到的黄瓜病害图像都是基于大田复杂背景下的, 因此要提取
出黄瓜病害的病斑,必须先将病害叶片从复杂背景中提取出来。 为实现复杂背景下黄瓜叶片的分割,本研究首
先利用 K-均值聚类算法去除图片中的非绿色部分,再采用基于 Laplacian of -Gaussian (LOG) 算子的方法对待
分割的叶片进行区域检测,然后进行基于形状上下文(shape context)[7]的模板匹配和分割。 在模板匹配过程中,
为了提高匹配速度,本研究先对叶片进行生长点检测及叶尖检测,确定叶片的位置、尺寸和方向,再使用基于
超像素(super pixel)[8]的最优匹配搜索方法减少搜索的复杂度。 叶片分割算法关键步骤如下。
步骤 1:采用 K-均值聚类算法(k=2),来去除图片中非绿色部分。
步骤 2:分别在原图(黄瓜病害叶片)、原图的 1/2 和原图的 1/4 图像上使用尺寸为 5×5,σ=0.5 的 LOG 算子
进行滤波来检测叶片上的边缘,得到目标叶片区域。
步骤 3:对叶片生长点进行检测,进而为后面的模板匹配提供基准点。
步骤 4:在所得的叶片估计图像 M 的边缘中找与生长点距离最大的点作为叶尖,实现叶尖检测,从而进一
步确定叶片的方向以进行基于模板匹配的分割。
步骤 5:根据步骤 3 和步骤 4中所得到的生长点位置和叶片的方向,进行初步的模板匹配。
步骤 6:采用基于超像素(super pixel, SP)和形状上下文(shape context, SC)的匹配方法,对步骤 5 中所得到
的初步叶片分割结果进行细化,从而得到最佳黄瓜病害叶片分割结果。
病害叶片的分割结果表明(图 1),采用本研究的叶片分割算法较好的实现了病害叶片与背景的分离,达到
了预期的目标。
1.1.2 黄瓜病害叶片的病斑分割 黄瓜病害叶片从复杂背景中提取出来后,要提取黄瓜病害叶片上的病斑,用
于后续黄瓜病害的特征提取和黄瓜病害的识别。 在进行白粉病病斑分割时,在叶片的病斑颜色对叶片颜色的
似然比图像上使用分水岭算法;在进行霜霉病病斑分割时,在 HSI 的 H 分量图上进行分水岭分割,都不是在传
统的亮度图像上,这就能更好地保证分割出的病斑的完整性,从而也就成功地实现了病斑与叶片的分离。 用分
水岭算法对黄瓜白粉病和霜霉病进行病斑图像的分割[9-10],分割结果如图 2。
1.2 黄瓜白粉病和霜霉病图像特征提取
本研究根据黄瓜白粉病和霜霉病的病斑特点,分别为黄瓜白粉病和霜霉病提取了颜色、纹理和形状 3 个方
458
张 芳等:基于支持向量机的黄瓜叶部病害的识别研究第 4期 - -
面的特征参数[11],其中为黄瓜白粉病病斑构造特征参数 11 个(形状特征 3 个,颜色特征 6 个,纹理特征 2 个);
为黄瓜霜霉病病斑构造特征参数 8个(形状特征 3个,颜色特征 2个,纹理特征 2个)。 这些特征将作为后期病
害识别的关键特征。
1.3 SVM模式识别方法
1.3.1 支持向量机的基本原理 支持向量机是一种基于统计学习理论的机器学习算法, 它主要采用统计学习
理论的风险最小化原则,并且兼顾泛化能力和训练误差,它是一种新的模式识别方法。 SVM 算法在解决非线
性、小样本以及高维模式识别问题中表现出很多独特的优势,在函数拟合等其他机器学习问题中也得到了推广
和应用。
支持向量机主要是根据结构风险最小化原理,通过构造的目标函数将两类模式分开,主要分为线性可分和
线性不可分两类情况。对线性可分样本集(xi,yi),存在一个超平面使训练样本完全分开。最优超平面是使分类间
隔最大的这样的平面。 应用二次规划方法可求得最终的分类函数为(1)[12-13]:
f(x)=sgn{w*·x+b*}=sgn
n
i=1
Σai*yi(xi·x)+bΣ Σ* (1)
式中:ai*为 Lagrange乘子;b*为分类阈值。
对于线性不可分情况,考虑增加一个非负的松弛变量 ξi和对错分样本的惩罚常数 C,所求得的最优分类函
数与式(1)相同。对于这种非线性问题,可将输入样本从低维空间向高维空间转化成线性问题,然后在高维空间
中求最优分类面,使其变得线性可分,这就是支持向量机。 常用的核函数如下[14]。
(1)线性核函数:
K(x,y)=x·y (2)
(2)多项式核函数:
a b
图 1 复杂背景下病害叶片的分割结果
Figure 1 Segmentation results in the complex background of the disease leaf
a b图 2 病斑分割效果图
Figure 2 Segmentation effect chart of the scab
459
第 45卷沈 阳 农 业 大 学 学 报- -
K(x,y)=(x·y+1)q, (q=1,2,…) (3)
(3)径向基核函数:
K(x,y)=exp(- x-y
2
2σ2 ) (4)
(4)Sigmoid核函数:
K(xi,xj)=tanh[v(xi,yi)+c] (5)
1.3.2 SVM分类器设计 本研究分别建立了黄瓜叶片白粉病检测器和黄瓜叶片霜霉病检测器。将黄瓜叶片病
害检测器分为 2部分,第 1部分为病斑检测器,第 2部分是根据病斑检测器的结果进一步判断叶片是否患有某
种病害。 通常情况下,只要检测到某种病害的病斑,就应该判断叶片患有此类病害。 但是由于训练样本数量较
少,对病斑的多样性覆盖不全面,病斑检测器很难得到完全准确的检测结果。 通常若检测到的病斑数量很少或
病斑相对于叶片的面积比很小,则有可能是误检。 因此在训练完病斑检测器后,再利用病斑检测结果来训练判
断黄瓜叶片是否该病害的检测器。
对于病斑检测器,分别采用基于径向基核函数和线性核函数的 SVM方法;而对于叶片检测器,则采用基于
线性核函数的 SVM方法。 在使用径向基核函数和线性核函数进行病斑检测器训练时,有两个参数需要进行优
化,即错误项的惩罚参数 C和径向基函数的核参数 γ。本研究使用 k-folder交叉验证(cross validation)和网格搜
索(grid search)法来选择最优的参数。
2 结果与分析
2.1 黄瓜叶片白粉病的识别结果及分析
用于提取训练正样本的图片为患有白粉病的黄瓜叶片, 用于提取训练负样本的图片包括正常的黄瓜叶片
以及患有霜霉病的黄瓜叶片;测试叶片包括正常叶片,霜霉病叶片,白粉病叶片,以及白粉病和霜霉病的混合叶
片。 各类叶片的数量如表 1。
表 1 提供白粉病病斑检测器的样本种类和数量
Table 1 Type and quantity of samples to provide powdery mildew scab detector
训练样本的来源
Sources of training samples
测试样本的来源
Sources of test samples
正样本 Positive samples
负样本 Negative samples
种类
Type
白粉病叶片 Leaves with powdery mildew
正常叶片 Normal leaf
霜霉病叶片 Leaves with downy mildew
白粉病叶片 Leaves with powdery mildew
正常叶片 Normal leaf
霜霉病叶片 Leaves with downy mildew
白粉和霜霉混合叶片 Leaves with powdery mildew and downy mildew
数量
Quantity
14
31
15
7
30
16
7
用途
Use
白粉病病斑检测器分别采用基于径向基核函数和基于线性核函数两种方式进行训练, 白粉病叶片检测器
则根据白粉病病斑检测器的检测结果对白粉病测试叶片进行识别,识别结果表明(表 2),采用基于径向基核函
数的 SVM病斑检测器的结果进行黄瓜叶片白粉病的检测的平均正确识别率为 98.33%, 而采用基于线性核函
数 SVM 病斑检测器的结果进行黄瓜叶片白粉病的检测的平均正确识别率为 96.67%, 基于径向基核函数的
SVM 方法要优于基于线性核函数的 SVM 方法,说明基于径向基核函数的 SVM 方法更适合对黄瓜白粉病的识
别研究。
2.2 黄瓜叶片霜霉病的识别结果及分析
用于提取训练正样本的图片为只患有霜霉病的黄瓜叶片, 用于提取训练负样本的图片包括正常的黄瓜叶
片以及患有白粉病的黄瓜叶片;测试叶片包括正常叶片,霜霉病叶片,白粉病叶片,以及白粉病和霜霉病的混合
叶片。 各类叶片的数量如表 3。
霜霉病病斑检测器分别采用基于径向基核函数和基于线性核函数两种方式进行训练, 霜霉病叶片检测器
则根据霜霉病病斑检测器的检测结果对霜霉病测试叶片进行识别,其识别结果表明(表 4),采用基于径向基核
460
张 芳等:基于支持向量机的黄瓜叶部病害的识别研究第 4期 - -
表 2 白粉病测试叶片的检测结果(白粉病病斑检测器使用径向基核函数和线性核函数)
Table 2 Test results of powdery mildew test blades (powdery mildew scab detector used radial basis function and
linear kernel function)
白粉病叶片
Leaves with powdery mildew
白粉和霜霉病混合叶片
Leaves with powdery mildew
and downy mildew
霜霉病叶片
Leaves with downy mildew
正常叶片 Normal leaf
合计 Total
数量
Quantity
7
7
16
30
60
检测为白粉叶片
Detection for Leaves
with powdery mildew
7
7
1
0
准确率/%
Accuracy rate
100.00
100.00
93.75
100.00
98.33
检测为白粉叶片
Detection for Leaves with
powdery mildew
6
7
1
0
准确率/%
Accuracy rate
85.71
100.00
93.75
100.00
96.67
径向基核函数
Radial basis
functio
线性核函数
Linear kernel function
表 3 提供霜霉病病斑检测器的样本种类和数量
Table 3 Type and quantity of samples to provide downy mildew scab detector
训练样本的来源
Sources of training samples
测试样本的来源
Sources of test samples
正样本 Positive samples
负样本 Negative samples
种类 Type
霜霉病叶片 Leaves with downy mildew
正常叶片 Normal leaf
白粉病叶片 Leaves with powdery mildew
白粉病叶片 Leaves with powdery mildew
正常叶片 Normal leaf
霜霉病叶片 Leaves with downy mildew
白粉和霜霉病混合叶片
Leaves with powdery mildew and downy mildew
数量 Quantity
14
31
15
7
30
16
7
用途 Use
函数 SVM病斑检测器的结果进行黄瓜叶片霜霉病的检测的平均正确识别率为 91.7%,而采用基于线性核函数
SVM病斑检测器的结果进行黄瓜叶片白粉病的检测的平均正确识别率为 95%, 基于线性核函数的 SVM 方法
要优于基于径向基函数的 SVM方法,说明基于线性核函数的 SVM方法更适合对黄瓜霜霉病的识别研究。
表 4 霜霉病测试叶片的检测结果(霜霉病病斑检测器使用径向基核函数和线性核函数)
Table 4 Test results of downy mildew test blades (downy mildew scab detector used radial basis function and
linear kernel function)
霜霉病叶片
Leaves with downy mildew
白粉和霜霉病混合叶片
Leaves with powdery mildew
and downy mildew
白粉病叶片
Leaves with powdery mildew
正常叶片 Normal leaf
合计 Total
数量
Quantity
16
7
7
30
60
检测为霜霉病叶片
Detection for Leaves
with downy mildew
15
3
0
0
准确率/%
Accuracy rate
93.75
42.9
100
100
91.7
检测为霜霉病叶片
Detection for Leaves
with downy mildew
16
5
1
0
准确率/%
Accuracy rate
100
71.43
85.71
100
95
径向基核函数
Radial basis functio
线性核函数
Linear kernel function
461
第 45卷沈 阳 农 业 大 学 学 报- -
3 结论与讨论
研究结果表明,白粉病病斑检测器适合用基于径向基核函数的 SVM 方法,霜霉病病斑检测器适合用基于
线性核函数的 SVM方法,而基于病斑检测器检测结果的病害检测器使用线性核函数的 SVM方法。在白粉病的
检测上,对测试叶片检测的正确率为 98.33%;在霜霉病的检测上,对测试叶片检测的正确率为 95%,说明本研
究方法是一种合理、有效的分类器设计方法,并具有较高的病害识别率,为从实验室环境过渡到田间复杂环境
直接进行病害诊断奠定了良好的基础。
自从发现采用计算机图像处理技术和模式识别方法能够对植物病害进行自动识别和诊断以来, 一些专家
和学者就开始致力于研究植物病害的快速及准确的识别和诊断方法, 并且在这一研究领域取得了较好的研究
成果,弥补了传统人工识别病害的不足。 李冠林等[5]采用支持向量机的方法对获取的小麦条锈病和叶锈病的子
图像进行分类识别,识别准确率较高;田有文等 [14]采用计算机图像处理技术对黄瓜、玉米及葡萄病害进行了识
别,并取得了较好的识别效果;司秀丽[15]对在白色简单背景下采集到的黄瓜叶部病害进行了识别,平均识别率
为 87.3%。 以上研究方法都取得了较好的识别效果, 但都是基于简单背景或局部裁剪的子图像进行的分类识
别,而本研究是针对复杂背景下采集到的黄瓜叶部病害图像,采用图像处理技术和支持向量机的模式识别方法
对黄瓜叶部病害进行分割、特征提取和识别。 本研究主要是对复杂背景下发生在黄瓜叶部的病害进行了识别,
并取得了较好的识别效果;但是没有对发生在黄瓜茎部、果实和根部的病害症状进行相关的研究。 因此在今后
的研究中,还要把发生在黄瓜茎部、果实和根部等部位的症状特征也考虑进去,探讨对不同部位的病害进行综
合诊断的方法研究。
参考文献:
[1] 耿 英.基于图像识别的作物病害诊断研究[D].合肥:中国科学技术大学,2009.
[2] 刘立波.基于图像的水稻叶部病害诊断技术研究[D].北京:中国农业科学院,2010.
[3] 田有文,李天来,李成华,等.基于支持向量机的葡萄病害图像识别方法[J].农业工程学报,2007,23(6):134-136.
[4] 田有文,王 滨,唐晓明.基于纹理特征和支持向量机的玉米病害的识别[J].沈阳农业大学学报,2005,36(6):730-732.
[5] 李冠林,马占鸿,王海光.基于支持向量机的小麦条锈病和叶锈病图像识别[J].中国农业大学学报,2012,17(2):72-79.
[6] 刘婷婷.基于支持向量机的水稻纹枯病识别研究[J].安徽农业科学,2011,39(28):17580-17582.
[7] BELONGIE S,MALIK J,PUZICHA J.Shape matching and object recognition using shape contexts [J].IEEE Transactions on
Pattern Analysis and Machine Intelligence,2002,24(24):509-521.
[8] MORI G,REN X,EFROS A,et al.Recovering Human Body Configurations: Combining Segmentation and Recognition[C]//IEEE
Computer Vision and Pattern Recognition,2004.
[9] 赵进辉,罗锡文,周志艳.基于颜色与形状特征的甘蔗病害图像分割方法[J].农业机械学报, 2008,39(9):100-103.
[10] 杨文明,陈国斌,沈哗湖.一种基于分水岭变换的图像分割方案[J].浙江大学学报:工学版,2006,40(9):1503-1510.
[11] 张 静,王双喜,董晓志,等.基于温室植物叶片纹理的病害图像处理及特征值提取方法的研究[J].沈阳农业大学学报,2006,37(3):
282-285.
[12] 田有文,于琳琳,杨镔.基于支持向量机的电气设备运行状态图像识别方法研究[J].沈阳农业大学学报,2008,39(5):638-640.
[13] 刁智华.大田小麦叶部病害智能诊断系统研究与应用[D].合肥:中国科学技术大学,2010.
[14] 田有文.现代图像识别技术诊断农作物病害[M].北京:中国农业出版社,2010.
[15] 司秀丽.黄瓜病害图像处理与识别技术的应用研究[D].长春:吉林农业大学,2006.
[责任编辑 亓 国]
462