电子元件焊接质量识别中图像定位算法研究

王付军 赵桂清



摘 要: 针对电子元件焊接质量自动检测系统中PCB图像的定位问题进行研究。为了解决传统定位算法定位精度低、运算时间长的缺点,改进传统的定位圆检测和定位算法,采用改进的快速Hough变换提高检测精度和缩短检测时间。通过实际PCB电路板的检测实验对比发现,该算法能提高定位圆圆心检测的精度,可以有效缩短计算时间,对于实际电子元件缺陷的自动检测算法的改进有一定的参考意义。
关键词: 焊接质量; 霍夫变换; 图像定位; 自动检测
中图分类号: TN081?34 文献标识码: A 文章编号: 1004?373X(2017)05?0042?03
Abstract: The PCB image localization problem is studied for the welding quality automatic detection system of the electronic components. In order to improve the low accuracy and long operation time of the traditional localization algorithm, the traditional setting circle detection and localization algorithm was improved, and the improved fast Hough transform was used to improve the detection precision and shorten the testing time. The test experiment of the algorithm was contracted with that of the practical PCB circuit board. It is found that the algorithm can improve the accuracy of the circle center detection of the setting circle and shorten the computation time effectively, and has a certain reference significance for the improvement of the defect automatic detection algorithm of the practical electronic components.
Keywords: welding quality; Hough transform; image location; automatic detection
随着现代电子技术的发展和功能的增加,电路板的体积越来越小,贴片元件的应用越来越广泛。为了保证产品的性能,需要在组装前检验电子元件的焊接质量,当前主要的检测方法是利用自动光学检测系统(AOI),该系统检测的基本原理是通过ccd摄像头获取被检测的PCB电路板的图像,然后和数据库中的标准图像对比,从而检测、发现质量缺陷,在检测过程中图像的定位是重要的一步,如果图像定位不准确,对比出来的缺陷是没有意义的。
1 图像定位
基于数字图像处理的电子元件焊接质量检测过程中,需要获得电子元件的精确位置,后续才能检测电子元件的焊接缺陷。一般在PCB的制造设计阶段,在PCB板的边缘设置基点(定位圆),为后续光学检测定位提供基准。定位孔一般用于机械定位,如图1所示。
要将定位圆孔从PCB图像中识别出来,必须合理提取其圆形特征,常用的检测算法有:维纳滤波法、曲线拟合法、模板匹配法、Hough(霍夫)变换法等。维纳滤波是基于最小方差理论,视采集图像为退化图像,运算时间较长;曲线拟合法和模板匹配法采集的图像要求较高,一旦原始图像存在瑕疵,难以保证结果;Hough变换检测定位圆孔的精度高,但存在计算量大的缺点,在速度上不能满足实时检测的要求,为此必须对Hough算法进行改进。
2 Hough变换圆检测算法的基本原理及性能分析
2.1 Hough变换圆检测算法的基本原理
Hough变换主要利用图像空间和参数空间点线的对偶关系,实现对点、线、圆的检测。
设Hough变换用的解析函数的基本方程为:
[f(x,a)=0] (1)
式中:[x]和[a]分别表示图像空间和参数空间的矢量点,目标圆的方程可以表示为:
[(x-a)2+(y-b)2=r2] (2)
该方程在参数空间中表示三维圆锥面,如图2所示。在检测过程中,将目标圆上的每一个点都映射到参数空间,对参数空间的每一个[(a,b,r),]对应图像空间的一个圆,若边界点[(x,y)]在圆上,则累加器加1,累加器峰值即为圆的半径和圆心的信息。由于圆变换三維参数空间为三维锥面,所以只是在理论上可行,实时检测过程中因计算量太大,几乎不可能实现。
2.2 Hough圆检测算法的性能分析
为了克服Hough变换圆检测计算量大、无法实时检测的缺点,从减少选取点的数目和累加数组的维数出发,提出了几种圆检测的改进算法:
(1) 利用边缘梯度
在进行数据累加时,利用图像边缘点的梯度值大大降低获取圆心的计算量。在实际应用中,因图像质量的下降,提取的图像边缘点会出现偏差,使得最后确定的圆心误差较大。
(2) 快速 Hough变换
为减少计算量,采用几何方法对三维参数空间进行降级分解,利用三个不共线点确定一个圆的逆运算,降至二维空间求取圆心,半径可以在一维空间确定,而且还能避免一对多映射的不确定性。在实际应用中,因图像噪声的存在,随机选取的点有很多是无效的噪声点,后续的累积也是无用的。
(3) 利用内接直角三角形的性质
根据几何定理可以知道,圆内接直角三角形的斜边过圆心,即斜边为直径,其中点为圆心,长度的一般为半径。同样,由于噪声和图像质量下降,提取的三个点有时无法构成直角三角形,进而使确定的圆心和半径误差增大。
3 改进的快速Hough变换
3.1 算法改进原理
针对快速Hough的缺陷,为了减少无效点和无效累积,需要对其算法进行改进。改进的思路是:
(1) 对图像的边缘增强处理,降低边缘无效点,减少无效累积;
(2) 改进累加点的判断算法,减少无效累加的次数。
将圆的方程变换为:
[x2+y2+2ax+2by+c=0] (3)
利用圆周上的任意三点,代入式(3),可以解出[a,b,c]的值,把可能是圆心、半径的点用两个累加器统计,如图3所示。任意三点的选取方法是:在图像边缘点集中随机确定第一个像素点[pa,]其在相对另一侧圆弧的点为第二个像素点[pb,]在这两点连成弦的另一侧圆周区域确定第三个点[pc。]
对于上述选择出的圆周上的三点,可以构成两条圆的弦,利用“圆内任意两弦垂直平分线的交点为圆心”的性质,结合[pa(xa,ya),][pb(xb,yb),][pc(xc,yc)]三点坐标可以求出中点坐标和相应的直线方程:
在待测图像的边缘像素集中,选取[N]个边缘点,连接相邻的点可以得到[N-1]条弦,求出弦的垂直平分线的方程,并求得交点坐标,加以统计,二维存储器中数量最大的值即为圆心坐标[(x0,y0)],而半径可以通过圆心到各边缘点的距离的平均值求得。
为了减小计算量,在选取点的过程中,可以使前一个点和后一个点的一个坐标相同,即1点和2点的纵坐标相同,2点和3点的横坐标相同,如图4所示。
具体算法是:首先随机选取图像边缘一点[p1][(x1,y1);]然后搜索边缘点中纵坐标相同的点为[p2][(x2,y1);]再搜索与横坐标相同的点为[p3][(x2,y2)],这时圆心坐标的计算公式变为:
[xa=(x1+x2)2, xb=(y1+y2)2] (7)
3.2 算法流程
改进的Hough变换圆检测的算法如图5所示,其中图像的边缘检测采用检测边缘能力和定位精度都比较好的canny算子,并且采用分段线性变换实现边缘图像的增强,这样提取出的边缘点精确而且数目少。为进一步利用Hough变换进行圆检测提供了良好的信息点。
算法流程图中,[pc]为候选圆的参数集合(含半径、圆心、累加次数等信息),[T]为阈值。
4 改进的快速Hough算法在PCB检测中的仿真应用
把上述的检测算法,应用于实际的PCB电路板定位圆的检测,基本步骤如下:
(1) 利用摄像机或ccd摄像头采集PCB板的原始图像。
(2) 对采集的PCB图像进行降噪等预处理,利用canny边缘检测算子检测图像的边缘,并增强图像边缘的对比度,如图6所示。
对采集到的电子元件焊点图像分别用传统Hough变换,快速Hough变换和改进的Hough变换,程序的执行时间和检测精度如表1所示。
通过表1可以看到,三种检测方法的精度基本差不多,改进的快速Hough的精度更高;运算时间上,因为减少了无效点的累积,改进的快速Hough变换检测时间明显缩短。
5 结 语
在电子元件焊接质量缺陷自动检测中,电子元件的定位是缺陷检测的关键一步。本文分析了PCB定位圆检测的方法和原理,并且对快速Hough变换圆检测进行了改进,改进算法清晰,在保持Hough精度高,抗噪声能力強的同时,提高了电路板的检测效率。通过实际电路板的检测实验,改进的快速Hough变换圆检测算法明显缩短了检测时间,同时也提高了检测精度。该方法对于提升电子元件质量自动检测系统的性能有一定的参考意义。
参考文献
[1] 赵更寅.PCB的检测技术综述[J].科技信息,2007(15):71?72.
[2] 孙增国,韩崇昭.基于Laplacian算子的图像增强[J].计算机应用研究,2007(1):222?223.
[3] 刘尚军,程宪平.PCB瑕疵图象实时视觉检测方法的研究[J].计算机工程与应用,2002(16):71?74.
[4] 段汝娇,赵伟,黄松岭,等.一种基于改进Hough变换的直线快速检测算法[J].仪器仪表学报,2010,31(12):2774?2780.
[5] 蔡茂蓉.PCB缺陷检测系统的研究与实现[J].信息系统工程,2009(6):98?100
[6] 周封,杨超,王晨光,等.基于随机Hough变换的复杂条件下圆检测与数目辨识[J].仪器仪表学报,2013,34(3):622?628.
[7] 王世允.印刷图像质量直接检测:被测图像定位与网点识别方法的研究[D].西安:西安理工大学,2002.
[8] 刘国峰.基于边缘检测和Hough变换的车牌定位系统的研究与实现[D].北京:中国地质大学,2007.
[9] 潘忆江,黄际彦,吴波,等.Hough变换的PCB Mark校准研究[J].现代电子技术,2014,37(10):141?143.
[10] 祁宝英.运用Hough变换提高直线检测效率[J].计算机系统应用,2012,21(6):228?231.