DBC焊料层空洞缺陷的空洞率计算方法及装置转让专利

申请号 : CN202310966656.8

文献号 : CN116681752B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 仉曾祥侯杰仁薛永康张泞铄张一铭

申请人 : 山东墨氪智能科技有限公司

摘要 :

本发明涉及一种DBC焊料层空洞缺陷的空洞率计算方法及装置。其包括提供DBC焊料层超声波图像,对DBC焊料层超声波图像内的DBC焊料层区图像进行轮廓提取,以在轮廓提取后生成DBC焊料层分割图像;在DBC焊料层超声波图像内,搜索存在空洞缺陷的空洞区域;基于DBC焊料层超声波图像内以及所搜索的空洞区域,确定当前DBC焊料层超声波图像的空洞率,其中,所述空洞率包括整个焊料层的总空洞率。本发明可快速有效实现对DBC焊料层空洞缺陷的空洞率计算,满足工业流水线上DBC上焊料层的检测需求。

权利要求 :

1.一种DBC焊料层空洞缺陷的空洞率计算方法,其特征是,所述空洞率计算方法包括:提供DBC焊料层超声波图像,其中,在所述DBC焊料层超声波图像内,至少包括与焊料层对应的DBC焊料层区图像;

对DBC焊料层超声波图像内的DBC焊料层区图像进行轮廓提取,以在轮廓提取后生成DBC焊料层分割图像,其中,所述DBC焊料层分割图像包括DBC焊料层区以及位于所述DBC焊料层区外圈的非DBC焊料层区,所述DBC焊料层区包括DBC焊料层边缘轮廓以及位于所述DBC焊料层边缘轮廓内的焊料层;

在DBC焊料层超声波图像内,搜索存在空洞缺陷的空洞区域;

基于DBC焊料层超声波图像内以及所搜索的空洞区域,确定当前DBC焊料层超声波图像的空洞率,其中,所述空洞率包括整个焊料层的总空洞率;

对DBC焊料层区,还包括用于间隔两片相邻DBC子区的子区分界线,以利用所述子区分界线将DBC焊料层区内分隔形成若干DBC子区;

在搜索空洞区域时,确定任一空洞区域所在的DBC子区;

当前DBC焊料层超声波图像的空洞率,还包括每个DBC子区所对应焊料层的子区空洞率;

对DBC焊料层区图像进行轮廓提取生成DBC焊料层分割图像时,包括依次进行的粗筛选处理步骤以及精筛选处理步骤,其中,粗筛选处理步骤中,对DBC焊料层超声波图像进行二值化处理,并在二值化处理后进行形态学开运算,以在开运算后生成DBC焊料层分割图像;

精筛选处理步骤中,对粗筛选处理步骤得到DBC焊料层区进行处理,以在DBC焊料层区内得到用于间隔两片相邻DBC子区的子区分界线;

对粗筛选处理步骤,对DBC焊料层超声波图像进行二值化处理时,以得到DBC焊料层超声波二值化图像,对所述DBC焊料层超声波二值化图像,则有:其中,f(x,y)为DBC焊料层超声波图像内(x,y)点像素的灰度值,g(x,y)为DBC焊料层超声波二值化图像内(x,y)点像素二值化处理后的灰度值,T1、T2为基于DBC焊料层超声波图像的灰度值分布状态生成的二值化分割阈值;

对精筛选处理步骤,包括:

对DBC焊料层超声波二值化图像进行水平投影,以得到水平投影矩阵M;

对水平投影矩阵M进行梯度计算,以得到梯度矩阵N;

以步长λ遍历梯度矩阵N,若在一个步长λ内同时存在正向峰值以及负向峰值,且正向峰值的绝对值或负向峰值的绝对值均大于峰值阈值T3时,以正向峰值所在位置与负向峰值所在位置的均值作为分界线的纵坐标值,并基于所述分界线的纵坐标值生成子区分界线;

以生成的子区分界线作为边界,将DBC焊料层区分为若干mask区域,并对每个mask区域进行形态学闭运算,以得到若干位于DBC焊料层区内的DBC子区,相邻的DBC子区由子区分界线间隔;

搜索DBC焊料层内的空洞区域时,对DBC焊料层超声波图像进行动态二值化分割,以形成DBC焊料层超声波动态二值化分割图像,所述动态二值化分割包括:其中,f(x,y)为DBC焊料层超声波图像内(x,y)点像素的灰度值,g′(x,y)为DBC焊料层超声波图像内(x,y)点像素动态二值化后的灰度值,Txy为动态二值化分割阈值,a、b为动态二值化分割阈值系数,μxy以(x,y)点为中心的预设区域Sxy所包含像素集合的均值;

在DBC焊料层超声波动态二值化分割图像上,所有灰度值g′(x,y)为255所在的位置或区域为存在空洞缺陷的空洞区域。

2.根据权利要求1所述DBC焊料层空洞缺陷的空洞率计算方法,其特征是,进行形态学开运算时,所述形态学开运算的运算核包括开运算方形核,其中,所述开运算方形核的大小为12维。

3.根据权利要求1所述DBC焊料层空洞缺陷的空洞率计算方法,其特征是,对每个DBC子区进行屏蔽边界毛刺处理,其中,在进行屏蔽边界毛刺处理时,对每个DBC子区进行形态学腐蚀运算,所述形态学腐蚀运算的运算核包括腐蚀运算方形核;

所述腐蚀运算方形核的大小为3维。

4.根据权利要求1至3任一项所述DBC焊料层空洞缺陷的空洞率计算方法,其特征是,对总空洞率,则有:S=(C∩A)/A*100%

其中,S为总空洞率,C为空洞区域面积,A为DBC焊料层区的像素面积,∩为交集运算;

对子区空洞率,则有:

S′=(C′∩A′)/A′*100%

其中,S′为子区空洞率,A′为DBC子区的像素面积,C′为所述DBC子区内子区空洞区域面积,∩为交集运算。

5.一种DBC焊料层空洞缺陷的空洞率计算装置,其特征是,包括用于空洞率计算处理的空洞率计算处理器,其中,对任一DBC焊料层超声波图像,所述空洞率计算处理器采用上述权利要求1~权利要求

4中任一项所述的方法计算空洞率。

说明书 :

DBC焊料层空洞缺陷的空洞率计算方法及装置

技术领域

[0001] 本发明涉及一种空洞率计算方法及装置,尤其是一种DBC焊料层空洞缺陷的空洞率计算方法及装置。

背景技术

[0002] 超声波扫描成像是超声波显微镜利用超声波在不同介质中不同的传播特性,进而分析处理后得到的图像,超声波扫描成像可以用来检测材料的杂质颗粒、夹杂物、沉淀物,材料的空洞、气泡间隙等。
[0003] 在功率半导体器件的封装领域,经常需要用到DBC(Dircet Bonding Copper),利用DBC进行封装时,一般需要在DBC上制备焊料层,但DBC上的焊料层由于制备工艺等情况,会存在空洞等缺陷情况。
[0004] 目前,针对DBC上焊料层空洞的检测主要依靠人工观察,在人工观察时,对DBC焊料层的DBC焊料层超声波图像,手动调整至合适的二值化提取阈值,以提取出图像中空洞所在的白色区域,由于存在空洞部分较小,只有几个像素、DBC边缘存在灰色区域、DBC边缘毛刺影响手动选框等因素,依靠人眼判断的方法,存在判断标准不统一、费时费力、准确性时高时低等诸多问题,在批量生产时,需要消耗更多精力财力来完成检测任务。
[0005] 此外,目前对于DBC上焊料层缺陷的检测算法研究较少,这是由于通用的图像分割模型直接标注时,对只有几个像素的小缺陷而言标注较为困难,标注成本较高;并且常见的分割、检测模型Unet、Yolo等应用在工业流水线上时,其推理速度相比传统算法也有很大限制;再加上工业流水线的成本控制,导致对模型IOU、准确率的超高标准要求,许多深度学习模型往往效果并不尽如人意。
[0006] 综上,在工业流水线上,如何有效实现对DBC焊料层空洞缺陷下的空洞率快速有效计算,是目前急需解决的技术难题。

发明内容

[0007] 本发明的目的是克服现有技术中存在的不足,提供一种DBC焊料层空洞缺陷的空洞率计算方法及装置,其可快速有效实现对DBC焊料层空洞缺陷的空洞率计算,满足工业流水线上DBC上焊料层的检测需求。
[0008] 按照本发明提供的技术方案,一种DBC焊料层空洞缺陷的空洞率计算方法,所述空洞率计算方法包括:
[0009] 提供DBC焊料层超声波图像,其中,在所述DBC焊料层超声波图像内,至少包括与焊料层对应的DBC焊料层区图像;
[0010] 对DBC焊料层超声波图像内的DBC焊料层区图像进行轮廓提取,以在轮廓提取后生成DBC焊料层分割图像,其中,所述DBC焊料层分割图像包括DBC焊料层区以及位于所述DBC焊料层区外圈的非DBC焊料层区,所述DBC焊料层区包括DBC焊料层边缘轮廓以及位于所述DBC焊料层边缘轮廓内的焊料层;
[0011] 在DBC焊料层超声波图像内,搜索存在空洞缺陷的空洞区域;
[0012] 基于DBC焊料层超声波图像内以及所搜索的空洞区域,确定当前DBC焊料层超声波图像的空洞率,其中,所述空洞率包括整个焊料层的总空洞率。
[0013] 对DBC焊料层区,还包括用于间隔两片相邻DBC子区的子区分界线,以利用所述子区分界线将DBC焊料层区内分隔形成若干DBC子区;
[0014] 在搜索空洞区域时,确定任一空洞区域所在的DBC子区;
[0015] 当前DBC焊料层超声波图像的空洞率,还包括每个DBC子区所对应焊料层的子区空洞率。
[0016] 对DBC焊料层区图像进行轮廓提取生成DBC焊料层分割图像时,包括依次进行的粗筛选处理步骤以及精筛选处理步骤,其中,
[0017] 粗筛选处理步骤中,对DBC焊料层超声波图像进行二值化处理,并在二值化处理后进行形态学开运算,以在开运算后生成DBC焊料层分割图像;
[0018] 精筛选处理步骤中,对粗筛选处理步骤得到DBC焊料层区进行处理,以在DBC焊料层区内得到用于间隔两片相邻DBC子区的子区分界线。
[0019] 对粗筛选处理步骤,对DBC焊料层超声波图像进行二值化处理时,以得到DBC焊料层超声波二值化图像,对所述DBC焊料层超声波二值化图像,则有:
[0020] ;
[0021] 其中, 为DBC焊料层超声波图像内 点像素的灰度值, 为DBC焊料层超声波二值化图像内 点像素二值化处理后的灰度值, 、 为基于DBC焊料层超声波图像的灰度值分布状态生成的二值化分割阈值。
[0022] 进行形态学开运算时,所述形态学开运算的运算核包括开运算方形核,其中,[0023] 所述开运算方形核的大小为12维。
[0024] 对精筛选处理步骤,包括:
[0025] 对DBC焊料层超声波二值化图像进行水平投影,以得到水平投影矩阵 ;对水平投影矩阵 进行梯度计算,以得到梯度矩阵 ;
[0026] 以步长 遍历梯度矩阵 ,若在一个步长 内同时存在正向峰值以及负向峰值,且正向峰值的绝对值或负向峰值的绝对值均大于峰值阈值 时,以正向峰值所在位置与负向峰值所在位置的均值作为分界线的纵坐标值,并基于所述分界线的纵坐标值生成子区分界线;
[0027] 以生成的子区分界线作为边界,将DBC焊料层区分为若干mask区域,并对每个mask区域进行形态学闭运算,以得到若干位于DBC焊料层区内的DBC子区,相邻的DBC子区由子区分界线间隔。
[0028] 对每个DBC子区进行屏蔽边界毛刺处理,其中,
[0029] 在进行屏蔽边界毛刺处理时,对每个DBC子区进行形态学腐蚀运算,所述形态学腐蚀运算的运算核包括腐蚀运算方形核;
[0030] 所述腐蚀运算方形核的大小为3维。
[0031] 搜索DBC焊料层内的空洞区域时,对DBC焊料层超声波图像进行动态二值化分割,以形成DBC焊料层超声波动态二值化分割图像,所述动态二值化分割包括:
[0032] ;
[0033] 其中, 为DBC焊料层超声波图像内 点像素的灰度值, 为DBC焊料层超声波图像内 点像素动态二值化后的灰度值, 为动态二值化分割阈值,、为动态二值化分割阈值系数, 以 点为中心的预设区域 所包含像素集合的均值;
[0034] 在DBC焊料层超声波动态二值化分割图像上,所有灰度值 为255所在的位置或区域为存在空洞缺陷的空洞区域。
[0035] 对总空洞率,则有:
[0036] ;
[0037] 其中, 为总空洞率, 为空洞区域面积, 为DBC焊料层区的像素面积, 为交集运算;
[0038] 对子区空洞率,则有:
[0039] ;
[0040] 其中, 为子区空洞率, 为DBC子区的像素面积, 为所述DBC子区内子区空洞区域面积, 为交集运算。
[0041] 一种DBC焊料层空洞缺陷的空洞率计算装置,其特征是,包括用于空洞率计算处理的空洞率计算处理器,其中,
[0042] 对任一DBC焊料层超声波图像,所述空洞率计算处理器采用上述所述的方法计算空洞率。
[0043] 本发明的优点:通过对DBC焊料层超声波图像进行分割,得到DBC焊料层分割图像,也即可精确得到DBC焊料层区;通过对DBC焊料层超声波图像进行动态二值化分割,可实现空洞区域的搜索确定,采用动态二值化方式搜索空洞区域时,可实现最低单个像素的缺陷量化,对应实际孔洞面积约0.01 ,多种可调节可解释的参数阈值适应流水线上的复杂生产环境。基于分割得到的DBC焊料层区以及搜索得到的空洞区域,可计算总空洞率和/或子区空洞率,也即可快速有效实现对DBC焊料层空洞缺陷的空洞率计算,满足工业流水线上DBC上焊料层的检测需求。

附图说明

[0044] 图1为本发明实施例的空洞率计算的一种流程图。
[0045] 图2为本发明实施例中DBC焊料层超声波图像的一种示意图。
[0046] 图3为本发明实施例中DBC焊料层分割图像的一种示意图。
[0047] 图4为本发明实施例中DBC焊料层分割图像内包括子区分界线时的一种示意图。
[0048] 图5为本发明实施例中搜索确定空洞区域的一种示意图。
[0049] 图6为图5中所述确定空洞区域位于DBC焊料层区内的一种示意图。
[0050] 图7为本发明实施例中DBC焊料层超声波图像的灰度值直方图的一种示意图。
[0051] 图8为本发明实施例中正向梯度的一种示意图。
[0052] 图9为本发明实施例中负向梯度的一种示意图。
[0053] 附图标记说明:10、非DBC焊料层区;20、DBC焊料层区;30、子区分界线;40、空洞区域;50、DBC子区。

具体实施方式

[0054] 下面结合具体附图和实施例对本发明作进一步说明。
[0055] 为了能快速有效实现对DBC焊料层空洞缺陷的空洞率计算,满足工业流水线上DBC上焊料层的检测需求,对DBC焊料层空洞缺陷的空洞率计算方法,本发明的一种实施例中,所述空洞率计算方法包括:
[0056] 提供DBC焊料层超声波图像,其中,在所述DBC焊料层超声波图像内,至少包括与焊料层对应的DBC焊料层区图像;
[0057] 对DBC焊料层超声波图像内的DBC焊料层区图像进行轮廓提取,以在轮廓提取后生成DBC焊料层分割图像,其中,所述DBC焊料层分割图像包括DBC焊料层区20以及位于所述DBC焊料层区外圈的非DBC焊料层区10,所述DBC焊料层区20包括DBC焊料层边缘轮廓以及位于所述DBC焊料层边缘轮廓内的焊料层;
[0058] 在DBC焊料层超声波图像内,搜索存在空洞缺陷的空洞区域40;
[0059] 基于DBC焊料层超声波图像内以及所搜索的空洞区域40,确定当前DBC焊料层超声波图像的空洞率,其中,所述空洞率包括整个焊料层的总空洞率。
[0060] 图1中示出了本发明在进行空洞率计算时的一种实施例流程图,由图1可知,在进行空洞率计算时,需要先提供DBC焊料层超声波图像。
[0061] 图2中示出了DBC焊料层超声波图像的一种实施例示意,DBC焊料层超声波图像一般可通过现有常用的超声波扫描成像设备对DBC板扫描成像得到,具体获取或生成DBC焊料层超声波图像的方式以及过程可与现有相一致,以能获取所需的DBC焊料层超声波图像为准。
[0062] 对DBC板,一般包括陶瓷基板以及设置于所述陶瓷基板上的铜箔层,陶瓷基板上的铜箔层一般为多块,且多块铜箔层在陶瓷基板上邻近且对应分布,DBC板的具体情况可与现有相一致。焊料层一般涂覆或设置于铜箔层上,焊料层制备于铜箔层上的方式以及过程可与现有相一致。DBC焊料层空洞缺陷,即为制备焊料层上存在空洞缺陷。因此,对DBC焊料层超声波图像,至少包括与焊料层对应的DBC焊料层区图像,也即至少需要对陶瓷基板上焊料层所在的区域进行超声波扫描成像,此时,在DBC焊料层超声波图像内,DBC焊料层区图像与焊料层对应,具体是指DBC焊料层区至少包括全部焊料层的图像。
[0063] 一般地,DBC焊料层超声波图像内包括整个DBC板的图像,如图2所示,图2中,包括了DBC焊料层区20以及非DBC焊料层区10,DBC焊料层区20即为焊料层所覆盖的区域,非DBC焊料层区10即为不包括焊料层的区域,如陶瓷基板以及陶瓷基板上焊料层外的区域。
[0064] 对提供的DBC焊料层超声波图像,需要对DBC焊料层区进行轮廓提取,在轮廓提取后,可生成/得到DBC焊料层分割图像。由上述说明可知,DBC焊料层分割图像包括DBC焊料层区20以及位于所述DBC焊料层区外圈的非DBC焊料层区10,图3中给出了DBC焊料层分隔图像的一种实施例,由图2和图3可知,图中白色区域即为DBC焊料层区20,图中的黑色区域即为非DBC焊料层区10。
[0065] 由上述说明可知,对DBC焊料层分割图像中的DBC焊料层区20,一般包括DBC焊料层边缘轮廓,图3中,白色区域与黑色区域的交界线即为DBC焊料层边缘轮廓,当然,在DBC焊料层边缘轮廓内即为图2中焊料层所在的区域位置。
[0066] 由上述说明可知,陶瓷基板一般至少包括二个铜箔层,铜箔层在陶瓷基板邻近且相互独立。因此,对DBC焊料层区20还可以进一步处理,此时,对DBC焊料层区20,还包括用于间隔两片相邻DBC子区50的子区分界线30,以利用所述子区分界线30将DBC焊料层区20内分隔形成若干DBC子区50,如图4所示。DBC子区50即为上述提到的铜箔层所在的位置区域。
[0067] 在DBC焊料层超声波图像内,需要搜索确定存在空洞缺陷的空洞区域40。在搜索空洞区域40时,根据空洞区域40的位置,还可以确定任一空洞区域40所在的DBC子区50。因此,基于上述DBC焊料层分割图像、所搜索的空洞区域40以及空洞区域40所在的DBC子区50,确定当前DBC焊料层超声波图像的空洞率,此时,空洞率包括整个焊料层的总空洞率和/或每个DBC子区50所对应焊料层的子区空洞率。
[0068] 本发明的一种实施例中,对DBC焊料层区图像进行轮廓提取生成DBC焊料层分割图像时,包括依次进行的粗筛选处理步骤以及精筛选处理步骤,其中,
[0069] 粗筛选处理步骤中,对DBC焊料层超声波图像进行二值化处理,并在二值化处理后进行形态学开运算,以在开运算后生成DBC焊料层分割图像;
[0070] 精筛选处理步骤中,对粗筛选处理步骤得到DBC焊料层区20进行处理,以在DBC焊料层区20内得到用于间隔两片相邻DBC子区50的子区分界线30。
[0071] 具体地,通过粗筛选处理步骤以及精筛选步骤依次对DBC焊料层超声波图像进行依次处理,在粗筛选处理后,可得到DBC焊料层分割图像,在精筛选处理后,可进一步地得到子区分界线30。下面对粗筛选处理步骤以及精筛选处理步骤的过程进行具体详细说明。
[0072] 本发明的一种实施例中,对粗筛选处理步骤,对DBC焊料层超声波图像进行二值化处理时,以得到DBC焊料层超声波二值化图像,对所述DBC焊料层超声波二值化图像,则有:
[0073] ;
[0074] 其中, 为DBC焊料层超声波图像内 点像素的灰度值, 为DBC焊料层超声波二值化图像内 点像素二值化处理后的灰度值, 、 为基于DBC焊料层超声波图像的灰度值分布状态生成的二值化分割阈值。
[0075] 具体地,、 为DBC焊料层超声波图像的像素坐标系内像素点的x轴坐标、y轴坐标。对DBC焊料层超声波图像进行二值化图像时,需要先配置二值化分割阈值 以及二值化分割阈值 。在确定二值化分割阈值 以及二值化分割阈值 时,可利用直方图等形式统计DBC焊料层超声波图像内像素的灰度值分布,如图7中示出了一种灰度值分布的直方图,图7中的横坐标为灰度值,纵坐标为灰度值的像素数。根据灰度值分布直方图,可确定灰度值集中分布的区间,图7中灰度值集中分布的区间为71 118,此时,则有: ,~。
[0076] 当DBC焊料层超声波图像内像素灰度值为其他情况时,可参考上述说明,也即能得到相对应的置二值化分割阈值 以及二值化分割阈值 ,此后,可采用上述方式进行二值化处理,得到DBC焊料层超声波二值化图像。
[0077] 本发明的一种实施例中,进行形态学开运算时,所述形态学开运算的运算核包括开运算方形核,其中,
[0078] 所述开运算方形核的大小为12维。
[0079] 具体地,对DBC焊料层超声波二值化图像进行形态学开运算时,主要用于剔除边界噪声。开运算方形核的大小为12维,具体是指开运算方形核可表征为12阶的方阵,当然,开运算方形核的大小还可以取其他的维度,具体可根据需要选择。利用开运算方形核对DBC焊料层超声波二值化图像进行形态学开运算的方式以及过程可与现有相一致,此处不再赘述。
[0080] 本发明的一种实施例中,对精筛选处理步骤,包括:
[0081] 对DBC焊料层超声波二值化图像进行水平投影,以得到水平投影矩阵 ;
[0082] 对水平投影矩阵 进行梯度计算,以得到梯度矩阵 ;
[0083] 以步长 遍历梯度矩阵 ,若在一个步长 内同时存在正向峰值以及负向峰值,且正向峰值的绝对值或负向峰值的绝对值均大于峰值阈值 时,以正向峰值所在位置与负向峰值所在位置的均值作为分界线的纵坐标值,并基于所述分界线的纵坐标值生成子区分界线30;
[0084] 以生成的子区分界线30作为边界,将DBC焊料层区20分为若干mask区域,并对每个mask区域进行形态学闭运算,以得到若干位于DBC焊料层区内的DBC子区50,相邻的DBC子区50由子区分界线30间隔。
[0085] 具体地,水平投影时,具体是指经形态学开运算后的DBC焊料层超声波二值化图像进行水平投影,在水平投影后,对水平投影矩阵 ,则有: , 为形态学开运算后的DBC焊料层超声波二值化图像的灰度值,图3中即示出了DBC焊料层超声波二值化图像的一种实施例。水平投影时,即将像素坐标系内同一行所有像素的灰度值累加,则水平像素矩阵 为列向量,水平像素矩阵 的行数与DBC焊料层超声波二值化图像的行数相一致。
[0086] 对水平投影矩阵 进行梯度计算时,则有: ;因此,计算得到的梯度矩阵 也为列向量,梯度矩阵 的行数比水平投影矩阵 的行数少一行。 时,则有 , 即为梯度矩阵 内的第一个元素, 为水平投影矩阵内的第一
个元素, 为水平投影矩阵内的第二个元素,取其他值时,可参考此处的说明,从而,在确定水平投影矩阵 后,即可得到梯度矩阵 。
[0087] 步长 遍历梯度矩阵 时,具体是指对梯度矩阵 内第一个元素向最后一个元素方向遍历,正向峰值具体是指增加梯度并出现峰值,负向峰值具体是指减少梯度并出现峰值,此时,正向峰值也即在梯度矩阵 内的元素取值增大并出现峰值,负向峰值也即在梯度矩阵 内的元素取值变小并出现峰值。
[0088] 步长 可依照最小要包含正负峰值纵坐标的距离选择,如可取25,此时,初始遍历时,选取梯度矩阵 内第一个元素以及第25个元素,并判断是否存在同时存在正向峰值以及负向峰值,其余遍历的情况,依照初始遍历的情况依次进行,直至对梯度矩阵 遍历完成。
[0089] 对峰值阈值 ,具体是指在梯度矩阵 内,可依照分界线处峰值的最小绝对值卡取;并取正向峰值与负向峰值的位置的均值作为边界点的纵坐标值,此时,基于所述分界线的纵坐标值生成子区分界线30,如图4所示。
[0090] 图8和图9中示出了梯度矩阵 的两种实施例,图8、图9中横坐标为梯度矩阵 的梯度行数,纵坐标为梯度矩阵 内元素的梯度大小,也即是梯度矩阵 的取值,此时,图8和图9中示出了梯度矩阵 的行数为600的实施例。从图8和图9中梯度矩阵 内元素的取值情况,可设定峰值阈值 。具体实施时,对同一批次的DBC焊料层超声波图像,一般选用相同的峰值阈值 。
[0091] 利用子区分界线30作为边界,可将DBC焊料层区20分为若干mask区域,对所述mask区域进行形态学闭运算,以利用形态学闭运算闭合边界,此时,可得到相应的DBC子区50。在进行形态学闭运算时,形态学闭运算也采用闭运算方形核,所述闭运算方形核的大小可为21维,也即闭运算方形核为21阶的方阵。
[0092] 在得到子区分界线30以及DBC子区50后,还包括:对每个DBC子区50进行屏蔽边界毛刺处理,其中,
[0093] 在进行屏蔽边界毛刺处理时,对每个DBC子区50进行形态学腐蚀运算,所述形态学腐蚀运算的运算核包括腐蚀运算方形核;
[0094] 所述腐蚀运算方形核的大小为3维。
[0095] 由上述说明可知,腐蚀运算方形核的大小为3维,具体指腐蚀运算方形核可表征为3阶的方阵,当然,腐蚀运算方形核还可以取其他维度的大小,具体可根据需要选择。根据腐蚀运算方形核,可通过本技术领域常用的形态学腐蚀运算方式进行屏蔽边界毛刺处理,具体过程可与现有相一致,此处不再赘述。
[0096] 本发明的一种实施例中,搜索DBC焊料层内的空洞区域40时,对DBC焊料层超声波图像进行动态二值化分割,以形成DBC焊料层超声波动态二值化分割图像,所述动态二值化分割包括:
[0097] ;
[0098] 其中, 为DBC焊料层超声波图像内 点像素的灰度值, 为DBC焊料层超声波图像内 点像素动态二值化后的灰度值, 为动态二值化分割阈值,、为动态二值化分割阈值系数, 以 点为中心的预设区域 包含像素集合的均值;
[0099] 在DBC焊料层超声波动态二值化分割图像上,所有灰度值 为255所在的位置或区域为存在空洞缺陷的空洞区域40。
[0100] 在提供或获取的DBC焊料层超声波图像内,搜索存在空洞缺陷的空洞区域40,空洞缺陷、空洞区域40的具体情况可与现有相一致。本发明的一种实施例中,搜索空洞区域40采用动态二值化分割的方式。在动态二值化分割时,需要确定动态二值化分割阈值 。系数的取值范围为0.5 1.5;系数b的取值范围可为0 255。~ ~
[0101] 对预设区域 ,一般可为选择方形矩阵,而预设区域的中心为 点,预设区域的大小可根据需要选择,如可以选择51维的方形阵,也即预设区域 为51×51的像素大小区域。
[0102] 在确定动态二值化分割阈值 后,对DBC焊料层超声波图像进行动态二值化分割,形成DBC焊料层超声波动态二值化分割图像,如图5和图6所示。
[0103] 对空洞区域40,一般可为:一个灰度值 为255的像素,或多个灰度值为255的像素构成的连通区域。
[0104] DBC焊料层超声波动态二值化分割图像内,对非DBC焊料层区10内也可能会存在灰度值为255的情况,而在计算空洞率时,空洞区域40只能为在DBC焊料层区20内存在灰度值为255的情况,因此,图6中将DBC焊料层区20内灰度值为255的区域进行了绿色填充,即为空洞率计算所需的空洞区域40。
[0105] 本发明的一种实施例中,对总空洞率,则有:
[0106] ;
[0107] 其中, 为总空洞率, 为空洞区域40的像素面积, 为DBC焊料层区20的像素面积, 为交集运算;
[0108] 对子区空洞率,则有:
[0109] ;
[0110] 其中, 为子区空洞率, 为DBC子区50的像素面积, 为所述DBC子区50内子区空洞区域面积, 为交集运算。
[0111] 具体实施时,利用opencv的bitwise_and函数可求取DBC焊料层区20与空洞区域40的交集部分,也即可得到 。利用numpy中的count_nonzero函数,可快速计算交集mask图像非零的像素个数,从而得到空洞区域40的像素面积。numpy为python内常用的第三方应用工具包,numpy的具体情况与现有相一致。
[0112] 因此,在得到 以及空洞区域40的像素面积后,可利用上述公式计算得到总空洞率以及子区空洞率。
[0113] 综上,可得到DBC焊料层空洞缺陷的空洞率计算装置,本发明的一种实施例中,包括用于空洞率计算处理的空洞率计算处理器,其中,
[0114] 对任一DBC焊料层超声波图像,所述空洞率计算处理器采用上述所述的方法计算空洞率。
[0115] 具体地,空洞率计算处理器可采用现有常用的形式,如计算机等设备,具体类型可根据需要选择。空洞率计算处理器进行空洞率计算的方式以及过程可参考上述说明,此处不再赘述。
[0116] 本发明通过对DBC焊料层超声波图像进行分割,得到DBC焊料层分割图像,也即可精确得到DBC焊料层区20;通过对DBC焊料层超声波图像进行动态二值化分割,可实现空洞区域40的搜索确定,采用动态二值化方式搜索空洞区域时,可实现最低单个像素的空洞缺陷量化,对应实际空洞面积约0.01 ,多种可调节可解释的参数阈值适应流水线上的复杂生产环境。基于分割得到的DBC焊料层区20以及搜索得到的空洞区域40,可计算总空洞率和/或子区空洞率,也即可快速有效实现对DBC焊料层空洞缺陷的空洞率计算,满足工业流水线上DBC上焊料层的检测需求。
[0117] 对于DBC焊料层区20的边缘,采用上述的粗筛选处理步骤以及精筛选处理步骤,有着更高的精确到1个像素宽度的IOU(交并比,Intersection over Union)结果,对应实际宽度约1.6 ;缺陷对标实际空洞面积占比准确度可达99.95%以上,其缺陷量化效果从精确度与标准统一性角度而言均优于人工选取。