基于机器视觉的芯片引脚识别与中心定位算法研究

2015-03-02 12:13黄紫青
软件导刊 2015年1期
关键词:机器视觉

黄紫青

摘要:针对机器视觉的全自动智能点胶机系统,提出了一种新的中心定位算法。分别采用重心法和面积积分法对PCB板进行了芯片引脚识别与中心定位算法研究,再将两种算法平均后进行对比分析,实现了随机分布下的PCB板芯片引脚的准确定位。检测结果表明,该方法能够提高芯片引脚中心定位5%的准确率。

关键词:机器视觉;引脚识别;中心定位

DOIDOI:10.11907/rjdk.143674

中图分类号:TP311.5

文献标识码:A 文章编号文章编号:16727800(2015)001006703

0 引言

当今电子产品逐步向微型化、高速、高精度、全智能的方向发展。自动点胶技术作为电子产业不可分离的重要部分,不仅提高了产品封装的效率和速度,在很大程度上节省了成本,而且由于其高效自动化,在电子制造业中应用越来越广泛。

自动点胶贴片是利用先进的机器视觉技术,配合机器人等控制装置,高效快速完成点胶操作。目前,国内的全自动点胶机系统大部分来自国外,国内在这方面的研究还处于发展阶段。由于行业信息不全,各种设备鱼龙混杂,在点胶质量、节能、环保以及成本等方面不能满足人们的需求。本文对点胶的芯片引脚进行了图像识别和中心定位算法研究。

1 系统方案设计

1.1 自动点胶系统设计

自动点胶系统[1]由工控机、点胶机(机器人)、空气压缩机、视觉检测系统和光源等组成,系统框图如图1所示,系统实物如图2所示,工作原理如下:将需要点胶的芯片随机放在工作台,给予适合的光照强度,视觉检测系统通过检测芯片,识别定位出芯片的引脚中心位置[2],将数据反馈到主机中,再控制机器人进行点胶操作。

自动点胶系统中,视觉检测系统最为关键。由于芯片的高度集成化,芯片之间的间距越来越小,检测识别的难度越来越大,精度要求也越来越高[3],而且由于生产的自动化,速度也越来越快。因此,高速、高精度的视觉检测系统就显得越来越重要。

图1 系统框图

1.2 视觉检测系统

视觉检测系统的功能模块包括图像采集与显示模块、图像处理模块以及检测结果输出部分。

(1)图像的采集与显示模块包括图像传感器以及A/D转换器等,主要功能是在合适的光源照度下进行图像的采集,并转换为需要的图片格式进行显示和存储。

(2)图像处理模块是整个系统的核心,它主要根据需要,提取目标图像的特征信息进行中心定位。

(3)图像输出部分是把图像处理后所存储的数字阵列图像变换为适于人们理解的形式。

本文基于VC2010和Opencv,对CCD摄像头采集的芯片图像进行图像处理和编程仿真,最终实现芯片引脚定位。

图2 系统实物

2 芯片引脚定位与识别算法

2.1 图像预处理

预处理主要是图像增强中的滤波过程,常用的图像滤波[4]有均值滤波、中值滤波和高斯滤波。

(1)均值滤波是典型的线性滤波算法,主要方法为邻域平均法,即用一片图像区域各个像素的均值来代替原图像中的各个像素值。均值滤波不能很好地保护图像细节,去噪的同时也破坏了图像的细节部分,从而使图像变得模糊,不能很好地去除噪声点。

(2)中值滤波[5]是一种典型的非线性滤波技术,基本思想是用像素点邻域灰度值的中值来代替该像素点的灰度值。该算法缺点是对所有像素点采用一致的处理,可能会改变真实像素点的值,引入误差,损坏图像的边缘和细节。

(3)高斯滤波是一种线性平滑滤波,广泛应用于图像处理的减噪过程。高斯滤波对整幅图像进行加权平均,每一个像素点的值,都由其本身和邻域内的其它像素值经过加权平均后得到。虽然高斯滤波的效率不是最高的,但是在保留信号的条件下,高斯滤波能够很好地减少噪声,对于抑制服从正态分布的噪声非常有效,故本文选择高斯滤波,其一维高斯函数为:

G(x)=1[]2πσe-x2[]2σ2

(1)

二维高斯函数为:

G(x,y)=1[]2πσ2e-x2+y2[]2σ2

(2)

2.2 特征匹配与分割

工作台上随机放置的PCB板不会非常整齐,滤波后,需要对芯片的位置进行定位。PCB板上芯片是一块类似正方形的区域,可先对其进行模版匹配[6]。首先让计算机学习芯片板块,提取出芯片的几何特征后,再根据机器视觉检测,准确找到需要处理的芯片位置。再将黑色图像与芯片的中心区域进行图像融合[7],得到融合后的图像。

以芯片中心为目标点,以芯片的引脚到芯片中心为正方形边长的1/2进行图像限定,采用双阈值方式进行图像分割,最终得到芯片的二值化引脚图像。

2.3 中心定位算法及其改进

中心定位[89]是算法的关键部分,决定了图像处理后芯片引脚中心位置的精度和准确性。常见的中心定位算法有形心法、灰度重心法、霍夫变换法以及面积积分法等。

(1)高斯加权重心法。高斯加权滤波具有很好的去噪声能力,公式如下:

(3)

高斯加权滤波在计算中采用高斯滤波后的像素值进行计算,其中,F(x,y)表示输出的图像数据灰度值,g(x,y)表示高斯滤波系数,I(x,y)表示经过高斯滤波的图像数据。

(2)面积积分法。对于一个封闭的图形,根据微积分理论,其中心坐标可由下式得到:

式中,x和y代表单元点的坐标,ρ(x,y)代表单元点的密度,D代表整个区域。当ρ(x,y)=1时,区域的重心和形心重合,S表示区域的面积。为了能够用计算机计算区域的中心位置,必须对公式(4)离散化,离散化后的公式为:

面积积分法必须进行角度的计算,对于矩形的计算会有一定的误差,可能导致最终的坐标偏移;重心法计算平均值,可以有效计算出边缘的中心,但是若有边缘像素丢失,也会导致坐标发生偏移。

本文采用面积积分法先对图像进行第一次中心定位,较为准确地限定中心位置,将得到的数据保存,再使用重心法对图像进行第二次中心定位,得到重心坐标。对每一行和每一列进行均值计算,得到一组相对准确的X或Y坐标,然后再与原来的数据进行对比,若两者差小于1,则原来的数据是中心,若两者差大于1,则表示原来的数据发生了偏移,这时选取均值作为新的中心。

3 实验结果与误差分析

3.1 实验结果对比

实验采用的是大恒图像的DHHV5051UCM相机及16mm镜头,基于VC2010[10]和OpenCV[11]平台对采集到的图像进行滤波,滤波后的结果如图3所示。图3(a)为原始图像,图3(b)为均值滤波,在图像去噪时丢失了一些细节,图3(c)为中值滤波,没有很好保留边缘细节,图3(d)为高斯滤波,能够使图像变得更为平滑,并且能够有效去除高斯噪声,所以实验中选取高斯滤波方式。

图3 滤波结果对比

滤波后,对图像进行了特征匹配,见图4(a),得到融合后的图像,见图4(b)。对图像进行融合后再进行双阈值分割,获得了二值化的芯片引脚图,见图4(c)。

图4 引脚提取结果

根据重心法特点,获取每个闭合轮廓的重心位置,如图5(a)所示。本文提出的算法是基于重心法的面积改进,由于每个引脚的面积是相同的,所以每一排引脚的中心位置在X/Y轴上呈现直线排列。本文的算法能够更准确地找到中心的位置,如图5(b)所示。

图5(a) 重心法获取重心位置 图5(b)重心法改进算法

3.2 误差分析

采用传统的重心法和本文改进算法所得的中心坐标,在面积轮廓发生改变的情况下会有一些差别。采用X/Y坐标对比分析,发现重心法在传统的中心定位中会局限于像素的大小而导致中心发生偏移。由于在图像采集过

程中可能会有部分边缘的效果不是很好,所以提取出的最终结果会略有偏差,如图6中X坐标对比的坐标偏移,Y的坐标变化几乎不变。本文提出的算法可以对其进行改进,能够校正2个发生偏移的X坐标,将准确率提高5%。

图6 坐标对比

4 结语

本文研究了智能点胶系统关键技术,建立了视觉检测软硬件系统,获得了清晰易处理的引脚图像。利用图像技术以及平面几何知识,实现了对芯片引脚中心位置的检测与定位。实验中采取的阈值根据需要确定,对于不同的需求采用不同的阈值进行分割,结果表明该视觉检测方法可以很好地检测出引脚位置和中心,应用前景广阔。

猜你喜欢
机器视觉
大场景三维激光扫描仪在研究生实践教学培养中的应用