基于机器学习的带钢表面缺陷分类方法研究

2014-12-23 01:28胡慧君李元香刘茂福梁文豪
计算机工程与设计 2014年2期
关键词:傅立叶特征提取分类器

胡慧君,李元香,刘茂福,梁文豪

(1.武汉大学 计算机学院 软件工程国家重点实验室,湖北 武汉430072;2.武汉科技大学计算机科学与技术学院 智能信息处理与实时工业系统湖北省重点实验室,湖北 武汉430065;3.浙江大华技术有限责任公司,浙江 杭州310053)

0 引 言

随着社会的快速发展,人们对于制造业生产线提出了更高要求,既要提高生产效率又要保证质量。带钢作为汽车制造、航空航天、日常生活用品的原材料,其质量要求越来越严格;然而,国内钢铁公司的带钢生产线上,由于带钢表面缺陷所带来的经济损失却居高不下。主要原因是先前人工目视检测带钢表面的方法已越来越不能满足企业生产发展的需要,不能够实时控制生产过程中出现的问题。

本文在通过机器视觉系统对带钢表面缺陷进行缺陷检测的前提下,用机器学习方法中的BP (back propagation)神经网络和支持向量机SVM (support vector machine)对带钢表面产生的缺陷分别进行了分类识别研究。BP神经网络结构简单,是目前应用最为广泛的人工神经网络,已经成功应用在模式识别与图像分类等领域,如秦钟使用图像不变矩特征与BP神经网络对车型进行分类[1],徐磊等则将BP神经网络用于遥感图像分类[2]。SVM 分类模型常用于对图像进行分类,华翔等基于纹理和形状特征使用SVM 对医学图像进行分类研究[3],而唐银凤等在融合多特征基础上使用多分类SVM 模型对遥感纹理图像进行分类[4]。

对于缺陷分类识别,本文先对检测出的缺陷目标图像进行图像二值化,结合目标图像和二值化图像进行特征提取。根据特征向量,利用BP神经网络和SVM 分别对缺陷图像训练集进行分类模型训练,利用测试集对训练好的分类识别模型评判分类结果。具体的模型图如图1所示。

图1 缺陷分类系统模型

目标图像是通过对带钢生产线上获取到的图像进行缺陷检测,将包含有缺陷信息的图像区域分割出来,从而得到的一幅图像。

本文主要用到几何特征、形状特征和灰度特征3类特征表示目标图像的缺陷信息。在进行特征提取前,需要进行图像二值化处理,将目标图像中缺陷可能存在的区域ROI(region of interest)设置为前景,即该区域内像素点灰度值设定为255;将ROI以外区域设置为背景,即该区域内像素点灰度值设定为0;然后结合二值化图像和目标图像进行相应特征提取。

本文运用机器学习的方法进行缺陷分类识别时,根据提取到的特征向量,对大量的训练样本进行训练生成分类模型,然后对测试集提取相应的特征向量并预测训练好的分类器的有效性。实验结果表明,BP 神经网络和SVM 两种分类模型都是可行的;同时,SVM 模型分类准确率更高,但BP神经网络平均识别时间优于SVM。

1 特征提取

1.1 几何特征

本文使用目标图像面积、ROI面积、ROI与目标图像面积之比、目标图像宽高之比4组特征来表示带钢缺陷图像的几何特征。

(1)ROI面积

ROI面积用Area来描述其大小,通过统计二值化图像的前景像素点个数来表示ROI的面积

式中:R——目标图像组成的像素点集合,f(x,y)——目标图像,b(x,y)——二值化图像。

(2)目标图像面积

目标图像面积通过计算其图像的宽高之积来表示。

1.2 形状特征

物体的形状是图像表达的一个重要特征,形状特征的描述必须以图像中不同于背景区域的划分区域来进行计算。通常来说,物体的形状特征有两种表示方法,一种是基于边界的特征表示法,一种是基于区域的特征表示法;前者主要关心物体的外边界形状,而后者主要关心物体的整个区域的形状。比较典型的方法有形状无关矩和傅立叶形状描述符两类。

(1)形状无关矩

形状无关矩 (moment invariants)是一种基于区域的物体形状表示方法[5]。用此方法对目标区域提取出的特征具有对平移、旋转、尺度变换等不变性。对于一幅数字图像I=f(x,y),f(x,y)表示像素点(x,y)的灰度值,则I的p+q中心矩定义为

本文对二值化图像进行特征提取,得到七维特征向量。

(2)傅立叶形状描述符

傅立叶形状描述符 (fourier shape descriptors)是基于边界的物体形状表示方法[6]。其基本思想是利用物体边界的傅立叶变换系数作为形状描述子。假设封闭边界由N 个数据点组成,则

式中:s(k)为从任一点开始绕边界一周的复数序列。对序列s(k)的离散傅立叶变换为

根据傅立叶变换的性质,高频分量表示物体细节,低频分量表示总体形状。因此,在对图像进行傅立叶变换后,可以用前面M(M<N)个系数来表达目标区域边界的形状特征。由于进行傅立叶变换后,各系数值区间变化比较大。因此,需要对傅立叶描述符进行归一化处理。本文以s(0)为基准对s(w)进行归一化,归一化后的傅立叶描述符具有平移、旋转、尺度等不变性[7]。本文选取M=8 来进行计算,对二值化图像进行特征提取,得到七维特征向量。

1.3 灰度特征

图像的灰度直方图提供了图像的灰度值分布情况,可以通过计算图像的灰度直方图相关特性得到。常用的直方图特征参数有歪度、峭度、均值、方差、能量和熵。

对于带钢表面缺陷图像灰度特征提取,可以通过对目标图像、目标图像的背景区域、ROI来进行提取。文中只对ROI进行灰度特征的提取,结合目标图像和二值化图像进行特征提取,得到六维特征向量。

2 分类识别模型

本文通过机器学习方法对带钢表面产生的缺陷进行分类识别,首先准备大量的缺陷图像作为训练样本和测试样本,根据训练样本训练出分类模型,然后对测试样本用训练好的分类模型进行预测,调整相关参数达到模型识别率要求,并将模型推广到缺陷分类识别系统中。

2.1 BP神经网络

BP (back propagation)网络是一种按误差逆传播算法训练的多层前馈网络,为目前应用最广泛的神经网络模型之一[8]。

用BP神经网络设计缺陷分类器时,根据提取到的24维特征向量设定输入层神经元数为24。根据本文设定的5类缺陷,输出层神经元数确定为5。对于隐含层神经元数的设定,尚没有一定的理论知识作指导,需要多次实验并根据预测准确率来确定。对于神经元作用函数,文中选用S型函数中的双曲正切函数

综上所述,肺消炎饮联合头孢呋辛钠治疗小儿急性上呼吸道感染疗效确切,能够有效增强患儿免疫功能,改善机体炎症状态,是一种安全可靠的治疗方案。

设置期望输出向量时,应将相同缺陷类别样本期望输出设置成一样,不同缺陷类样本期望输出最大化区别开。用BP神经网络进行分类,生成的模型不易理解,外面对里面的规则没有一定的规律可循。在训练时容易陷入误差局部最小化而难于收敛,而且容易出现 “过学习”问题。

2.2 支持向量机

与以经验风险最小化的传统的机器学习方法相比,SVM[9]是一种以结构风险最小化SRM (structural risk minimization)为原则的机器学习方法。SVM 最开始是在线性可分情况下从最优分类理论发展而来,其主要原理是找出最优分类函数,使两类样本中的分类间隔最大化。假定在二维空间中有线性可分的两类数据,SVM 的分类函数是将两类数据最大化分开。在一个样本集中,支持向量个数与样本输入向量维数没太多直接联系,从而避免了因为输入样本数据特征向量维数过高而引起的维数灾难问题。

对于线性不可分问题,可以把样本映射到某个高维空间中,使其线性可分,这需要核函数来完成。一般核函数主要有多项式核函数、高斯径向基核函数、S型核函数等,本文选取最常用的高斯径向基函数作为核函数

SVM 最开始提出主要是解决二分类问题,但在实际应用中待分类别往往多于两类,需要用二分类SVM 来解决多分类问题,主要思想是组合若干个二分类器来实现一个多分类器,本文选用 “一对一”方法来完成多分类。

对于本文定义的5种缺陷,需将5种缺陷样本两两组合,从而训练10个二分类器,然后利用测试数据对每个二分类器进行预测,分别得到一个类别,找出投票数最多的那个类作为最终分类结果。用SVM 分类两类缺陷时,准确率比较高;若用于多分类时,则需要大量的训练时间和预测时间。

3 实验结果与分析

本文对国内某大型钢铁公司生产线现场摄相机获取的大量图像进行分析,定义了5 种带钢表面缺陷,即 “辊印”、“锈斑”、“乳化液斑”、“边印”以及 “擦伤”,并依次对缺陷进行编号。实验中用到训练集和测试集样本数量见表1。

表1 训练样本集和测试样本集

3.1 缺陷图像特征提取及归一化

表2 不同缺陷目标图像的灰度值比较

通过表2可以看出,缺陷1至缺陷4的目标图像灰度值大致分布在56至125之间,缺陷5的目标图像灰度均值大致分布在125至165之间。所以在对目标图像进行二值化前,可以先对其进行一次灰度均值计算,根据均值来确定采用哪种二值化。

(1)若均值小于128,则进行第一种情况的二值化,即设定阀值为90,目标图像中像素的灰度值小于90时,将其设定为前景,否则设定为背景;

(2)若均值大于128,则进行第二种情况的二值化,即设定阀值为140,目标图像中像素的灰度值大于140时,将其设定为前景,否则设定为背景。

对5种缺陷图像按照上面的方法进行二值化后,结果如图2所示。

图2 5种缺陷目标图像及二值化图像

对于Hu七阶不变矩和傅立叶形状描述符的特征提取,实验中皆使用OpenCV1中的相应方法得到特征向量。对于傅立叶形状描述符,首先对图像进行傅立叶变换,根据变换后的系数得到特征向量。

在进行特征提取后,为减少计算量以及极大值与极小值的相互影响,必须对其进行归一化,实验中将向量全部归一化在 [-1,1]区间内。

3.2 BP神经网络训练与预测结果

训练BP神经网络分类模型时,需要对相关参数和期望输出向量进行设定,对于每一类缺陷特征向量设置不同的期望输出向量,实验中设定缺陷1的期望输出向量为 [1 0 000],缺陷2的期望输出向量为 [0 1 0 0 0],缺陷3的期望输出向量为 [0 0 1 0 0],缺陷4的期望输出向量为 [00 0 1 0],缺陷5的期望输出向量为 [0 0 0 01],对于隐含层神经元个数n 的选取,实验中分别取n= {10,11,12,…,20}进行模型训练,然后对测试集进行预测,计算平均识别率来确定其最优值。

实验中用OpenCV 中的相应类中的方法实现BP神经网络的训练和预测。经过多次实验,当n=16 时,训练好的神经网络预测效果最好,具体结果见表3。

表3 n=16时BP神经网络预测结果

3.3 SVM 训练与预测结果

实验中采用常用的 “一对一”方法来实现多分类;对于文中定义的5 类缺陷,需要训练10 个子分类器进行分类。选用的核函数是高斯径向基函数,而核函数需要确定两个参数:惩罚参数C 和参数γ。对此,实验中用LIBSVM 的网格搜索法确定参数[10]。在LIBSVM 中,默认将C 设置在 [2-5,215]范围 内,将γ 设 置在[2-15,23]范围内。

表4 是对不同子分类器进行参数选择列表,其中“1&2”表示缺陷1和缺陷2的子分类器,后面依此设定。

表4 不同子分类器参数确定列表

根据表4 的参数设定,基于多分类SVM 方法结果见表5。

表5 SVM 模型预测结果

通过表4和表5可以发现,用SVM 进行预测时,一方面,SVM 准确率比BP神经网络要高,另一方面,SVM 高的准确率却是以计算时间为代价的。但用两种方法均能满足系统的实时性需求。总体上说,SVM 分类要优于BP 神经网络。

4 结束语

本文基于机器学习的BP神经网络和SVM 两种分类模型分别对带钢表面缺陷分类识别方法进行了研究。对于检测出缺陷的目标图像,根据不同缺陷的灰度均值设定两种阈值,进行二值化处理。然后结合目标图像和二值化图像进行几何特征、形状特征以及灰度特征提取。在用BP神经网络训练分类器时,用三层神经网络模型,通过多次实验确定隐含层神经元数。在用SVM 训练分类器时,用高斯径向基函数作为核函数,通过交叉验证确定相关参数,采用“一对一”的方法进行多分类。文中用OpenCV 对标定的5种带钢表面缺陷进行了实验,实验结果表明,SVM 模型分类准确率更高,BP 神经网络平均识别时间则优于SVM,但两种方法都能满足系统实时性要求。如何提高识别率和识别时间将有待进一步的研究。

[1]QIN Zhong.Vehicle classification based on image moment invariant feature and BP neural network [J].Journal of South China University of Technology (Natural Science Edition),2009,37 (2):87-91 (in Chinese).[秦钟.基于图像不变矩特征和BP神经网络的车型分类 [J].华南理工大学学报 (自然科学版),2009,37 (2):87-91.]

[2]XU Lei,LIN Jian,LI Yanhua,et al.Classifying remote sensing image based on BP neural network technology[J].Journal of Geospatial Information Science,2012,10 (4):83-85 (in Chinese).[徐磊,林剑,李艳华,等.基于BP人工神经网络的遥感影像分类[J].地理空间信息,2012,10 (4):83-85.]

[3]HUA Xiang,SUN Lei.Design of medical image classifier based on SVM [J].Microelectronics and Computer,2011,28(6):171-175 (in Chinese).[华翔,孙蕾.基于SVM 的医学图像分类器的设计 [J].微电子学与计算机,2011,28 (6):171-175.]

[4]TANG Yinfeng,HUANG Zhiming,HUANG Rongjuan,et al.Texture image classification based on multi-feature extraction and SVM classifier [J].Computer Application and Software,2011,28 (6):22-25 (in Chinese).[唐银凤,黄志明,黄荣娟,等.基于多特征提取和SVM 分类器的纹理图像分类[J].计算机应用与软件,2011,28 (6):22-25.]

[5]MU H B,QI D W.Pattern recognition of wood defects types based on Hu invariant moments[C]//Proceedings of International Congress on Image and Signal Processing,2009,1-5.

[6]Wilhelm B,Mark J B.Principles of digital image processingadvanced methods[M].London:Springer,2013:169-227.

[7]El-ghazal A,Basir O,Belkasim S.Invariant curvature-based fourier shape descriptors[J].Journal of Visual Communication and Image Representation,2012,23 (4):622-633.

[8]Nawi N M,Ransing R S,Salleh M N M,et al.An improved back propagation neural network algorithm on classification problems[C]//Proceedings of International Conferences on DTA and BSBT,2010:177-188.

[9]Ronny L,Alexandre d.Support vector machine classification with indefinite kernels [J].Mathematical Programming Computation,2009 (1):97-118.

[10]Chang C C,Lin C J.LIBSVM:A library for support vector machines[J].ACM Transactions on Intelligent Systems and Technology,2011,27 (2):1-27.

猜你喜欢
傅立叶特征提取分类器
不同坐标系下傅立叶变换性质
三角函数的傅立叶变换推导公式
电力电缆非金属外护套材料的傅立叶红外光谱鉴别法
基于Daubechies(dbN)的飞行器音频特征提取
基于傅立叶变换的CT系统参数标定成像方法探究
基于傅立叶变换的CT系统参数标定成像方法探究
Bagging RCSP脑电特征提取算法
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
基于MED和循环域解调的多故障特征提取