当前位置:文档之家› PCB缺陷检测中图像分割算法的分析与比较

PCB缺陷检测中图像分割算法的分析与比较

PCB 缺陷检测中图像分割算法的分析与比较摘要:图像分割在图像处理中占有重要的地位,分割结果的好坏直接影响图像的后续处理。

本文介绍了4种常用的图像分割方法及其在PCB 缺陷检测中的应用,并且利用实际的分割效果对4种分割方法进行了比较。

对PCB 检测的实际应用提出了一种比较好的图像分割思路,并且做了实验研究。

关键词:图像处理;图像分割;PCB 检测引言:图像分割是图像处理中的一项关键技术,分割结果的好坏直接影响到图像的后续处理。

本文中图像分割的目的是根据图像灰度等级准确划分出其中有意义的目标区域。

但是由于系统在PCB 图像的采集、传输过程中,由于光照不均,CCD 摄像机自身的电子干扰,都不同程度的带来噪声,使图像污染。

这些噪声也给图像分割带来了一定的难度。

而传统的图像分割方法针对实际应用,本文分别采用四种公认比较好的分割方法对PCB 图像进行分割,并对分割效果进行了比较,最后确定了适合PCB 检测的图像分割方法。

下面对它们进行具体说明。

1. 基于标准图像的模糊推理法模糊理论在图像处理中的应用越来越广。

在图像分割中,它可以把数据的校验用一些模糊规则来进行描述。

用基于标准图像的模糊推理法进行图像的分割主要包括以下几步[1]:(1) 计算原始图像的灰度直方图并用迭代阈值法计算它的阈值; (2) 寻找目标和背景的像素簇的峰值;(3) 计算LD(象素值低与较低之间的阈值)和LB (像素值高与较高之间的阈值); (4) 使用模糊逻辑方法(FLM-fuzzy linguistic method )来获取二值图像数据; 待处理PCB 图像的灰度直方图如图1所示图1 像素值直方图 Fig.1 Pixel value histogram背景和目标对象是直方图中的两个簇。

这里采用迭代阈值的方法来求取待检测图像的阈值。

具体过程如下[2]:1) 求出图像中的最小和最大灰度值H min 及H max ,令阈值初始值为:T0像素数 像素值Dark maxthreshold Bright max255(=12(H min +H max ) (1)(2) 根据阈值T K 将图像分割成目标和背景两部分,求出两部分的平均灰度值H 0、H b 及新的阈值T k+10kkk T <k k T kh kH h<=∑∑ (2)kkk T >k k T b kh kH h >=∑∑ (3)T k+1=1(H +H 2素个数。

(1)按(2)中0b 式中,h k 是灰度值为k 的像的算式进行迭代,直到T k+1=T k 时结束 方图上看,由此得到的阈值处在两个灰度区域重心的平均位置,从路径规划的角度看是一种最优阈值,它可以概略地将目标、背景分成两类,因而可认为t b =T k 。

但要精确地分割出背景,还必须结合其实际分布情况来考虑。

在通常情况下,目标簇和背景簇都会有一个峰值,在这里用Dark max 代表背景簇的峰值,Bright max 代表目标簇的峰值。

通过下面两个式子来计算LD 与LB 。

LD=(Dark max +Threshold)/2 (5) old)/2 (6)因此,模糊逻辑的成员函数可以获得,如图2 所示。

每一个规度范围内的像素值都会属于Dark,Light Dark,Light Bright 和Bright 四个成员之一。

图2 输入的成员函数令F(x,y)是FLM 成员函数的输F 1(x,y),F 2(x,y), F 3(x,y),F 1) (4),取结束时的T k 为分割阈值。

从直LB=(Bright max +ThreshFig.2 Memberships function of input入,F c (x,y)是3×3模板的中心像素,F 4(x,y)是这个模板的四邻域,如图3所示。

F 2F c F 4F 3图3 3×3模板的4邻域Fig.3 4-neighborhood of a 3×3 maskS(x,y)是FLM的输入的参考图像数据。

它可以是PCB设计图像数据,S(x,y)必须与F c (x,y)相互对应。

下面为FLM定义了四种环境规则。

S(x,y)必须与F c (x,y)相互对应。

1) Bright 环境 如果F 1(x,y), F 2(x,y), F 3(x,y), F 4(x,y)中有4个是Bright,或者其中有3个为Bright和1个Light Bright,则F c (x,y)为Bright2) Dark 环境:如果F 1(x,y), F 2(x,y), F 3(x,y), F 4(x,y)中有4个是Dark,或者其中有3个Dark 和1个Light Dark,则F c (x,y)为Dark (3) Light Bright 环境如果F 1(x,y), F 2(x,y), F 3(x 1,则F c (x,y)为Light Bright ,境值为Dark的个数超过1,则F c (x,y)为Light Dark数的输出是中心像素的状态,用B(x,y)来表示,它的位置也和F c (x,y)相对应,并且是二图像数据,FLM的具体描述如下:(1) If(F c (x,y) is Dark) and (S() i ck nd),then (B(x,y) is Background);(2) If(F c (x,y)is Dark) and (S(x,y) is Object)and (F 1(x,y), F 2(x,y), F 3(x,y), F 4(x,y) is Bright Environment),then B(x is bject),else(B(x,y) is Background); (3) If(F c (x,y)is Bright) and (S(x,y) is Object),then(B(x,y) is Object);(4) If(F c (x,y)isBright) and s ro nd (F 1(x,y), F 2(x,y), F 3(x,y), F 4(x,y) is Dark nd),else (B(x,y) is Object);(6) If(F c (x,y)isLight Dark) and (S(x,y) is Object) and (F 1(x,y), F 2(x,y), F 3(x,y), ht Bright Environment or Bright Environment), then (B(x,y) is )B((7) I is Object),then (B(x,y) is Object); Light Bright) and (S(x,y) is Background) and (F 1(x,y), F 2(x,y),F 3(x, is a t); 又保留了图像的细节特征,是一种有效的图像分割方法,高,否则就会影响分割效果。

4-(a )为原始的采集图像,它是c 逻辑方法的处理结果。

( (,y), F 4(x,y)中环境值为Bright的个数超过(4) Light Dark 环境如果F 1(x,y), F 2(x,y), F 3(x y), F 4(x,y)中环函值x,y s Ba grou O (,y)(S(x,y) i Backg und) a Environment),then (B(x,y) is Backgrou (5) If(F c (x,y )is Light Dark) and (S(x,y) is Background),then (B(x,y) is Background);F 4(x,y) is Lig Object ,else (x,y) is Background);f(F c (x,y)is Light Bright) and (S(x,y)(8) If(F c (x,y) is y), F 4(x,y) is Light Dark Environment or Dark Environment),then (B(x,y) B ckground),else (B(x,y) is Objec 这种模糊逻辑方法去除噪声的同时,但是它也有个缺点,就是在使用这种方法之前,待处理图像和标准图像的校准精度要以下是通过具体的实验对一幅图像进行处理的效果图,图PCB 上的一个焊盘,图4-(b )为处理过程中采用的参考图像,图4-()为采用模糊(b )参考图像(二值) (c )处理后图4 模糊推理方法进行图像分割的效果Fig.4 Results of image segmentation with fuzzy reasoning method. 基于梯度调整的矩量保持法 2.1 矩量保持法[3]其基木,2,…,(a )原始图像2思想是使阈值分割前后图像的矩保持不变。

设每个点从具有灰度值g ∈{0, 1},其中L 为灰度级总数,并用N i (i ∈{0,1, …,L -1})1L −表示第i 个灰度级在图像中出现的次数,表示灰度级i 出现的频率:P=N i /N第k 矩m k 定义为:m 0=1; L kk i m p i−=阶1i =∑ k=1,2, (7)对于二值化图像,意味着保持前3阶矩不变,即存在如下矩量保持方程组:0000110p Z p Z m += (8) 1100111p Z p Z m += (9)2200112p Z p Z m += (10)3300113p Z p Z m += (11)这里Z 0和Z 1,表示二值化后每个类别代表灰度值,p 0和p 1代表二值化后两个灰度值的分布概率,经简化后1021/2p d m −10(4)c c =(12)−其中,1320221m m m m m c −=−1232m m c m m 121m −=−21/2101[(4)]2d c c 1c =−−然后从灰度级直方图中选取阈值t 最为接近2.2 矩量保持法的梯度调整[4]进行图像分割。

这种分割方法在实际应用中,发现分割后的目标边缘细节信息有很大的丢失。

通过对算法原理及不足点的分析,可以利用图像中目标边界和相邻背景的灰度差别较大,而目标区域或背景区域内部像素间的灰度差别较小的特性,进矩量保持自动阈值法,改进后的算法的基本原理如下:首先由矩量保持法得到初始分割阈值t ,然图像进行处理,计算出图像的梯度分布。

设现行扫描点、后一行扫描点和下一列中相邻点的灰度为f(i,j),f(i+1,j)和f(i,j+1),在x,y 方向上的一阶差分定义为:p 0-分位数。

矩量保持法是根据样本估计总体的特性推导而出,是根据图像的整体信息用梯度调整来改后利用梯度算子对(,)(1,)(,)(,)(,1)(,)X yf i j f i j f i j f i j f i j f i j Δ=+−⎧⎨Δ=+− (13) ⎩梯度定义为:G=(,)(,)X y f i j i f i j j Δ+Δ (14)1/2 (15)为了简便计算,梯度模G[f(i,j)]选用如下的近似公式:G[f(i,j)]=max[其模为:22||[((,))((,))]X y G f i j f i j =Δ+Δ|(,)X f i j Δ|,|(,)y f i j Δ|] (16)根据计算出的梯度模,找出边缘像素。

相关主题