王海波,周 浩,柳 宁(.广东凌霄泵业股份有限公司,广东阳春 59600;.暨南大学信息科学技术学院,广东广州 5063)
基于Radon变换的高精度Mark点圆定位算法的改进*
王海波1,周浩2,柳宁2
(1.广东凌霄泵业股份有限公司,广东阳春529600;2.暨南大学信息科学技术学院,广东广州510632)
摘要:Mark点的圆定位技术在印刷、电子制造、激光加工等行业有着广泛的应用。为提高定位精度而一味地提高Mark点的印刷质量会带来成本的上升,通过算法改进消除Mark点边缘瑕疵和圆缺省的影响,可以提高定位精度。在提取Mark点圆图像的边缘后,采用Radon变换将定位圆f (x,y )变换到f (ρ,θ ),通过抽取每一θ角上的ρ的最值,并与标准圆对应的最值比较,按一个设定的阀值判定是否噪声,从而区分定位圆的真实边缘点和噪声,再通过最小二剩法对真实边缘点拟合求出圆心。实验证明,本改进方法针对有缺陷的定位圆有较高的定位精度与计算稳定性。
关键词:Mark点;定位;机器视觉算法
*广东省数控一代项目(编号:2013B011301027)
Mark点定位是机器视觉检测与定位技术中比较常用的一种手段,在激光加工、电子制造、印刷等行业,通过Mark点进行工件定位有着广泛的应用[1]。Mark点边缘瑕疵和缺陷导致定位精度下降,一味地提高Mark点的印刷精度导致成本上升,通过高精度机器视觉定位算法消除边缘瑕疵是提高定位精度的有效途径。
Mark点多为圆形,常用的定位算法是将Mark点的边缘拟合得到标准圆后找出圆心。由于边缘瑕疵和缺陷的影响,拟合圆会偏离设计中心,识别Mark点的边缘瑕疵,作圆拟合时将它们剔出,可以提高圆形Mark点的定位精度。
圆形Mark点的定位算法研究很多,常用的算法有五类,第一类是基于Hough变换的圆定位算法,为解决速度与精度问题有不少变种,如柏长冰等提出先计算Mark区域中心点,Hough变换圆心累加范围限制在这个中心点附近区域。依据Mark实际尺寸计算检测图像中Mark的半径,将累加器从三维降为二维,提高了计算速度[2];第二类是基于模板匹配的方法,如解杨敏首先利用Mark点的几何特征进行粗定位,然后进行模版匹配最终确定圆形Mark点精确位置[3]。第三类是利用圆的对称性对缺损圆进行精确定位,如田福琛提出先检测出缺损圆的一个圆心坐标参数,然后根据推导出的半径检测公式对图像中的点到与圆心具有一个相同坐标参数的边缘点(即过圆心与X轴或者Y轴平行的直线与圆的交点)的距离与该点和边缘点的水平或者垂直坐标差值的关系统计半径大小,进而确定该缺损圆的所有参数[4]。第四类采用Blob分析对缺省圆进行定位,如李婷等提出通过Blob分析获得缺省圆的圆心估计值,并根据圆的半径设置一环形公差带,落入公差带的点才判定为边缘点,并用它们作最小二乘拟合,提高了定位算法的准确性[5]。第五类是采用Radon变换进行圆定位,如Fabrice提出的基于动态轮廓的多级方法,用Radon变换进行圆的位置计算,提高了不完整圆图像定位的精度和速度[6]。
在欧氏二维空间中,Radon变换定义为:
式(1)中,D代表整个图像x-y平面;f(x,y)代表在坐标(x,y)处原图像像素点的灰度值;ρ=xcosθ- ysinθ是一条直线的参数方程,ρ代表坐标原点到直线的法线距离值,θ代表直线的法线与x轴的夹角。δ是Dirac delta函数。当图像f(x,y)是二值图像时,Radon变换中f (ρ,θ )的值就是直线ρ=xcosθ- ysinθ上的坐标点数。
如图1(a)、(b)所示,对于无边缘瑕疵的标准圆,变换后的f (ρ,θ )中,X轴代表图像积分的方向,即角度值θ;Y轴代表积分线到零点的距离值ρ;图像上点的像素值代表特定方向上的直线的积分值,即直线穿过像素点的个数,圆离散后其边缘上任一点的切线有几个像素,f (ρ,θ )中任一θ方向上灰度最大的两个值所对应的两条直线,就是θ方向上圆的两条切线。为了找到同一个方向上相对应的两条切线,也就是要找到某个角度的两个最大的像素点值(原图像中穿过像素最多的两条直线),根据纵坐标的距离值采用重心算法,将Radon变换后的图像分成了上下两部分,任意θ方向上的两个最值点之间的距离为定值,它代表了原图形的直径。分割后的两部分针对每一个角度θ都可以分别求出对应的最值点。根据最值点可以计算出上下两条由最值点所组成的曲线,继而可以求出与两条曲线等距的中间线。对这条中间线通过Radon反变换,可以得到系列经过圆心的直线。这些直线中交点最多的就是圆心坐标[5]。
瑕疵圆的边缘噪声参与了计算,影响了定位精度,区分并剔除定位圆的边缘噪声,可以提高定位精度。
如图1(c)、(d)所示,瑕疵圆变换后,在每一个θ方向上的最值应该与标准圆的变换后同一θ方向上的最值相同,如果该方向上的边缘存在噪声,则两者存在较大的差值,根据这一原理,设定一个阈值,当待测圆每个角度最值与标准模板最值的差值小于阈值时,可以认为是边缘点,大于阈值时可以判定为噪声。
图1 标准圆和瑕疵圆的Radon变换
设在θ方向,上(下)半部分待测图像的最值f (θ ),上(下)半部分标准图像的参考值f0(θ ),设定的阈值为δ。
实验样本选择了标准圆和缺陷圆共6种,像素为254×254。(1)是完整的没有瑕疵和斑块噪声的圆形图案;(2)是边缘有毛刺的圆形图案;(3)是边缘有凸出缺陷的圆形图案;(4)是边缘有缺失缺陷的圆形图案;(5)是边缘既有凸出也有缺失缺陷的情况,但是有完整的对面弧形;(6)是大部分边缘都有形变但是仍然有完整对弧的圆形。标准圆的圆心实际坐标是(119,105)。
对比算法选择了直接Hough变换,Radon变换和本改进的Radon变换算法比对,计算结果如表1所示。
从计算时间上看,三种算法耗时相差不大;从位置精度来看,对标准圆样本,Hough变换和Radon变换定位算法误差为X、Y两个方向都为0,对边缘有毛刺的样本,Hough变换定位计算误差X、Y两个方向都为0,Radon变换定位算法误差X、Y两个方向都为1,改进的Radon变换算法定位误差X方向为0.534 3,Y方向误差为0.541 1;对边缘有缺省的圆样本(2,3,5,6),改进的Radon变换算法要明显优于Hough变换和Radon变换定位算法。样本4中圆的缺省太多时,改进的Radon变换算法计算结果优于Hough变换和Radon变换定位算法,但优势并不明显。但是,改进的Radon变换算法的计算稳定性要优于其它算法。
表1 算法比较表单位:像素值
Mark点的圆定位技术十分关键,它是机器视觉技术在电子制造、五金、印刷等行业的重要应用;没有一种Mark点圆定位算法可以适用于各种情形的定位应用,对于有毛刺的圆,特别是有缺省的圆,改进的Radon变换算法有较好的精度与计算稳定性。
参考文献:
[1]贺珍真,张宪民,邝泳聪.电子元件的特征建模与检查算法研究[J].机电工程技术,2008,37(6):58-61.
[2]柏长冰,齐春,宋福民,等.Hough变换快速检测圆形PCB Mark[J].光电工程,2005,32(9):75-78.
[3]解杨敏,刘强.高精度自动贴片机视觉系统定位算法研究[J].光学技术,2008,34(3):1002-1582.
[4]田福琛,王琰.一种改进的缺损圆检测定位方法[N].沈阳理工大学学报,2013,32(3):52-65.
[5]李婷,柳宁.基于机器视觉的圆定位技术研究[J].计算机工程与应用,2012,48(9):153-156.
[6]Fabrice Mairesse,Tadeusz Sliwa,Stéphane Binczak.Subpixel determination of imperfect circles characteristics [J].Pattern Recognition,2007,41:250–271.
(编辑:向飞)
The Improvement Algorithm of High Precision Mark Points Detecting Circle Location Based on Radon Transform
WANG Hai-bo1,ZHOU Hao2,LIU Ning2
(1.Guangdong Lingxiao Pump Industry Co.,Ltd,Yangchun529600,China;2.College of Information Science and Technology,Ji'nan University,Guangzhou510632,China)
Abstract:The Mark points detecting circle location technology is widely used in the industry application of printing,the electronic manufacturing,the Laser machining and so on.Manufacturing cost would be increased if only rising the printing quality of the mark points circle .The precision of detecting circle location can be improved by using the algorithm which eliminating effects on mark points circle edge defectives and circle lacks.After the mark points circle edge extracting,using the Radon transform employed to transmute the circle f (x,y) to f (ρ,θ ),finding the peak point at the every and compare this point value with the corresponding value of the standard circle,judge the point is or not noise by the value difference large then a threshold value or not.Then use minimal two remaining method fit the real circle edge points.The experiments prove that the improvement vision circle location algorithm has more location precision and stability.
Key words:mark point;location;machine vision algorithm
作者简介:第一王海波,男,1958年生,广东阳江人,大学专科,高级工程师。研究领域:工厂自动化与企业管理。
收稿日期:2015-06-09
DOI:10.3969/j.issn.1009-9492.2015.07.024
文章编号:1009-9492 (2015 ) 07-0078-03
文献标识码:A
中图分类号:TP206+.1