基于虚拟仪器的机器视觉在PCB元器件检测中的应用

2010-07-10 07:01秦益霖马祥林
制造业自动化 2010年6期
关键词:电路板图像处理亮度

秦益霖,马祥林,朱 敏,李 晴

(1.常州信息职业技术学院,常州 213164;2.江苏科技大学,镇江 212001)

0 引言

印刷电路板是电子设备中不可缺少的重要部件,电路板在生产制造过程中有可能产生各种各样的缺陷,比如电路板上元件缺失、错件等。目前电路板插件主要采用人工方式进行检测,而人工检测存在劳动强度大,容易犯错的缺点。本项目就是要开发一种具有一定面向的低成本的电路板元件检测设备,推进机器视觉技术向大众化应用方向发展,向各种领域发展。

1 系统设计

1.1 系统工作流程

首先采用智能相机将被摄取目标转换成图像信号,此时的图像是灰度图像;再通过数据线将此图像信号传送给PC机,根据像素分布、亮度等信息,将其转变成数字化信号并进行各种运算来抽取目标的特征;和标准图像进行对比、模板匹配等处理后,得出被测PCB是否有缺陷;最后使用智能相机的 I/O功能来实现机器视觉系统与外界系统和数据库的通信,控制生产流程。系统结构如图1 所示。

图1 系统结构图

1.2 硬件设计

考虑到实时图像采集的测量精度和速度要求,该系统采用的硬件配置为:

NI 1744智能相机。NI 1744系列智能相机具有图像采集和处理特性,还具有I/O功能,在相机上构成了集于一体的嵌入式设备,能够运行NI VBAI或NI LabVIEW实时模块和整个NI机器视觉算法套件,能对图像进行处理,可以降低了成本和检测时间。

PC机。通过智能相机获得的图像在PC机上显示,通过LabView、Vision assistant和VBAI编写的程序实现对图像的采集和处理。

1.3 软件设计环境

应用NI公司开发的虚拟仪器软件LabView8.6和NI公司的视觉模块,包括IMAQ Vision Builder、Vision Assistant和IMAQ Vision为开发平台。

2 图像处理与分析

从拍摄的照片如图2所示,可以看出,电解电容中间的金属表面具有很强的反光性,在图片中表现为高亮度。有鉴于此,我们将在图片中检测电解电容的反光面的存在与否来判定电容是否存在。

由于系统采用的照明光源、相机和PCB板角度等原因,有些电解电容的反射表面的强度不强,这会干扰对强度的判断,在以后的图像处理中必须对其增强。可以使用NI Vision Assistant编程对PCB图像进行预处理,增强反射面的强度。

图2 PCB原始图片

图3 PCB预处理后图片

2.1 图像的预处理

一般情况下,当图像采集到计算机的时候,相机获得的原始图像会受到各种条件的限制和随机信号的干扰,如光电转换过程中敏感元件灵敏度的不均匀性、数字过程中的误差等,均会使图像含有各种各样的畸变和噪声,对图像的分析和识别带来困难。

2.1.1 中值滤波

中值滤波是一种非线性滤波方法,也是一种排序滤波方法。在图像处理中对抑制离散的噪声比较有效,而且还能保护边缘轮廓信息。它的中心思想是将所用邻域窗口内的所有像素灰度值从小到大排序,取该组中间的灰度值作为滤波后的灰度值。

通常窗口内像素数为奇数,以便有个中间像素。若窗口像素数为偶数时,则

中值取中间两像素灰度的平均值。常用的窗口形状有方形、十字型、圆形、菱形等。窗口A的大小决定在多少个数值中求中值,窗口的形状决定在什么样的几何空间中取元素来计算中值。

最常用的窗口是方形或十字型。中值滤波窗口越大,抑制噪声效果越好,但有效信息损失也越大,因此须选择最佳窗口大小以兼顾二者。本文采用5*5的方形窗口中值滤波进行图像平滑去噪。

2.1.2 灰度值变换

除了控制照明光源外,某些情况下通过算法调整图像的灰度值是必要的。灰度值变换可被视为一点处理。这意味着变换后的灰度值tr,c仅仅依赖于输入图像上同一位置的原始灰度值gr,c,可表示为:tr,c=f(gr,c)。这里f(g)表示进行灰度值变换的函数。为了提高变换的速度,灰度值变换通常通过一个查找表(LUT)来进行,即将每个输入灰度值变换后得到的输出值保存在一个查找表内。如果用fg表示LUT,则tr,c=f[gr,c],此处符号[]表示的是查找表的操作。

平方根操作,其作用是增加了在黑暗区域的亮度和对比度,减少了在明亮的区域的亮度和对比度。等值操作,作用是对图像的像素点进行变换,增加了图像的亮度、增加了亮区的对比度。本文采用平方根、等值操作对图像进行灰度值变换。

2.1.3 数学形态学

图像处理中经过滤波、灰度值变换后的图像经常会包含我们不想要的干扰,所以我们必须要调整区域的现状以获得我们想要的结果。数学形态学被定义为一种分析空间结构的理论。为此,数学形态学提供了一组特别有用的方法,这些方法能让我们调整或描述物体的形状。

用gr,c表示要处理的图像,用s(r,c)表示ROI是S的一幅图像,图像s被称为结构元。

膨胀能够通过转置结构元来实现,有如下定义:

在灰度值形态学中,对结构元的选择通常是平坦结构元,即:对于s(r,c)∈S时,s(r,c) =0 。它产生的效果为:扩大图像中比周围更亮的部分,并收缩背景,这样灰度值膨胀能够被用来将灰度值图像中的一个亮物体的脱节部分连在一起。

灰度值图像减法有如下定义

有以上两个基本模块,我们可以构建本文将要利用的操作:灰度值闭操作。

它是一个膨胀操作后再执行一个减法。它能够被用来填充小孔或者删除小物体。此外,它还能够被用来连接或分开物体,平滑物体的内、外边界。

根据以上讨论,编写程序对图像进行预处理。经过预处理后的图像如图3所示,可以看出电解电容金属反射面都具有很强的亮度,达到了后续识别的要求。预处理的程序图如图4:

图4 预处理的程序图

2.2 图像的分析

经过预处理后的图像已经满足我们对图像的辨识要求,在本文中应用NI Vision Builder for Automated Inspection对图像进行分析辨识的操作。

实验结果显示此方法能迅速、准确的检测出电路板是否存在缺陷,如检测通过,在图片上显示PASS,否则显示FAIL。检测界面如图5所示:

图5 Vision Builder for Automated Inspection检测界面

3 结束语

本文介绍了基于虚拟仪器技术的PCB元器件检测系统,通过实验表明该方法是可行的、有效的,且易于实现,并且该系统可以满足PCB检测在线、实时、高速高精度的要求。利用IMAQ Vision Builder、Vision assistant提供的强大图像处理功能, 可以大大缩短软件开发时间,同时由于NI公司的软硬件具备非常好的可靠性和稳定性,可以确保检测结果的精确度。

[1] 章毓晋.图像处理和分析技术.北京:高等教育出版社.2008.

[2] 刘焕军,等.机器视觉中的图像采集技术.电脑与信息技术.2003(01):18-21.

[3] 方胜,等,基于NI Vision Assistant的机器视觉在钢球表面测中的应用.2008(5):72-82.

[4] National Instruments Corporation.NI-IMAQ User Manual.2004.

[5] National Instruments Corporation.NI Vision Assistant Tutorial.2009.

[6] National Instruments Corporation.NI Vision Builder for Automated Inspection Tutorial.2009.

[7] National Instruments Corporation.NI 17xx Smart Camera User Manual.2008.

猜你喜欢
电路板图像处理亮度
人工智能辅助冠状动脉CTA图像处理和诊断的研究进展
远不止DCI色域,轻量级机身中更蕴含强悍的亮度表现 光峰(Appptronics)C800
基于ARM嵌入式的关于图像处理的交通信号灯识别
亮度调色多面手
基于图像处理的机器人精确抓取的设计与实现
机器学习在图像处理中的应用
基于免疫遗传算法改进的BP神经网络在装甲车辆电路板故障诊断中的应用
废旧手机电路板中不同金属回收的实验研究
亮度一样吗?
96 芯插接电路板控制系统的故障设置装置设计