技术文章
基于计算机视觉的轴承外径检测系统的研究
日期:2015-05-18
来源:九游会J9
摘 要:
本文开发了适应在线检测需要的轴承外径机器视觉检测系统。简明、精确的标定方法和高效精确的图像处理算法(如空间矩亚像素边缘定位算法)使系统达到了较高的检测精度。检测结果表明,系统具有非接触、速度快、精度高、现场抗干扰能力强等优点。
关键字:
轴承;机器视觉;图像处理 Abstract: A machine vision system for bearing outer diameter inspection was developed to meet the requirement of online inspection. Higher inspection precision was obtained due to the introduction of simple and precise calibration method along with effective and accurate image-processing algorithm(ex. Spatial moment sub-pixel edge location algorithm). The experiment results show that the system has many advantages such as non-touching, high speed, higher precision and strong anti-jamming etc. Key words: Bearing, Machine Vision, Image Processing
1 引言
机器视觉检测一般是指使用视觉系统确定一个产品对于给定的一组标准要求的偏差过程[1]。视觉检测技术具有非接触、速度快、精度合适、现场抗干扰能力强等突出的优点,能很好地满足现代制造业的需求。在1984年,西欧的工业视觉系统的销售总额达到589万美元,到1989年达到近4320万美元;在美国,1994年的视觉系统销售总额达到6000万美元,而到1996年近7亿美元[2]。目前全球整个机器视觉市场总量已经有60至70亿美元,并且正在按照每年8.8%增长[3]。随着制造业的发展, 视觉检测技术显示出广阔的应用前景。 精密轴承外径是轴承的重要检测参数之一。为提高轴承产品档次,增加产品附加值,准确测量轴承外径参数,是控制轴承产品质量必不可少的步骤。在生产实际中,一般使用游标卡尺, 千分尺和三坐标测量机(CMM)等仪器来测量。这些测量手段都只适合于离线人工接触检测,其检测精度与准确率往往与操作者的经验和工作态度有关。这些方法不但成本高,而且效率低下,不适合在线100%检测。为了适应轴承制造业生产批量大、质量要求严格、检测任务繁重的特点,以及自动化流水线作业、实现产品“零废品率”检测目标的要求,本文采用基于计算机的视觉检测和图象处理技术,设计了一个基于机器视觉的轴承外径检测系统。
2 检测系统的构成:
典型的视觉系统一般包括图像采集系统、图像处理部分、通信和I/O部分以及输入输出和执行机构等。图像采集系统一般由光源、镜头、摄像机、图像采集卡等组成。图像处理部分包括图像处理硬件和图像处理软件。
本视觉检测系统的硬件选用:
(1)光源的选用: 光源对目标成像的质量影响很大,它直接影响输入数据的质量和至少30%的应用效果。本系统采用容易获得,价格低,并且便于操作白帜灯作为光源,照明系统采用背向照明。背向照明是被测物放在光源和摄像机之间,它的优点是能获得高对比度的图像。
(2)图像采集卡的选用:本系统采用的是天敏10MOONS SDK2000高品质PCI视频卡。显示分辨率可达640×480、24位真彩色。动态捕捉影像以静态图像方式存盘,提供BMP,JPG等多种存盘格式。
(3)摄像机的选用:摄像机根据其图像传感器来分有CCD相机和CMOS相机两种。CMOS目前在除噪及灵敏度方面仍逊于CCD。本系统采用的是天敏10MOONS CCD镜头。最高分辨率达756×576像素、24位真彩色。
3 本系统检测原理及过程:
在测量视场一定的条件下,提高光测系统测量精度最直接的方法就是提高CCD摄像机的分辨率,即增加像素点阵数。然而这种提高硬件分辨率的代价是相当昂贵的和有限制的。本系统不是通过提高硬件分辨率的方法来提高测量精度,而是研究和开发具有更高精度的边缘提取算法,即亚像素算法。其直径检测过程如下: 3.1目标图象的获取: 将被测工件、光源、CCD摄像机稳定地固定在工作台上,且相互间的距离可进行调整。整个系统工作之前,需通过调整被测工件和CCD像敏面之间的位置关系以及镜头的焦距以保证被测工件在CCD上清晰成像。且被测工件的中轴线与CCD像敏面平行。 CCD摄像机输出的是标准的PAL制视频信号,而计算机只能对数字信号进行处理,因此系统通过图像采集卡对视频信号(模拟信号)进行滤波、A/D转换,并将结果保存在内存中。微机中的应用软件(10Moons SDK-2000 视频捕捉 5.0)读取数字信号并保存为图像文件(BMP格式文件)。本实验中获取的图像如下图1。该图像属性为720×576像素,24位真彩色。
3.2图像的预处理:
检测图像的预处理包括检测图像的滤波去噪,彩色图像转换为灰度图像等。图像产生噪声的原因主要是采样、量化、传输以及图像采集过程中环境的扰动,其中主要是加性噪声与脉冲噪声或者椒盐噪声[4]。
在计算机视觉检测技术的实现过程中,由于检测速度和算法实现难易等方面的要求,往往需要将彩色图像转换为灰度图像来处理。本文在常用的灰度化算法的基础上,分析了彩色检测图像的特点,并研究了一种计算简单,在视觉上能够把背景和对象物的灰度明显区分开,而且能够把灰度图像中的物体和背景的灰度级分开便于后续计算机处理的灰度化算法。本实验中经灰度化处理后的图像见图2。
检测图像的平滑技术是指一类能够平滑加性、脉冲等噪声,以降低噪声对图像的影响。常用的平滑技术有线性平滑滤波、非线性滤波和数学形态学滤波等。本文采用的是非线性滤波中最具代表性的中值滤波器。主要原因是因为它对于某些特定的随机噪声有很好的滤除效果,而且它比同样尺寸的线性平滑滤波器处理图像时要少得多的模糊作用。本文采用使用了 模板对检测图像进行了中值滤波处理,处理后的图像见图3。处理结果表明,中值滤波能基本上消除图象中的噪声,从而为后继处理提供了“干净“的图象。
3.3边缘跟踪:
边缘检测在图像处理、计算机视觉和模式识别中是一个关键问题。常用的边缘检测有Sobel、Prewitt、Laplacian和LoG算子。Sobel、Prewitt算子能提供好的精确边缘信息,但它们同时也会检测出许多伪边缘,边缘定位精度不高。在实际处理图像时,一般不直接使用Laplacian算子,因为它对噪声十分敏感,Laplacian处理图像会产生双边缘的幅度,因而造图像分割的困难;而且由于Laplacian算子为各向同性算子,因而不能够检测边缘的方向。
本文选用LoG算子作为整像素级边缘定位函数是因为它对被检测图像同时具有滤噪和检测边缘的功能。本实验中经LoG算子边缘跟踪后的图像见图4。
3.4二值化: 在机械零件的计算机视觉检测图像处理中,图像的二值化是进行零件的模式识别,几何参数的数据处理等的前提条件。二值图像是指整幅图像只有黑白二值的图像。图像二值化可看作是一种图像的压缩。在大多情况下,这种压缩过程中会丢失图像的某些细节信息。因此,在二值化过程中,我们应该尽量减少与实际应用相关的图像细节的损失。在本节的研究中,图像目标的边缘区域是图像处理中的最重要信息,即在二值化过程中,要保证目标边缘信息尽量保留。在本文中,从二值化的准确性和处理速度的折中考虑,给出了一种以图像加权标准差作阈值并结合梯度和拉普拉斯边缘检测的图像二值化处理方法。本实验中经二值化处理后的图像见图5。
3.5亚像素边缘定位:
一般情况下,亚像素算法的精度是通过仿真的方法来检验的,即在图像中仿真制作若干已知精确位置的目标,然后用相应亚像素算法进行目标定位,最后根据统计原理计算出算法的精度。本系统采用的是高精度的空间矩边缘亚像素定位算法。
图1:原始真彩色图像
图2:灰度化处理后图像
图3:3×3中值滤波后的图像
图4: LoG算子进行边缘跟踪
图5: 二值化处理后的图像
3.6直径计算:
首先计算直径方向上的目标的像素数量,通过式(1-1)计算直径D:D=N×dx (1-1),其中, 为直径方向上的像素数;dx为物面分辨率,即一个像素水平方向上的尺寸。本系统采用的直径检测方法能够检测到轴承的各个截面上的直径值,这样才能够准确判断该轴承的尺寸情况。下面5.2中的检测结果共列出了轴承18组各截面上的直径值及其它参数。
4 本文的标定方法:
目前常用的标定方法可分为传统的摄像机标定方法和摄像机自标定方法。本文研究的是机械零件参数的检测问题,检测精度要求较高,检测系统中的摄像机与零件的相当位置一般是保持不变的,所以摄像机标定方法选择了传统的标定方法。
本文选择标准的轴承作为标定参照物。所谓标准的轴承是指用户单位提供他们生产的合格产品,事先知道它的外径。本文视觉检测系统中标定使用的光源、CCD和计算机等与检测系统中所用的光源、CCD和计算机均是一样的;而且标定参照物,也就是标准的轴承所放置的位置(与光源的相对位置以及与CCD的相对位置)与检测系统中的被检测轴承的检测位置也是一样的。这种标定方法具有标定精度高,标定过程简单,成本低,容易实现的特点,因为标定过程不需要计算摄像机的13个内外部参数,只需要计算出摄像机的物面分辨率dx(dx=D/N,其中,D为标定参照物直径,N为目标在水平方向上两边缘间的像素数),而且使用的标定物为检测物本身,保证了检测物的检测面上各位置的光学参数与标定得到的参数是一致的。
5 测量结果分析与结论:
本系统采用Visual C++.Net开发了一套测量轴承外径的图像处理软件[5][6]。主要功能包括:图像的打开与保存、滤波去噪、边缘检测与跟踪、灰度化、边缘亚像素定位、轴承外径检测等。经过上述过程的处理后,测得轴承外径结果如下: 5.1标定结果:
5.2测量结果:
据以上测量结果可知,对于实际外径为47.800mm的轴承,测得的外径值为47.804+0.052/-0.039mm。平均直径的离散度为0.091mm。可见,本文研究的轴承外径机器视觉检测系统达到了较高的检测精度。实现对轴承外径的非接触、在线实时测量和实现现代企业对产品100%检测的目标,提高了检测效率和精度。 参考文献: [1] B.G.Batchelor and D.W.Braggins. Commercial vision systems in computer vision [J]. Theory and Industrial Applications,1992:405-452 [2] Braggins,D.W. Image processing for industrial applications in Europe [J]. Proceedings of the 5th International Conference on Robot Vision and Sensory Control,1990:13~23. [3] 刘兆妮,雷振山,蒙 丽,侯荣涛. 应用机器视觉技术的齿轮测量方法 [J]. 工具技术,2004,38(9):133~135. [4] 冈萨雷斯. 数字图像处理(第二版) [M]. 北京:电子工业出版社,2003. [5] 钟光志,卢君,刘伟荣 Visual C++.NET数字图像处理实例与解析 [M].北京:清华大学出版社,2003. [6] 杨敏.基于机器视觉的发动机气门杆直径及圆度检测研究 [D].华南理工大学图书管:资料室,2004.
本文开发了适应在线检测需要的轴承外径机器视觉检测系统。简明、精确的标定方法和高效精确的图像处理算法(如空间矩亚像素边缘定位算法)使系统达到了较高的检测精度。检测结果表明,系统具有非接触、速度快、精度高、现场抗干扰能力强等优点。
关键字:
轴承;机器视觉;图像处理 Abstract: A machine vision system for bearing outer diameter inspection was developed to meet the requirement of online inspection. Higher inspection precision was obtained due to the introduction of simple and precise calibration method along with effective and accurate image-processing algorithm(ex. Spatial moment sub-pixel edge location algorithm). The experiment results show that the system has many advantages such as non-touching, high speed, higher precision and strong anti-jamming etc. Key words: Bearing, Machine Vision, Image Processing
1 引言
机器视觉检测一般是指使用视觉系统确定一个产品对于给定的一组标准要求的偏差过程[1]。视觉检测技术具有非接触、速度快、精度合适、现场抗干扰能力强等突出的优点,能很好地满足现代制造业的需求。在1984年,西欧的工业视觉系统的销售总额达到589万美元,到1989年达到近4320万美元;在美国,1994年的视觉系统销售总额达到6000万美元,而到1996年近7亿美元[2]。目前全球整个机器视觉市场总量已经有60至70亿美元,并且正在按照每年8.8%增长[3]。随着制造业的发展, 视觉检测技术显示出广阔的应用前景。 精密轴承外径是轴承的重要检测参数之一。为提高轴承产品档次,增加产品附加值,准确测量轴承外径参数,是控制轴承产品质量必不可少的步骤。在生产实际中,一般使用游标卡尺, 千分尺和三坐标测量机(CMM)等仪器来测量。这些测量手段都只适合于离线人工接触检测,其检测精度与准确率往往与操作者的经验和工作态度有关。这些方法不但成本高,而且效率低下,不适合在线100%检测。为了适应轴承制造业生产批量大、质量要求严格、检测任务繁重的特点,以及自动化流水线作业、实现产品“零废品率”检测目标的要求,本文采用基于计算机的视觉检测和图象处理技术,设计了一个基于机器视觉的轴承外径检测系统。
2 检测系统的构成:
典型的视觉系统一般包括图像采集系统、图像处理部分、通信和I/O部分以及输入输出和执行机构等。图像采集系统一般由光源、镜头、摄像机、图像采集卡等组成。图像处理部分包括图像处理硬件和图像处理软件。
本视觉检测系统的硬件选用:
(1)光源的选用: 光源对目标成像的质量影响很大,它直接影响输入数据的质量和至少30%的应用效果。本系统采用容易获得,价格低,并且便于操作白帜灯作为光源,照明系统采用背向照明。背向照明是被测物放在光源和摄像机之间,它的优点是能获得高对比度的图像。
(2)图像采集卡的选用:本系统采用的是天敏10MOONS SDK2000高品质PCI视频卡。显示分辨率可达640×480、24位真彩色。动态捕捉影像以静态图像方式存盘,提供BMP,JPG等多种存盘格式。
(3)摄像机的选用:摄像机根据其图像传感器来分有CCD相机和CMOS相机两种。CMOS目前在除噪及灵敏度方面仍逊于CCD。本系统采用的是天敏10MOONS CCD镜头。最高分辨率达756×576像素、24位真彩色。
3 本系统检测原理及过程:
在测量视场一定的条件下,提高光测系统测量精度最直接的方法就是提高CCD摄像机的分辨率,即增加像素点阵数。然而这种提高硬件分辨率的代价是相当昂贵的和有限制的。本系统不是通过提高硬件分辨率的方法来提高测量精度,而是研究和开发具有更高精度的边缘提取算法,即亚像素算法。其直径检测过程如下: 3.1目标图象的获取: 将被测工件、光源、CCD摄像机稳定地固定在工作台上,且相互间的距离可进行调整。整个系统工作之前,需通过调整被测工件和CCD像敏面之间的位置关系以及镜头的焦距以保证被测工件在CCD上清晰成像。且被测工件的中轴线与CCD像敏面平行。 CCD摄像机输出的是标准的PAL制视频信号,而计算机只能对数字信号进行处理,因此系统通过图像采集卡对视频信号(模拟信号)进行滤波、A/D转换,并将结果保存在内存中。微机中的应用软件(10Moons SDK-2000 视频捕捉 5.0)读取数字信号并保存为图像文件(BMP格式文件)。本实验中获取的图像如下图1。该图像属性为720×576像素,24位真彩色。
3.2图像的预处理:
检测图像的预处理包括检测图像的滤波去噪,彩色图像转换为灰度图像等。图像产生噪声的原因主要是采样、量化、传输以及图像采集过程中环境的扰动,其中主要是加性噪声与脉冲噪声或者椒盐噪声[4]。
在计算机视觉检测技术的实现过程中,由于检测速度和算法实现难易等方面的要求,往往需要将彩色图像转换为灰度图像来处理。本文在常用的灰度化算法的基础上,分析了彩色检测图像的特点,并研究了一种计算简单,在视觉上能够把背景和对象物的灰度明显区分开,而且能够把灰度图像中的物体和背景的灰度级分开便于后续计算机处理的灰度化算法。本实验中经灰度化处理后的图像见图2。
检测图像的平滑技术是指一类能够平滑加性、脉冲等噪声,以降低噪声对图像的影响。常用的平滑技术有线性平滑滤波、非线性滤波和数学形态学滤波等。本文采用的是非线性滤波中最具代表性的中值滤波器。主要原因是因为它对于某些特定的随机噪声有很好的滤除效果,而且它比同样尺寸的线性平滑滤波器处理图像时要少得多的模糊作用。本文采用使用了 模板对检测图像进行了中值滤波处理,处理后的图像见图3。处理结果表明,中值滤波能基本上消除图象中的噪声,从而为后继处理提供了“干净“的图象。
3.3边缘跟踪:
边缘检测在图像处理、计算机视觉和模式识别中是一个关键问题。常用的边缘检测有Sobel、Prewitt、Laplacian和LoG算子。Sobel、Prewitt算子能提供好的精确边缘信息,但它们同时也会检测出许多伪边缘,边缘定位精度不高。在实际处理图像时,一般不直接使用Laplacian算子,因为它对噪声十分敏感,Laplacian处理图像会产生双边缘的幅度,因而造图像分割的困难;而且由于Laplacian算子为各向同性算子,因而不能够检测边缘的方向。
本文选用LoG算子作为整像素级边缘定位函数是因为它对被检测图像同时具有滤噪和检测边缘的功能。本实验中经LoG算子边缘跟踪后的图像见图4。
3.4二值化: 在机械零件的计算机视觉检测图像处理中,图像的二值化是进行零件的模式识别,几何参数的数据处理等的前提条件。二值图像是指整幅图像只有黑白二值的图像。图像二值化可看作是一种图像的压缩。在大多情况下,这种压缩过程中会丢失图像的某些细节信息。因此,在二值化过程中,我们应该尽量减少与实际应用相关的图像细节的损失。在本节的研究中,图像目标的边缘区域是图像处理中的最重要信息,即在二值化过程中,要保证目标边缘信息尽量保留。在本文中,从二值化的准确性和处理速度的折中考虑,给出了一种以图像加权标准差作阈值并结合梯度和拉普拉斯边缘检测的图像二值化处理方法。本实验中经二值化处理后的图像见图5。
3.5亚像素边缘定位:
一般情况下,亚像素算法的精度是通过仿真的方法来检验的,即在图像中仿真制作若干已知精确位置的目标,然后用相应亚像素算法进行目标定位,最后根据统计原理计算出算法的精度。本系统采用的是高精度的空间矩边缘亚像素定位算法。
图1:原始真彩色图像
图2:灰度化处理后图像
图3:3×3中值滤波后的图像
图4: LoG算子进行边缘跟踪
图5: 二值化处理后的图像
3.6直径计算:
首先计算直径方向上的目标的像素数量,通过式(1-1)计算直径D:D=N×dx (1-1),其中, 为直径方向上的像素数;dx为物面分辨率,即一个像素水平方向上的尺寸。本系统采用的直径检测方法能够检测到轴承的各个截面上的直径值,这样才能够准确判断该轴承的尺寸情况。下面5.2中的检测结果共列出了轴承18组各截面上的直径值及其它参数。
4 本文的标定方法:
目前常用的标定方法可分为传统的摄像机标定方法和摄像机自标定方法。本文研究的是机械零件参数的检测问题,检测精度要求较高,检测系统中的摄像机与零件的相当位置一般是保持不变的,所以摄像机标定方法选择了传统的标定方法。
本文选择标准的轴承作为标定参照物。所谓标准的轴承是指用户单位提供他们生产的合格产品,事先知道它的外径。本文视觉检测系统中标定使用的光源、CCD和计算机等与检测系统中所用的光源、CCD和计算机均是一样的;而且标定参照物,也就是标准的轴承所放置的位置(与光源的相对位置以及与CCD的相对位置)与检测系统中的被检测轴承的检测位置也是一样的。这种标定方法具有标定精度高,标定过程简单,成本低,容易实现的特点,因为标定过程不需要计算摄像机的13个内外部参数,只需要计算出摄像机的物面分辨率dx(dx=D/N,其中,D为标定参照物直径,N为目标在水平方向上两边缘间的像素数),而且使用的标定物为检测物本身,保证了检测物的检测面上各位置的光学参数与标定得到的参数是一致的。
5 测量结果分析与结论:
本系统采用Visual C++.Net开发了一套测量轴承外径的图像处理软件[5][6]。主要功能包括:图像的打开与保存、滤波去噪、边缘检测与跟踪、灰度化、边缘亚像素定位、轴承外径检测等。经过上述过程的处理后,测得轴承外径结果如下: 5.1标定结果: