第一范文网 - 专业文章范例文档资料分享平台

基于图像的pcb板的断路短路检测技术研究

来源:用户分享 时间:2025/5/24 6:19:57 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

3 PCB图像的预处理

图像预处理主要是在matlab下进行的。一般来说,系统在PCB待测灰度图像的采集、传输过程中,由于光照不均或变化、采集设备自身的干扰、成像的非线性、数字化过程量化噪声、传输过程误差以及人为因素等,都有可能使得实际获取的待测PCB灰度图不可避免地受到外部干扰和内部干扰,从而使图像质量降低或失真,包含各种各样的噪声和畸变。因此,为了后续图像分析和理解,应对待测图像进行预处理,改善图像质量,提取我们感兴趣的目标区域。

目前,已经有许多成熟的方法可以用来对图像进行预处理。在进行预处理的过程中,可以根据不同的情况,有针对性的选取适当方法来进行操作。

经实验证明,在电路板图像的预处理过程中,中值滤波,拉普拉斯锐化这几种方法对电路板图像预处理能较好的去除噪声,提高图像质量。因此,在本课题研究中,根据PCB图像的特点,首先对PCB图像进行灰度化,然后选取适当的方法对PCB图像进行处理,以期得到我们希望的图像,为后续研究做准备。

3.1 MATLAB软件简介

MATLAB是Math works公司于推出的一套高性能的数值计算和可视化软件,其全称是Matrix Laboratory,亦即矩阵实验室,经过多年的逐步发展与不断完善,现已成为国际公认的最优秀的科学计算与数学应用软件之一,是近几年来在国内外广泛流行的一种可视化科学计算软件。它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境,而且还具有可扩展性特征。MATLAB中的数字图像是以矩阵形式表示的,这意味着MATLAB强大的矩阵运算能力用于图像处理非常有利。矩阵运算的语法对MATLAB中的数字图像同样适用。

MATLAB中的基本数据结构是由一组有序的实数或复数元素构成的数组,图像对象的表达采用的是一组有序的灰度或彩色数据元素构成的实值数组。MATLAB中通常用二维数组来存储图像,数组的每一个元素对应于图像的一个像素值。例如,由200行和300列的不同颜色点组成的一幅图像在MATLAB中采用200×300的矩阵存储。

MATLAB支持多种类型的图像,而不同类型的图像其存储结构通常是不同的。如RGB图像则需要一个三维数组,3个数据维分别对应于某像素点的红色、绿色和蓝色强度值。由于对图像采用了通用的数据矩阵的表达方式,MATLAB中原有的所有基本矩阵操作都可应用于图像矩阵,例如,我们要查看图像I中某像素点的强度值,可以采用类

9

似的表达方式:I(x,y),它代表了图像I的第x行和第y列的像素值。

MATLAB可操作的图像文件包括BMP,HDF,JPEG,PCX,TIFF和XWD等格式。MATLAB在图像处理中的应用是由MATLAB函数来实现的,MATLAB提供了图像文件读入函数imread(),还提供了imwrite()图像写出函数,显示图像函数有image()、imshow()等MATLAB在处理图像时都是以向量、矩阵、数组的形式来表示图像,并进行各种运算。MATLAB提供了图像的和、差等线性运算。

3.2 彩色图像灰度化

图像的灰度化处理的基本原理:数字图像分为彩色图像和灰度图像。RGB图像,即真彩色图像,在MATLAB中存储为n×m×3的数据矩阵。数组中的元素定义了图像中每一个像素的红、绿、蓝颜色值。像素的颜色保存在像素位置上的红、绿、蓝的强度值的组合来确定。在RGB模型中,如果R=G=B,则表示一种灰度颜色,其中R=G=B的值叫做灰度值,通常用g来表示。因此,灰度图像每个像素只需一个字节存放灰度值 ,灰度范围为 0-255。将彩色图像转化成为灰度图像的过程成为图像的灰度化处理。

由于彩色图像的存储空间较大,因此,在对图像进行识别等处理过程中,需要将彩色图像转换为灰度图像,以加快后续工作的处理速度。彩色图像中的每个像素的颜色有R、G、B三个分量决定,而每个分量有255种值可取,这样一个像素点可以有1600多万(255*255*255)的颜色的变化范围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其一个像素点的变化范围为255种,所以在数字图像处理种一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征。

灰度化是图像处理的基础之一,彩色图像如果不是直接进行彩色图像分割,就要在后续处理之前进行灰度化。预处理阶段, 都要把采集来的彩色图像进行灰度化处理,这样既可以提高后续算法速度, 而且可以提高系统综合应用实效,达到更为理想的要求。 因此对彩色图像灰度化很重要。

图像的灰度化处理,一般有以下三种设计方案: (1)加权平均法

根据重要性及其它指标,将三个分量以不同的权值进行加权平均。由于人眼对绿色的敏感最高,对红色敏感度次之,对蓝色敏感最低,因此,在MATLAB中我们可以按

10

f(i,j)=0.30R(i,j)+0.59G(i,j)+0.11B(i,j))这个式子系统函数对RGB三分量进行加权平均能得到较合理的灰度图像。

(2)平均值法

求出每个像素点的 R、G、B 三个分量的平均值,将得到均值作为灰度值输出而得到灰度图。表达式为f(i,j)=(R(i,j)+G(i,j)+B(i,j)) /3 .

(3)最大值法

将彩色图像中的三分量亮度的最大值作为灰度图的灰度值。表达式为f(i,j)=max(R(i,j),G(i,j),B(i,j)) .

rgb2gray函数的功能是将彩色图像转化成灰度图像。库函数rgb2gray(),其转化是依据亮度方程f(i,j)=0.30R(i,j)+0.59G(i,j)+0.11B(i,j))来实现的,即依据人眼对不同颜色的敏感度不同(人眼对绿色最敏感,对红色敏感度次之,对蓝色最不敏感),对RGB分量以不同的系数加权平均,即gray=O.30R+0.59G+0.11B,通常能得到最合理的灰度图像。

在matlab中,实现灰度化的程序语句如下: i=imread(‘G:\\dianluban.jpg’); j=rgb2gray(i); figure,imshow(j); 结果如图3.1所示。

(a) 短路 (b) 断路

图 3.1 转换后的灰度图

3.3 PCB图像的滤波

图像滤波,即在尽量保留图像细节特征的条件下对目标图像的噪声进行抑制,是图像预处理中不可缺少的操作,其处理效果的好坏将直接响到后续图像

11

处理和分析的有效性和可靠性。图像在获取或者传输的过程中,经常会被加入大量的噪声,严重影响了图像的视觉效果,甚至妨碍了人们的正常识别。因此,图像的噪声滤除是图像处理中的一项重要任务,噪声滤除后的结果对图像锐化、特征提取和图像识别等后续处理均有直接的影响。任何一幅未经处理的图像,都存在一定程度的噪声干扰,噪声恶化了图像质量,使图像模糊,甚至淹没特征,给分析带来困难。图像滤波的主要目的就是去除或衰减混杂在图像上的噪声的干扰,改善图像的质量。常用的滤波方法有均值滤波,中值滤波等。 3.3.1均值滤波

均值滤波是简单的空域处理方法,它将一个像素及其邻域中所有像素的平均值赋给输出图像中相应的像素,从而达到滤波的目的。

它是一种线形滤波技术,它是用一窗口逐一对准图像内每一像素,用窗口领域的像素灰度的平均值取代窗口中心像素原来的灰度值。假定有一幅M×N个像素的图像f(x,y),滤波处理后得到一幅图像g(x,y),g(x,y)由式(3.1)决定:

g?x,y??1M?I,J??s?f?i,j? (3.1)

其中:x,y=0,1,2,?,N-1;S是以(x,y)为中心的邻域集合;M是S内的像素数。

窗口领域S的形状和大小根据图像特点确定。一般选取的形状是正方形、矩形及十字形等,领域的形状和大小可以在全图处理过程中保持不变,也可根据图像的局部统计特性而变化,它的中心一般位于被处理点上。如为3*3邻域,点(m,n)位于S中心,则

f?m,n??19??f?mI??1J??111?i,n?j? (3.2)

假设噪声n是加性噪声,在空间各点互不相关,且期望为0,方差为?2,g是未受污染的图像,含噪图像f经过邻域平均化滤波后为:

f?m,n??1M?f?i,j??1M?g?i,j??1M?n?i,j? (3.3)

2?1M?,即噪声方差变小,说明噪声由上式可知,滤波后噪声的均值不变,方差?2?强度减弱了,即抑制了噪声。可见,邻域平均法滤波有力地抑制了噪声,使图像变得

柔和一些,同时也出现了因边缘处的灰度差趋向平均而引起的模糊现象,模糊程度与

12

基于图像的pcb板的断路短路检测技术研究.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c0c51h7m5l15gf8x599ld_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top