层次支持向量机在色木孔洞缺陷检测中的应用

2014-08-23 02:23王浩洋邢艳秋孟宪静
森林工程 2014年2期
关键词:孔洞木材分类器

王浩洋,邢 涛,邢艳秋,孟宪静

(东北林业大学 工程技术学院,哈尔滨 150040)

为了使木材被高效合理的利用,木材缺陷无损检测方法的研究一直是学者们研究的热点。木材无损检测技术方法很多[1],如微波检测、激光检测、射线检测、核磁共振检测、声发射检测、超声波检测以及应力波检测等,但这些方法都有检测方法繁琐,检测设备沉重,不便于携带的局限性[2]。敲击检测法是一种通过激励被检试件,使其产生机械振动(声波),并收集振动信号,通过分析振动信号判定被检测对象的质量的方法。相比之下,根据木材的声脉冲响应特点的检测方法具有快速、简单方便的优点[3-4]。但目前有关利用敲击检测法进行木材检测的研究还很少。

近年来,支持向量机作为一种模式识别技术,成功应用于机械故障检测、农产品品级检测与分类、结构损伤识别等领域[5-8]。与基于传统理论的方法相比,基于统计学理论的支持向量机在解决小样本、非线性、高维模式识别问题时,表现出良好的性能[9-10]。SVM正在成为继神经网络之后新的研究热点。这些特点正好可以满足木材缺陷特征较为复杂,样本数较少的要求,使得支持向量机适用于木材孔洞缺陷的检测。

本文以色木木材试件为研究对象,根据木材的声脉冲响应特点,提出利用层次支持向量机对木材孔洞缺陷进行识别的方法,并与一对一SVM算法和BP神经网络算法进行比较。通过试验验证结果表明,该方法具有更快的识别速度和更高的识别精度,是一种可行的方法。

1 材料与方法

1.1 仪器与材料

实验设备主要包括两部分:机械冲击发生装置和声波信号采集装置。机械冲击发生装置是在试件的一侧固定一个单摆,摆锤敲击试件端面来产生激励,进而产生声脉冲响应信号,以备声波信号采集系统进行采集。

声波信号采集装置在结构上分为三层:声波信号采集系统、硬件数据处理平台和上位机软件系统。声音信号采集系统采用24位立体声音频编解码芯片WM8731,通过I2C总线接口协议对该芯片进行配置。硬件数据处理平台基于FPGA的SOPC嵌入式系统技术NIOS软核开发,实现了声波信号的采集、程控放大、数据传送、数据存储等功能。FPGA芯片采用Altera公司的Cyclone III EP3C16Q240C8N芯片。上位机软件系统采用C语言编写,实现了上位机与底层之间的USB2.0通信,并可以显示和保存采集到的数据,以备下一步的数据处理。

本实验使用加工规格为420×60×60(mm)的色木试件。试件分别制成未钻孔的标准件、钻距端部10 cm的端部孔试件和钻中间孔的中间孔试件,所钻圆孔直径d=40 mm,孔径与试件宽度之比2∶3。为减小木材含水率和材质纹理差异对实验的影响,所用试件取材于同一棵色木的心材。

1.2 实验设计

选择以上3种试件,在相对安静的环境中进行敲击,以减小外界噪音对实验的影响,实验装置如图1所示。在试验过程中,为了减少摩擦对采集信号所造成的影响,使试件处于“自由状态”,因此,将试件放置于水平的消音泡沫之上。再通过调节单摆摆锤摆角为60°,使每次敲击的力度保持一致。通过高灵敏度麦克风采集摆锤碰撞试件端部所产生的声波信号,采样频率为48 kHz,将其上传至计算机中进行数字信号的处理,分别提取时域和频域特征,然后使用层次支持向量机分类器对其进行分类识别,实验流程如图2所示。

1.3 预处理

所选取的3种试件在物理结构上的不同,必然引起声信号的不同,由此认为,通过分析声信号可以区别3种类型的试件。由于采集的原始声信号的起始点不同,因此要对原始信号进行预处理,使用Matlab软件对所有原始信号截取长度为512个采样点的数据,起始点位于原始信号的最大振幅前第50个采样点。

图1 实验台

图2 实验流程

1.4 特征提取

通常描述一个对象的元素有很多种,而且能够描述对象的特征是无穷维的,不可能把这无穷维的特征都输入到计算机中,特征提取要解决的就是,在满足分类识别准确率要求的条件下,尽可能选择对分类识别作用大的特征,以期用较少的特征完成分类识别任务。由于声信号是一种随机信号,为了提取潜在的特征,需要从时域和频域对它进行处理和分析。

1.4.1 时域特征

时域分析法是通过对时域信号进行特征参数提取和对比分析的一种方法。本文所提取的时域特征为时域分析中常用的特征参数,具体有峰度、偏度、方差、最大幅值、幅值总和、平均波峰值及波形平均全波宽度等7种特征。经相关性分析可知以上八种特征具有较好的独立性。将所有样本的原始波形数据通过Matlab软件自带函数和编程进行处理,得到用于支持向量机分类的特征数据。3种典型的声信号波形如图3所示。

图3 原始声音信号数据时域波形图

1.4.2 频域特征

为了提取信号的频域特征,本文采用Welch功率谱估计方法,快速傅立叶变换点数为512,采样频率为48 kHz,窗函数选择汉明窗,长度为512。3种典型试件的功率谱曲线如图4所示。

图4 原始声音信号数据功率谱曲线

可以看出,3种信号的功率谱曲线差异明显,能量分布各不相同,最大幅值存在差异,故提取功率谱最大能量值作为分类特征可以大大提高分类准确率。

经过以上分析和处理,使用以上8种特征构造特征矩阵,以作为支持向量机的训练集和测试集使用。

1.5 支持向量机基本原理

支持向量机(Support Vector Machine SVM)是Vapnik和Cortes等人在统计学理论的基础上提出的一种监督式学习的方法。该方法采用结构风险最小化原则,提高了学习机的泛化能力,是由有限训练样本得到的决策规则对独立的测试集仍能够得到小误差的一种方法,很大程度上解决了模型选择与过学习问题、非线性和维数灾难、局部收敛等问题,成为目前研究的热点。

设给定的训练集为{(x1,y1),…,(xi,yi)},其中xi∈Rn,yi∈{-1,1},x为训练样本,y为样本标签,i为样本总数,n为空间维数。支持向量机就是要寻求一个能将所有向量正确划分并且距离平面最近的异类向量之间的距离最大的最优超平面w·x+b=0,其中w为超平面的法向量,b为超平面的偏移量,其中距离超平面最近的异类向量被称为支持向量(Support Vector)。转化成数学模型描述如下:

(1)

s.t.yi(w·xi+b)≥1-ξi,yi(w·xi+b)≥1-ξi,ξi≥0。

其中,c为惩罚参数;ξi为松弛变量;c>0为惩罚参数;控制对错分样本的惩罚程度。为折衷考虑最小错分样本和最大分类间隔,引入松弛变量ξi。

2 分类和结果

2.1 支持向量机分类

针对二分类问题提出的支持向量机,应用到实际问题,必须扩展到多分类问题中。对于多分类问题,主要有两种解决方案:一种是多输出支持向量机算法。其主要思路是直接建立多分类目标函数,进行求解。采取该算法的SVM分类器,其计算复杂度高,训练和识别非常耗时。第二种是将多分类问题转化为多个二分类问题进行求解。一对一SVM分类算法是在所有种类两两之间构造SVM分类器,这种算法需要构造的SVM分类器个数多,计算复杂度大,训练和识别的速度慢,存在不可识别域。

这里,提出了一种新的层次SVM算法。对于一个K类的数据集:(xi,yi),i=1,2,…,l,xi∈RD,yi∈{1,2,…,K}。

其中,i为样本数;D为特征向量的维数;K为种类数。首先,对于K类样本,把其中一类作为优先级最高的一类,其余的K-1类作为余类。构建一个名为SVM1的支持向量机分类器。然后,将优先级最高的一类排出,在剩余的K-1类中,再选择优先级最高的一类提出,将剩余的K-2类作为新的余类,构建一个新的支持向量机分类器SVM2。以此类推,直到剩余两类,构建最后一个支持向量机分类器SVMK-1。通过这种方式,K-1个可以支持向量机分类器可以解决K类样本分类的问题。层次支持向量机可以看作是由具有优先级的二叉树支持向量机构成的。

对于要分成三类的数据,其结果中不存在不可识别域。此外,它只需要K-1个二分类支持向量机分类器,而一对一算法需要K(K-1)/2个。显然,较少的分类器有助于提高训练和识别的速度。同时,层次SVM算法也减少了重复训练量。

根据试件的不同孔洞缺陷类型的特点,设计中将使用两个支持向量机,用以区分3种不同孔洞缺陷的类型:无孔洞、中间孔和端部孔。所有3种类型的样本,在第一次支持向量机(SVM1)分类后,从其他两种类型(中间孔和端部孔)分离出无孔洞类型。当输入到支持向量机中的是无孔洞的样本,SVM1输出为-1,否则+1。在第二次支持向量机(SVM2)分类后,SVM2将中间孔和端部孔两种类型分开。当输入到支持向量机中的是一种中间孔样本,SVM2输出为-1,否则+1。

基于层次SVM分类的的木材孔洞缺陷识别的基本原理如图5所示。

图5 层次SVM算法框架

2.2 分类识别

本实验采用K(x,x′)=exp(-‖x-x′‖2/σ2)作为支持向量机的核函数。根据支持向量机理论可知,核参数和惩罚参数的选取对SVM分类器性能的影响很大。参数优选问题一直是支持向量机理论和应用研究中的重点问题[12]。找到优化参数组合,可使支持向量机的泛化能力提高。为了提高支持向量机的预测效果,采用粒子群算法(PSO)对SVM中的参数进行的全局搜索。设置粒子群搜索参数:群体规模为20,粒的向量维数为2,C1= 1.5,C2= 1.7,迭代次数为200。最优粒子的适应度变化如图6所示。得到的最优参数组合为C=17.2,G= 3.9.将训练后的模型用于测试样本的判别。

图6 最优粒子适应度变化曲线

本实验在Matlab 7.13环境下,采用上述支持向量机算法,选取无孔洞试件、中间孔试件和端部孔试件各50个声脉冲响应信号作为样本集,其中30个作为训练集,20个作为测试集,按照上述方法训练层次SVM,再将测试集输入到训练好的层次SVM中进行测试。本实验的识别效果见表1。

表1 层次SVM的识别结果

由此实验结果可知,建立的层次支持向量机具有较好的识别能力,对3种样本的识别准确率都在95%以上,对无空洞试件的识别效果最好,达到了100%,充分说明了层次支持向量机分类器可以实现3种不同类型缺陷试件的分类。

为了判断本层次SVM模型的识别效果,同传统的一对一SVM 模型与BP神经网络模型进行了比较,3种算法都使用相同的样本进行测试。测试结果见表2。

表2 不同方法的识别时间和准确率

由此可以看出,用层次支持向量机算法对木材孔洞缺陷进行识别,相对识别时间为55和识别准确率为96.6%,优于一对一SVM算法和BP神经网络算法,因此所建模型具有很好的识别效果和实际意义。

3 结束语

本文设计了一种声波信号采集处理系统,并对采集到的声信号进行时域和频域分析和处理,提取信号特征,通过建立的层次支持向量机分类器对木材孔洞缺陷进行识别,试验结果表明,层次SVM算法可以正确的对木材孔洞缺陷进行识别,不存在不可识别域。与其他一些算法相比,它具有更高的精度。这为木材孔洞缺陷的识别提供了一种可行的方法。

本方法仍需改进,以期达到对木材孔洞缺陷更精确的识别。本文研究的信号都是在较理想条件下获取的,在实际生产过程中会有噪声的影响,而且木材还存在多孔的情况,在这种情况下木材的声信号会更复杂,将是今后的主要研究方向。

【参 考 文 献】

[1] 梁善庆,蔡志勇,王喜平,等.北美木材无损检测技术的研究与应用[J].木材工业,2008,22(3):5-8.

[2] Junjae L,Chul K K.Patterns of resist graphs for evaluating deteriorated structural wood members[J].Journal of the Korean Wood Science and Technology,2003,31(6):45-54.

[3] 邬冠华,林俊明,任吉林,等.声振检测方法的发展[J].无损检测,2011,33(2):35-41.

[4] 冷劲松,杜善义,王殿富,等.复合材料结构敲击法无损检测的灵敏度研究[J].复合材料学报,1995,12(4):99-105.

[5] 陈理渊,黄 进.基于支持向量机的电机转子断条故障诊断[J].电工技术学报,2006,21(8):48-52.

[6] 周绮凤,宁永鹏,周青青,等.一种基于支持向量机的结构损伤识别方法[J].厦门大学学报(自然科学版),2013,52(1):57-62.

[7] Hosainpour A,Komarizade M H,Mahoundi A,et al.High speed detection of potato and clod using an acoustic based intelligent system[J].Expert Systems with Applications,2011,38:12101-12106.

[8] Khalesi S,Mahmoudi A,Hosainpour A,et al.Detection of walnut varieties using impact acoustics and artificial neural networks(ANNs)[J].Modern Applied Science,2012,6(1):43-49.

[9] Cortes C,Vapnik V.Support vector networks[J].Machine Learning,1995,20:273-297.

[10] 杨志民,刘广利.不确定性支持向量机原理及应用[M].北京:科学出版社,2007.

[11] 董春曦,饶 鲜.支持向量机参数选择方法研究[J].系统工程与电子技术,2004,26(8):1117-1120.

[12] 王克奇,马晓明,白雪冰.基于分形理论和数学形态的木材表面缺陷识别的图像处理[J].森林工程,2013,29(2):48-52.

猜你喜欢
孔洞木材分类器
橘子皮用来开发透明木材
一种面向孔洞修复的三角网格复杂孔洞分割方法
数字说
木材在未来建筑设计中的应用分析
孔洞加工工艺的概述及鉴定要点简析
加权空-谱与最近邻分类器相结合的高光谱图像分类
玻璃浆料键合中的孔洞抑制和微复合调控
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
基于LLE降维和BP_Adaboost分类器的GIS局部放电模式识别
严格木材认证