基于神经网络的零件缺陷机器视觉识别系统
2017-12-15
(沈阳工学院, 辽宁 抚顺 113122)
基于神经网络的零件缺陷机器视觉识别系统
李鹤
(沈阳工学院,辽宁抚顺113122)
小轴承、轮轴等是机器、车辆、发动机等的重要零配件,为提高对其表面缺陷进行检测的检测效率和检测精度,以小轴承表面为研究对象,提出了采用机器视觉技术实现对轴承表面缺陷的实时在线自动检测,设计了基于BP神经网络的零件缺陷机器视觉在线自动检测系统;根据微小轴承的表面结构、尺寸、检测精度和缺陷特征,采用机器视觉技术,对所采集到的图片进行预处理,构建BP神经网络检测识别模型,利用 Hough 变换以及Roberts算子提取了图像中的目标区域,以组合矩不变量为依据,判断轴承是否存在缺陷,从而对微小轴承缺陷进行实时检测;MATLAB仿真结果证明了人工神经网络识别模型的检测能力的可靠性和有效性。
缺陷检测;神经网络;机器视觉;组合矩
0 引言
近年来,零件缺陷的识别逐渐成为图像处理及模式识别领域的研究热点问题,其实用性强,尤其在大规模工业生产上,其应用前景更是广阔,有着巨大的潜在市场。如今伴随着计算机的快速发展,越来越多的在图像处理及模式识别研究中,许多人类难以解决的相对复杂的问题,都可以借助计算机的高速运算来解决[1-2]。
日常生活中,轴承随处可见,其是各种机器、车辆、发动机等的重要零配件,其质量的合格与否对使用者的性能有重要影响。因此,在生产过程中,进行轴承质量检测就成为了必须。传统缺陷检测法有:声发射法[3]、超声法[4]、涡流法[5]、磁粉法[6]等。其中声发射法只对大面积碰伤缺陷有良好的适应性,超声法对细小裂纹的探测适应性差;涡流法无法适用于非导体材料;磁粉法检测易受操作人员主观因素的影响。而采用机器视觉的缺陷检测法具有准确度高、速度快及实时检测的特点。因此,在实际生产中,采用机器视觉技术构建检测识别系统成为了解决这一问题的关键。随着数字图像处理分析理论的完善,机器视觉技术在工业在线检测[7-8]、测量[9]的应用逐渐广泛。
针对微小轴承的表面结构、尺寸、检测精度和缺陷特征,本文设计了一种基于BP神经网络的零件缺陷机器视觉在线自动检测系统。其采用机器视觉技术,构建BP神经网络检测识别模型,采用进行图像特征提取的间接识别方法,以组合距不变量为依据,对微小轴承缺陷进行实时检测,判断零件的是否合格。
1 方案设计
本文采用机器视觉技术,构建BP神经网络检测识别模型,识别方法采用进行图像特征提取的间接法,选用组合距不变特征量为依据,实时检测微小轴承表面缺陷。微小轴承检测识别系统方案及硬件结构如图1所示。
图1 微小轴承检测方案
其工作原理为:当微小轴承传送到成像系统镜头下时,即可触发光源系统,将其在面阵 CCD上放大成像。面阵CCD完成光电信号的转换,经图像采集卡完成图像的模数转换后,上位机会将数字信号输入计算机内存,从而即可得到轴承的灰度图像,然后经滤波、边缘检测、特征提取与识别等处理后,即可检测出轴承表面的裂纹、擦伤、形状不良等缺陷。根据检测结果,判定轴承是否合格,对于不合格零件,上位机通知下位机控制剔除机构剔除不合格零件,而合格零件直接送至零件合格库。
2 检测算法设计
2.1 图像预处理
进行图像采集工作时,由于现实环境的影响难以避免,实际获得的图像不可避免的可能会受到严重的噪声干扰,造成接收到的图像质量下降。所以进一步处理图像或特征提取前要先对图像进行滤波、二值化、平滑、去噪声、分割、边缘检测等预处理,然后对其进行特征提取。而且有时图像会出现偏移、大小不一的现象,此时就需进行归一化处理,为图像识别做准备。下面主要针对滤波、图像分割、边缘检测、目标提取做详细介绍。
2.1.1 滤波
一般由于成像系统、传输介质等的生产工艺上的所具有的缺陷及不足,图像的形成、传输过程往往不可避免的可能会受到各种各样的噪声的污染。除此之外,例如,当在进行图像处理的过程中,如果输入的图像并不如预期所想的那样,这时也可能在形成的结果图像中引入或多或少的噪声干扰。在图像上噪声常常表现为强视觉效果的孤立像素点。一般而言,噪声信号与所研究的目标对象并不是相关联的,噪声信号多以无用信息的形式出现,叠加在有用信号上,从而扰乱图像的可观测信息。一般对于数字图像信号而言,噪声值常常表现为极大值或者是极小值,通过把极值加减作用在实际图像像素的真实的灰度值上,从而造成图像的亮点或者是暗点影响,严重影响了图像的质量,致使图像质量下降,干扰了进行图像复原、分割、特征提取、图像识别等一些基本的后续工作。如果想有效的抑制噪声,这时必须考虑两个最基本的问题:一是可以能有效地去除目标及背景中的噪声干扰;二是可以有效的保证目标图像的形状、大小及特定的几何和拓扑结构特征不变化。为了减少图像失真,提取到更多可用信息。本文采用中值滤波法,其算法如下:
①当处理处理像素点(i,j)时,以这个像素点为中心取N×N的区域,再求出N×N个像素点的灰度中值M(i,j)。(N为奇数)
②设N/2的整数部分为r,对N×N区域的每一点计算加权系数M(i,j)。
(1)
(2)
式中,I(m,n)为N×N区域内(m,n)点的灰度值。
2.1.2 图像分割
一般在整幅图像中,常常只有里面的部分目标是人们所感兴趣的,通常情况下,这些目标占据一些特定的区域,还有就是在某些特性,例如灰度、和纹理等上与临近的图像有些差异。这些特性差别可能非常显著,也可能很细微,以至于连人的肉眼都察觉不出。近几年来,随着计算机及图像处理技术的快速发展,许多人类难以解决的相对复杂的问题,都可以借助计算机的高速运算来解决,这使得人们能够方便的高效的通过计算机来获取和处理图像信息。图像分割是图像识别的基础,它的作用是把反映物体本质情况的、占据不同区域的、具有不同特性的目标加以区分,并形成数字特征。图像识别和图像理解的基本前提步骤就是图像分割,图像分割质量的好坏对后续图像处理的效果有着直接影响,以至于可能是决定其成败的关键因素,因此,图像分割的作用是至关重要的。
图像分割简而言之,就是按照一定的原则方法将图像分割成若干个具有独立特征的部分,并把感兴趣的目标提取出来过程。本文采用的是阈值分割法,阈值分割法关键在于阈值的选取[10]。在此,本文基于迭代思想求出全局阈值,算法如下[11]:
①令初始阈值为:
(3)
式中,Z1和ZK分别为图像的最大和最小灰度值。
②以阈值TK为依据,把图像分割为目标和背景图像,并求这两者的平均灰度值ZO和ZB:
(4)
(5)
式中,Z(i,j)是像素点(i,j)的灰度值;N(i,j)则为该像素点的加权系数,通常取1.0。
③求新阈值:
(6)
④如果TK=TK+1,则迭代到此为止,否则K←K+1,跳转到步骤2迭代继续。利用上述原理即可求出本文所需阈值。
经统计归类,轴承表面缺陷几乎都是出现在内外圈和密封盖端面上。所以检测时,最好把两者分割出来再检测,效果会更好。
2.1.3 边缘检测
所谓图像边缘,通俗地说就是图像灰度值有阶跃变化,是局部特性不连续的反映,往往代表着区域的开始或结束。把图像局部特性的不连续的像素连成完备的边界即可检测出图像边缘。本文使用Roberts算子提取图像的边缘。
Roberts边缘检测算子[12]由两个2×2模板构成。可表示为:
G(i,j)=|Gx|+|Gy|
(7)
表1为Roberts算子的梯度幅值近似计算法。
表1 梯度幅值计算
其中,(i,j)为当前像素的位置,其计算公式如下:
G(i,j)=|f(i,j)-f(i+1,j+1)|+
|f(i+1,j)-f(i,j+1)|
(8)
选取适当的阈值τ,若G(i,j) >τ,则把点(i,j)记作边缘点。Roberts算子检测定位精度比较高,但对噪声敏感。
2.1.4 目标图像提取
由于本文检测的轴承主要尺寸大小都为已知,故根据 Hough 原理,并结合实际条件,可利用以下步骤提取出密封盖端面:
①进行图像预处理,包括滤波、阈值分割、边缘检测等。
②建立一个离散参数空间,其与图像空间相同,并在其各个离散位置上建立计数累加器,累加器的初值设为0。
③逐点扫描处理后的二值图像,一旦遇到前景点即提取的边缘点,就以此点为圆心,寻找图像范围内半径为r的所有点。把圆周上的各点处的累加器的值加1,并记下该圆的圆心所在位置。
④将各点的累加器值进行比较,最终要找的圆心点即为累加器值最大的点。确定到圆心位置后,可将防尘盖圆环分割出来。
2.2 神经网络识别模型确立
图像前期处理完成后就要对图像进行识别,本文采用人工神经网络进行模式识别,且采用进行图像特征提取的间接识别方法。
2.2.1 特征提取
零件缺陷检测中,是否能够选取合适的特征描述,其将直接影响到正确识别率的高低。较强的通用性、较高的精度、较快的提取速度快的一组量是一个好的特征描述所具有的基本特点。在实际应用中,常常从已有各种特征描述中,找到最佳的目标特征描述组合。而提取图像的特征量时,应当选择一个在目标发生倾斜、大小、位置变化的时候,仍能够保持不变的特征量。为了更好地提高识别的正确率,本文选用矩不变量对图像特征量进行提取。矩不变量特征是模式识别中常用的一种特征描述。对于图像f(x,y),其二维(p+q)阶几何矩为如下黎曼积分形式:
(9)
其中:p,q=0,1,2,...,根据唯一性定理,当所有各阶矩均存在时,矩序列{mp,q}唯一地被f(x,y)确定;{mp,q}也唯一确定了f(x,y)。为了得到位置不变性,引入中心距,其定义为:
(10)
(11)
用ηpq表示的7个具有平移、尺寸和旋转不变性的矩不变量为:
I1=η20+η02
(12)
(13)
I3=(η30-3η12)2+(3η21-η03)2
(14)
I4=(η30+η12)2+(η21+η03)2
(15)
I5=(η30-3η12)(η30+η12)
[(η30-η12)2-3(η21+η03)2]+
(3η21-η03)(η21+η03)
[3(η30+η21)2-(η21+η30)2]
(16)
I6=(η20+η02)
[(η30+η12)2-(η21+η03)2]+
4η11(η30+η12)(η21+η03)
(17)
I7=(3η12-η30)(η30+η12)
[(η30+η12)2-3(η21+η03)2]+
(3η21-η03)(η21+η03)
[3(η30+η12)2-(η21+η30)2]
(18)
Maitra根据这7个不变量,定义如下6个不变量对目标分类。
(19)
在对图像中的目标进行特征提取时,本文选择采用以这6个不变量为基础而构成的 5个组合矩不变量:
(20)
由于图像所具有的组合矩不变的特征,本文利用此原理,进行图像的模式识别。
2.2.2 图片特征库建立
本文选用35幅拍摄的微小轴承图片,其中20幅合格和15幅不合格,对它们进行1~35编号,1~5、11~25为合格的轴承图片,6~10、26~35为不合格的轴承图片。图片经预处理后分别计算式(20)所示的组合矩不变量(M1,M2,M3,M4,M5),作为人工神经网络理论的图片特征库。
2.2.3 构建神经网络识别模型
按照人工神经元连接方式上的不同,人工神经网络可以划分为4个大类,即前向、反馈、相互结合和混合型的这几个网络。其中,前向网络是比较经典的一种神经网络,前向网络的突出特点是前后两层之间的神经元之间相互连接,每层内部的神经元相互之间不连接。而反馈网络增加了从输出层到输入层之间的反馈。对于相互结合型网络,其每个神经元都能够实现双向的连接,并且各个神经元在进行信息处理的同时,还常常伴随着各个神经元之间的内在相互作用。混合型网络的连接方式是介于前向和相互结合型网络之间的。由于神经网络具有高速并行处理能力、良好的容错能力、自学习能力及较强的分类能力等特点,所以在识别阶段,对于图像的识别来说,本文采用神经网络分类器是非常有效的手段。
BP网络是多层前向网络,本文使用人工BP神经网络作为分类器对已经提取的特征进行分析和识别归类。其工作方式为:首先是训练方式,这种工作状态下要采用一定数量的样本图像对模型进行训练,还要在训练前给出各个样本的所对应的分类,一直到模型能够对所有样本进行正确的识别为止;然后是识别方式,种工作状态下直接把待识别的图像输入到模型,通过模型计算并与训练特征库对比后,输出识别结果。识别系统模型如图2。
图2 神经网络图像识别系统模型
本文采用三层BP 神经网络模型,网络结构分为输入层、隐含层和输出层。输入层节点、隐层、输出层节点分别取5,6,1,隐层、输出层传递函数分别取多个S型函数(logsig)的叠加、线性函数(purelin)。隐含层激励为多个S型函数的叠加,相邻函数间有着不同的间隔,因而一个隐层神经元能表示的量级和状态增多,网络模糊性增加,网络模式识别的准确率将会得到提高。
2.2.4 BP神经模型网络训练
由于BP算法存在诸多缺点,BP算法的改进就成为了必需。本文的模式识别检测模型采用改进的BP算法——LM算法进行网络的训练。
采用LM训练算法,不需要计算Hessian阵,它可以用下面的矩阵来替代:
H=JTJ
(21)
其梯度为:
g=JTe
(22)
其中:J是雅克比矩阵。e是误差向量。则:
xk+1=xk-[JTJ+μI]-1JTe
(23)
迭代时,若训练成功,就使μ的值减小;反之,就使μ的值增加,以便使误差函数最终会减小到合适的值。本文所建立的微小轴承表面缺陷检测模型的训练流程图如图3所示。
图3 网络训练流程图
3 实验实现及分析
本文所采集到的原始图像其中之一如图4所示,实验时,采用MATLAB做仿真实验,对其进行边缘检测的效果及提取到的目标图像效果如图5所示。
图4 边缘检测效果 图5 目标图像效果
为验证算法有效性,在实验的模式识别阶段,本文首先对神经网络进行训练以得到合适的权值,采用的训练样本由图片特征库中的前10个构成,并把的合格和不合格的训练样本交叉输入,且令合格样本的期望输出为1,不合格样品的期望输出为0。将合格和合格样品交叉输入有利于网络的学习和记忆,因为BP网络具有学习新知识遗忘旧知识的缺点。之所以选择10幅图片作为样本输入,是因为网络训练样本过少,会使网络训练不完全,样本过多会造成过度学习,反而也不利于网络的学习和收敛。经过8次网络训练后,可达到设定的训练误差10的负7次方,训练误差实验曲线如图6所示。
图6 训练误差曲线图
然后,再将验证样本经预处理、特征提取后送入到网络中识别,并得出识别结果。选取图片特征库中编号11~35的图片作为模型的验证样本,把合格品的相对误差范围设定为12%,其余全部计为不合格(包括判别不出的全记为不合格)。部分样本的实际输出如表2、3所示。
表2 误差验证表及误差结果(部分数据)
表3 对应编号图片的与误差输出(部分数据)
实验结果统计显示,样本中25个微小轴承图片中,原本总共15个合格的有2 个被判别为不合格;原本10个不合格的全部判别为不合格。其统计表见表4。
表4 验证样本情况统计表
样本总数25合格数15不合格数10被判为合格被判为不合格被判为合格被判为不合格132010
由表4可以得出,模型的正确识别率为92%,充分说明本微小轴承表面缺陷神经网路检测模型具有较高的正确率,其可靠性和安全性较好。
4 结论
本文针对微小轴承的表面结构、尺寸、检测精度和缺陷特征,并结合实际实验条件,构建了用于检测识别微小轴承表面缺陷的人工神经网络模型,选择了适用于本文模型的预处理方法对所采集图片进行处理,利用 Hough 变换以及Roberts算子提取了图片中的轴承防尘盖部分;以组合矩不变量为依据,判断轴承是否存在缺陷;利用MATLAB软件做仿真实验,结果表明其用于实际检测的可靠性。并用多幅微小轴承图片验证了模型的准确性,得到了较好的检测效果,证实了本文采用的BP神经网络模型用于轴承表面缺陷识别的合理性。
[1] 高津京.计算机测量与控制[J].计算机测量与控制,2002,10(9):570-572.
[2] 张光建,申时全.基于Windows的计算机测量与控制软件设计[J].贵州大学学报:自然科学版, 2003, 20(4):411-413.
[3] Ran Qifang. Brief intro duction of nondestructive testing techniques and their characteristics [J]. NDT, 1999, 21 (2):75-80. (in Chinese)
[4] Wang H Y, He P, Zhang X D. Study of noninvasive examining based on ultrasonic[J].Instrumentation Technology, 2013, 3: 29-34. (in Chinese)
[5] Lin F B. The research and development of evolutions eddy current testing technology [ J ] . Nondestructive Test, 2012 ,36 (5): 11-14. (in Chinese)
[6] Lu B C, Li J W. Automatic flaw recognition method of fluorescent magnetic detection [J]. Journal of Nanjing University of Science and Technology, 2010, 34(6): 805-808.
[7] Jia H B, Murphey Y L, Shi J J. An intelligent real time vision system for surface defect detection[A].Proceedings of the 17th International Conference on Pattern Recognition[C]. 2004: 239-242.
[8] Peng X Q, Chen Y P, Yu W Y. An online defects inspection method for float glass fabrication based on machine vision [J]. International Journal of Advanced Manufacturing Technology, 2008, 39(11): 1180-1189.
[9] Bu X Z, Li G J, Yang B, et al. Fast unwrapping of panoramic annular image with center deviation [J]. Optics and Precision Engineering, 2012, 20(9): 2103-2109.
[10] Hao H X. The application of machine vision on the identification and detection of parts [D]. Nanjing: Nanjing University of Aeronautics and Astronautics, 2008.
[11] 何 斌,等.Visual C++数字图像处理(第二版)[M].北京:人民邮电出版社,2002.
[12] 龚声蓉,刘纯平,王 强.数字图像处理与分析[M].北京:清华大学出版社,2006.
ComputerVisionRecognitionSystemforComponentDefectBasedonNeuralNetwork
Li He
(Shenyang Institute of Technology, Fushun 113122,Chian)
Small bearings, axles, and etc are important components for machines,vehicles, engines and etc. In order to improve the detection efficiency and detection accuracy of its surface defects, Taking small bearing surface as the object of study, and putting forward the method to realize real-time online automatic detection of bearing surface defects based on machine vision technology and designing the online automatic detection system of defective parts machine vision based on BP neural network. According to the micro bearings surface structure, size, accuracy and defect characteristics, using machine vision technology, preprocessing for the collected image, and constructing BP neural network detective model, extracting target area in the image by Hough transform and Roberts operator. Based on the combined-moment invariants, the defects of the bearings are judged, and thus the defects of the small bearings are detected in real time.The simulation results of MATLAB verify the reliability and effectiveness of ANN detection model.
defect detection; neural network; machine vision; combined-moment
2017-07-24;
2017-08-23。
李 鹤(1981-),男,辽宁沈阳人,硕士,副教授,主要从事机器人控制,机器视觉算法方向的研究。
1671-4598(2017)11-0248-04
10.16526/j.cnki.11-4762/tp.2017.11.063
E926.3
A