基于SIFT特征与多层BP神经网络的钢板缺陷检测算法*

2017-11-07 01:50朱晓珺邹香玲
组合机床与自动化加工技术 2017年10期
关键词:隐层权值算子

朱晓珺,韩 林, 邹香玲

(河南广播电视大学 信息工程学院,郑州 450000)

1001-2265(2017)10-0054-03

10.13462/j.cnki.mmtamt.2017.10.013

2017-05-05;

2017-06-02

“核高基”国家科技重大专项(2009ZX01036); 河南省科技攻关项目(152102310377)

朱晓珺(1975—),男,郑州人,河南广播电视大学讲师,硕士,研究方向为计算机应用,计算机软件,(E-mail)337660039@qq.com。

基于SIFT特征与多层BP神经网络的钢板缺陷检测算法*

朱晓珺,韩 林, 邹香玲

(河南广播电视大学 信息工程学院,郑州 450000)

为了解决当前钢板表面缺陷在对比度弱、边缘复杂和光照不均干扰下易导致检测能力较低的问题,文章提出了基于SIFT特征与多层BP神经网络的钢板缺陷检测算法。首先,引入高斯差分和Hessian矩阵,对钢板图像进行空间尺度函数计算,统计SIFT深度向量特征,完成缺陷特征的检测与收集。然后,基于神经网络原始模型,计算其第五层输出结果,优化缺陷检测结果,并最小化输出层与期望值的差异平方,滤除伪SIFT特征的干扰,建立多层BP神经网络拓扑分析算子,准确识别钢板缺陷。最后,基于软件工程,设计检测系统软件,对文中算法的缺陷检测精度进行测试。实验测试结果显示:与当前主流钢板缺陷检测技术相比,文中算法拥有更高的准确性与鲁棒性。

钢板缺陷检测;SIFT特征;BP神经网络;空间尺度;深度向量

0 引言

现代工业智能制造中,钢板是必要材料,必须对钢板表面质量进行检测,传统人工目视检测方法过程复杂、效率较低、实时性差,基于机器视觉的钢板表面缺陷检测方法由此诞生[1]。钢板表面缺陷检测通过各种检测算子实现,通常有:Roberts算子、Prewitt算子、Sobel算子和Log算子,虽然具有计算简单和速度较快的优点,但是在缺陷边缘对比度的情况下,检测效果往往不佳[2]。

在钢板表面缺陷检测方面,国内研究人员已经取得了一定研究成果,如吴彬彬[3]提出MAS小波的钢板表面缺陷边缘检测算法,由Lipschitz指数阐明了图像的边缘几何结构,通过分析图像中不同类型的奇异点,并结合尺度独立算法区分了目标图像中不同类型的边缘,有效的提取了钢板表面缺陷图像的边缘,完成钢板缺陷检测。但是,此技术未充分考虑缺陷边缘特征微弱性和背景干扰,往往影响了检测准确性。高如新[4]提出了基于钢板表面缺陷检测的图像增强算法,针对此类缺陷检测问题,提出了一种动态均值的图像增强方法,使得图像局部过亮的情形得到了很大改善,为图像后续的分割处理提供了极大便利,利用最大熵分割方法对增强处理后的图像进行分割,达到了检出钢板缺陷的目的。然而,这种技术未考虑来自边缘低对比度的干扰,在此情况下,不能达到准确检测的目的。

为了提高钢板表面缺陷检测能力,本文提出基于SIFT特征与多层BP神经网络的钢板缺陷检测算法。构建高斯差分和Hessian矩阵,统计SIFT深度向量特征,设计缺陷特征检测算子。然后,分析神经网络数学模型,设计多层BP神经网络拓扑分析算子,以软件工程为实现方法,建立本研究的钢板缺陷检测系统。

1 本文钢板缺陷检测算法

钢板表面缺陷具有对比度弱、边缘复杂和光照不均的图像特性,对图像处理和模式识别有明显的干扰。因此,提出了一种鲁棒的钢板缺陷检测技术,其过程见图1。首先通过利用高斯差分的尺度旋转不变性,以及Hessian矩阵对图像局部区域梯度进行鲁棒描述,设计了SIFT特征检测算子,定位缺陷的特征点和边缘,即定位到了缺陷所在区域;然后,将其作为深度特征,即神经网络的输入信号,通过五层迭代分析,进一步确认验证检测算子的正确性,提高了系统检出能力。以图2为检测对象,其钢板表面缺陷具有对比度弱、边缘复杂的特性。

图1 本文图像算法过程

图2 待处理原图

1.1 基于SIFT的缺陷区域定位

为了准确定位钢板缺陷区域位置,本研究采用具有缩放、旋转、光照不变性的SIFT(Scale Invariant Feature Transform)特征检测算子。一般情况下,SIFT算子主要步骤:基于高斯核构建尺度空间,检测极值点,实现特征点尺度不变性;利用高斯相应函数在尺度空间的Taylor展开式分别对图像的行、列和尺度三个量进行修正,去除低对比度的极值点;计算特征点领域4方向的梯度方向直方图,生成特征向量[5]。为了提高钢板缺陷特征点或者特征边缘检测的稳定性,本文将SIFT算子中的高斯核改进为差分高斯。高斯差分(Difference of Gaussian,DoG)是尺度空间中两幅相邻图像的差值,具有图像尺度不变性,作为归一化结果,解决了高斯-拉普拉斯计算繁琐并依赖于模糊执行总量的问题[6]。在此基础上,基于Tayler级数展开,计算尺度空间函数:

(1)

(2)

式中,D代表空间尺度函数,包含x、y两个方向,利用上面两个公式,通过求导并令其结果为0,可以找到特征点位置。本研究为了进一步去除低对比度特征点,对特征点周围两个彼此正交的梯度进行计算:

Gx(x,y)=I(x+1,y)-I(x,y)

(3)

Gy(x,y)=I(x,y+1)-I(x,y)

(4)

式中,Gx、Gy代表图像水平方向与垂直方向的梯度,I代表图像函数。在此基础上引入Heaaian矩阵:

(5)

式中,H代表Heaaian矩阵,达到既准确计算梯度,又简化计算的目的。最后计算每个特征点的幅值与方向,构成特征向量:

(6)

(7)

式中,G和θ分别代表梯度幅值与方向,得到这个特征点数据,本研究在此特征点周围领域16个像素区域,每个像素区域按照以上方法计算8个方向的SIFT特征,最终得到16×8,总共128个数值,即深度特征向量,构成完整的SIFT特征向量,作为后续神经网络的输入量。基于以上本研究的SIFT特征检测算子,完成对钢板区域定位。对待检测图像3进行SIFT特征检测并自动连接,定位缺陷边缘,在此基础上的定位结果如图3所示, 可见准确定位缺陷特征与边缘,自动定位缺陷区域。

图3 基于SIFT特征的缺陷粗检测

1.2 基于多层BP神经网络的缺陷检测

通过计算机视觉与图像处理的方法,得到钢板缺陷SIFT特征向量后,需要进行数据统计分析,本研究引入机器学习方法中的BP神经网络,并构建起128-16-28-42-1的五层网络架构,达到准确识别钢板缺陷的目的。BP神经网络是模拟生物神经网络而建立的一种数学模型,包括输入层、隐层和输出层的网络拓扑结构;BP神经网络是误差反馈型神经网络,即根据误差的逆向传播不断纠正并完善其权值与阈值[7-8]。BP神经网络一般分为三层,如下所示:

y=purelin(W2*(tansigW1*x+M1))+M2

(8)

式中,tansig代表输入层到隐层之间的双曲正切函数,purelin代表隐层到输出层之间的线性传输函数,y代表BP神经网络的输出,x代表输入向量,W1代表输入层到隐层之间连接权值,W2代表隐层到输出层之间的连接权值,M1代表输入层到隐层之间连接阈值,M2代表隐层到输出层之间的连接阈值[9]。本文首先将3层推导到4层,计算公式如下:

y=tansigW3*(purelin(W2*(tansigW1*x+M1))+
M2)+M3

(9)

式中,W3代表第一隐层到第二隐层之间的连接权值,M3代表第一隐层到第二隐层之间连接阈值。接着从第4层推导到底5层,计算公式如下:

y=tansigW4*(tansigW3*(purelin(W2*
(tansigW1*x+M1))+M2)+M3)+M4

(10)

式中,W4代表第二隐层到第三隐层之间的连接权值,M4代表第二隐层到第三隐层之间连接阈值。 由此完成本研究的5层BP伸进网络的数学模型建立。

最后,记录输出层的BP反馈,输出层各节点的期望响应R与真实响应O之间的总误差平方为:

(11)

式中,E代表输出层各节点的期望响应R与真实响应O之间的总误差平方,当其达到最小值时的各层各节点的权值与阈值为最佳,即达到准确识别钢板缺陷的目的。神经网络已经在各个领域取得成功应用,但是也存在一些缺陷,例如可能陷入局部最优,不能保证收敛全局最优[10]。本研究通过多层推导,增强网络分析的健壮性,得到优化权值与阈值的目的。

基于本研究的多层BP神经网络,以128个SIFT特征向量为输入量,得到钢板缺陷的准确结果,如图4所示,相较于图3,经过多层BP神经网络的训练学习之后,其检测效果更加精准。

图4 多层BP神经网络的缺陷检测优化

2 实验与讨论

为了体现本文算法的优势,将钢板缺陷检测性能较好的技术—文献[3]、文献[4]设为对照组,本文系统基于Visual Studio2010平台开发实现,算法实验参数如:hessian= [83,36,84,98],权值阈值矩阵为[39,57,157,23]。

待检测图像本研究开发的系统界面,如图5所示,存在待检测的钢板缺陷,系统功能具有“系统开启”、“SIFT特征检测”、“五层BP神经网络分析”、“缺陷检测”。本研究先进行基于SIFT特征检测的缺陷定位,如图6所示,再进行基于五层BP神经网络分析的缺陷识别确认,如图7所示,可见本研究的钢板缺陷检测正确。

而利用对照组文献[3]技术,结合尺度独立算法区分了目标图像中不同类型的边缘,有效的提取了钢板表面缺陷图像的边缘,完成钢板缺陷检测。但是,此技术未充分考虑缺陷边缘特征微弱性和背景干扰,往往影响了检测准确性。以此技术处理原图5,拼接结果如图8所示,框线标注区域即检测失误区域,可见未检测正确。

利用对照组文献[4]技术,使得图像局部过亮的情形得到了很大改善,为图像后续的分割处理提供了极大便利,利用最大熵分割方法对增强处理后的图像进行分割,达到了检出钢板缺陷的目的。以此技术处理原图5,检测结果如图9所示,框线标注区域即检测失误区域,可见未检测正确。

为了评估本文算法的稳定性,利用工业相机采集1000幅钢板缺陷图像作为测试集。其中,对比度较低的样本数量有150幅,光照不均的样本数量为200幅,缺陷轮廓较为复杂的样本有200幅,其余为正常缺陷图像。通过统计识别正确的缺陷图像数量,结果见表1。由表可知,所提算法的正确检测率是最高的,约为97.6%,而文献[3]、文献[4]两种技术的正确检测率不佳,分别为90.3%、89.2%。这显示所提算法具有良好的稳定性。

图5 原图 图6 SIFT特征检测结果

图7 本文算法的检测结果 图8 文献[3]的检测结果

图9 文献[4]的检测结果

表1 图像检测率

3 结论

为了解决当前钢板缺陷表面边缘具有低对比度,背景复杂干扰和光照不均,导致算法检出能力不足的问题,本文分别从高斯差分、尺度空间函数、SIFT特征和神经网络出发,提出了基于SIFT特征与五层BP神经网络的钢板缺陷检测算法。根据缺陷尺度空间旋转归一化特性,对图像进行处理,分离缺陷与背景。基于缺陷深度特征,利用自主推导构建起128-16-28-42-1的五层网络架构,达到准确检测钢板缺陷的目的。实验结果表明:本文钢板缺陷检测算法具有更高准确度和稳定性。

[1] Liviu Bereteu, Mircea Vodă, Tiberiu Medgyesi. Defects Detection on the Welded Thin Steel Plates Using Vibroacustic Method[J]. Advanced Materials Research,2014, 14(7): 212-217.

[2] Lu Jili,Lin Mingxing,Huang Yan. A High-Accuracy Algorithm for Surface Defect Detection of Steel Based on DAG-SVM[J]. Journal of Geophysical Research Atmospheres, 2013 , 157 (10):412-418.

[3] 吴彬彬, 汤勃,孔建益,等. MAS小波的钢板表面缺陷边缘检测的研究[J]. 机械设计与制造,2015(5):43-46.

[4] 高如新,杨晓雪,齐成.基于钢板表面缺陷检测的图像增强研究[J]. 河南理工大学学报(自然科学版), 2015, 34(6): 850-854.

[5] 胡明星, 王小兰. 模板匹配优化耦合图像校正的旋转工件目标定位算法[J]. 组合机床与自动化加工技术, 2016(6) : 35-38.

[6] MU Kenan, Fei Hui, Xiangmo Zhao. Multiscale Edge Fusion for Vehicle Detection Based on Difference of Gaussian [J]. Optik-International Journal for Light and Electronic, 2016, 127 (11): 4794-4798.

[7] Le Ting Zhang, Ya Ping Wu, Ming Qiang Wei. The Method Based on BP Neural Network of Pile Foundation Defect Detection[J]. Applied Mechanics & Materials, 2014, 687(12): 952-956.

[8] 曹存存, 樊文欣, 杨华龙. 基于BP神经网络的连杆衬套磨损量预测[J]. 组合机床与自动化加工技术, 2016(8):50-53.

[9] Qing Hua Li, Di Liu. Aluminum Plate Surface Defects Classification Based on the BP Neural Network [J]. Applied Mechanics & Materials, 2015, 734(76): 543-547.

[10] 周斌, 曹勇, 王禹林. 基于BP神经网络的大型螺纹旋风铣削表面粗糙度预测[J]. 组合机床与自动化加工技术, 2015(7):5-7.

SteelPlateDefectionDetectionAlgorithmBasedonSIFTFeatureandMulti-LayerBPNeuralNetwork

ZHU Xiao-jun, HAN Lin, ZOU Xiang-ling

(School of Information Engineering, HeNan Radio & Television University, Zhengzhou 450002,China)

In order to solve the current steel plate surface defect contrast weak edge, complex and uneven illumination, lead to the problem of insufficient recognition detection algorithm, the steel plate defection detection algorithm based on SIFT feature and multi-layer BP neural network was proposed. Firstly, the Gaussian difference and Hessian matrix were introduced to calculate the spatial scale function for statistical SIFT depth vector features to complete defect detection and collection. Then, the output of fifth layers is calculated for filtering the interference of pseudo SIFT feature, and multilayer BP neural network topology analysis operator was established to achieve the purpose of accurate identification plate defects. Finally, detection system software was designed based on the software engineering to test the defect detection accuracy of this algorithm. The experimental results show that the algorithm is more accurate and robust compared with the current steel plate defection detection technology.

steel plate defect detection; SIFT feature; BP neural network; spatial scale; depth vector

TH162;TG506

A

(编辑李秀敏)

猜你喜欢
隐层权值算子
与由分数阶Laplace算子生成的热半群相关的微分变换算子的有界性
二进制张量分解法简化神经网络推理计算①
基于RTD可编程逻辑门的n变量函数实现算法
一种融合时间权值和用户行为序列的电影推荐模型
斜对角算子矩阵的Weyl谱
一种自适应确定隐层节点数的增量半监督超限学习机算法
一种深度梯度提升回归预测模型
Domestication or Foreignization:A Cultural Choice
基于RDPSO结构优化的三隐层BP神经网络水质预测模型及应用
强规划的最小期望权值求解算法∗