谢 红,廖志杰,邢廷文
(1.中国科学院光电技术研究所 四川 成都610209;2.中国科学院大学 北京100049)
一种非接触式的圆孔形零件尺寸检测
谢 红1,2,廖志杰1,邢廷文1
(1.中国科学院光电技术研究所 四川 成都610209;2.中国科学院大学 北京100049)
针对常见的圆孔目标检测,设计了一套基于机器视觉的尺寸测量系统。采用标准同心圆标定板进行标定,并针对一般圆拟合算法的不足,对该标定板图像建立了基于距离空间聚类的划分区域算法,对区域单独采用最小二乘拟合圆算法提取其图像特征。通过实验验证与计算机仿真计算,进行图像预处理、边缘检测以及圆度评价,精确测量出圆孔零件的尺寸信息。实验表明,该测量系统的测量误差小于0.2mm,适用于一般圆形零件的非接触式检测。
机器视觉;同心圆检测;距离空间聚类;尺寸测量
随着现代工业化的需求,机械加工精度的提高成为了必然趋势。机械产品的尺寸误差和缺陷将会直接影响最终产品的质量。因此,对机械产品测量精度的提高也就成为热门话题。对于零件合格与否的判定,传统的人工肉眼或者简单测量工具不仅可靠性极小,而且效率低下,影响测量精度。因此,势必要从传统的测量方式转向于自动化、非接触、高精度的测量方式。
而由于相机分辨率和计算机技术的不断提高,基于机器视觉的测量技术应运而生。机器视觉测量指通过机器视觉方法获取被测目标的图像信息,将之与预先的标准进行对比,进而确定被测目标的质量情况的过程[1]。系统主要利用CCD(Charge Coupled Device)相机对零件进行成像,然后利用软件对图像进行处理与检测,获取有效地特征参数。为了方便对圆形、圆孔或者类圆等零件的非接触式检测,本文设计了一套基于机器视觉技术的尺寸测量系统。
在测量系统中,文中采取的为标准件法进行标定。为方便用对不同尺寸的圆形零件进行测量,笔者采用了一种同心圆标定板进行标定,减少了实际工作中的操作数。另外对同心圆环的检测提出了先进行区域划分,后对每一划分区域单独进行整圆拟合的算法。
1.1测量系统方案设计
待测零件为薄片圆孔型零件,由于零件的薄度无法采用接触式的测量方式,因此本文采用基于机器视觉的方式进行非接触式的测量。其测量系统框架图如图1所示。该视觉测量系统主要是由CCD相机、照明光源、图像采集卡、以及计算机构成。
图1 系统设计框图
文中采用的为环形LED灯对零件进行背向式照明,具有亮度稳定、光线均匀、对比度强,零件边缘较为明显等优点。经由CCD相机出来的待测零件的图像信号为模拟信号,经图像采集卡将其转换为数字图像信号,传输到计算机,通过图像处理技术对其进行处理,获取其特征参数。
1.2测量系统标定设计
本系统采用的镜头畸变较小,为了减少系统算法运行时间,在满足测量精度的前提下,采用标准件法进行标定。标准件标定为:在与待测零件同环境、同位置的情况下,对已知标准尺寸的模板进行检测,求得在该环境下的标准模板的实际尺寸与采集图像中像素数的比例参数。该参数为后续将零件图像尺寸转为实际尺寸的重要参数。
待测零件最大口径范围为140~280 mm,因此采用的为同心圆环标定模板,其直径为20~280 mm,包括待测零件所有尺寸。对圆形零件检测的常用标定,要么采用固定尺寸的标准件进行标定,获取一个标定参数,然后对所有尺寸的零件进行尺寸换算;要么,对每一种尺寸都进行一次标定。前者精度不高,后者时间消耗太大。因此,本文提出采用N个同心圆环作为标定模板进行标定,根据实际待测零件预估尺寸以及算法的简便性将N取为合适的值。本文将N取值为14,若读者需求更加高精度的标定系数,可以将N取为更加细致。
2.1标定图片预处理
在图像采集过程中,由于环境和设备因素的影响,难免会造成图像信息受损或退化。为了提高后续检测的精度,则必须要对图像进行一些处理。本实验中,对采集到的标定图片进行了灰度化、二值化、目标区域提取和边缘检测等处理[2],本实验中采用的为canny算子进行的像素级边缘检测。
图2 图像处理
2.2最小二乘拟合圆原理
对于圆形或者类圆形零件的测量,常用方法有Hough变换及相应的改进算法、环路积分微分法、组合法、鲁棒性估计法、模拟退火算法、和遗传算法等。孔兵等人也曾提出用最小二乘法对激光光斑中心进行检测[3]。本文的圆检测算法就是基于最小二乘拟合法,并根据本实验标定图片对其进行了适当的改进。
最小二乘法是一种比较精确和常用的曲线拟合方法,根据已有的数据寻找最佳的匹配函数,且得到的函数使得误差的平方和最小。其判断依据是:在忽略自变量xi测量误差的前提下,对等精度测量得到的相应的因变量yi,拟合曲线y=f(x)使得与xi相应的测量值 yi与曲线上对应的点f(xi)之差yi-f(xi)(残差)的平方和取得最小值。
最小二乘法拟合圆曲线一般基于公式:
可以转化为如下关系式:
其中令:
只要根据离散点信息求出以下参数,然后进行拟合即可:
2.3区域划分算法
用圆拟合算法可以获得很高的检测准确度,但是,根据上面的推导我们可以看出,由于参与拟合运算的像素点被认为是位于同一个圆上,对于同心圆检测的场合,最小二乘法拟合圆算法并不能直接应用于本标定模板的检测,所以必须对拟合区域进行划分,本文采用的是距离空间聚类的方法[4]。
其基本思路为:根据已确定的圆心坐标,计算所有像素点到圆心的距离。对于存在N个同心圆的情况,则必然存在N-1个分界半径。根据分界半径把待测目标划分为N个区域,每个区域之包含一个待检测的圆,针对每一个区域采用最小二乘拟合法进行检测。
对于分界半径的确定,先统计所有离散点到初始圆心位置的距离,根据距离出现的概率,可以准确的划分出N-1个分界半径。这种划分算法的关键在于初始圆心的是否合适,文中采取的为灰度质心法进行圆心提取,整体算法流程如图3所示。
图3 算法流程图
用MATLAB进行算法的验证,可以很精确的得到区域划分后的每个单独的圆环。此时,对其进行最小二乘圆拟合计算,即可较准确的获得其拟合后的圆心与半径尺寸。如下图所示,经过区域划分后提取出来的原始直径为280mm的圆与在其原始圆上使用最小二乘拟合圆的算法,可以由图看到,算法拟合的圆与原始圆的拟合度十分高。
图4 区域划分以及拟合
2.4标定系数结果
使用MATLAB将算法实现后,提取到的标定系数如表1所示,可以看出不同的直径处的标定系数差别在0.001的数量级处,对于精度较高的测量场合,进行区域划分后分别计算其标定系数是十分必要的。在提高了精度的同时,减少了标定的过程,仅用一张模板即可标定直径范围为0~280 mm之间的所有零件。
其中标定系数的计算结果为用单位为毫米的实际直径与单位为像素的图像直径的比值。如表1对其进行编号,以方便后面零件对其进行提取进而计算尺寸。
表1 标定系数
3.1圆度评价
在测量的过程中,零件很可能为不规则的圆形,因此对零件进行圆度评价是十分必要的。《圆度测量术语、定义及参数》中提到了4种圆度误差的评定方法:最小区域圆法、最小二乘圆法、最小外接圆法以及最大内切圆法。文中在基于上文提到的最小二乘法拟合圆的圆心上,采用了工程上较为常用的最小外接圆法来进行圆度评价。
最小外接圆法评定圆度误差是以最小外接圆圆心作为圆心,内接圆至少与一个实际测量点接触。利用几何均匀分布的思想,不断移动圆心并保持圆心位置尽量靠近所有点距离的中心点,同时不断缩小位置偏差;然后,根据最小包容的思想,找到被测圆的最小外接圆的一条弦;最后通过最小外接圆的3个外接点找到最小外接圆的圆心位置[5]。
3.2算法实现
其算法流程如图5所示。
3.3零件图像处理与圆度评价
进行完系统的标定后,可以直接进行待测零件的测量,保持系统的各部件的相对位置不变,将待测零件置于与标定模板同环境的相同位置即可。
图5 最小外接圆算法流程图
进行待测的圆孔类零件的图像采集时,经过测量系统成像的图像时除了背向式的环形光源,外界光源均控制为0。但是除了待测的口径外,图片外还有一圈较淡的光圈,为实际零件的外轮廓。无疑,这会给我们后面计算该零件的内口径会带来误差和干扰。因此,必须对计算机中直接保存的零件图像做图像预处理,排除不需要的噪声点。
首先,对CCD图像进行灰度化与二值化处理,在二值化的同时,设置一定大小的阈值,将外部较为淡轮廓划分为灰度为0,也就是黑色的像素点。进而可以提取到如图6所示的无干扰的零件灰度图。进而,对无干扰的零件图进行像素级的边缘检测,由于本实验图片像素单元较小,提取到像素级的边缘即满足了测量的要求。因此,这里不进行更为精确的亚像素级边缘的提取。若测量时,采用的CCD相机分辨率较低时,则可以进行亚像素边缘检测来提高精度。本文直接采用的是MATLAB里面自带的像素级边缘canny检测算子,即提取到了较为细致的边缘。
图6 图像预处理后零件图
最后,在提取到的零件离散边缘点上,进行了最小外接圆的算法实现,提取到了如图7所示的圆心及最小外包容圆。如图,为待测零件完整的边缘图与其最小外接圆;为方便读者阅读,截取的部分放大后的零件边缘与其最小外接圆图。由图可以很明显的看到,本次待测零件为不规则的类圆形。因此必须对其进行圆度评价,若零件为规则圆形,也需要进行圆度评价,看其是否出现加工误差。本次零件,在测得其最大内口径的同时,也需要考察一下其圆度。
本次实验对3组不同大小的零件尺寸进行了手工测量,同时对其在测量系统中进行了测量,另外每组图片进行了20次重复性测量。其检测结果如下表。表中随机抽取了20次重复测量中的5次,由表可以得知,该测量系统的重复性以及精确性都要高于人工尺子测量值。对比人工测量误差,该测量系统测出的误差控制在了0.2mm以内,满足测量误差的要求。因此该测量系统以及图像处理方法具有一定的实用性。
图7 最小外接拟合圆及局部放大图
表2 零件检测结果
4.1成像系统几何误差
因为测量系统采用的为CCD摄像机,成像系统难免会产生几何畸变,其来源主要为:
1)透镜误差:主要是由于实际的光学透镜不是严格满足针孔成像模型,存在轴对称或者非轴对称误差,如:球差、慧差、像散、场曲等以及薄棱镜像差。
2)透视误差:主要是由于CCD芯片平面与相机光轴不严格垂直产生的。
其中,镜头畸变的误差影响最大,因此需要对摄像机进行精确的标定,来消除镜头畸变。因为本次采用的镜头畸变较小,而对最后结果的精确度影响不大。因此本次采用的即为标准件法进行标定。
4.2系统噪声
图像在成像、数字化和传输过程中难免会有各种干扰形成噪声。这些噪声使图像上像素点灰度值不能正确的反映空间物体对应点的光强值,降低了图像的质量[6]。主要有:光子噪声、暗电流噪声、光响应非均匀噪声、杂波噪声等。
文中搭建了一套基于机器视觉的测量系统,设计了一种专用于标定圆形或类圆形零件的同心圆模板,并设计了其对应的图像处理算法。进而对零件进行了边缘检测以及圆度评价,拟合出了其最小外接圆。最后综合标定算法中的标定系数对尺寸进行了计算。对实际的3种不同大小的类圆孔型零件进行了实验。结果表明,测量系统的测量精度和误差均远远优于人工直接尺子测量,满足工业应用的要求。
[1]杨戈.基于机器视觉的机械零部件精密测量系统设计与开发[D].南京:南京信息工程大学,2013.
[2]冈萨雷斯.数字图像处理(MATLAB版)[M].2版.阮秋琦,阮宇智,译.北京:电子工业出版社,2005.
[3]侯倩,王冰等.曲线拟合法在圆检测中的应用研究[J].煤炭工程,2008(6):88-89.
[4]牛建军,刘上乾.同心圆检测中的区域划分算法[J].光子学报,2006,35(12):1946-1949.
[5]孙茉莉.一种最小外接圆法圆度误差评价实现方法[J].公差与技术测量的理论.2010,44(5):109-111.
[6]郑丽丽.基于图像识别的零件几何尺寸检测问题的研究[D].吉林:吉林大学,2003.
A non-contact detection of the dimensional of circular parts
XIE Hong1,2,LIAO Zhi-jie1,XING Ting-wen1
(1.Institute of Optics and Electronics,Chinese Academy of Sciences,Chengdu 610209,China;2.University of Chinese Academy of Sciences,Beijing 100049,China)
For detecting the common circle objects,a size detecting system based on computer vision was designed.It isused standard fixed plate with concentric circles for standardization,as for deficiencies exist in circular fitting algorithm,zoning algorithm based on distance spatial clustering for this concentric circles image in the fixed platewas established.Then,using least square fit to fetch the image features.With experimental verification and computer simulating calculation,using image pre-processing,edge detection,and roundness evaluation,the circular hole weremeasured accurately.It has proved that the measurementaccuracy is under 0.2mm,and themethods used in this paper are suitable for non-contact detection of general circular parts.
machine vision;concentric circle detection;distance spatial clustering;dimensionalmeasurement
TN05
A
1674-6236(2016)19-0155-04
2015-10-08稿件编号:201510028
谢 红(1991—),女,湖北仙桃人,硕士研究生。研究方向:机器视觉测量。