基于图像的线路缺陷检测*
2013-10-24孙晓婷陈江红
孙晓婷,陈江红
(福建工程学院)
0 引言
传统印刷电路板的检测方法是依靠人工检查,检测速度慢、效率低.随着机器视觉技术的发展,为了获得高质量的PCB板同时提高产品稳定性,提供了客观条件.近年来,运用机器视觉检测印刷电路板的研究有很多,文献[1]提出了基于成对几何直方图的PCB标志检测与匹配的方法对印刷电路板器件进行检测;文献[2]提出了一种基于混沌优化算法的PCB板元件检测方法;文献[3]提出了利用定位孔检测实现标准线路板图像与待检测图像的配准,然后根据缺陷的特征实现缺陷类型的识别.该文根据线路缺陷的特征,提出了一种利用缺陷图像和参考模板相减后,连通域个数不同来判断缺陷的算法,为机器视觉技术在印刷电路板检测中提供了一种新的思路.
1 系统构成
PCB检测系统包括图像采集、光源、运动控制、图像识别4部分.系统结构图如图1所示.图像采集部分由摄像机、图像采集卡组成,主要是完成图像的采集;光源部分的作用是提供合适的照明条件从而获得较高质量的检测图像;运动控制部分的功能主要是完成PCB板的定位以便摄像机能对目标准确成像;图像识别部分主要完成对检测图像的处理识别[4].
图1 系统构成
2 图像识别
图像识别是PCB检测系统中的重要组成环节,它包括对标准图像和采集图像进行预处理、阈值分割、形态学处理,最后将得到的图像相减再执行具体的缺陷识别算法,具体工作流程如图2所示.本研究以NI公司推出的图形化虚拟仪器开发平台LabVIEW为开发工具,它具有开发周期短,函数库功能强大,成本低的优点.
图2 图像识别工作流程
2.1 图像的预处理
在图像采集的过程中不可避免地伴有干扰,这些噪声严重的影响了图像的质量,为了更好的对图像进行分析和识别,应该要对图像进行预处理.首先采用中值滤波的方法进行图像平滑,接着选取灰度变换方法对图像增强,最后选取拉普拉斯算子进行图像锐化.经过预处理的图像如图3所示.
图3 预处理结果
2.2 阈值分割
图像阈值分割的目的是把线路从PCB板中分离出来.最大类间方差法在目标物体和背景灰度值的差值较大时,可以得到比较好的识别效果.对于PCB图像来说,识别目标导线是黄色,背景阻焊层是绿色,两者灰度有较大不同,因此研究选用最大类间方差法作为阈值分割的方法[5-7].
假设图像的灰度值从0~m-1,共m级,灰度值为i的像素为ni,像素的总数为N,则:
各级像素灰度值的概率为pi:
设T为像素的某一灰度值,以T为分界点,将整个图像的灰度级别分成小于T和大于T的两组,分别用C1和C2表示,
那么,C1和C2中像素灰度级别的概率如下:C1产生的概率
C2产生的概率
C1的平均值
两组间的方差为:
从0~m-1之间改变T,求式(9)为最大值时的T,即为阈值.
图像的灰度值分为从0~255,把每一级灰度值都作为一次分界点,把像素点分成两部分,根据式(9)计算两部分像素灰度值的方差,当方差为最大时,这个灰度值即为分割的阈值T,经过遍历整个图像的灰度级求出类间方差最大的阈值T为64.经阈值分割处理后的图像如图4所示.
图4 OTSU分割结果
2.3 形态学处理
图3显示经过分割后,保留了较好的细节,但是线路的边缘不够平滑,有毛刺,这会对后续的缺陷识别产生障碍.因此,该研究采用形态学滤波的方法对线路边缘进行平滑.
数学形态处理的运算有腐蚀、膨胀开运算和闭运算.
设f(x)和g(x)为定义在二维离散空间F和G上的两个离散函数,其中f(x)为输入图像,g(x)为结构元素,则g(x)对f(x)的腐蚀和膨胀分别定义为:
则g(x)对f(x)的开运算和闭运算定义为:
图5 3×3结构元素
结构元素各向同性的开运算可以使轮廓平滑,抑制物体边界的小离散点或尖峰,并且在平滑较大物体的边界的同时并不明显改变其面积.该文采用如图5所示3×3结构元素进行开运算.用开运算处理后的图像如图6所示.经过开运算图像的轮廓变得光滑,细的突出物被消除.
图6 开运算
2.4 缺陷分析和识别
断路、短路、缺损和毛刺是印刷电路板的4种主要缺陷.图7是笔者将采集到的缺陷图像和没有缺陷的标准图像,经过图像预处理、阈值分割、形态学滤波后得到的结果.通过比较发现,线路发生短路和断路的时候,图像的连通区域数量会发生变化,短路的时候连通区域变少;断路的时候连通区域变多,而发生缺损和毛刺的时候连通区域数量是不发生变化的.因此,可以利用这一特征对缺陷的进行识别.
首先,把参考模板图像和缺陷图像做减运算,参考模板图像是被减数,缺陷图像是减数,可以得到断路和缺损的缺陷点图像,如图8(a)所示.同时,为了滤除噪声,设置一个阈值面积,滤除噪声后,可以判断是否存在缺陷,再根据前面的分析进一步判断连通区域数量变多的是断路,不变的是缺损.
图7 检测图像
接着,缺陷图像作被减数,参考模板图像作减数,可以得到短路和毛刺的缺陷点图像,如图8(b)所示.同样的方法滤除掉噪声后,根据前面的分析可以判断连通区域数量变少的是短路,不变的的是缺损.
图8 缺陷点图像
把缺陷图像和参考模板图像作完减法后得到的缺陷点图像再进行具体缺陷分析,软件运行的结果如图9所示.缺陷分析的结果见表1.流程图如图10所示.
表1 缺陷分析结果
图9 缺陷检测分析结果
从以上实验结果分析,该文的方法可以正确的分析出缺陷的位置及缺陷的类型,从而验证了算法的有效性.
3 结论
该文针对PCB图像的特点,再结合线路缺陷的特征,构建了一个能够分析和识别PCB线路断路、短路、缺损和毛刺4种缺陷的PCB板线路检测系统.运用LabVIEW作为开发工具,进行模块化编程.实验结果证明,该系统能较好地分析出缺陷的位置及缺陷的类型,算法操作简单,具有一定的实用价值.
图10 缺隐分析流程图
[1] 苏见欣,姚剑敏,郭太良,等.基于成对几何直方图的PCB标志检测与匹配[J].计算机与现代化,2012,22(6):43-46.
[2] 王耀南,刘良江,周博丈,等.一种基于混沌优化算法的PCB板元件检测方法[J].仪器仪表学报,2010,31(2):410-415.
[3] 熊邦书,熊振姣,莫燕,等.线路板缺陷的图像检测方法[J].半导体光电,2012,33(4):303-306.
[4] Pawel Wrobel,Mateusz Czyzycki,Leszek Furman,et al.Lab-VIEW control software for scanning micro-beam X-ray fluorescence spectrometer[J].Talanta,2012,16(2):186-192.
[5] 冈萨雷斯.数字图像处理:2版[M].北京:电子工业出版社,2007.
[6] Gonzalez R C,Woods R E.数字图像处理:3版[M].阮秋琦译.北京:电子工业出版社,2011.
[7] 刘洋,方敏.基于LABVIEW的视觉伺服机械臂控制系统[J].微型机与应用,2012,31(10):25-27.