基于VIBE模型的IC元件焊点缺陷检测方法转让专利

申请号 : CN201510250926.0

文献号 : CN104867145B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 蔡念林健发叶倩梁永辉王晗凌永权

申请人 : 广东工业大学

摘要 :

本发明公开了基于VIBE模型的IC元件焊点缺陷检测方法,包括:从训练样本中获取一张IC焊点训练图片后,初始化视觉背景提取模型的模板个数和模板值,同时建立频率分布图;从训练样本中获取新的IC焊点训练图片,对视觉背景提取模型以及频率分布图进行更新;判断训练样本是否已训练完毕,若是则计算训练样本的缺陷度阈值;采集待检测IC元件焊点的图片后,结合训练好的视觉背景提取模型和频率分布图计算该图片的缺陷度;将该图片的缺陷度与训练样本的缺陷度阈值进行比对后获得IC元件焊点的检测结果。本方法检测速度快,而且准确率高,可以有效地检测出IC元件焊点的虚焊缺陷,可广泛应用于IC元件焊点缺陷检测领域中。

权利要求 :

1.基于VIBE模型的IC元件焊点缺陷检测方法,其特征在于,包括:S1、从训练样本中获取一张IC焊点训练图片后,初始化视觉背景提取模型的模板个数和模板值,同时建立频率分布图;

S2、从训练样本中获取新的IC焊点训练图片,对视觉背景提取模型以及频率分布图进行更新;

S3、判断训练样本是否已训练完毕,若是则计算训练样本的缺陷度阈值,否则返回执行步骤S2;

S4、采集待检测IC元件焊点的图片后,结合训练好的视觉背景提取模型和频率分布图计算该图片的缺陷度;

S5、将该图片的缺陷度与训练样本的缺陷度阈值进行比对后获得IC元件焊点的检测结果。

2.根据权利要求1所述的基于VIBE模型的IC元件焊点缺陷检测方法,其特征在于,所述步骤S1,包括:S11、从训练样本中获取一张IC焊点训练图片;

S12、将视觉背景提取模型的模板个数初始化为N,其中N为自然数且3

S13、针对当前训练图片的每一个像素点,在其半径为R的邻域中随机选取N个像素点的值作为该像素点的视觉背景提取模型的模板值,其中20≤R≤50;

S14、建立一个大小为H*W的矩阵并将该矩阵的所有元素值初始化为1后,将该矩阵作为频率分布图,其中H表示训练图片的高度,W表示训练图片的宽度。

3.根据权利要求2所述的基于VIBE模型的IC元件焊点缺陷检测方法,其特征在于,所述步骤S2,包括:S21、从训练样本中获取新的IC焊点训练图片后,针对该训练图片的每个像素点,判断是否满足下式,若是,则判断该像素点为背景点,否则判断该像素点为前景点:#{SR(pm(x,y))∩{p1,p2,...pn}}≥#min其中,#{.}表示集合{.}的元素个数,pm(x,y)表示位置为(x,y)的像素点,SR(pm(x,y))表示该像素点的半径为R的邻域,{p1,p2,...pn}表示该像素点的视觉背景提取模型的模板值,#min表示最小匹配个数;

S22、对该像素点进行二值化赋值,并更新视觉背景提取模型和频率分布图;

S23、遍历所有像素点后获得该训练图片的二值化图像。

4.根据权利要求3所述的基于VIBE模型的IC元件焊点缺陷检测方法,其特征在于,所述步骤S22,包括:S221、若该像素点为背景点,则将其赋值为0后执行步骤S22-1,反之将其赋值为255后执行步骤S22-2;

S22-1、以1/16的概率更新该像素点自身的视觉背景提取模型,同时以1/16的概率采用该像素点的值更新其邻近像素点的视觉背景提取模型;

S22-2、将该像素点对应位置的频率分布图的值加1,同时更新该像素点自身的视觉背景提取模型。

5.根据权利要求3所述的基于VIBE模型的IC元件焊点缺陷检测方法,其特征在于,所述步骤S3中所述计算训练样本的缺陷度阈值,其具体为:根据下式分别计算训练样本的每个训练图片的缺陷度并获取最大值作为训练样本的缺陷度阈值:上式中,Em表示训练图片的缺陷度,m表示训练样本的训练图片个数,f(x,y)表示频率分布图,b(x,y)表示训练图片的二值化图像。

6.根据权利要求2所述的基于VIBE模型的IC元件焊点缺陷检测方法,其特征在于,所述步骤S4,包括:S41、采集待检测IC元件焊点的图片后,针对该图片的每个像素点,判断是否满足下式,若是,则判断该像素点为背景点,否则判断该像素点为前景点:#{SR(pm(x,y))∩{p1,p2,...pn}}≥#min其中,#{.}表示集合{.}的元素个数,pm(x,y)表示位置为(x,y)的像素点,SR(pm(x,y))表示该像素点的半径为R的邻域,{p1,p2,...pn}表示该像素点的视觉背景提取模型的模板值,#min表示最小匹配个数;

S42、对该像素点进行二值化赋值;

S43、遍历所有像素点后获得该图片的二值化图像;

S44、根据下式计算该图片的缺陷度:

上式中,Em表示图片的缺陷度,m表示训练样本的训练图片个数,f(x,y)表示频率分布图,b(x,y)表示该图片的二值化图像。

7.根据权利要求1所述的基于VIBE模型的IC元件焊点缺陷检测方法,其特征在于,所述步骤S5,其具体为:判断该缺陷度是否大于训练样本的缺陷度阈值,若是,则判断该IC元件焊点为虚焊焊点,反之,判断该IC元件焊点为正常焊点。

8.根据权利要求3所述的基于VIBE模型的IC元件焊点缺陷检测方法,其特征在于,所述最小匹配个数的取值范围为:2≤#min≤5。

说明书 :

基于VIBE模型的IC元件焊点缺陷检测方法

技术领域

[0001] 本发明涉及数字图像处理应用领域,特别是涉及一种基于VIBE模型的IC元件焊点缺陷检测方法。

背景技术

[0002] 为了便于下文的描述,首先给出以下名词解释:
[0003] VIBE模型:Visual Background Extractor Model,视觉背景提取模型;
[0004] IC:Integrated Circuit,集成电路。
[0005] 印制电路板PCB(Printed Circuit Board)缺陷检测是自动光学检测(automatic optical inspection,AOI)应用的一个热点方向,近年来得到越来越多的关注。目前主要采用的方式是通过CCD检测PCB元件的图像后进行处理从而实现缺陷检测。实际使用中,印制电路板遇到的情况非常复杂,CCD采集到的PCB元件图像往往出现不同程度的变化和不规则现象,例如:光照强度不均匀,光照角度改变,CCD摄像头采集的图像会有一定角度的偏转,元件尺寸越来越小,PCB板内元件密度越来越大等等,这些问题使得PCB焊点缺陷检测变得相当困难。而IC元件焊点的尺寸比一般的CHIP元件焊点的尺寸要小的多,虚焊和正常焊点在图像上非常相似,这使得IC元件焊点的虚焊检测一直是缺陷检测中难以攻克的难题。
[0006] 现有的较为成熟的对IC元件焊点缺陷的检测方法大多数为基于特征的方法。这种方法将缺陷检测分为两个步骤:提取特征和分类。在提取特征阶段,选择颜色梯度,区域面积,周长,水力半径等等典型特征;在分类阶段,选择较为成熟的分类器,例如神经网络,AdaBoost,SVM等等,对提取的特征进行分类。这些方法在CHIP元件焊点取得了较好的应用效果。但是,由于IC元件焊点尺寸小,焊点密集度大,且虚焊焊点样本难以收集,使得目前的基于分类器的方法在IC元件焊点虚焊检测中难以得到良好的分类效果。另外,在线检测方法对时间要求严格,神经网络这些较为成熟的分类器计算量大,难以符合在线监测在时间上的要求。同时虽然也有人提出基于单高斯模型的像素点建模的IC元件焊点检测方法,这种方法的检测速度快,但是准确率低,无法在实际生产中应用。总的来说,目前的检测方法无法有效、准确、快速地检测出IC元件的焊点缺陷。

发明内容

[0007] 为了解决上述的技术问题,本发明的目的是提供基于VIBE模型的IC元件焊点缺陷检测方法。
[0008] 本发明解决其技术问题所采用的技术方案是:
[0009] 基于VIBE模型的IC元件焊点缺陷检测方法,包括:
[0010] S1、从训练样本中获取一张IC焊点训练图片后,初始化视觉背景提取模型的模板个数和模板值,同时建立频率分布图;
[0011] S2、从训练样本中获取新的IC焊点训练图片,对视觉背景提取模型以及频率分布图进行更新;
[0012] S3、判断训练样本是否已训练完毕,若是则计算训练样本的缺陷度阈值,否则返回执行步骤S2;
[0013] S4、采集待检测IC元件焊点的图片后,结合训练好的视觉背景提取模型和频率分布图计算该图片的缺陷度;
[0014] S5、将该图片的缺陷度与训练样本的缺陷度阈值进行比对后获得IC元件焊点的检测结果。
[0015] 进一步,所述步骤S1,包括:
[0016] S11、从训练样本中获取一张IC焊点训练图片;
[0017] S12、将视觉背景提取模型的模板个数初始化为N,其中N为自然数且3
[0018] S13、针对当前训练图片的每一个像素点,在其半径为R的邻域中随机选取N个像素点的值作为该像素点的视觉背景提取模型的模板值,其中20≤R≤50;
[0019] S14、建立一个大小为H*W的矩阵并将该矩阵的所有元素值初始化为1后,将该矩阵作为频率分布图,其中H表示训练图片的高度,W表示训练图片的宽度。
[0020] 进一步,所述步骤S2,包括:
[0021] S21、从训练样本中获取新的IC焊点训练图片后,针对该训练图片的每个像素点,判断是否满足下式,若是,则判断该像素点为背景点,否则判断该像素点为前景点:
[0022] #{SR(pm(x,y))∩{p1,p2,...pn}}≥#min
[0023] 其中,pm(x,y)表示位置为(x,y)的像素点,SR(pm(x,y))表示该像素点的半径为R的邻域,{p1,p2,...pn}表示该像素点的视觉背景提取模型的模板值,#min表示最小匹配个数;
[0024] S22、对该像素点进行二值化赋值,并更新视觉背景提取模型和频率分布图;
[0025] S23、遍历所有像素点后获得该训练图片的二值化图像。
[0026] 进一步,所述步骤S22,包括:
[0027] S221、若该像素点为背景点,则将其赋值为0后执行步骤S22-1,反之将其赋值为255后执行步骤S22-2;
[0028] S22-1、有1/16的概率更新该像素点自身的视觉背景提取模型,同时有1/16的概率采用该像素点的值更新其邻近像素点的视觉背景提取模型;
[0029] S22-2、将该像素点对应位置的频率分布图的值加1,同时更新该像素点自身的视觉背景提取模型。
[0030] 进一步,所述步骤S3中所述计算训练样本的缺陷度阈值,其具体为:
[0031] 根据下式分别计算训练样本的每个训练图片的缺陷度并获取最大值作为训练样本的缺陷度阈值:
[0032]
[0033] 上式中,Em表示训练图片的缺陷度,m表示训练样本的训练图片个数,f(x,y)表示频率分布图,b(x,y)表示训练图片的二值化图像。
[0034] 进一步,所述步骤S4,包括:
[0035] S41、采集待检测IC元件焊点的图片后,针对该图片的每个像素点,判断是否满足下式,若是,则判断该像素点为背景点,否则判断该像素点为前景点:
[0036] #{SR(pm(x,y))∩{p1,p2,...pn}}≥#min
[0037] 其中,pm(x,y)表示位置为(x,y)的像素点,SR(pm(x,y))表示该像素点的半径为R的邻域,{p1,p2,...pn}表示该像素点的视觉背景提取模型的模板值,#min表示最小匹配个数;
[0038] S42、对该像素点进行二值化赋值;
[0039] S43、遍历所有像素点后获得该图片的二值化图像;
[0040] S44、根据下式计算该图片的缺陷度:
[0041]
[0042] 上式中,Em表示图片的缺陷度,m表示训练样本的训练图片个数,f(x,y)表示频率分布图,b(x,y)表示。
[0043] 进一步,所述步骤S5,其具体为:
[0044] 判断该缺陷度是否大于训练样本的缺陷度阈值,若是,则判断该IC元件焊点为虚焊焊点,反之,判断该IC元件焊点为正常焊点。
[0045] 进一步,所述最小匹配个数的取值范围为:2≤#min≤5。
[0046] 本发明的有益效果是:本发明的基于VIBE模型的IC元件焊点缺陷检测方法,包括:从训练样本中获取一张IC焊点训练图片后,初始化视觉背景提取模型的模板个数和模板值,同时建立频率分布图;从训练样本中获取新的IC焊点训练图片,对视觉背景提取模型以及频率分布图进行更新;判断训练样本是否已训练完毕,若是则计算训练样本的缺陷度阈值;采集待检测IC元件焊点的图片后,结合训练好的视觉背景提取模型和频率分布图计算该图片的缺陷度;将该图片的缺陷度与训练样本的缺陷度阈值进行比对后获得IC元件焊点的检测结果。本方法相比现有技术,计算量大大减少,检测速度快,而且准确率高,可以有效地检测出IC元件焊点的虚焊缺陷。

附图说明

[0047] 下面结合附图和实施例对本发明作进一步说明。
[0048] 图1是本发明的基于VIBE模型的IC元件焊点缺陷检测方法的流程图。

具体实施方式

[0049] 参照图1,本发明提供了一种基于VIBE模型的IC元件焊点缺陷检测方法,包括:
[0050] S1、从训练样本中获取一张IC焊点训练图片后,初始化视觉背景提取模型的模板个数和模板值,同时建立频率分布图;
[0051] S2、从训练样本中获取新的IC焊点训练图片,对视觉背景提取模型以及频率分布图进行更新;
[0052] S3、判断训练样本是否已训练完毕,若是则计算训练样本的缺陷度阈值,否则返回执行步骤S2;
[0053] S4、采集待检测IC元件焊点的图片后,结合训练好的视觉背景提取模型和频率分布图计算该图片的缺陷度;
[0054] S5、将该图片的缺陷度与训练样本的缺陷度阈值进行比对后获得IC元件焊点的检测结果。
[0055] 进一步作为优选的实施方式,所述步骤S1,包括:
[0056] S11、从训练样本中获取一张IC焊点训练图片;
[0057] S12、将视觉背景提取模型的模板个数初始化为N,其中N为自然数且3
[0058] S13、针对当前训练图片的每一个像素点,在其半径为R的邻域中随机选取N个像素点的值作为该像素点的视觉背景提取模型的模板值,其中20≤R≤50;
[0059] S14、建立一个大小为H*W的矩阵并将该矩阵的所有元素值初始化为1后,将该矩阵作为频率分布图,其中H表示训练图片的高度,W表示训练图片的宽度。
[0060] 进一步作为优选的实施方式,所述步骤S2,包括:
[0061] S21、从训练样本中获取新的IC焊点训练图片后,针对该训练图片的每个像素点,判断是否满足下式,若是,则判断该像素点为背景点,否则判断该像素点为前景点:
[0062] #{SR(pm(x,y))∩{p1,p2,...pn}}≥#min
[0063] 其中,pm(x,y)表示位置为(x,y)的像素点,SR(pm(x,y))表示该像素点的半径为R的邻域,{p1,p2,...pn}表示该像素点的视觉背景提取模型的模板值,#min表示最小匹配个数;
[0064] S22、对该像素点进行二值化赋值,并更新视觉背景提取模型和频率分布图;
[0065] S23、遍历所有像素点后获得该训练图片的二值化图像。
[0066] 进一步作为优选的实施方式,所述步骤S22,包括:
[0067] S221、若该像素点为背景点,则将其赋值为0后执行步骤S22-1,反之将其赋值为255后执行步骤S22-2;
[0068] S22-1、有1/16的概率更新该像素点自身的视觉背景提取模型,同时有1/16的概率采用该像素点的值更新其邻近像素点的视觉背景提取模型;
[0069] S22-2、将该像素点对应位置的频率分布图的值加1,同时更新该像素点自身的视觉背景提取模型。
[0070] 进一步作为优选的实施方式,所述步骤S3中所述计算训练样本的缺陷度阈值,其具体为:
[0071] 根据下式分别计算训练样本的每个训练图片的缺陷度并获取最大值作为训练样本的缺陷度阈值:
[0072]
[0073] 上式中,Em表示训练图片的缺陷度,m表示训练样本的训练图片个数,f(x,y)表示频率分布图,b(x,y)表示训练图片的二值化图像。
[0074] 进一步作为优选的实施方式,所述步骤S4,包括:
[0075] S41、采集待检测IC元件焊点的图片后,针对该图片的每个像素点,判断是否满足下式,若是,则判断该像素点为背景点,否则判断该像素点为前景点:
[0076] #{SR(pm(x,y))∩{p1,p2,...pn}}≥#min
[0077] 其中,pm(x,y)表示位置为(x,y)的像素点,SR(pm(x,y))表示该像素点的半径为R的邻域,{p1,p2,...pn}表示该像素点的视觉背景提取模型的模板值,#min表示最小匹配个数;
[0078] S42、对该像素点进行二值化赋值;
[0079] S43、遍历所有像素点后获得该图片的二值化图像;
[0080] S44、根据下式计算该图片的缺陷度:
[0081]
[0082] 上式中,Em表示图片的缺陷度,m表示训练样本的训练图片个数,f(x,y)表示频率分布图,b(x,y)表示。
[0083] 进一步作为优选的实施方式,所述步骤S5,其具体为:
[0084] 判断该缺陷度是否大于训练样本的缺陷度阈值,若是,则判断该IC元件焊点为虚焊焊点,反之,判断该IC元件焊点为正常焊点。
[0085] 进一步作为优选的实施方式,所述最小匹配个数的取值范围为:2≤#min≤5。
[0086] 以下结合一具体实施例对本发明作进一步说明。
[0087] 参照图1,一种基于VIBE模型的IC元件焊点缺陷检测方法,包括:
[0088] S1、从训练样本中获取一张IC焊点训练图片后,初始化视觉背景提取模型的模板个数和模板值,同时建立频率分布图;本步骤具体包括步骤S11~S14:
[0089] S11、从训练样本中获取一张IC焊点训练图片;
[0090] S12、将视觉背景提取模型的模板个数初始化为N,其中N为自然数且3
[0091] S13、针对当前训练图片的每一个位置为(x,y)的像素点pm(x,y),在其半径为R的邻域SR(pm(x,y))中随机选取N个像素点的值作为该像素点的视觉背景提取模型的模板值{p1,p2,...pn},其中20≤R≤50;
[0092] S14、建立一个大小为H*W的矩阵并将该矩阵的所有元素值初始化为1后,将该矩阵作为频率分布图,其中H表示训练图片的高度,W表示训练图片的宽度。
[0093] S2、从训练样本中获取新的IC焊点训练图片,对视觉背景提取模型以及频率分布图进行更新;具体更新过程包括步骤S21~S23:
[0094] S21、从训练样本中获取新的IC焊点训练图片后,针对该训练图片的每个像素点,判断是否满足下式,若是,则判断该像素点为背景点,否则判断该像素点为前景点:
[0095] #{SR(pm(x,y))∩{p1,p2,...pn}}≥#min
[0096] 其中,pm(x,y)表示位置为(x,y)的像素点,SR(pm(x,y))表示该像素点的半径为R的邻域,{p1,p2,...pn}表示该像素点的视觉背景提取模型的模板值,#min表示最小匹配个数且取值范围为:2≤#min≤5,R的取值范围为:20≤R≤50。
[0097] S22、对该像素点进行二值化赋值,并更新视觉背景提取模型和频率分布图;更详细的,S22包括步骤S221、S22-1或者步骤S221、S22-2两种情况:
[0098] S221、若该像素点为背景点,则将其赋值为0后执行步骤S22-1,反之将其赋值为255后执行步骤S22-2;这里,根据像素点为背景点或前景点的情况,分别选择执行步骤S22-
1或者步骤S22-2;
[0099] S22-1、有1/16的概率更新该像素点自身的视觉背景提取模型,同时有1/16的概率采用该像素点的值更新其邻近像素点的视觉背景提取模型,无须更新频率分布图。有1/16的概率是指,从1到16中选定一个数字例如1,更新时,随机地在1~16之间选一个数字,如果该数字是选定的数字1,则进行更新,否则不更新。采用该像素点的值更新其邻近像素点的视觉背景提取模型是指采用该像素点的值去更新该像素点的一邻域内的某一像素点对应的视觉背景提取模型的随机一个模板值。
[0100] S22-2、将该像素点对应位置的频率分布图的值加1,同时更新该像素点自身的视觉背景提取模型。
[0101] 步骤S22-1和S22-2中更新该像素点自身的视觉背景提取模型,采用的是与步骤S13中初始化视觉背景提取模型的模板值相同的方法:对位置为(x,y)的像素点pm(x,y),在其半径为R的邻域SR(pm(x,y))中随机选取N个像素点的值作为该像素点的视觉背景提取模型的模板值{p1,p2,...pn},本发明中,R的取值范围统一为20≤R≤50,即本发明对选取的邻域大小是一致的。
[0102] S23、遍历所有像素点后获得该训练图片的二值化图像b(x,y)。
[0103] S3、判断训练样本是否已训练完毕,若是则根据下式分别计算训练样本的每个训练图片的缺陷度并获取最大值作为训练样本的缺陷度阈值,否则返回执行步骤S2:
[0104]
[0105] 上式中,Em表示训练图片的缺陷度,m表示训练样本的训练图片个数,f(x,y)表示频率分布图,b(x,y)表示训练图片的二值化图像。
[0106] S4、采集待检测IC元件焊点的图片后,结合训练好的视觉背景提取模型和频率分布图计算该图片的缺陷度;本步骤中计算图片的缺陷度与步骤S3中采用的是同样的计算公式,具体包括步骤S41~S44:
[0107] S41、采集待检测IC元件焊点的图片后,针对该图片的每个像素点,判断是否满足下式,若是,则判断该像素点为背景点,否则判断该像素点为前景点:
[0108] #{SR(pm(x,y))∩{p1,p2,...pn}}≥#min
[0109] 其中,pm(x,y)表示位置为(x,y)的像素点,SR(pm(x,y))表示该像素点的半径为R的邻域,{p1,p2,...pn}表示该像素点的视觉背景提取模型的模板值,#min表示最小匹配个数,与步骤S3中类似,最小匹配个数的取值范围为:2≤#min≤5,R的取值范围为:20≤R≤50;
[0110] S42、对该像素点进行二值化赋值;
[0111] S43、遍历所有像素点后获得该图片的二值化图像;
[0112] S44、根据下式计算该图片的缺陷度:
[0113]
[0114] 上式中,Em表示图片的缺陷度,m表示训练样本的训练图片个数,f(x,y)表示频率分布图,b(x,y)表示。
[0115] 步骤S4是对待检测IC元件焊点进行缺陷检测,因此不涉及对视觉背景提取模型和频率分布图的更新。
[0116] S5、将该图片的缺陷度与训练样本的缺陷度阈值进行比对后获得IC元件焊点的检测结果,具体为:判断该缺陷度是否大于训练样本的缺陷度阈值,若是,则判断该IC元件焊点为虚焊焊点,反之,判断该IC元件焊点为正常焊点。
[0117] 经测试,本方法对IC元件焊点的虚焊缺陷的误检率为0%,漏检率为0.90%,能够有效的保证较高的准确率,通过采用本方法可以极大提高IC元件焊点虚焊检测的准确率,而且检测速度快,可以作为解决IC元件焊点检测难题的一个方法。
[0118] 以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变型或替换均包含在本申请权利要求所限定的范围内。