APP下载

基于LBP和SVM的工件图像特征识别研究

2016-02-26吴益红江娟娟毕运锋

关键词:支持向量机特征提取

吴益红,许 钢,江娟娟,毕运锋

(安徽工程大学 安徽检测技术与节能装置省级实验室,安徽 芜湖 241000)



引用格式:吴益红,许钢,江娟娟,等.基于LBP和SVM的工件图像特征识别研究[J].重庆理工大学学报(自然科学版),2016(1):77-84.

Citation format:WU Yi-hong, XU Gang, JIANG Juan-juan,et al.Research on Workpiece Image Feature Recognition Based on LBP and SVM[J].Journal of Chongqing University of Technology(Natural Science),2016(1):77-84.

基于LBP和SVM的工件图像特征识别研究

吴益红,许钢,江娟娟,毕运锋

(安徽工程大学安徽检测技术与节能装置省级实验室,安徽 芜湖241000)

摘要:针对工业现场诸如粉尘、光照、遮挡、摄像机抖动等复杂环境下工件目标的识别问题,提出一种基于局部二值模式(local binary pattern, LBP)和支持向量机(support vector machine, SVM)的组合模型,对工件图像进行特征提取与类别判定。运用基本LBP模式、LBP等价模式以及LBP旋转不变模式,并结合多种去噪方法对工件图片进行特征提取,得出LBP特征直方图。根据这些特征直方图,利用分类模型对工件进行分类识别。实验结果表明:基于均值滤波去噪的LBP基本特征算子较好地满足了工件图像的特征提取要求,为后续的工件图片分类提供了保障,使得图片识别准确率达96%,识别效果较佳。

关键词:工件图像;局部二值模式;支持向量机;特征提取;工件分类

在复杂环境中正确识别出目标物体,是工业机器人实现有效分拣、目标定位以及视觉跟踪的前提和基础,其识别结果的正确与否直接影响机器人装配操作的准确性。然而,复杂环境下图像易出现模糊、缺损、噪声污染等降质问题,对工业机器人的识别结果产生严重影响。快速准确地提取并识别出工件图片对于机器人现场实时操作具有至关重要的意义。

LBP指局部二值模式,由芬兰奥卢大学的T.ojala等[1]提出,可以对图像局部纹理特征信息进行高效的度量和提取。因具有旋转不变性和灰度不变性及理论简单、效果良好等优点,LBP被广泛应用于机器视觉、生物医学、人脸识别等领域[2]。

文献[3]提出一种多尺度LBP傅里叶直方图与主动形状模型相结合的方法并运用于人脸表情识别,结果表明:该方法在人机交互方面有一定的应用价值。文献[4]提出一种基于多尺度LBP子模式特征的人脸描述与识别方法,对光照、人脸表情和位置的变化具有较高的鲁棒性。文献[5]将LBP用于X射线图像的增强、边缘提取和缺陷识别等应用中,针对X射线图像的特点,从图像的检测效果和检测时间2个方面提高了工业X射线图像的检测效率。

SVM是一种较好的基于混沌理论的非线性预测分类算法。与传统人工神经网络基于经验风险不同的是,SVM基于结构风险最小化,能够有效避免过拟合、泛化能力差等不足[6]。由于其通用性好、鲁棒性强、计算简单、效果良好,故被广泛地应用于机器学习、模式识别、回归预测等领域[7]。

文献[8]采用区域直方图作为图像特征支持向量,利用SVM实现对图像数据库的检索和分类。文献[9]采用常用的灰度共生矩阵方法提取图像纹理特征,作为图像特征支持向量,采用一对一方法构建出多分类SVM分类器实现了Brodatz纹理库中的图像分类。

本文提出一种基于去噪的LBP基本算子和SVM的对工件图像进行分类识别的算法,结合LBP在图像特征提取上的优势,在兼顾识别的实时性和正确率的基础上,利用SVM分类器完成对降质图像中各种类型不同形态工件的识别。本文对工业现场拍摄的图片集进行实验,通过比较不同的LBP算子,验证去噪的LBP基本算子和SVM组合算法在工件图片特征提取与识别分类中的高效性。图1为本文采用的5类工件图片(从左至右分别为1~5类,每类各列举一例)。

图1 5类工件图片

1LBP提取图像特征

1.1LBP算子

LBP算子是一种灰度尺度恒定的纹理算子,来自局部邻域纹理的普通定义。其基本思想:以中心点像素的灰度值作为阈值,与它的邻域比较,得到二进制码来表述局部纹理特征。本文利用3种不同的LBP算子,分别为基本LBP算子、LBP等价模式算子和LBP旋转不变算子,对工件图像进行特征提取,找出最适合于工件图像特征提取的LBP算子。

1.1.1LBP 基本算子

LBP基本算子即原始的LBP。原始的LBP在一个3×3矩阵窗口中定义,每个窗口值代表一个像素点的灰度值。如图2所示,将中心点灰度值与外围8个点灰度值进行比较,大于中间像素点的灰度值的数值置为1,否则为0。然后,按所处的位置不同,给8个处理后的值以不同权值,逐个相加得到的结果定义为该区域内的LBP值。

图2 基本LBP算子

1.1.2LBP等价模式算子

LBP等价模式这样定义:当LBP算子的循环二进制数从0到1或从1到0跳变最多有2次时,如00000000或者00110000,这些二进制模式都属于等价模式类。可以按照如下公式计算二进制模式是否是等价模式:

(1)

式中若某种模式计算得到的U(GP)不大于2,则被看作等价模式。通过这样的改进,模式类别由之前的2P种降低到P(P-1)+2种,有效减少了模式类别。

通过等价模式计算可以简化模式种类,还可降低高频噪声干扰,并且不损失图像信息,有效降低了特征数据的维数,提高了分类效率。

1.1.3LBP旋转不变模式算子

基于LBP的灰度不变性和旋转不变性,Maenpaa等[11]提出了旋转不变的LBP算子。LBP旋转模式通过不断旋转图像的圆形领域,得到一系列的LBP值,选取其中的最小值作为最终的LBP值,用公式表示为

(2)

其中:LBPri表示LBP旋转不变算子;ROR(x,i)为旋转函数,可以将x循环右移i(i

图3描述了LBP旋转不变模式的计算过程。其中,最上面代表原始LBP值,通过循环旋转,得到中间8个LBP值,取其中的最小值(即00001111)作为中间8种LBP模式的旋转不变模式值。

图3 LBP旋转不变模式

旋转不变模式在增强LBP算子鲁棒性的同时,显著减少了LBP模式的类别,有利于特征分类。

1.2LBP特征谱直方图

工件图像的特征谱只反映了工件图片的局部特征,不适合直接采用LBP特征谱进行工件特征提取。为了获得更加丰富、切合度更高的特征,一般的做法是将LBP特征谱转变成LBP直方图序列。

本文将该序列作为鉴别特征进行工件识别分类。提取LBP工件图像直方图序列的具体过程如图4所示。

图4 提取LBP工件图像直方图序列的具体过程

2SVM与libSVM工具箱

2.1SVM图像分类原理

SVM由Vapnik于1995年提出[12],其本质是在训练数据中找出适合构造最优分类超平面的支持向量。对于图像分类这种非线性分类问题,SVM的主要思路是通过非线性变换将输入空间数据映射到高维特征向量空间,在该空间中构造出最优分类超平面,进行线性分类,再映射回原数据空间,实现原空间下的非线性分类。SVM通过引入核函数降低了高维空间下数据计算的复杂度,但是引入核函数会产生偏差,故通过引入参量松弛系数g和惩罚系数c,从而使得模型推广能力提高,复杂性和经验风险降低。

2.2libSVM工具箱

由台湾大学林智仁(Lin Chih-Jen)教授等开发的SVM模式识别与回归开源软件包可以解决如图像识别等诸多分类问题(C-SVR、-SVC等),在国内外学术研究机构被广泛使用[13-14]。libSVM的使用步骤:

1) 特征数据归一化

由于作为图像特征数据的输入测试集和训练集属性的取值不属于同一个数量级,输入变量差异较大,因此在建立模型之前,需将数据进行归一化预处理[15]。

对训练集和测试集进行归一化采用的归一化映射如下:

(3)

式中:xi,yi∈Rn;xmin=min(x);xmax=max(x)。归一化使原始数据被映射到[0,1]范围内,即yi[0,1],i=1,2,…,n, 这种归一化方式称为[0,1]区间归一化。

在Matlab中,mapminmax函数可以实现上述的归一化,mapminmax函数所采用的映射为

(4)

其中:xmax,xmin分别是原始数据x的最大值和最小值;ymin和ymax是映射的范围参数,可调节。如果把ymin和ymax分别置为0和1,此时的映射函数即为上面的[0,1]归一化,也可以设置为-1和1,此时的映射函数即为[-1,1]归一化。

2) SVM参数选取

核函数的参数选取影响到分类的性能,在利用libSVM进行图像分类前,首先需要对RBF核函数进行参数寻优,然后进行交叉检验。在所有参数中,最重要的是c和g。其中c是设置C-SVC、e-SVR和v-SVR的参数;g对核函数中的gamma函数进行设置。

libSVM利用K-CV交叉验证方法确定最优化参数值,函数实现形式是SVMcgForClass,输出得到的最优参数值bestmse、bestc、bestg分别表示最优均方误差以及最优的c、g值。

3实验部分

3.1模型建立

从原始工件图片数据里选定训练集和测试集,进行图片数据预处理和特征提取,之后用SVM对训练集的特征数据进行训练,得到训练模型,然后再用得到的模型来预测测试集的分类标签,得出分类准确率。模型算法流程见图5。

图5 模型算法流程

其中,预处理包括图片亮度增强、灰度化等;LBP特征提取包括对图片进行去噪、提取LBP纹理特征以及获得LBP直方图;训练SVM则包括数据归一化、设置标签以及参数选择等。下面将对模型的每一步骤展开实验设计。

3.2预处理与LBP特征提取

3.2.1选定测试集和训练集

实验在Matlab R2012a平台上运行,计算机运行环境为Pentium G2030T,2.60 GHz处理器。本文建立了一个工件图片的小样本数据集,采用5类(每类16幅)共80幅,每幅像素大小为300×200的工件图片集。使用交叉验证法来选定最好的训练集和测试集,采用的训练集和测试集分别为每类图片的前11幅和后5幅,即55幅作为训练集,25幅作为测试集。

3.2.2图片亮度增强与灰度化

由图1可知:工件图片的亮度普遍偏低。为了不影响特征提取的精确度,在对图像进行特征提取前,需对各图片进行亮度增强处理。本文采用的方法是调节图片的对比度,由函数imadjust(x,stret、chlim(x),[0 1])实现。

通常,在对图像进行处理前会将其转换成灰度图像,这样在保留图像的整体和局部信息的同时可以有效降低字节数,提高数据处理速度。本文利用加权平均法,将RGB三个分量分配不同的权值,实现图像的灰度化处理。按照人眼对RGB 3个分量的敏感度不同,设定以下3个权值以得到较好的灰度图像:

0.11B(i, j)A

(5)

其中:f(i,j)为转换后的灰度图像在(i,j)处的灰度值;R(i,j)、G(i,j)和B(i,j)分别为(i,j)处的红色值、绿色值以及蓝色值。

3.2.3LBP特征提取

虽然LBP 算子具有旋转不变性和灰度不变性等显著优点,但LBP的抗噪性较差,所以不能直接运用LBP对处理过的灰度图像进行特征提取。本文采用多种去噪方式和LBP结合来提取图像特征。如采用1.2节所述方法提取各训练集和测试集图片的LBP纹理图像,并进一步得到特征谱直方图,以此作为各工件的特征进行训练和测试分类。

3.3libSVM对图片的训练和预测

3.3.1数据归一化

libSVM在对图片特征数据进行训练和测试之前,需要对数据进行归一化。本文根据2.2节所述归一化方法,设定归一化范围为[0,1]。

3.3.2训练和测试

1) 标签标记

首先分别对训练集和测试集进行标签标记。具体做法如下:

① 载入数据,使用load workpiece.mat;

② 将第1~5类工件图片的前11幅作为训练集,剩下的5幅作为测试集:

train_workpiece=[wp1(1:11,:);wp2(1:11,:); …;wp5(1:11,:)];

test_workpiece=[wp1(12:16,:); wp2(12:16,:); …; wp5(12:16,:)];

③ 将相应的标签提取出来:

train_workpiece_label=[wp1_label(1:11);…;wp5_label(1:11)];

test_workpiece_label=[wp1_label(11:16);…;wp5_label(11:16)];

2) 训练与测试

libSVM工具箱提供了训练函数和测试函数。

训练函数:

model=SVMtrain(train_label,train_matrix,[‘libSVM_options’])

其中:model为训练得到的分类模型;train_label为训练集标签;train_matrix为训练集属性,即训练集图片特征,一般以矩阵形式给出;libSVM_options为一些参数选择,一般为惩罚参数c、核函数参数g。本文中c、g采用2.2节提到的交差验证法得到。

测试函数:

[predicted_label,accuray]=

SVMpredict(test_label,test_matrix,[‘libSVM_options’])

其中:predicted_label为预测得到的测试集标签;accuray为分类准确率;test_label为测试集标签;test_matrix测试集属性,即测试集图片特征,一般以矩阵形式给出;libSVM_options是一些参数选择函数。

4结果与分析

本文针对LBP的抗噪性差这一缺点,采用小波去噪以及常用的5种去噪方式,即圆形区域均值滤波、对比度增强滤波、高斯低通滤波、5×5中值滤波、3×3均值滤波对图片进行去噪处理,并采用不同的LBP算子与SVM结合进行分类。经过试验得到的部分结果如表1~3所示。

表1 基本LBP算子在不同去噪方法下的分类结果

等价模式在不同去噪方法下的分类结果

旋转不变模式在不同去噪方法下的分类结果

由表1~3可知:表1的模式在分类准确率和耗时方面的总体效果最好,表2、3的模式则在这两方面均显示出较低的水平。这是因为等价模式虽能代表绝大多数图像的有效信息,然而图像纹理的多样性使得每一类图像都有其各自的特点和关键信息。这种固定的等价模式并不适用于任何种类的图像。采用等价模式时常发现混合模式的数量很大,特别是在工件图片这种受光照或局部变化较明显的图像中,这对于特征提取的准确性和稳定性都是不利的。旋转不变性的LBP算子丢失了方向性,这在工件图像这种方向性比较重要的图片中也是非常不利的。

由于纹理图像的兴趣点通常散布在图片的整个区域内,而工件图像包含了较多背景像素点,因此在一定程度上来说,它并非严格意义上的纹理图片。通过使用和对比几种不同的LBP算子,结合不同的去噪模式,得出LBP基本算子最适合识别工件图像。图6是LBP基本算子的计算过程,其中:黑色点是去除噪声的点;虚线指滤波器作用范围。可以发现:采样点在半径为2的圆的实线上,这样,LBP基本算子能获得大范围的特征信息,避免了频谱混叠,控制了采样点个数,有效减少了计算数量,适合本文工件图片的特征提取。

图6 本文的LBP

本文在图像分类精度评价中,首先采用表1~3中的分类准确率进行评估。但是要获得一个好的分类结果,除了需要较高的准确率外,还需知道其具体的实测情况。评估分类可信度的一个基本工具是混淆矩阵(confusion matrix)。本文列出分类准确率较高的基于3×3均值滤波、对比度增强滤波以及基于高斯低通滤波3种方法的混淆矩阵,分别对其分类可信度进行评估测试。表4~6是这3种方法的混淆矩阵(表中的1~5类分别表示图1中的1~5类图片)。

表4 基于均值滤波方法的混淆矩阵

表5 基于对比度增强滤波方法的混淆矩阵

表6 基于高斯低通滤波方法的混淆矩阵

混淆矩阵的每一列代表了实际测得信息,每一列中的数值等于实际测得的图片在分类图像中对应于相应类别的数量。例如,表4中第2列中的‘1’表示在实际测得的结果中有1个第4类图像被测分为第1类图像;混淆矩阵的每一行代表了工件图像的分类信息,每一行中的数值等于分类器在实测图片相应类别中的数量。

本文参与测试的工件图片数为25幅,分为5类,每类5幅。混淆矩阵中每一行图片数之和为5,表示5个样本。例如,表4中的第4行表示有4个样本正确分类,有1个样本被错分成2类图片。每一列数目之和表示此次分类中被分成某类的图片总数。由表4~6可以看出:表4,即基于均值滤波去噪的LBP对图像进行特征提取并与SVM结合进行图片分类时,分类效果最好。

在混淆矩阵中,除了可以直观地看到分类结果的好坏之外,还可根据各行各列的数据得到潜在的分类结果数据:TP(true positive,真正类,被模型预测为正的正样本),FN(false negative,假负类,被模型预测为负的正样本),FP(false positive,假正类,被模型预测为正的负样本),TN(true negative,真负类,被模型预测为负的负样本)。根据这4个数据及其相关关系,绘制出受试者工作特征曲线(receiver operator characteristic curve,ROC),如图7所示。

图7 ROC曲线

ROC曲线可以通过描述真正类率TPR=TP/(TP+FN)和负正类率FPR=FP/(FP+FN)来实现。在ROC曲线中,分类模型越好就越靠近图形的左上方,而一个随机猜测模型则位于连接点(TPR=0,FPR=0)和(TPR=1,FPR=1)的主对角线上。

ROC曲线下方的面积(area under the ROC curve, AUC)提供了评价模型性能的另一种方法。如果模型是完美的,那么它的AUC=1;如果模型是简单随机猜测模型,那么它的AUC=0.5;如果一个模型优于另一个,则它的AUC相对较大。由此,从图7中可以得到基于均值滤波的方法最靠近左上角,其AUC为0.999 3,明显大于其他两种方法(0.982 5,0.787 5)。这说明了基于均值滤波的LBP与SVM分类器结合的模型分类效果最好。

5结束语

本文将基于纹理特征的算法LBP运用于工件图片的特征提取,在运用LBP各模式与多尺度结合提取特征的过程中,得出最好的实验结果是和工件图像特点契合度较高的基本LBP算子。由于LBP对噪声十分敏感,故本文采用多种去噪方式与LBP算子结合来处理图片,最后使用SVM模型对LBP提取的特征进行分类识别。实验结果表明:基于均值滤波去噪的LBP算子与SVM结合结果准确率最高,同时也证明了LBP对非明显纹理图像的工件图片进行处理的可行性。

由于主流物体分类与识别数据库中没有特定的工件图片集,因此本文方法有一定的局限性。采集的样本数目虽满足一般的小样本集要求,但仍然较少,这也会影响分类效果。拥有研究特定的样本集、扩大样本集数目是下一步要解决的问题。

参考文献:

[1]OJALAT,PIETIKAINENM,HARWOODD.Acomparativestudyoftexturemeasureswithclassificationbasedonfeaturedistributions[J].PatternRecognition,1996,29(1):51-59.

[2]刘伟锋,李树娟,王延江.人脸表情的LBP特征分析[J].计算机工程与应用,2011,47(2):149-152.

[3]王丽,李瑞峰,王珂.多尺度局部二值模式傅里叶直方图特征的表情识别[J].计算机应用,2014,34(7):2036-2039.

[4]黄非非.基于LBP的人脸识别研究[D].重庆:重庆大学,2009.

[5]毕碧.局部二值模式的改进及其在工业X射线图像中的应用研究[D].重庆:重庆大学,2012.

[6]高锦.基于SVM的图像分类[D].西安:西北大学,2010.

[7]王晓云.基于SVM的图像分类算法优化实现[J].信息安全与通信保密,2013(2):59-62.

[8]王亮申.基于SVM的图像分类[J].计算机应用与软件,2005,22(5):98-99.

[9]章智儒.SVM在图像分类中的应用[J].信息技术,2009,8(25):133-134.

[10]OJALAT,PIETIKAINENM,MAENPAAT.Multiresolutiongrayscaleandrotationinvarianttextureclassificationwithlocalbinarypatterns[J].IEEETrans.onPatternAnalysisandMachineIntelligence,2002,24(7):971-987.

[11]MAENPAAT,PIETIKAINENM.Textureanalysiswithlocalbinarypatterns.HandbookofPatternRecognitionandComputerVision[M].3rded.WorldScientific,Singapore,2001:711-736.

[12]CORTESC,VAPNIKV.SupportvectornetworksMachineLearning[J].MachineIntelligence,2002,24(7):971-987.

[13]LINCJ.APracticalGuidetoSupportVectorClassification[Z].Taiwan:NationalTaiwanUniversity,Initialversion:,2010.

[14]CHANGCC,LINCJ.LIBSVM:ALibraryforSupportVectorMachines[Z].Taiwan:NationalTaiwanUniversity,Initialversion:2001Lastupdated:March4,2013.

[15]史峰,王小川.MATLAB神经网络30个案例分析[M].北京:北京航空航天大学出版社,2010:115-116.

(责任编辑杨黎丽)

Research on Workpiece Image Feature Recognition

Based on LBP and SVM

WU Yi-hong, XU Gang, JIANG Juan-juan,BI Yun-feng

(Anhui Key Laboratory of Detection Technology and Automation Devices,

Anhui Polytechnic University, Wuhu 241000, China)

Abstract:Aiming at the problem of workpiece identification in the complex environment of industry field such as dust, light, shelter, and camera shake, this paper proposed a combined model based on local binary pattern (LBP for short) and support vector machine(SVM for short) for feature extraction and recognition of the workpiece images. By using basic LBP pattern, LBP uniform pattern and LBP rotation invariant pattern and combining with various noise attenuation, we extracted and analyzed workpiece image features, and obtained LBP feature histogram, and then classified and recognized the workpiece image by utilizing classification models according to these characteristics. The experimental results indicate that the basic LBP pattern on Mean Filter is more suitable for the feature extraction and provides guarantees for classification of the workpiece images, and the image recognition effect is better and the recognition rate is up to 96%.

Key words:workpiece image; local binary pattern; support vector machine; feature extraction; workpiece classification

文章编号:1674-8425(2016)01-0077-08

中图分类号:TP391.41

文献标识码:A

doi:10.3969/j.issn.1674-8425(z).2016.01.013

作者简介:吴益红(1989—),女,安徽宿州人,硕士研究生,主要从事智能信息处理及应用、图像处理等方面研究;许钢(1972—),男,安徽芜湖人,副教授,硕士生导师,主要从事数字信号处理、机器人视觉研究。

基金项目:国家自然科学基金资助项目(61271377);安徽省高等教育提升计划省级自然科学研究一般项目(2014B02)

收稿日期:2015-10-10

猜你喜欢

支持向量机特征提取
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于Daubechies(dbN)的飞行器音频特征提取
Bagging RCSP脑电特征提取算法
一种基于LBP 特征提取和稀疏表示的肝病识别算法
基于改进支持向量机的船舶纵摇预报模型
基于SVM的烟草销售量预测
动态场景中的视觉目标识别方法分析
论提高装备故障预测准确度的方法途径
基于熵技术的公共事业费最优组合预测
基于支持向量机的金融数据分析研究