基于遗传算法的最大熵双阈值分割的芯片缺陷图像分割
Chip Defect Image Segmentation Based on Maximum Entropy Double Threshold Segmentation Based on Genetic Algorithm
摘要: 本文着重提出一种针对塑封芯片缺陷的基于遗传算法的最大熵双阈值分割算法,对芯片缺陷进行识别分割提取。塑封是指把支撑集成芯片的引线框架、集成芯片和键合引线等部分用塑封材料包裹密封起来,从而为集成芯片提供保护和隔热的功能。由于塑封为非气密性封装,故塑封工艺流程中容易产生各类缺陷,降低芯片的可靠性。对塑封完成的芯片进行质量检测可以避免缺陷芯片进入下一生产环节。传统的的图像缺陷阈值分割方法对其焊层图像缺陷分割的效果并不理想,本文结合缺陷超声图像本身的灰度高度图和自身特点进行分析后,提出基于遗传算法的最大熵双阈值分割法进行图像分割,最大熵结合了遗传算法的鲁棒性,并行性,效率高等优点,很好的对缺陷的细节进行分割,明显优于传统的算法。
Abstract: This paper focuses on proposing a genetic algorithm-based maximum entropy double-threshold segmentation algorithm for plastic-encapsulated chip defects to identify, segment and extract chip defects. Plastic encapsulation refers to wrapping and sealing the lead frame supporting the integrated chip, the integrated chip, and the bonding wire with a plastic encapsulation material, so as to provide protection and heat insulation for the integrated chip. Since the plastic packaging is a non-hermetic package, various defects are prone to occur in the plastic packaging process, which reduces the reliability of the chip. Quality inspection of plastic-encapsulated chips can prevent defective chips from entering the next production process. The traditional image defect threshold segmentation method is not ideal for its welding layer image defect segmentation. After analyzing the gray height map of the defect ultrasonic image itself and its own characteristics, a maximum entropy double threshold segmentation method based on genetic algorithm is proposed. For image segmentation, the maximum entropy combines the robustness, parallelism, and high efficiency of the genetic algorithm, and it can segment the details of the defect very well, which is obviously better than the traditional algorithm.
文章引用:李祥鹏, 秦襄培, 岑亮, 张毅恒. 基于遗传算法的最大熵双阈值分割的芯片缺陷图像分割[J]. 计算机科学与应用, 2023, 13(3): 420-432. https://doi.org/10.12677/CSA.2023.133040

1. 引言

近年来,随着塑封料性能的不断提升,塑封工艺的不断优化,塑封芯片的可靠性不断提升,越来越多地被应用在航空航天、军事通信和军事武器等领域,塑封芯片逐步替代其它封装方式成为芯片封装领域的主流。本文选定一种塑封芯片模块IGBT功率模块为实验对象,对其焊层区域缺陷图像进行缺陷的识别和处理。IGBT功率模块是由绝缘栅双极型晶体管芯片IGBT (Insulated Gate Bipolar Transistor)与续流二极管芯片FWD (Freewheeling Diode)封装组成的模块半导体器件,在目前的器件中为最有代表的产品之一 [1] 。相比于传统的功率器件,其具有很多的优点,比如效率高、可靠性强、节能等,更有一般元器件不可替代的优势,尤其是在能量转换中,在电力与控制等行业上用途极多,如变频器中的使用,在电子行业中起着引领市场、占据主导的作用,并且发挥极大的作用。IGBT模块在热阻方面经常易出现失效尤其键合线的脱落、焊料层疲劳老化最常见 [2] 。热效应集中令模块部分温度升高,使得焊料层中的缺陷不断地扩大,不断的反复,一定的时间积累之后,将会导致焊料层空洞加剧甚至模块无法正常工作 [3] 。因此对IGBT模块焊接层缺陷的识别提取具有一定的研究价值。

目前,数字图像处理技术发展迅速,其内容主要包括图像增强、复原、分割、去噪等,国内外的图像处理技术在航天、医学、工业等方面应用较多,适应性与灵活性较高,近年来已偏向于数字化与智能化方向发展。1961年,Barlow曾经提出计算机视觉多数情况下是去除一些多余的信息 [4] 。目前图像处理的主体包括增强、恢复、分割与分析的过程 [5] 。其中图像分割主要分为较直接的按照区域分割和边缘分割,区域分割根据不同的像素进行划分,边缘分割涉及边缘检测,有阈值法、Canny算子法等。刘超等人经过对Canny算法改进以后,增加了算法抗噪的能力,使得分割效果更为良好 [6] 。芯片图像缺陷的分割处理是目前图像处理的热门领域,针对不同的研究对象,很多学者也给出了不同的缺陷分割解决方案,最大类间方差法也称之为大津阈值法(Otsu法),日本著名学者Otsu首度提出。最大类间方差法是以像素到各类中心的平方距离最小为依据,由于其具有良好的适用性、有效性、准确性、便捷性等优点广泛用于各种情境 [7] 。大津阈值法不会受到外部的亮度以及对比度等的影响,基本操作为将目标和背景分开,方差最大时即为分割点,当方差小于某一特定值则合并类,Otsu法也是一种自适应阈值分割法,可根据图像的具体某一部分的特点来进行分割,其在算法上较为简单且计算也较快,较为适合目标与背景的面积差别较小时的情况,但是当目标区域的面积与非目标区域之间相差较大时,其分割效果不太理想,分割结果误差较大,因此不能更好的适用。

本文根据实际检测过程的对比测试,提出了一种基于遗传算法的最大熵双阈值分割法对IGBT模块焊层缺陷图像进行缺陷的分割提取,对IGBT模块焊层缺陷图像进行缺陷的分割。遗传算法最早在1975年由美国教授Holland提出,经生物进化中“基因遗传”和“自然选择”等原理衍生的自动优化算法 [8] 。遗传算法的核心理念来源于生物学相关知识,相似于适者生存寻求最优结果的过程,遗传算法由于自身的结构简单、扩展性强、适用度强等优点常被用于各行各业,如图像、信号等方面的问题解决。使用迭代的思想通过选择、竞争、变异等产生新的群体逐步接近于最精确的解。与其他算法不同的点在于遗传算法不是对某一个个体进行计算求解而是针对一个群体进行操作 [9] 。遗传算法中常用到的就是自然的进化模型和自适应优化概率搜索算法等。最大熵阈值分割法可分为一维、二维最大熵算法,由于二维的操作复杂、计算量大等因素,本文采用一维最大熵法。最大熵法在图像实际运用上可借鉴信息熵,选择某一特定阈值,把待分割图像分为目标与背景区域,使两区域的灰度熵值达最大。本文基于MATLAB平台,采用基于遗传算法的最大熵双阈值结合的思想进行分割处理以达到更为精确良好的缺陷的分割提取,反馈与产品检测,应用于实际生产过程。

2. 模块缺陷图像预处理

由于实验中图像采集设备对模块焊层图像的采集工作过程中易受外界环境因素影响,导致获取的焊层缺陷图像质量不佳,通常为噪声干扰,图像的噪声可能由于成像机制的过程中偶然必然的一些因素导致,即图像中出现随机的、离散的像素点 [10] 。因此运用图像的预处理方法可以基本解决图像的噪声干扰,为下一步的图像处理流程做准备。对实验对获取的缺陷图像分别进行常见的均值、中值以及高斯滤波处理后,通过对比实验结果,其中非线性滤波的中值滤波以灰度值取中值后替换中心值,在1971年J.W. Jukey提出后,应用于一维信号处理技术(时间序列分析)中,后用于二维图像信号的处理 [11] ,在保证边缘不模糊的情况下达到一定较佳的图像去噪能力,对本次实验图像噪声的去除效果最为明显,下图1为焊层缺陷图像原图,图2为中值滤波后的缺陷图像。

Figure 1. Defect image original

图1. 缺陷图像原图

Figure 2. Defect image after median filtering

图2. 中值滤波后的缺陷图像

3. 最大类间方差阈值分割法

最大类间方差法也称之为大津阈值法(Otsu法),日本著名学者Otsu首度提出。最大类间方差法是以像素到各类中心的平方距离最小为依据,由于其具有良好的适用性、有效性、准确性、便捷性等优点广泛用于各种情境。大津阈值法不会受到外部的亮度以及对比度等的影响,基本操作为将目标和背景分开,方差最大时即为分割点,当方差小于某一特定值则合并类,Otsu法也是一种自适应阈值分割法,可根据图像的具体某一部分的特点来进行分割。

被处理图像大小是M × N,灰度级为L,灰度级i的像素点数为 n i ,该点的概率为:

P i = N i M × N (1)

根据灰度划分两类阈值: C 0 = ( 0 , 1 , 2 , , t ) C 1 = ( t + 1 , t + 2 , , L 1 ) ,则 C 0 C 1 两类的分布概率分别为:

P 0 = i = 0 T P i (2)

P 1 = 1 P 0 (3)

然后再计算 C 0 C 1 两类的类内灰度均值 μ 1 μ 2 和总的灰度均值 μ ,如下所示:

μ 0 = i = 0 T i P ( i C 0 ) = i = 0 T i P i / P 0 = μ ( T ) / P 0 (4)

μ 1 = i = T + 1 L 1 i P ( i C 1 ) = i = T + 1 L 1 i P i / P 1 = μ μ 1 P 1 (5)

μ = i = 0 L 1 i P i (6)

其中:

μ ( T ) = i = 0 T i P i (7)

其次再计算图像的类间方差值:

σ B 2 = P 0 ( μ 0 μ ) 2 + P 1 ( μ 1 μ ) 2 = P 0 P 1 ( μ 0 μ 1 ) 2 (8)

最后当求得的类间方差最大时,即为最佳阈值 T o p t

T o p t = arg max [ σ B 2 ] ; 0 T l 1 (9)

大津阈值法在算法上较为简单且计算也快,较为适合目标与背景的面积差别比较小时的情况,当目标区域的面积与非目标区域值相差比较大时,则分割效果不太理想。

图3是在中值滤波后的基础上进行分割,可以看出对缺陷的分割部分结果仍有误差,不能完整明确的分割出焊层缺陷。

Figure 3. Image segmentation by maximum between-class variance

图3. 最大类间方差法分割图像

4. 基于遗传算法的最大熵双阈值图像分割

4.1. 遗传算法

遗传算法基本算子有选择、交叉、变异算子等。在选择操作过程中,常用“轮盘赌”,等同概率随机选择个体遗传下去,根据适应度占比的概率定。交叉算子将总和群体以一特定概率进行随机交叉,从而提高了搜索的能力。变异算子是指以特定概率对某些部位的基因进行替换或者改变的过程。

遗传算法主要流程有以下六步:

① 编码

基于简单又易操作的前提下,编码采用二进制编码,同时也使得交叉操作的便捷。如下所示编码参数𝑢存在关系为:

μ = μ min + a 2 n 1 ( μ max μ min ) (10)

其中 μ max μ min μ 的最大值与最小值,n为编码的长度值,a为编码之后的数值。

② 初始群体

初始群体为首先随机产生N个串结构数据,即为单个个体的染色体,这些染色体的集合组成初始种群。算法则从初始群体开始迭代。

③ 适应度值评估

适应度函数进行结果的评价,常用于遗传算法中,并且作为后续遗传到下一代的判据,因此适应度值的选取也十分关键,基本满足合理、计算方便、通用性好等条件,适应度函数有三种方法可得,不同情境可根据实际情况选择合适的适应度函数值。

④ 遗传操作

选择:

选择的过程实质是择优,每个个体适应度的不同择优步入下一代,优胜劣汰的过程,选择的计算公式如下所示:

P i = f i k = 1 n f k (11)

其中 P i 为选择概率, f i 为某一个体 的适应度函数。

交叉:

交叉操作是产生更优解的必要过程,交叉算子有均匀交叉、单点交叉、多点交叉等,计算后进行交叉操作,交叉概率Pc取0.4~0.99。交叉运算后随机产生可有父代特点的子代。通过交叉算子对两个染色体的部分基因进行交换产生新个体。

变异:

变异是以很小的变异概率Pm (通常取0.001~0.01)对串结构基因中的值进行改变,利用变异算子产生新的个体。变异算子可使得整个遗传算法更加强大以及增加了其多样性。

⑤ 终止

遗传算法在进行搜索时,一般为遗传代数达到最大时或者达到要求的偏差时再或者算法搜索循环中不能出现更优的结果时终止。最后所得结果不理想,则改变初始条件再重新启动算法。

遗传算法的流程图如下图4

Figure 4. Genetic algorithm flowchart

图4. 遗传算法流程图

4.2. 最大熵阈值分割

本文采用一维最大熵法。最大熵法在图像实际运用上可借鉴信息熵,选择某一特定阈值,把待分割图像分为目标与背景区域,使两区域的灰度熵值达最大。 P i 是灰度i出现的概率,对于总像素值为N × N的图像,L为总的灰度,则有:

P i = n i N × N i = 1 , 2 , , L (12)

灰度直方图如下图5所示。

Figure 5. Image grayscale histogram

图5. 图像灰度直方图

设分割的阈值为t,低于t像素的点目标区域为A区域,高于t像素点的背景区域为B区域,则A

区域的分布为: P i / P t i = 1 , 2 , , t ,B区域的分布为: P i / ( 1 P t ) i = t + 1 , t + 2 , , L ,其中 P t = i = 1 t P i

目标区域A,背景区域B的熵为:

H A ( t ) = i ( P i / P t ) lg ( P i / P t ) i = 1 , 2 , , t (13)

H B ( t ) = i [ P i / ( 1 P t ) ] lg [ P i / ( 1 P t ) ] i = t + 1 , t + 2 , , L (14)

则熵函数定义为:

φ ( t ) = H A + H B = lg P i ( 1 P t ) + H t P t + H L H t 1 P t (15)

H t = i P i lg P i i = 1 , 2 , , t (16)

H L = I P i lg P i i = 1 , 2 , , L (17)

熵函数达最大值时为最佳阈值:

t * = arg max { φ ( t ) } (18)

4.3. 遗传算法的最大熵双阈值分割

从IGBT焊层缺陷的超声扫描原图中可看出待提取目标缺陷为灰度值较高的区域,但是其边缘部分灰度值的分界线不够精确,且部分缺陷在IGBT焊层内部线路附近,会由于阈值取的过高或过低,使得分割缺陷的边缘不够准确,如若阈值取得过高,会导致待测缺陷边界变小,甚至与原本的目测识别的区域相差较多,如若阈值取得偏低,会导致IGBT模块焊层内的线路被误识别,传统的阈值分割法,如大津阈值分割法就不适用于这种情况,如下图6所示为所示为灰度高度图,根据其灰度高度图,由于传统的最大熵阈值分割法有复杂度较高、计算多阈值的时间会大大加长,对分割的目标区域结果不精确等,所以本文拟采用基于遗传算法的最大熵双阈值结合的思想进行处理,以提高待测缺陷边缘精度。

Figure 6. Image grayscale heightmap

图6. 图像灰度高度图

一维最大熵法中分单阈值和多阈值分割,单阈值前文已详细阐述,下面为多阈值分割:

φ ( T 1 , T 2 , , T n ) = ln ( i = 1 T 1 P i ) + ln ( i = T 1 + 1 T 2 P i ) + + ln ( i = T n + 1 N P i ) i = 1 T 1 P i ln P i / i = 1 T 1 P 1 i = T n + 1 N P i ln P i / i = T n + 1 N P i (19)

其中 T 1 , T 2 , , T n 是分割阈值,且 T 1 < T 2 < < T n 。当 T i 为使得 φ ( T 1 , T 2 , , T n ) 最大时,即为一组分割阈值。

φ ( T 1 , T 2 ) = ln ( i = 1 T 1 P i ) + ln ( i = T 1 + 1 T 2 P i ) + ln ( i = T 2 + 1 N P i ) i = 1 T 1 P i ln P i / i = 1 T 1 P i i = T 1 + 1 T 2 P i ln P i / i = T 1 + 1 T 2 P i i = T 2 + 1 N P i ln P i / i = T 2 + 1 N P i (20)

因为单阈值适合单峰,因此本文中采用二阈值分割,为 T 1 < T 2 ,使得 φ ( T 1 , T 2 ) 最大,此时对应的灰度值 T 1 , T 2 即为所求阈值。缺陷图像的灰度图像,分割阈值为0~255之间,采用16位的二进制编码。

基于遗传算法的最大熵阈值分割法流程如下:

① 设定遗传参数。一开始的数值随机产生后进行搜索,编码操作之后作为初始种群 P ( 0 ) ,由适应度函数得出适应度值。

② 依据 P ( t ) 的串复制 P ( t + 1 ) 的串,依据交叉概率和变异概率计算出最终结果。

③ 计算 P ( t + 1 ) 串的 φ 数值,如若还未达到终止条件则继续循环进行步骤②,到达则进行下一步操作。

φ 数值最高的串对应的 T i 为最佳阈值。

⑤ 从 T i 进行阈值分割。

采用采用轮盘赌(蒙特卡罗法)的形式开始,双阈值为二点交叉,交叉操作者则根据交叉概率进行,最后终止为最高 经过15代之后仍然未进化即可。

求得最优解的实现过程为:

① 编码。图像灰度值为0~255,使用16位的二进制编码。

② 种群大小。一般默认取值为20,初始种群的产生为随机的在0~255间以同等概率产生n个个体。

③ 解码。对二进制数组解码为0~255间的值,求出适应度值。

④ 适应度函数。适应度函数会对整个算法的效率以及性能产生很大的影响,应该由具体情况而定,适应度值(熵 值)大,则更加接近最优解。

⑤ 选择。首先使用轮赌法,计算适应度总和S,随机产生0~S之间的随机数k,最后逐渐累加大于𝑘后,此数为选择的数,如此重复完成选择操作。

⑥ 交叉。根据交叉概率实施交叉操作,交叉概率高,交叉操作的次数就越多,交叉概率越低收敛的速度也就更快,本文中交叉的概率的值定为0.8。

⑦ 变异。对选出的个体进行变异,以增加其多样性,通过变异概率计算后得出结果。一般使用的是基本的变异算子,本文中的变异概率值定为0.03。

⑧ 终止准则。当进行到可实现终止步骤(达到终止条件)进化时,同时准备输出的结果已然稳定不变(实现稳定条件),则程序进行终止,输出最高适应度值的个体,得分割阈值。

综上,本文中的部分参数设置为:分割代数每代取20个,最大迭代代数为100,交叉的概率为0.8,变异的概率为0.03,终止准则为两代个体平均的适应度值小于0.03时停止操作。

由于IGBT焊层原图的外围部分与目标区域的灰度值相近,且外围部分不存在目标区域,因此将外围部分去掉后,有利于缺陷的提取操作,基于遗传算法的最大熵双阈值分割前后结果如下图7图8所示。

Figure 7. Original defect image before segmentation

图7. 分割前缺陷图像原图

Figure 8. Defect image after dual threshold segmentation

图8. 双阈值分割后的缺陷图像

双阈值分割的阈值分别为63与170,算法搜索时间为0.369 s,从阈值分割后的图与分割前的原图对比后,可发现分割效果较好,并且相对于其他传统算法效果也十分显著。

从超声扫描的同组实验原图中可知图像的边缘处的四个定位孔处不为缺陷,通过其他同组实验图像的对比可进行排除,可判断此处的假缺陷由超声扫描实验过程中的误差导致,因此这部分不属于需要统计的区域,通过霍夫变换检测后进行去除四个定位圆孔之后,再对分割后的图像进行去小面积,同样这些小面积可能由于实验过程中的噪声出现造成,属于无需统计的区域,经过上述操作处理之后,最终的缺陷的二值图像如下图9所示。

Figure 9. The final defect segmented image

图9. 最终缺陷分割图像

5. 缺陷分割结果与分析与特征计算

1) 连通区域计算

将检测出的缺陷进行标记,以便醒目的观察到缺陷。标记之前需计算缺陷区域的连通性,有四连通和八连通区域法,如下图10所示。

Figure 10. Schematic diagram of the connected area

图10. 连通区域示意图

连通区域是目标像素点邻域内与其像素值相同的则构成连通区域,首先将目标图像转化为二值图像,本文采用八连通区域,后直接使用matlab中连通区域标记函数bwlabel进行计算。

2) 缺陷面积

面积用来衡量缺陷面积大小的参数,在特征统计中经常用到,首先将缺陷区域的像素点R进行叠加,然后计算总缺陷像素值占比总的像素值S1的比例,然后再与总的面积值S相乘,则可计算出缺陷的面积:

A = ( 1 S 1 × ( x , y ) R 1 ) × S (21)

3) 缺陷周长

周长也同样为描述图像中的基本参数之一,计算方法为首先算出缺陷部分R边缘像素点B个数的叠加数值,然后算出其所占轮廓总像素点D1的比值,最后乘以实际的周长D,得以算出缺陷的周长:

C = ( 1 D 1 ( x , y ) B 1 ) × D (22)

4) 缺陷圆形度

圆形度在图像处理中用来描述缺陷是否接近圆的程度,由上文计算出缺陷的面积A以及周长C,因此圆形度的计算公式如下:

F = 4 π A C 2 (23)

当缺陷区域越靠近圆时,则圆形度值越接近1,否则,缺陷区域越不靠近圆的形状。

5) 缺陷长径比

长径比为缺陷区域的长度 L S 与直径 L 2 的比值:

H = L S L 2 (24)

6) 缺陷质心坐标

由于IGBT焊层缺陷位置会对芯片的散热造成一定的影响,尤其是边角处的缺陷,因此测量缺陷相对位置成为衡量IGBT模块的热可靠性的一项参数,同时也将确定缺陷的具体位置后进行标记。先对缺陷区域进行一定的计算后,便可计算质心相对坐标,再与图像总的像素点D作商,最后与图像的实际周长D1相乘即可得到缺陷的质心坐标:

x C = ( 1 D × 1 ( x , y ) R 1 × ( x , y ) R x ) × D 1 (25)

y c = ( 1 D × 1 ( x , y ) R 1 × ( x , y ) R y ) × D 1 (26)

对缺陷位置进行标记,标记的结果如下图11所示。

Figure 11. Defect marker map

图11. 缺陷标记图

将缺陷特征计算后统计为如下表1所示。

Table 1. Defect characteristic parameters

表1. 缺陷特征参数

根据图11中的标记号数,具体的参数值如下表2所示,其中数值均为像素值的大小。

Table 2. Mark the specific parameters of the defect

表2. 标记缺陷具体参数

6. 结语

本文基于MATLAB对IGBT焊层缺陷超声图像进行阈值分割后缺陷提取以及缺陷特征的计算。提出基于遗传算法的最大熵双阈值分割法进行图像分割,最大熵结合了遗传算法的鲁棒性,并行性,效率高等优点,很好的对缺陷的细节进行分割,对比最大类间方差阈值分割法效果更优。缺陷提取后对缺陷的各种特征进行计算,对实际生产检测过程有一定积极意义。

NOTES

*通讯作者。

参考文献

[1] Shenai, K. (2015) The Invention and Demonstration of the IGBT [A Look Back]. IEEE Power Electronics Magazine, 2, 12-16.
https://doi.org/10.1109/MPEL.2015.2421751
[2] Wu, W.C., Held, M. and Scacco, P.J.P. (1995) Al-lesandro Birolini Investigation on the Long Term Reliability of Power IGBT Modules. Proceedings of International Symposium on Power Semiconductor Devices and IC’s: ISPSD’95, Yokohama, 23-25 May 1995, 443-448.
[3] 郭祥辉. 电子封装结构超声显微检测与热疲劳损伤评估[D]: [博士学位论文]. 北京: 北京理工大学, 2015.
[4] Barlow, H.B. (1961) The Coding of Sensory Messages. Current Problems in Animal Behaviors. Cambridge University Press, Cambridge, 331-360.
[5] 杨宏伟. 数字图像处理技术及其应用[J]. 电脑迷, 2018(25): 64.
[6] Anda, J.C.D., Wang, X.Z. and Roberts, K.J. (2005) Multi-Scale Segmentate-on Image Analysis for the Inprocess Monitoring of Particle Shape with Batch Crystallisers. Chemical Engineering Science, 60, 1053-1065.
https://doi.org/10.1016/j.ces.2004.09.068
[7] 范九伦. 灰度图像阈值分割法[M]. 北京: 科学出版社, 2019: 22.
[8] 郭肇禄. 一种基于自适应迁移策略的并行遗传算法[D]: [硕士学位论文]. 赣州: 江西理工大学, 2009.
[9] 曹倩, 邵举平, 孙延安. 基于改进遗传算法的生鲜农产品多目标配送优化[J]. 工业工程, 2015, 18(1): 71-76.
[10] 张涛, 齐永奇. MATLAB图像处理编程与应用[M]. 北京: 机械工业出版社, 2014: 160.
[11] 李新胜. 数字图像处理与分析[M]. 第2版. 北京: 清华大学出版社, 2018: 97.