激光与光电子学进展, 2018, 55 (1): 011501, 网络出版: 2018-09-10   

基于机器视觉的冲压件表面缺陷在线检测研究 下载: 1400次

Online Stamping Parts Surface Defects Detection Based on Machine Vision
作者单位
东华大学机械工程学院, 上海 201620
摘要
为实现图像处理技术在冲压件表面缺陷在线检测中的应用,开发了一套冲压件表面缺陷实时在线快速检测系统。使用基于多模板匹配算法获取图像中冲压件的位置,建立感兴趣区域;提出基于拉普拉斯-高斯(LoG)算子的实时浓淡补正算法实现冲压件表面缺陷的增强;使用大津法和形态学操作实现冲压件表面缺陷位置的提取。系统使用MATLAB实现基于LoG算子的滤波算法;使用LabVIEW实现其余算法,并在其中调用MATLAB 脚本节点;使用多线程技术实现高效的检测算法。经实验,系统能够对生产线上每一个冲压件进行快速检测,并检测出有缺陷的冲压件,整个过程耗时在100 ms以内,能够满足在线实时检测需求。
Abstract
In order to apply the image processing technique to the surface defects online-detecting of stamping parts, a real-time fast detection system is designed. Multi-pattern matching algorithm is used to locate the stamping parts in the image, then the region of interest is built. The shading correction algorithm based on the Laplace-Gaussian (LoG) operator is proposed to enhance the defect parts of workpieces. The Otsu algorithm and morphology are used to extract the defect parts. The system adopts MATLAB to realize the filtering algorithm based on LoG operator, the rest of the algorithm are implemented by LabVIEW and the MATLAB script node is called by LabVIEW, the multithreading technology is used to accelerate the computation. According to the experiment results, the proposed system can detect each stamping parts on the production line and detect the defectives. The whole process takes less than 100 ms, which can satisfy the demand of online detection.

1 引言

未进行表面处理的部分冲压件很容易生锈,有的工件也可能因为模具问题出现冲压损坏,影响使用寿命。常见的冲压件表面缺陷有锈蚀和几何形状缺陷,几何形状缺陷包括皱纹、裂痕、缺料、毛刺、冲压不完全等。传统表面检测手段是人工检测,但由于冲压件较小,有些缺陷较为细微,长时间目测不仅影响生产效率,更会造成视觉疲劳,影响检出率[1]。目前,很多文献提出了在线检测算法,但实际检测时,图像拍摄仍是在传送带静止时进行,这种方法效率低,且增加了传送带控制难度,本质上仍属于离线检测。

相对于离线检测,实时在线检测需要对运动中的冲压件进行拍摄,其图像存在运动模糊,对比度低等问题,工件表面缺陷受模糊影响更难识别。另外,由于表面缺陷检测的后续环节往往是工件分拣,即拣出有缺陷的不合格冲压件,为了减少工件分拣环节用时,避免传送带上的冲压件堆积,实时在线检测也对算法的执行效率有很高的要求。

表面缺陷处理的两个关键步骤是图像增强和缺陷分割,国内外已有许多研究成果。文献[ 2]提出了基于轮廓波变换和混沌小生境粒子群优化算法相融合的图像增强算法,但增强一幅图像需要46 s,因而其实时性很差;文献[ 3]使用基于独立成分分析(ICA)设计的滤波器对低对比度的图像进行卷积,使得低对比度图像上的缺陷得到增强,在LCD缺陷检测中取得了较好的效果;文献[ 4]提出了基于小波变换层间系数相关性进行边缘检测的方法,能够在噪声环境下较好地提取边缘信息[4];文献[ 5]提出了一种领域加权分割法,相对于大律法(Otsu),该方法对简单图像中的缺陷具有较好的提取效果。

针对实际应用需求,本文提出基于多模板匹配的工件快速定位算法和基于实时浓淡补正的工件表面缺陷提取方法。工件定位时,采用金字塔算法加速模板匹配过程,并通过建立感兴趣区域(ROI)避免图像旋转操作。工件表面缺陷提取时,首先采用双线性插值法压缩存在运动模糊的图像,接着使用基于拉普拉斯-高斯(LoG)算子的实时浓淡补正算法对ROI内的工件表面缺陷进行增强,然后使用大津法进行缺陷分割。经过处理后的图像能够分辨是否有缺陷,最终通过灰度对比检测锈蚀缺陷、通过再次模板匹配检测几何缺陷给出结果。由于模板匹配环节使用了多线程编程技术,因此不会影响算法效率,且模板匹配后可以获取感兴趣区域,后续处理环节的计算量大大降低,提高了算法执行效率。

2 系统硬件组成

图1为系统硬件组成示意图及实物图。其中1为传送带,2为多种形状的冲压件,3为相机视场,4为感光芯片,5为环形光源,6为工业相机(200万像素),7为计算机。

图 1. 系统硬件(a)组成图和(b)实物图

Fig. 1. (a) Composition diagram and (b) physical diagram of system hardware

下载图片 查看所有图片

系统硬件平台搭建过程如下:首先利用型材在传送带上方搭建一个悬臂,然后将工业相机安装在悬臂上,再将环形光源固定在相机上。使用1394接口连接相机与计算机;在传送带上放置冲压件;给相机和光源上电,相机拍摄的图像由计算机显示,根据相机视场调整悬臂高度和相机纵向位置,使相机视场能够覆盖传送带宽度;根据图像清晰度调整相机焦距和环形光源亮度;最后开始测试,给传送带驱动电机上电,传送带以4 m/min的速度运行,工业相机以1 ms的曝光时间和10 frame/s的速度采集视频,并将视频传给计算机。据此应用情景,检测算法应在100 ms以内给出产品合格(OK)或者不合格(NG)的判定结果。实际获取的一帧图像如图2所示。

图 2. 在线获取的图像

Fig. 2. Image obtained online

下载图片 查看所有图片

3 基于多模板匹配的工件快速定位

对在线获取的图像进行图像处理,首先需要知道工件在整张图中的位置,以便将工件单独提取出来进行分析。模板匹配时采用归一化互相关(NCC)算法计算模板和待测图像的相关性,以此来获得工件在图像中的位置。为了快速找到工件的位置,采用金字塔算法来加速相关性的计算过程。由于最终得到的工件位置区域不是一个水平矩形,通过提取该矩形xy方向的最大最小值来建立水平方向的矩形,即ROI,该过程简化了的矩形的旋转操作。

3.1 基于灰度信息的模板匹配算法

基于图像灰度信息的匹配算法是在20世纪 70年的军用飞行器导航系统的研究中发展起来的,到现在经过很多学者的努力,这个方向的理论已经比较成熟。他们相继提出了很多相关性算法,如平均绝对差(MAD)算法,序贯相似性(SSDA)算法,NCC算法[6]。NCC算法的核心是模板和待测图像的相关性计算。

假设尺寸为M×N的图像f(x,y)中存在大小为K×L的子图像w(x,y),其中KMLN,则w(x,y)和f(x,y)在点(i,j)处的相关性定义为

C(i,j)=x=0L-1y=0K-1w(x,y)f(x+i,y+j),(1)

式中i=0,1,…,M-1,j=0,1,…,N-1。

图像相关性的计算过程如图3。假设图像f的原点位于左上角。将模板w沿着图像区域移动并计算模板下区域的C值。C值最大的位置即为模板w和图像f的最佳匹配位置。

当图像中的模板对象尺度并未缩放或旋转时,NCC算法高效可靠。但由于模板需要不断缩放或旋转以进行匹配,效率大大降低,故需对其进行加速改进以满足实时性需求,金字塔算法可以取得很好的加速效果。

图 3. 相关性计算过程

Fig. 3. Calculation process of correlation

下载图片 查看所有图片

3.2 金字塔加速算法

金字塔算法也叫分层搜索法,即先在较低分辨率图像中进行初步搜索,将得到的较为粗略的结果(x,y)回溯到高一层的图像中,得到一个领域δ(x,y),表示以(x,y)为中心、δ为半径的圆,再在该领域进行搜索,以此类推,最后在高分辨率图像的小范围领域中,进行相关函数的精确匹配[6]。金字塔加速算法在模板匹配中的应用过程如图4所示。

图 4. 金字塔加速算法的流程图

Fig. 4. Flow chart of pyramid acceleration algorithm

下载图片 查看所有图片

3.3 工件定位及ROI提取

使用上述模板匹配算法对图2中的工件进行处理,得到工件的定位图如图5所示。由于只通过4个定位点的坐标无法建立旋转矩形的ROI,因此通过提取4组定位点坐标的xy最大最小值来建立水平方向的矩形ROI,以便后续缺陷分割,降低图像其他部分的干扰。

图 5. 工件快速定位

Fig. 5. Fast positioning of workpieces

下载图片 查看所有图片

4 基于实时浓淡补正的工件表面缺陷提取

实时浓淡补正算法一般用于从阴影中提取瑕疵,其原理是通过算法保留瑕疵同时去除背景阴影。一般需要以下步骤:1) 将原始图像缩小;2) 对缩小图像进行滤波,缩小的图像可加速滤波过程;3) 将滤波后的图像还原成原尺寸;4) 将原始图像和滤波还原后图像进行差分。本文采用双线性插值算法压缩图像,能够保留图像细节;采用LoG算子对缩小图像进行滤波,LoG滤波器对图像的高频部分(工件表面的缺陷和工件边缘)比较敏感。差分后的图像工件表面被很好地增强,缺陷容易分割,通过灰度对比检测锈蚀缺陷、通过再次模板匹配检测几何缺陷,对处理后的图像给出检测结果。

4.1 双线性插值算法

传统的实时浓淡补正算法是在低尺度下对图像进行滤波,但由于在线采集的图像存在一定程度的模糊,相当于未模糊的图像已加了低通滤波器,如果继续进行模糊处理效果并不显著。因此先对模糊图像进行压缩处理,再利用实时浓淡补正算法对图像进行边缘提取。目前提出的图像压缩算法有霍夫曼编码、离散余弦(DCT)变换和小波压缩、双线性插值算法,相对于其他算法,双线性插值算法能够较好地保留图像细节。

在图像的双线性插值算法中,目标图像中新创造的像素值是由源图像在它附近的2×2区域内的4个临近像素值通过加权平均计算得出的。

图6所示,X方向的线性插值:

f(R1)x2-xx2-x1f(Q11)+x-x1x2-x1f(Q21),(2)

式中R1=(x,y1)。

f(R2)x2-xx2-x1f(Q12)+x-x1x2-x1f(Q22),(3)

式中R2=(x,y2)。

Y方向的线性插值:

f(P)y2-yy2-y1f(R1)+y-y1y2-y1f(R2)(4)

图 6. 双线性插值示意图

Fig. 6. Diagram of bilinear interpolation

下载图片 查看所有图片

4.2 基于LoG算子的工件表面增强

Marr和Hildreth论证过,最能满足以下两条件的算子是 2G滤波器:能计算图像中每一点处的一阶导数或二阶导数的数字近似微分算子;能被调整以便在任何期望的尺寸上起作用[7] 。LoG滤波器是图像处理中具有良好滤波效果的滤波器,本文采用LoG算子对缩小后的图像进行滤波。

LoG算子的表达式为

2G(x,y)=x2+y2-2σ2σ4×exp-x2+y22σ2(5)

图7为其对应的负LoG横截图。

图 7. 负LoG算子的横截图

Fig. 7. Cross section of negative LoG operator

下载图片 查看所有图片

可以发现,图7和高斯高通滤波器的横截图很相似,因此可期望LoG算子的作用类似于一个高通滤波器。实际上,LoG算子是对拉普拉斯算子的改良,使其对噪声不敏感,因此具有拉普拉斯算子的一些优良特性:强调图像中灰度的突变,不强调灰度变化极缓慢的区域。由于工件表面的缺陷和工件边缘对应着图像的高频部分,因此这些位置对LoG滤波器的响应较为强烈。

图2与滤波复原后的图像进行差分,得到如图8所示的图像,可以看出,在3.3节提取的ROI作用下,经改良的实时浓淡补正算法处理后,工件表面得到很好地增强。

图 8. 增强后的工件表面图像

Fig. 8. Enhanced surface image of the workpiece

下载图片 查看所有图片

4.3 基于Otsu法的缺陷分割

工件表面经过增强处理后,一般存在三个灰度峰值。以图8为例,分别为灰度为0的蒙板背景,灰度为20的背景图像和灰度处于80~110之间的工件表面图像。对于同一环境下拍摄的图像,经上述处理过程后,图像灰度和图8中的灰度差别不会太大。但是由于环境光的影响,直接应用固定阈值处理的稳健性较差,故采用Otsu算法进行缺陷分割。

设图像的灰度级分别为0,1,…,L-1,灰度为i的像素数目为ni,总像素数为N,且N=n0+n1++nL-1,pi=ni/N表示灰度为i的像素的概率,于是有 i=0L-1pi=1,而图像总均值为μT= i=0L-1ipi。设C0C1分别表示两类像素群,C0=[0,…,k],C1=[k+1,…,L-1]。C0C1的均值分别记为μ0(k)和μ1(k)。令ω0(k)=i=0kpi,ω1(k)=10(k),μ(k)=i=0kipi,则:

μ0(k)=i=0kipi/ω0(k)=μ(k)/ω0(k),(6)μ1(k)=i=k+1L-1ipi/ω1(k)=μT-μ(k)1-ω0k(7)

于是可得类间方差为

σB2(k)=ω0(k)[μ0(k)-μT]2+ω1(k)[μ1(k)-μT]2(8)

进一步可得:

σB2(k)=[μTω0(k)-μ(k)]2ω0(k)[1-ω0(k)](9)

图8经上述运算后得到的图像如图9所示。同理可得图5中另一形状工件的二值图像如图10所示。

图9、10可以看出,缺陷分割后图像的明暗对比度(灰度差别)更明显。接下来通过工件表面的灰度变化来检测该工件是否有锈蚀缺陷,若灰度变化明显(明暗对比度达到一定值)可视为工件有锈蚀缺陷,肉眼观察图8、9,该工件有锈蚀缺陷,检测结果与观察结果一致;另外,再次通过模板匹配检测该工件是否有几何缺陷,若匹配对比度达到一定值则该工件无几何缺陷,否则不合格。此次的模板匹配与3.1节中的模板匹配不同,使用的是工件模板,3.1节中使用的模板是工件模板所在的矩形区域。

图 9. 阈值处理后的缺陷分割图

Fig. 9. Defect segmentation image after the threshold processing

下载图片 查看所有图片

图 10. 另一种工件的缺陷分割图

Fig. 10. Defect segmentation image for another workpiece

下载图片 查看所有图片

5 实验及算法性能测试

5.1 在线运行实验

图 11. 系统软件界面

Fig. 11. System software interface

下载图片 查看所有图片

在实验室内自然光环境下进行实验,计算机处理器是英特尔E7500(2.93 GHz),内存4G。由于传送带长度有限,首先按照第2节描述搭建硬件系统,根据相机拍摄范围调整相机位置,根据图像清晰度调整相机焦距和光源;再启动软件,在软件界面(图11)设置好参数,由于最后只需给出工件是否有缺陷(是否合格),故需要设置的参数有模板对比度,实验时将模板对比度设为6,点击开始运行;最后启动传送带的驱动电机,并且手动将不同形状的冲压件放到传送带上,放置时速度不能过快,需保证冲压件不会重叠,密度不会过大,基本上一张图像中不超过3个工件。等到相机拍摄到冲压件后,计算机便开始冲压件缺陷检测,原始图像大小为800 pixel×600 pixel。

编写LabVIEW程序实现前述NCC算法、金字塔算法、ROI建立、双线性插值算法、Otsu算法;在MATLAB中实现基于LoG算子的滤波,并在LabVIEW中调用MATLAB 脚本节点。对于相机采集的图像按照3、4节的顺序进行处理,首先结合NCC算法和金字塔算法快速找到图像中的几个冲压件,在不同的线程中对不同冲压件进行后续处理,保证及时给出缺陷检测结果,以减少后续分拣环节时间。在论述本文算法时所使用的图像可认为是实验1,组图12中的图像可认为是实验2。

图 12. (a)定位图像;(b)区域增强图像;(c)缺陷分割图像

Fig. 12. (a) Location image; (b) regional enhanced image; (c) defect segmentation image

下载图片 查看所有图片

5.2 性能分析

对100个冲压件进行了缺陷检测实验,其中有28缺陷件,18个有几何形状缺陷,10个有不同程度的锈蚀缺陷。实验检测出27个缺陷件,有1个锈蚀冲压件没有检测出,经观察该冲压件锈蚀程度很小。另外取20个冲压件(10个无缺陷,10个缺陷件),给每个冲压件编号,进行了3次重复实验,实验结果如表1所示。

表 1. 缺陷检测结果

Table 1. Defect detection results

NumberExperimentNumberExperiment
123123
1OKOKOK11NGNGNG
2OKOKOK12NGNGNG
3NGNGNG13OKOKOK
4NGNGNG14NGNGNG
5OKOKOK15OKOKOK
6NGNGNG16OKOKOK
7NGNGNG17OKOKOK
8NGNGNG18NGNGNG
9OKOKOK19NGNGNG
10OKOKOK20OKOKOK

查看所有表

表1可知,每次实验都能将10个缺陷件检测出来,且对于同一编号的冲压件3次实验结果一致。上述实验验证了本文方法的有效性。

LabVIEW中的性能及内存分析器可以详细测量程序运行时各个模块的用时,表2所示为第二轮实验中20个冲压件在一次实验时各个步骤的用时。

表2可知,在不需要对图像进行实时显示的情况下,本文算法的执行总时间可以满足相机的采样周期,从而实现小型冲压件实时在线检测。

表 2. 实验用时分析

Table 2. Experimental time analysis

NumberTime /msNumberTime /ms
TemplatematchBlockdiagramImagedisplayTemplatematchBlockdiagramImagedisplay
131.262.415.61119.862.715.6
215.678.015.61225.466.115.6
325.364.415.61323.672.215.6
428.460.815.51430.367.815.6
530.162.615.61525.560.415.6
623.368.515.61617.966.315.6
726.160.215.61723.668.215.5
832.265.915.61830.564.815.6
927.064.515.51927.163.515.6
1027.460.715.62027.865.615.6

查看所有表

6 结论

经分析,该研究方法解决了运动中的冲压件图像存在的运动模糊问题,满足了在线检测效率要求,且不妨碍后续的冲压件分拣工作。对静止冲压件图像处理,其图像清晰度高,模板匹配和缺陷提取相对简单,不需要过多处理,能够较快地得到缺陷检测结果。由于传送带运行中拍摄的图像比较模糊,为了得到准确的检测结果,采用基于轮廓波变换和混沌小生境粒子群优化算法相融合的算法,增强一幅图像需要46 s;而采用本文算法对图像进行相关处理,利用多模板匹配算法和多线程技术,可以大大减少匹配时间和运算量,检测冲压件是否为缺陷件的时间可控制在100 ms以内,满足在线实时检测要求。

在对生产效率的追求日渐迫切的情形下,工件实时在线检测具有广泛的应用前景。但考虑到执行效率,现有的文献研究大多难以用于实时检测。因此本文算法具有一定的应用价值。

参考文献

[1] 李丽娟, 徐尚龙, 秦杰. 基于图像处理技术的五金件表面缺陷检测研究[J]. 工程设计学报, 2011, 18(2): 134-138.

    Li L J, Xu S L, Qin J. Research on hardware surface defects detection based on image processing techniques[J]. Journal of Engineering Design, 2011, 18(2): 134-138.

[2] 王延年, 刘成涛, 李浩, 等. 基于数字图像处理的冲压件工件增强算法研究[J]. 激光杂志, 2014, 35(10): 80-83.

    Wang Y N, Liu C T, Li H, et al. Research on stamping workpiece enhancement algorithm based on digital image processing[J]. Laser Journal, 2014, 35(10): 80-83.

[3] Tsai D M, Lin P C, Lu C J. An independent component analysis-based filter design for defect detection in low-contrast surface images[J]. Pattern Recognition, 2006, 39(9): 1679-1694.

[4] 韩芳芳. 表面缺陷视觉在线检测关键技术研究[D]. 天津: 天津大学, 2011.

    Han FF. Key techniques for surface defects online detection based on machine vision[D]. Tianjin: Tianjin University, 2011.

[5] 孙雪晨, 姜肖楠, 傅瑶, 等. 基于机器视觉的凸轮轴表面缺陷检测系统[J]. 红外与激光工程, 2013, 42(6): 1647-1653.

    Sun X C, Jiang X N, Fu Y, et al. Surface defect detection system for camshaft based on computer vision[J]. Infrared and Laser Engineering, 2013, 42(6): 1647-1653.

[6] 张俊凯. 一种快速的旋转模板匹配算法的设计与实现[D]. 哈尔滨: 哈尔滨工业大学, 2013.

    Zhang JK. Design and implementation of a novel template matching algorithm invariant to rotation[D]. Harbin: Harbin Institute of Technology, 2013.

[7] 冈萨雷斯, 理查德. 数字图像处理[M]. 北京: 电子工业出版社, 2013: 515- 523.

    Gonzalez RC, RichardE. Digital image processing[M]. Beijing: Publishing House of Electronics Industry, 2013: 515- 523.

[8] 何志勇, 孙立宁, 陈立国. Otsu准则下分割阈值的快速计算[J]. 电子学报, 2013, 41(2): 267-272.

    He Z Y, Sun L N, Chen L G. Fast calculation of threshold based on Otsu criterion[J]. Acta Electronica Sinica, 2013, 41(2): 267-272.

[9] 郭萌, 胡辽林, 赵江涛. 基于Kirsch和Canny算子的陶瓷碗表面缺陷检测方法[J]. 光学学报, 2016, 36(9): 0904001.

    Guo M, Hu L L, Zhao J T. Surface defect detection method of ceramic bowl based on Kirsch and Canny operator[J]. Acta Optica Sinica, 2016, 36(9): 0904001.

陈广锋, 管观洋, 魏鑫. 基于机器视觉的冲压件表面缺陷在线检测研究[J]. 激光与光电子学进展, 2018, 55(1): 011501. Chen Guangfeng, Guan Guanyang, Wei Xin. Online Stamping Parts Surface Defects Detection Based on Machine Vision[J]. Laser & Optoelectronics Progress, 2018, 55(1): 011501.

本文已被 8 篇论文引用
被引统计数据来源于中国光学期刊网
引用该论文: TXT   |   EndNote

相关论文

加载中...

关于本站 Cookie 的使用提示

中国光学期刊网使用基于 cookie 的技术来更好地为您提供各项服务,点击此处了解我们的隐私策略。 如您需继续使用本网站,请您授权我们使用本地 cookie 来保存部分信息。
全站搜索
您最值得信赖的光电行业旗舰网络服务平台!