张富贵 叶 磊 李德伦 吴雪梅
(1.贵州大学机械工程学院 贵阳 550025)(2.贵州省烟草科学研究院 贵阳 550025)
烤烟是贵州省农村地区一项重要的经济作物,烟叶的等级评定是烟草行业的一项基础性生产环节。长期以来,传统的烟叶分级形式都是依靠烟叶分级人员及手摸、眼看、鼻闻的方式来进行,然后通过分级人员的感官评价对烟叶等级(比如叶片结构、身份、油分等)进行分类。由于在收购环节全部采用人工分级,存在分级效率低、受分级人员主观性影响较大等问题,常常会出现物不符级情况,给烟草分级行业带来了不良影响[1~3]。
随着对机器视觉技术研究的不断深入,利用机器视觉技术创建烟叶分级系统的研究成果丰富,其原理是在数字图像的基础上通过图像处理手段提取用于表征烟叶属性的特征,利用大量的样本与特征结合多种分类器进行学习训练,对烟叶等级进行评判,以获得较好的分级效果[4~5]。那么对于烟叶特征的选择将直接影响分类系统的性能,大量冗余的特征会增加分类模型的复杂度。因此选择有效特征的研究,对于烟叶分级系统具有重要意义。
本文针对烟叶分级模型的特征优选问题,提出了一种利用随机森林算法(RF)结合支持向量机(SVM)的方法,对烟叶特征按对分类模型的贡献度排序,筛选出对分类模型准确率影响较大的特征建立最优特征子集,并利用PSO对SVM的C、g参数寻优,建立RF-PSO-SVM 分类模型,对筛选的特征子集进行学习训练,实现更好的烟叶等级分类效果。
本文利用课题组提供的贵州省安顺市平坝烟区烤烟样本图像,烟叶品种均为云烟87 型烤烟。所需样本均由贵州省贵阳市烟草科学研究院专家定级,并在自制的黑色背景采集箱中,通过型号为MV-VD078SM/SC 的面阵CCD 工业相机,在白色光源,光照为90lux,色温为5000K-8000K的条件下采集烟叶等级为C2F、C3F、C4F、C2L、C3L 与C4L 的正反面图像共215*2=430 张。每个等级烟叶样本数量见表1。
表1 烟叶等级与数量
在烟叶图像采集过程中,受外界光的影响,使得图像亮暗区域不一致,导致重要的细节信息被覆盖,严重影响烟叶特征参数提取。传统的直方图均衡在改善图像对比度时都采用同一直方图变换,这种方法对于有明显亮暗差异的图像不能起到很好的增强效果。因此本文采用自适应的直方图(AHE)均衡[6]来改善图像的对比度,通过计算每一个显著性区域的直方图来增强图像的边缘信息,有利于后期的图像背景分割以及特征提取。AHE 算法的缺点是当邻域过大时会过度增强均匀区域的噪音。由图1 可知当邻域尺寸size=6 时,既能起到好的增强效果,且没有引起均匀区域噪音的增强。
图1 不同邻域下均衡化图像对比
CCD相机采集的图像带有大量的颜色信息,直接处理彩色图像对硬件系统要求较高,因此需要将彩色图片转化为灰度图像,转换的方法主要有最大值法、分量法、加权平均法和平均值法等[7]。现有的研究中发现利用加权平均法进行灰度化最符合人类的视觉感受,加权公式为
其中式中R(x,y)、G(x,y)、B(x,y) 分别为像素(x,y)点的R、G、B 三个分量的值,G(x,y)为图像的灰度值。
在提取烟叶特征时需要将烟叶图像做二值化处理,本文借鉴文献[8]中的最大类间方差法(Otsu)对滤波后的图像进行二值化处理,最大类间方差法(Otsu)简单效果好,使用方便,可以直接在Matlab 软件中调用graythesh()函数,该函数根据烟叶区域与背景的灰度差异自动确定Otsu法的阈值,然后调用im2bw()函数实现Otsu 法二值化处理,利用imfill()函数进行小范围的孔洞填充,保证烟叶的完整性,最后将烟叶的原始颜色还原到二值化图像上。
工业CCD 相机所获取的烟叶图像为RGB 图像,使用RGB 模式来表示不同等级烟叶颜色特征的变化情况常常达不到理想的效果。因此本文采用更接近与人眼视觉感官的HSV 颜色空间模型提取烟叶图像的颜色特征[9],分别计算H、S、V 三个通道的三个低阶颜色矩来表达烟叶图像的颜色分布情况,共提取三个通道的烟叶正反面颜色特征2*3*3=18个。计算公式如下:
LBP 算子具有灰度不变性和旋转不变性等优点,常被用来描述灰度图像的纹理特征[10],LBP 算子的基本原理是在灰度图像中3*3 个像素的矩形图像区域内,将像素区域中心点的灰度值视为该矩形区域阈值,并与四周8 个像素点区域的灰度值做差运算,若差值大于零则记为1,反之为0,然后将得到的8 位二进制数值顺时针读取,所得的值作为该局部区域的纹理值,其原理图如图2 所示。但使用LBP算子描述的纹理特征维度大、信息冗余度过高,运算难度大,使用降维处理又容易造成纹理特征的损失。20 世纪70 年代初Haralick 等[11]提出一种描述灰度图像的纹理特征统计方法—灰度共生矩阵(GLCM),灰度共生矩阵(GLCM)的原理就是统计灰度图像中某个固定像素点的灰度值与相隔距离为d,位置方向为θ的像素点的灰度值在图像区域内出现的概率Pij,其中θ取值为0°,45°,90°,135°[12]。基于以上研究,本文将二者结合提取图像能量、熵、对比度、同质性的均值与标准差等8 个参数来表征图像的纹理特征可以有效的减少LBP 特征的信息冗余度,提高算法的鲁棒性。其参数说明及计算公式如下所示。
图2 LBP算子原理图
1962 年Hu 提出二维不变矩理论,根据力学中矩的概念,将区域内部的像素作为质点,像素坐标作为力臂,利用不同阶的矩来表示图像区域的形状特征,利用归一化中心矩推导出7 个具有平移、旋转和缩放不变性等优点的不变矩特征[13]。故本文采用不变矩来描述烟叶的形状特征。不变矩计算表达式如下:
随机森林算法是一种以决策树为基础的集成学习算法,在特征工程中,随机森林能从大量的样本特征中识别出重要的特征,其原理是根据每个特征在随机森林中每个决策树贡献度的大小,通常用基尼指数作为评价指标来衡量[14]。本文利用RF-SVM 算法计算烤烟正反两面9 个颜色矩特征、8 个纹理特征7 个不变矩特征共2*(9+8+7)=48 个烟叶特征对SVM分类模型的贡献度排序如图3。
图中f表示烟叶的反面特征,由图3 可知,烤烟正面V通道、反面S、V 通道三阶颜色矩、同质性与H通道的二阶矩特征对模型较重要,不变矩特征贡献度较少,对模型影响较小。
图3 特征重要程度
支持向量机算法对于处理高维非线性模式识别问题时,具有一定优势,算法的核心是利用核函数映射的方法将线性不可分样本数据转化到高维空间,并在高维空间建立分类器[15]。在数学模型上SVM映射后的特征向量,在特征空间中划分超平面的模型为
其最小化函数为
为了便于计算将其转化为它的对偶问题:
求解可得到:
其中κ(xi,xj)为xi、xj在高维空间中的内积,即核函数。
SVM 常用的核函数有线性核函数、Sigmoid 核函数、多项式核函数与RBF 核函数,因为RBF 核函数应用较为广泛,且效果较好,在此本文选用RBF核函数。
粒子群算法来源于对鸟群捕食活动的研究,它将每一只捕食的飞鸟看作一个随机粒子,并用粒子的位置与速度来表示,粒子的初始位置与速度都是随机的,粒子通过不断的迭代来更新自身的位置,粒子位置的优劣根据适应度值来调整[16]。每迭代一次,在整个族群中会产生一个最优解即全局极值,每个个体粒子的最优解即个体极值。粒子速度与位置的更新公式如下:
式中:c1、c2为学习因子,r1、r2为随机函数,用以增加搜索随机性,k 为迭代次数,ω为惯性权重,调节搜索解的能力。
在RF-SVM 分类模型中将烤烟正反两面的纹理,颜色与形状共48 个特征作为输入,经RF-SVM算法得到影响SVM 模型预测效果贡献度最高的特征子集,再将得到的特征子集作为PSO-SVM 分类模型的输入对烤烟等级进行分类。RF-PSO-SVM分类模型对烤烟等级预测流程如图4所示。
图4 RF-PSO-SVM烤烟分类流程图
在RF-SVM 算法中,各个等级70%烟叶样本被划分为训练集,30%烟叶样本被划分为测试集,通过RF 算法特征选择重要性度量,依次选取不同数量的特征组成不同子集来测试SVM 分类性能,图5为不同特征子集下SVM的分类准确率。
图5 不同特征子集下SVM的分类准确率
由图5 可以看出大量的特征并没有提高模型的分类性能,甚至会降低。当子集数量小于15 时,随着特征数量的增加,模型的分类性能整体趋势向上,当子集数量等于15 时,达到最高分类准确率82.8125%,此时最优子集由前15 个特征组成,当子集数量达到21 时,模型最后一次达到最优,因此可以认为前21个均为有效特征。
经过多次实验最终确定使用PSO 寻优SVM 分类模型的C、g 参数时,学习因子c1=1.5、c2=1.7,迭代次数为200 次,权重因子为2,C、g 优化范围[0.1,100]、[0.1,1000],得到适应度曲线如图10 所示,迭代到30 次以后达到最优值,此时C=81.1461、g=0.2329。
图6 PSO适应度曲线
为了说明RF-PSO-SVM 分类模型的优势,本文将RF-PSO-SVM 分类模型与SVM、PSO-SVM 三种模型在全部特征子集与最优子集中进行测试,并比较分类结果。
表2 显示经过RF-SVM 特征筛选后,SVM 分类器的分类准确率提高了9.375%,算法的运行时间减少了13s,分类器的性能得到了提高;经PSO-SVM 优化C、g 参数后SVM 分类器的准确率提高了14.0625%,但运行时间增加了297s;本文提出RF-PSO-SVM 分类器相比SVM 分类器准确率提高了17.1875%,运行时间增加234s;相比PSO-SVM分类器准确率提高了3.125%,运行时间减少63s。
表2 不同特征子集下不同分类器性能对比
本文对烤烟图像进行处理,提取烤烟的烟叶特征、纹理特征与形状特征,对RF 算法、PSO 算法与SVM 算法进行理论介绍,提出并建立RF-PSOSVM烤烟分类模型,该模型首先使用RF-SVM对烤烟特征进行筛选,然后将筛选的特征子集输入到PSO优化后的SVM分类器中,实现对烤烟等级的预测。本研究可得出以下结论:
1)利用自适应直方图均衡算法对烟叶图像进行对比度增强过程中,邻域尺寸size=6 时,既能对图像起到好的增强效果,并且不会引起均匀区域噪音的增强。
2)利用RF-SVM 对烟叶特征进行贡献度排序发现,烟叶的反面颜色特征与纹理特征更有利于分类模型对烟叶进行分级,而不变矩特征对分级模型分类准确率影响较小。
3)利用RF-PSO-SVM 算法建立的烟叶分类模型可以在保证分类准确率的情况下,降低分类算法的运行时间,减少了数据集的特征维度,对烟叶的分类识别具有一定的参考价值。