韩歆彤,白瑞林,张鑫磊,仲抒鸿,姚宇昊,曹冯婷
(江南大学物联网工程学院,江苏 无锡 214122)
随着电路板组装技术朝精密化方向发展,印刷电路板(printed circuit board,PCB)向高精化、微细化和高密度化方向快速发展[1],且印刷电路板焊点检测工作也向高效、精准和节能方向发展。传统的人工目检越来越难以满足实际生产的需要,而逐渐兴起的自动光学检测(automatic optical inspection,AOI)系统存在易受外界影响、易出错、检测精度过低等缺点。作为一种主动式光学测量技术[2],结构光具有非接触、精度高、效率高和适用范围广等优点,在三维重构、瑕疵检测等方面应用广泛。
针对以上分析,本文提出了一种基于编码结构光视觉的电路板焊点检测系统。该系统采用Gray码与相移结合的编码结构光技术进行瑕疵检测,在具有良好可靠性与准确性的前提下,显著降低了成本。通过三维信息准确定位焊点位置,达到及时、可靠的检测要求,实现生产检测的智能化。
本文研究基于编码结构光的电路板焊点检测系统。
本文首先分析了Gray码与相移编码方法进行结构光的投射,通过对摄像机拍摄图像的解码找到图像之间精确的对应关系;然后根据对极几何约束关系,进行三维重构;最后通过CloudCompare软件进行分层提取、模板匹配,实现精确检测。
系统设计框图如图1所示。
图1 系统设计框图
系统硬件架构主要利用摄像机和投影仪搭建。本系统中包括两台分辨率为IMAGING 500W的COMS相机、一台800×600分辨率的EPSON投影仪和两个焦距为12 mm的镜头。硬件架构如图2所示。
图2 硬件架构图
由于试验中采用的液晶投影仪的分辨率为800×600,当Gray码图案数量大于8时,摄像机难以分辨投影图案的黑白条纹,不利于后续的图像处理[3]。Gray码条纹图案如图3所示。
图3 Gray码条纹图案
若图像的分辨率是1 024×768,通过6位Gray码把图像的横向坐标分为26个等间距的区间,每个区间的像素宽度为16 pixel。
相移法具有消除背景项和检测器的非线性及常数项影响的优点[4],理论上可获得连续的测量空间划分。由于最小区间的宽度为16个像素,因此采用等间隔的宽度为16个像素的相移图的黑白条纹来区分每个区间的点。相移条纹图案如图4所示。
图4 相移条纹图案
由于光照环境等因素的影响,采集的图像上有许多噪声。这些噪声将使试验结构有许多离散的点。因此,必须对采集图像进行预处理。其具体步骤为如下。
①利用中值滤波技术进行图像预处理,以消除图像由于拍摄与传输所产生的噪声;通过归一化处理,除去由于相机光照不同产生的误差。
②用Ostu法确定图像分割阈值,对现有图像进行阈值处理。
③左右相机由于位姿不同,其采集到的图像阴影区域不一致。因此在利用边缘检测器提取像素边缘后,对阴影边缘通过“与”逻辑运算进行边缘去除和优化。
通过以上预处理,在消除采集图像噪声影响的基础上,去除由于相机位姿造成的阴影区域边缘。
首先设定图像的边缘点为采样点,通过对各采样点的二进制码值计算进行Gray码解码,获取Gray码码值[5]。通过计算第(1,2,…,i-1)图像中相应位置处的二进制码值,可求取第i(i≤n)幅图像中某条边缘的Gray码码值。即边缘码值k可表示为:
k=2n-i+[G0G1G2…Gi-1)2]102n-i+1
(1)
式中:k=1,2,…,2n-1为边缘的码值,n为Gray码的位数,i为图像的序数;Gi为条纹在第i幅图像的二进制码值,G0=0。
本文采用4步相移技术,则获取到的图像表示为:
(2)
式中:(x,y)为像素点坐标;Ij(x,y)为(x,y)处的灰度值;φ(x,y)为初始相位;A(x,y)为背景光强度;B(x,y)为正弦函数的幅值;j为该图像在投影的序列图像中的编号。
相位求解公式可表示为:
(3)
由于式(3)求解出的相位取值范围为(-π,π),将相位主值φ与周期次数j进行叠加,则获得每个采样点的绝对相位为:
Ψ(x,y)=2πj+φ(x,y)
(4)
在实际的三维测量过程中,Gray码和相移的周期并非完全对应。Gray码与相位周期对应如图5所示。
图5 Gray码与相位周期对应图
由图5可以看出,两者在周期的边界处会存在一定的错位。这是由于Gray码解码过程中阈值选取和环境等因素限制了周期变化一致性的要求。本试验采用调节Gray码解码周期位置来消除周期错位的问题,采用文献[6]中周期校准的方法,使绝对相位在周期边缘处的误差被消除。
通过左相机视图正交方向码值Lh、Lv与右相机视图正交方向码值Rh、Rv,采用正交投射的方式,计算可得全局编码值Lcode、Rcode为:
(5)
通过对各视图的地址进行数据校正,采用三角测量的方法,可计算各点的三维坐标。
在PCB在线检测领域,模板匹配是应用广泛的算法[6]。但是传统的模板匹配将PCB作为一个整体对待。由于本文采用编码结构光视觉获取点云图像,充分利用三维坐标提取高度差异的优势,将焊点的定位通过阴影边缘的定位获取。具体步骤如下。
①首先在得到三维点云图像后,根据电路板上不同器件z轴坐标的差异,通过对三维图像高度的判断,可以在高度有明显变化的边缘区域判断为器件焊接区域,并得出焊点面积、中心坐标的信息。
②根据精度要求,设置面积误差E1和位置误差E2,将步骤①中的信息与模板信息作减运算。若面积、位置运算结果分别小于E1、E2,则不作标记;若有一项不满足要求,则在CloudCompare软件中标记显示。
为了验证该方法的可行性与准确性,采用如图2所示的硬件架构,搭建了基于编码结构光视觉的电路板焊点检测系统。
首先,利用张正友经典标定法对双目相机进行立体校正,使得左右相机能够严格遵循行对齐[7-11]。其次,由投影仪按时间顺序向待测电路板投射Gray码与相移编码图案,按照图1所述流程对电路板进行重构,在Matlab平台下完成程序的编写,通过CloudCompare软件对最终生成的点云数据进行三维显示。
为了对比不同编码结构光对焊点识别的精度,分别采用本文中基于6位Gray码结合相移的方法和文献[8]中基于6位Gray码的方法对同一电路板进行重构。电路板重构结果图如图6所示。
图6 电路板重构结果
从图6可以看出,单纯基于Gray码的方法在重构精度上仍有不足,只能检测出直径在4 mm以上的焊点;而采用本文所述的基于Gray码结合相移的方法可以准确识别出直径为1 mm的焊点,满足焊点检测的精度要求。此外,若对本文方法得到的点云图进行后期平滑处理,能更清晰地显示焊点轮廓,得到焊点的位姿信息。
两种方法性能对比如表1所示。
表1 两种方法性能对比
从表1可以看出,Gray码结合相移的方法通过提高采样点云数目,将误差控制在1 mm以内,能够准确进行焊点定位,达到检测焊点的目的。基于Gray码方法的重构时间较短,远少于本文方法。其原因是该方法处理图像数量少,点云数目与测量精度为达到要求,在实际环境中不能满足工程焊点检测的精度需要,实用性较差。
在印刷电路板生产过程中,获取电路板焊点的三维点云是瑕疵检测的前提。本文针对印刷电路板焊点检测精度低、成本高的问题,设计了基于编码结构光视觉的电路板焊点检测系统。该系统可靠性高,实现了对焊点的智能检测。利用Gray码与相移相结合的方法,准确重构出电路板三维点云图像。通过高度分析有效提取检测区域,实现焊点位置的精确定位。相对于传统方法,本系统将误差控制在1 mm以内,在保证实时性的同时提高了重构精度,达到了检测焊点的目的。结构光视觉技术能有效降低成本,设计新颖,可用于工业生产环节的在线检测,并推广应用于激光测距、合成孔径雷达等涉及相位测量的诸多领域。下一步的研究工作重点是进一步优化焊点的检测算法,提高该项目的实时性。