基于计算机视觉测量技术的PCB贴片检测研究与应用开发

2015-04-16 12:17:40秦川广智
都市家教·上半月 2015年3期
关键词:开发检测

【摘 要】本文利用计算机视觉测量技术对工厂流水线的PCB板贴片的质量进行检测,已发现PCB板上是否有虚焊、焊歪或者是漏焊的元器件。通过获取工业摄像头的视频,对传送带上的PCB板进行拍照,对PCB板通过仿射变换进行定位,然后通过高斯混合模型所建立的背景模型进行差分,如果二者之间的马氏距离小于规定的阈值,就认为没有虚焊、焊歪或者是漏焊的情况,反之,检测出问题区域,然后将问题区域标记出来。

【关键词】视觉测量;PCB贴片;检测;开发

1引言

随着计算机技术的不断发展,图像处理技术作为计算机技术的一个分支也在不断的发展。其中基于图像处理技术的工业视觉测量技术作为图像处理技术的一个应用方向在工业测量领域已经开始应用开来,但是这些视觉测量设备价格都比较高,大多数还都是依赖于进口。如AOI设备等。在此背景下,本文展开了基于视觉测量技术的PCB板贴片质量检测研究,目的就是为我国工业领域视觉测量技术的应用提供一定的理论基础。

2基于视觉测量技术的PCB贴片检测系统

2.1硬件架构

该系统的硬件架构组成非常简单,在实时性要求不高的,流水线速度较慢的领域具有很高的实用价值。硬件的组成部分主要包括高清度的摄像头、USB数据连接线、工业PC等。其组成以及数据的流程如下图所示:

图1PCB板视觉测量检测系统硬件架构

2.2视频获取

要实现利用视频数据来检测PCB板的贴片质量,首先最为关键的一步就是获取所采集的视频数据,然后将其转化为可以处理的格式,再对视频流数据进行PCB板贴片质量进行检测。由于本文所采取的硬件架构如图1所示,由摄像头、USB连接线和工控机组成,所以只要能够利用WINDOWS底层的API函数接口就可以实现USB视频数据的读取,在这里为了开发的方便,本文选择了opencv库函数中的VideoCapture类来实现视频数据的获取。利用一下代码就可以实现视频数据的读取

VideoCapture cap;

cap.open(int device);

cv::Mat image;

cap>>image;

2.3视频预处理

利用上述代码获取视频数据之后,由于视频每次拍摄的位置会有一定的差异,所以首先要对拍摄的图像进行几何校正。目的就是消除由于每次拍照位置的差异而引起的视频在整个图像上的相对位置的差异,如果不对上图图像做矫正处理的话,那么在差分的过程中就会出现大面积变化的区域,这是由于没有进行定标造成的,所以在和高斯混合模型做差分之前要首先对图像进行定标。定标首先要和高斯混合模型进行配准,然后获取同名点,然后利用仿射变换对图像进行矯正,具体计算过程如下:假设带矫正图像上的同名点都存在了vector1中,而高斯混合模型上的同名点都存在了vector2中,那么就有以下的关系:

x1=a1x+b1y+c1

y1=a2x+b2y+c2

通过上述公式就可以得到放射变换参数,然后利用上述仿射变换参数形成平移向量,平移向量如下所示:

(x-x1,y-y1)

然后利用上述向量对整幅图像进行平移最后得到几何矫正后的图像。

2.4差分处理

差分处理就是要获得待检测图像(未知是否有故障的PCB板图像),然后将其与所建立的高斯混合模型做差分处理,然后根据所设置的阈值对每个像素点进行分类,如果所得差异小于初始设定阈值,那么就认为是无质量问题,如果大于设定阈值那么就认为PCB某些区域存在质量上的问题,可以利用OPENCV中的库函数absdiff来实现差分处理,关键代码实现过程如下:

cv:Mat MixGauss;

cv:Mat fram;

absdiff(MixGauss,fram,fram);

2.5中值滤波

由于光照的变化以及空气中颗粒的扰动会使得差分的后的图像上出现很多小的斑点,采用线性滤波方式的加权平均的方法会使得图像的边缘产生模糊的现象,会减弱所检测出的变化。所以本文选择了中值滤波来滤除差分处理后图像上的斑点。通过实验发现该滤波效果较好能够有效的滤除斑点噪声。

3系统开发

3.1开发环境介绍

本文所使用的开发环境为vs2010集成开发环境,然后利用崎岖公司所开发的界面库Qt作为系统开发的界面开发库。

3.2界面设计

本系统的系统实现如下所示,利用Qt中的一个Label来显示视频帧,然后用另外一个Label显示所检测出的变化叠加到原来视频帧上的界面,然后通过开始按钮可以实现控制摄像头开始采集数据,利用结束按钮可以结束整个视频采集处理过程。

3.3功能实现

该系统的主要功能就是将PCB板所出现的贴片问题检测出来,然后将其标记并显示在上节所建立的Qt界面中,代码实现的过程包括,差分处理,中值滤波,变化区域标记,叠加结果显示等步骤,这些关键步骤的代码在opencv中都有实现,并且代码是开源的。

4结束

本文对于视觉测量技术在PCB板贴片质量检测中应用进行了研究,并对于关键的开发技术进行了详细的说明,质量检测步骤包括系统硬件架构、视频的获取、视频预处理、差分处理中值滤波等,为计算机视觉测量技术在工业生产中的应用提供一定的理论指导。

参考文献:

[1]冈萨雷斯,伍兹.数字图像处理(第三版)[M].阮秋琦.北京:电子工业出版社,2011

[2]孙鑫,余安萍.VC++深入详解[M].电子工业出版社,2008

作者简介:

秦川广智(1986~),女,职称:助教,工作单位:贵州航天职业技术学院。

猜你喜欢
开发检测
“一元一次不等式组”检测题
“一元一次不等式”检测题
“不等式”检测题
“角”检测题
“几何图形”检测题
高中历史教学中对历史图片的开发及实际应用
考试周刊(2016年85期)2016-11-11 01:57:37
在线投稿与编辑系统的设计与开发
河南方言文化资源的保护及其开发利用的研究
遵义红色旅游开发对策研究
基于J2EE和Ionic的ITer学习APP设计与开发