基于FA-SVM技术的烟草早期病害识别
2020-08-17张红涛许帅涛刘迦南
张红涛,朱 洋,谭 联,许帅涛,刘迦南
(1.华北水利水电大学 电力学院,河南 郑州 450011; 2.西安电子科技大学 机电工程学院,陕西 西安 710071)
我国是烟草主要生产国和消费国之一,烟叶总产量占全球的39.7%,烟草行业已成为我国社会经济的重要支柱产业,其行业的发展一直是人们关注的焦点[1-3]。烟草在生长过程中,会受到病虫害的侵染,降低产量与质量,影响行业和国家经济的发展。病害是影响烟草产量的主要因素,其中,以烟草赤星病和蛙眼病造成的危害最为严重,如能在病害的早期实现合理的防治,可以有效降低病害导致的经济损失。烟草蛙眼病和赤星病2种病害的早期病斑相似度大,难以用肉眼区分,目前主要的病害诊断主要依靠植保专家或农户判断,容易对早期烟草病害进行错误判别,不能及时有效的控制住病情,影响烟草行业的发展。因此,烟草病虫害的检测与防治一直以来都是研究的重点和难点[4-7]。
喻勇等[8]利用机器视觉的方法对烟叶常见病害进行识别,对赤星病的识别率达到90%,但蛙眼病的识别率仅为44%。王建玺等[9]利用模糊模式识别技术对烟草病害进行判别,该方法对烟草野火病和角斑病的识别率较高。滕娟[10]采用支持向量机(Support vector machine,SVM)技术对烟草病害进行识别,并取得了良好的效果。SHAO等[11]设计了烟草常见病害识别系统,该系统对烟草病害整体的识别率达到92.5%。李敬[12]利用卷积神经网络对烟草常见病害进行分类识别,识别率达到90%。张艳令[13]研发了烟草病害自动识别系统,对烟草常见病害的平均识别率达到90%以上。
由以上可知,学者们利用各种技术对烟草病害的识别进行深入研究,并取得一定的成果。但大都是根据叶片的中后期病斑形态对病害进行判别,难以实现对病害的及时防治。本研究提出一种基于萤火虫算法优化支持向量机(FA-SVM)技术的烟草蛙眼病与赤星病早期判别方法。以烟草蛙眼病与赤星病2种病害为研究对象,利用计算机视觉实现对其早期判别。
1 材料和方法
1.1 病斑图像采集与处理
利用手机对病斑图像进行采集,型号为华为P9(分辨率:1 920 dpi×1 080 dpi;摄像头:1 200万像素),拍摄时间为9:00—12:00和15:00—18:00,样本采集地点为河南省平顶山市鲁山县甘树里村,采样时间为2019年6月底到8月中旬。
对感染了2种病害的400组(每种病害200组)烟草植株进行标记,每天定时对病斑图像进行采集,观察病斑的变化。分别拍摄2种病害的早、中、晚期病斑图像。本研究共采集1 200张病斑图像样本(早、中、晚期各200张样本),把其中的900张作为训练集,剩下的300张作为测试集。2种病斑早期和中期样本图像分别如图1、2所示。
图1 烟草蛙眼病Fig.1 Frog eye disease of tobacco
图2 烟草赤星病Fig.2 Brown spot of tobacco
图像中背景部分主要为植物叶片,病斑图像在颜色、纹理等方面与背景图像相差较大。根据目标与背景的颜色差异,并结合图像处理方法实现对病斑图像的分割。
1.2 虫体特征提取
由图1、2可知,烟草蛙眼病与赤星病早期的2种病斑在大小、颜色和纹理上都较为相似,难以用肉眼去观察区分,需利用机器视觉的方法对其进行识别。2种病害的早、中期病斑在颜色、纹理和形态上有明显的不同,故共提取了2种病斑的形态学、颜色和纹理等共计32个特征,部分特征定义如下:
灰度共生矩阵是一种通过研究灰度的空间相关特性来描述纹理的常用方法[14-15]。如下公式中,G为图像的灰度共生矩阵,K为图像的灰度级数。
能量(ENG):
(1)
ENG又称角二阶矩,表征图像中灰度分布的均匀程度,图像灰度越均匀,能量就越小,反之能量越大。
对比度(CON):
(2)
CON表征图像纹理的深浅程度。图像纹理间灰度值差距大,对比度就高,反之对比度低。
逆差矩(IDM):
(3)
熵(ENT):
(4)
ENT表征图像中含有的信息量,熵值越大,则图像中包含的信息越丰富,或图像的纹理较为复杂。
自相关性(COR):
(5)
(6)
(7)
(8)
(9)
COR表征图像的像素在行或列方向上的相似程度,若灰度值差别较大,则相关性较小,反之相关性较大。
三阶矩(μ3):
(10)
μ3表征直方图的倾斜程度,当直方图对称时,μ3=0,当μ3>0,直方图朝高灰度值偏斜;当μ3<0,直方图朝低灰度值偏斜。
一致性(u):
(11)
当图像中某一区域的灰度值相同时值最大,然后沿着此值开始下降。
形态学特征可以反映目标基本形态的变化,是图像处理与模式识别中的一类重要特征。
面积(A):
(12)
A表征目标图像的大小,f(x,y)表示坐标为(x,y)的像素点,M、N为横坐标和纵坐标的最大值。
周长(P):
P=A-sum(in)
(13)
P反映目标的大小信息,sum(in)表示四邻域为目标的像素点的总和。
圆形度(e):
(14)
e反映目标的复杂程度,A为目标面积,P为目标周长。
宽长比(C):
(15)
H为最小外接矩形的宽,L为最小外接矩形的长。
平均灰度(ave):
(16)
ave表征目标图像的灰度信息,f(i,j)为像素点(i,j)的像素值,N为目标像素点数。
颜色矩是一种颜色特征表示方法,有一阶矩、二阶矩和三阶矩等,其颜色特征主要分布在低阶矩中,所以利用一阶矩、二阶矩和三阶矩足以表达图像的颜色分布。
颜色一阶矩(μi):
(17)
pi,j表示彩色图像第j个像素的第i个颜色分量,N表示图像中像素个数。该特征主要表征各颜色分量的平均强度
颜色二阶矩(δi),表征待测区域的颜色方差,即不均匀性。
(18)
颜色三阶矩(si),表征颜色分量的偏度性,即不对称性。
(19)
1.3 特征优化方法
蚁群算法是一种模拟蚂蚁觅食行为的优化算法,在解决旅行商问题、多目标优化等方面有广泛应用[16]。利用蚁群算法优化原始特征空间,选取最优特征组合,其基本过程如下:
1)蚂蚁在觅食的过程中会在行走路径上释放信息素。
2)当蚂蚁碰到有没走过的路口时,会随机挑选一条路走,同时释放信息素。信息素的含量与行走的路径长度相关,行走路径越长,信息素的含量越低,路径越短,信息素含量越高。
3)当后来的蚂蚁再次经过该路口时,会选择信息素含量较高的路径。
4)最优路径上的信息素含量越来越高,其他路径上的信息素含量越来越低。
5)最终蚁群寻找到最优路径。
1.4 FA-SVM理论基础
萤火虫算法(Firely algorithm,FA)是一种启发式算法,灵感来源于萤火虫的闪烁行为[17-18]。利用萤火虫算法优化支持向量机参数,以适应度函数作为参数选择依据。支持向量机是一种有监督学习的二分类模型,通过寻求结构化风险最小来提高学习机的泛化能力。将线性不可分的问题映射到高维空间,建立分类超平面,实现高维空间中的线性可分[19-21]。利用萤火虫算法优化支持向量机参数,寻找最佳惩罚因子(c)与径向基核函数参数(g)参数组合,以达到更好的分类效果。
2 结果与分析
2.1 图像分割结果分析
由图1、2可知,2种病害的中期病斑与叶片在颜色和纹理上有明显的不同。利用中值滤波方法对样本图像进行滤除处理,利用超绿分割算法分割出叶片图像,结合连通区域标记法去除小面积样本,消除噪声影响。对分割出的叶片图像进行二值化操作,并进行取反,得到病斑二值图像如图3所示。
图3 烟草中期赤星病与蛙眼病病斑二值化Fig.3 Binary of mid-term brown spot and frog eye disease of tabacco
利用病斑的二值图像对原始样本图像进行处理,去除叶片背景,得到2种病害的病斑图像,如图4所示。
由图3、4可知,该方法有效去除了叶片背景,分割出2种病害的病斑图像,有利于后续的特征提取。且2种病害在中期的病斑图像有明显的不同,其形状、颜色和纹理有较大的差异。
2.2 特征优化分析
试验利用蚁群算法优化原始特征空间,以适应度函数作为特征选择依据。在蚁群算法中,设置蚂蚁数量为50个,信息度启发因子为1,期望值启发因子为3,信息素挥发因子为0.6,信息素增量为10,最大迭代次数为100次。设置15次特征优化组合,记录每次的适应度值及交叉验证率。
图4 烟草赤星病与蛙眼病中期病斑Fig.4 Mid-term of brown spot and frog eye disease
由表1可知,当选择特征组合为第10组时,适应度值和交叉验证率均达到最高,分别为95.68和93.21%。此时选择的特征组合为R1、B3、H1、S1、H2、V2、S3、矩形度、复杂性、能量、对比度、熵、平均灰度共计13个特征。
表1 特征优化选择结果Tab.1 Result of feature optimization
2.3 早期病害识别
本研究共采集1 200张病斑图像样本(早、中、晚期各200张样本),把其中的900张作为训练集,剩下的300张作为测试集。根据优化后的特征组合,利用萤火虫算法优化支持向量机的、参数,并对2种病斑进行判别。在蚁群算法中,设置种群规模为20个,待优化参数为2个,参数取值范围为[0.01,100],最大迭代次数为50次,当c=94.12、g=2.43时,识别率达到96%,如表2所示。由表2可知,烟草蛙眼病与赤星病早期病斑图像共有8张被误识,其早期病斑图像识别率为92%。2种病害早、中和晚期的病斑图像共有12张被误识,对2种病害不同时期的整体识别率为96%。由识别结果可知,利用机器学习的方法可有效识别出烟草蛙眼病和赤星病2种病害。
表2 烟草赤星病与蛙眼病识别Tab.2 The recognition of brown spot and frog eye disease
3 结论与讨论
前人利用数字图像处理、特征融合等技术方法对烟草病斑区域进行检测,实现了对病斑图像的提取与识别,但对早期烟草病害识别的研究较少,且达不到理想的识别效果[22-24]。本研究提出一种基于机器视觉的烟草早期病害识别方法。利用可见光采集病害图像样本,具有高效、操作简单等优点。运用蚁群算法优化原始特征空间,选取最优特征组合,降低特征的维数,便于分析和处理。利用萤火虫算法优化支持向量机的参数,选取最佳参数组合,提高了分类器性能。
前人利用各种技术对植物病害进行识别,取得了一定的成果,但大都是以病害的中、后期为研究对象,此时已造成了作物减产,不能够及时提供合理的防治措施。本研究对病害的早、中、晚期进行系统的分析。赤星病与蛙眼病2种病害的早期病斑在颜色、纹理和形态上都较为相似,难以对不同病害采取及时有效的防治,传统的识别需要依靠专家和农户的经验进行判断,容易造成误判,错过最佳防治时机。通过机器学习的方法可以有效避免人为的主观性,达到更加精确的识别效果。本研究表明,利用萤火虫算法优化支持向量机技术对烟草蛙眼病和赤星病进行判别,早期2种病斑的识别率达到92%,整体识别率达到了96%,有效识别出烟草赤星病与蛙眼病,可为制定合理的防治措施提供科学依据。但同时该方法也存在一些不足的地方,可能存在更好表达早期不同病害差异的特征未被提取,如若能利用深度卷积神经网络等新技术对不同病害进行识别,可以在一定程度上避免因特征提取带来的误差,进一步提高识别率,实现更加精确的判别,这也是下一步研究的重点。