APP下载

基于区域筛选分割和随机森林的人造板表面缺陷识别

2018-10-11刘传泽陈龙现周玉成

制造业自动化 2018年9期
关键词:人造板特征提取分类器

刘传泽,罗 瑞,陈龙现,王 霄,周玉成

(1.山东建筑大学 信息与电气工程学院,济南 250101;2.中国林业科学院,北京 100000)

0 引言

人造板的生产已经实现自动化,但是末端缺陷检测环节仍然依靠人工,由于工作劳动强度大,容易出现误检、漏检,严重制约着人造板行业的发展,因此迫切研发一套人造板缺陷检测系统。由于机器视觉具有识别速度快、精度高等优点被广泛应用于产品表面缺陷检测[1~3]。基于机器视觉人造板缺陷检测系统,首先采集图像,获得特征值;再次利用分类器根据特征值进行识别,最后通过人造板缺陷种类、大小进行定级。缺陷识别的结果直接影响对人造板外观质量的判断[5]。连续压机生产线不间断生产,速度为1.5m/s,间隔小于0.4m,出厂板子面积为2.4m×4.8m,实时性要求比较高,需在3s以内作出判断,需求一种快速准确的算法实现人造板缺陷的在线识别。

现阶段,主要的缺陷识别算法有神经网络(neural network,NN)、支持向量机(support vector machine,SVM)、贝叶斯(naive bayes,NB)、聚类(cluster,C)、决策树(decision tree,DT)和RF等[4],并在相应的领域取得很好的效果。由于NN、SVM计算复杂且难以应用到实际;NB算法需要一定的先验信息;C算法采用穷举的算法计算量较大;DT决策树容易过拟合等缺点,以上算法均不适合人造板缺陷的在线识别。其中RF是一种基于DT的算法,通过对变量和样本数据的随机选择,产生多棵DT,汇总DT的分类结果,总数最多的为缺陷类别[5]。在采样(bootstrap)的过程中,有三分之一的数据未被选到,作为袋外数据(out of bag,OOB)用来评价分类器的准确率。Breiman等证明,OBB误差是泛化误差估计的组成,可代替测试集的误差估计[6]。RF算法具有以下优点:1)不需要对数据进行预处理,预测精度高;2)能处理大数据集和变量,运行速度快;3)使用OOB误差进行模型评价,无需采用交叉验证和独立测试集验证;4)不会产生过拟合现象。

本文提出基于局部特征提取和随机森林的算法,通过利用局部特征提取的方法提取人造板表面缺陷的形状、纹理特征,进而建立基于随机森林的人造板缺陷分类模型,实现人造板缺陷检测的自动化发展,为人造板缺陷识别提供了一种快速、准确的方法,并可以应用于其他板材缺陷的在线识别。

1 特征提取

1.1 缺陷区域筛选

连续压机生产线上的人造板面积为2.4m×4.8m,主要有油污、杂物、大刨花、胶斑等四种类型,缺陷面积在0.01m×0.01m~0.1m×0.1m之间,目标、背景所占面积相差悬殊,全局的分割算法无法取得较好的效果,而局部阈值分割需要计算各部分的阈值,速度较慢。针对于人造板大面积、小缺陷的特点,剔除一种基于区域筛选分割的方法,将整副人造板图像换分成若干个区块,对每个区块进行分类,筛选出缺陷区域之后进行分割。

人造板表面缺陷背景单一,目标与背景的灰度值差异较大且灰度值均匀,因此本研究将方差作为区块的分类特征。在划分的过程中,可能出现缺陷被划分到多个子区块中的现象,基于此对相邻的子区域进行合并,获得缺陷区域,其主要步骤如下:

1)将人造板图像划分为k×l个像素的区块cell×cell,其大小根据缺陷进行合理选择,计算每个子区块的方差σ2,公式为:

2)建立i行j列的矩阵A,初始值为0,将方差σ2大于一定阈值β的子区块矩阵中的元素置为1;

3)遍历矩阵A,将矩阵A中的值为1的相邻元素进行合并,记录合并结果集中左上角元素和右下角元素下标。如果图像中有多个缺陷,根据缺陷的分布位置,得到不同的结果集。将每个结果集中的左上角元素和右下角元素下标形成的区域映射回原图中,就可以提取若干个缺陷区域。

1.2 缺陷区域特征提取

人造板缺陷特征提取是缺陷识别的关键,由于人造板图像的背景灰度值均匀,缺陷区域内的灰度值相似,各类缺陷的形状差异较大,基于选取缺陷图像的形状、纹理特征对缺陷进行表征,利用OTSU算法对上述的缺陷区域D进行特征提取,其表达式如表1、表2所示。

其中:N为缺陷区域内像素点的个数;Nb为缺陷区域边缘像素点的个数;MER为缺陷区域最小外接矩形;LMER为M E R的长;WMER为M E R的宽;SMER为MER的面积。

表1 形状特征计算公式

表2 纹理特征计算公式

其中,M(i)为缺陷各点的灰度值,N为缺陷区域像素点的个数。通过对缺陷区域内形状、纹理特征统计,获得10个特征属性的特征值,得到缺陷特征向量Q(S、L、O、OR、P、u、σD、σP、σS、σR)构成样本数据L,作为 RF的输入,训练RF分类模型。

2 人造板缺陷自动识别

人造板表面缺陷在线识别的实现流程如图2所示。

1)图像预处理。对CMOS相机获得的在线人造板图像,用均值滤波去除噪声干扰;

2)缺陷检测及定位。将经过预处理的图像进行分区块检测,计算每一各区块的平均灰度值和方差,将方差大于一定阈值定义为缺陷板,通过和并子区块的方式获得缺陷区域;

3)图像分割。利用Otsu阈值分割法对缺陷区域进行分割;

4)特征提取。统计缺陷区域中的形状、纹理特征构成特征向量;

5)RF分类模型。通过RF分类器进行分类。

当有新输入的人造板图像时,首先进行缺陷检测判断是否有缺陷,如果检测有缺陷,进行缺陷定位、通过图像分割获得缺陷的特征值,作为RF分类器的输入,通过汇总RF中每棵DT得到缺陷类别。其中最重要RF分类器的构建。

图1 基于RF的人造板缺陷自动识别流程

2.1 CART树构建

CART树是RF算法中的基本单元,多个CART树构建出RF。CART树由CART算法实现,CART算法是一种高效的二分叉树,不断对数据进行二分达到分类的目的。构建CART树的算法流程如下[7]:

1)建立根节点N,CART树开始生长;

2)如果训练集L中只剩下一类样本,则返回N为叶节点;

3)分别计算当前各个特征属性的Gini指数,将得到最大的Gini指数特征属性作为子节点,使L划分为L1和L2两个子集,之后递归构建决策树,让其充分生长,不剪枝。

其中,根节点、子节点为特征属性中的一种,叶节点为缺陷的类别。Gini指数代表当前各个特征属性的分裂的程度,数值越大说明数据复杂,不确定性越大,将Gini指数最小的特征属性设置为节点。其中的Gini指数的计算如下:

假设训练集L中的样本有n个不同的类别Ci(i=1,…,n)。则概率分布的Gini指数定义为:

式中pi为类别Ci在S中所占比例。训练集在某个特征属性V下被分为两部分L1和L2,则L的Gini指数即分裂指数为:

2.2 最优RF分类构建

对于人造板缺陷识别问题,实质建立各类缺陷的特征值与缺陷类别的非线性映射关系。RF模型的输入向量Q(S、L、O、OR、P、u、σD、σP、σS、σR),bj表示10个特征属性中的第j个,输出层为缺陷类别O为1,2,3,4,分别代表大刨花、胶斑、杂物、油污,建立映射关系为Q…I。本研究用Matlab工具进行程序编写,提取h张人造板缺陷图像的特征值构成样本数据L与10种特征属性m组成RF的输入,利用bootstrap的方式随机抽取样本数据和特征属性,通过CART算法训练出500棵数,构建10个RF分类器Rm(m=1,…,10)。Rm构建过程中,只有属性的个数m一个变量,通过统计每棵CART树产生的OOB泛化误差E(E1,…,E500),求出E的平均值作为最佳参数try的评估指标。基于此将数的棵数定位500,m=try,构建出的Rtry为最优分类模型。

3 实验及结果分析

实验采用分辨率为2560×2040,像素深度为8位的,大恒图像JAI SP-5000M-USB3.0工业COMS相机采集人造板表面灰度图像。计算机硬件为在Intel Core I7-7500U 2.7GHZ,8GB内存的硬件环境下和Windows7,Visual C++的软件环境下进行算法编写。人造板厂家提供带有胶斑、大刨花、油污、杂物人造板150块,将其分为训练样本和测试样本,分别为100、50。其中实验样本数据如表3所示。

表3 人造板缺陷样本数量

3.1 缺陷区域提取及分割

首先对人造板图像缺陷区域进行提取。由于人造板面积较大,所以工业相机拍摄人造板一半的面积2.4m×2.4m,进行缺陷识别的时候连拍两张。经过调试和多次试验,确定将表面图像会分为64×51个40×40的像素区域,并进行缺陷区域提取,利用OTSU分割算法进行缺陷分割。在提取之前,利用中值滤波进行滤波,消除噪声干扰,各缺陷的原图像和分割后的图像如图2所示,根据图2提取形状特征,将坐标映射回到原图中,获取纹理特征,并将获得特征值构成特征向量。从图2特征提取的结果看,本文提出的基于区域筛选分割的方法能够有效的提取出面积很小的缺陷区域,对于多个缺陷也能进行准确的提取。将提取的特征向量作为训练集100个特征向量构建RF分类器。

3.2 最优RF构建

采用bootstrap的方法将训练集L分为训练子集Lg(g=1,…,500),将Lg和随机抽取的m个特征属性作为输入,利用CART算法生成500棵CART树构建出RF。特征属性的个数m是唯一变量,根据OOB误差率E的平均值评价Rm。由图3所示,当m值变化时的OOB平均误差率也随之变化,随着m个数增加误差率明显下降,当m=6时误差率为最低0.01,m值大于6时误差率增加,主要由于样本数据中特征属性过多,每棵CART树的样本数据被充分表达,导致RF分类器识别率降低,基于此最优m值为6,构建出的最优RF分类器为R6。

图2 四类缺陷分割图

图3 RF中特征属性个数对性能的影响

3.3 结果分析

3.3.1 正确率分析

为了验证构建的R6的分类效果,将训练好的分类模型对测试集进行分类,其结果表4所示,只有1个样本出现错分的情况,整体识别正确率高达98%。从表4可知胶斑、大刨花缺陷识别正确率为100%,其余两种缺陷出现错分的情况,其原因主要是:1)大刨花的灰度值明显高于其他三种缺陷;2)胶斑的形状近似圆形,易与油污、杂物区分;3)油污、杂物两种缺陷灰度值较为接近且形状不规则,造成误分的情况。

表4 R7测试结果

3.3.2 实时性分析

通过计算机测得一张人造板图像输入到缺陷识别总耗时657ms,其中耗时最多的为图像分割达到320ms,其次是特征提取为167ms,由于此次采集的是正常人造板一半面积的图像,在实际中总耗时为1.314s小于3s,完全可以满足人造板实时性的要求。综上通过对算法正确率和实时性要求分析,本研究建立的RF分类器可以应用到人造板缺陷检测系统中。

4 结论

本研究采用区域筛选分割的算法对大背景下小面积的缺陷进行很好的分割,考虑人造板表面缺陷的各种特点,选取10个表征缺陷的形状、纹理特征(S、L、O、OR、P、u、σD、σP、σS、σR)可以用来表征缺陷,利用采集到的缺陷的特征数据建立人造板缺陷识别的RF分类器。利用本研究构建的RF分类器对人造板缺陷进行识别,识别正确率高达98%,运算速度快、结果准确可靠,能够满足缺陷检测的实时性和准确性,实现人造板缺陷在线检测。

猜你喜欢

人造板特征提取分类器
人造板生产的质量问题与解决路径
人造板产品生产过程质量控制点的风险识别与应对
人造板产品生产过程质量控制点的风险识别与对策
基于特征选择的SVM选择性集成学习方法
《中国人造板发展史》新书发布会在京召开
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于Daubechies(dbN)的飞行器音频特征提取
基于深度优先随机森林分类器的目标检测
基于差异性测度的遥感自适应分类器选择
Bagging RCSP脑电特征提取算法