APP下载

一种基于视频图像的芯片封装质量分析方法

2022-07-29杨盼盼陈庆奎

智能计算机与应用 2022年8期
关键词:灰度阈值芯片

杨盼盼,陈庆奎

(上海理工大学 光电信息与计算机工程学院,上海 200093)

0 引言

随着信息化技术的发展,电子设备逐渐成为日常必需品,因而对电子系统微型化、集成化的要求也越来越高。芯片作为电子产品基础性的重要组成部分,在生产过程中要经历数十道工序,生产完成后需装入物料带并塑封,保护芯片内部及引脚部分,封装后的芯片也更便于运输。为了改善元器件封装效率,一般通过改善封装的结构和方法来优化封装设备。

集成电路芯片封装完成后,对其进行质量分析是芯片生产流程中一个重要的环节。传统的人工检测主观性较强,耗费人力物力,长时间的检测工作还会产生视觉疲劳,进而导致检测正确率下降。

本文提出了一种基于视频图像的芯片封装质量分析方法,将深度学习YOLOv3 算法结合图像处理技术应用于芯片封装质量的检测。在原有的车间传送带正上方安装CCD 工业相机,获取封装后的物料条视频图像,通过目标检测YOLOv3 算法进行芯片目标定位,并分割单张芯片图像。对获取到的单芯片图像进行缺陷分类判定,采用Harris 算子结合尺度不变特征变换(Scale-Invariant Feature Transform,SIFT)特征描述方法,进行模板图像与各类缺陷图像的匹配,并对匹配点采用特征聚类方法剔除误配点,提高匹配准确率,实现对各类缺陷残次品(Not Good,NG)的判定。实验证明,本文方法不受主观因素的影响,且可以量化评估最终的检测结果。

1 相关工作

针对元器件封装品质分析的系统主要是将计算机视觉与元器件表面检测技术相结合。自动化机器视觉检查可以减少人工工作量和劳动力成本,并提高检测精度。文献[1]提出一种基于数字图像处理的印刷电路板(Printed Circuit Board,PCB)自动光学检测方法,建立了将标准图像和待测图像进行对比的检测系统,该方法对于光照及芯片摆放位置要求极高,易造成误判。文献[2]提出了一种基于数学形态学的PCB 自动缺陷检测算法,以图像腐蚀后的边缘距离信息为参照,对比轮廓特征后进行缺陷识别。文献[3]提出了基于梯度方向信息熵的PCB 缺陷检测方法,使用领域梯度方向信息熵提取缺陷特征,构造特征向量,作为SVM 分类器的训练样本,能够对PCB 裸板存在的常见缺陷进行快速、精确的定位。文献[4]提出了基于标注框的宽高聚类生成候选框的Faster R-CNN 的零件表面缺陷检测算法,并引入多级感兴趣区域(Region of Interest,RoI)池化层结构以提高检测准确性。由于在真实的工业环境中能提供的缺陷样本太少,无法进行大量数据支撑的训练,所以将深度学习方法直接应用在表面缺陷检测中的研究,迄今为止也仍不多见。

图像匹配是指使用有效的匹配算法为2 个或多个图像数据找到相同或相似的提示点的过程。目前主流的图像匹配算法有基于灰度和基于特征两种。其中,基于灰度的图像匹配算法正确率较高,但是计算量巨大,导致匹配效率低下;基于特征的匹配是从原始图像的灰度信息提取特征,在特征空间进行匹配,特征携带的有用信息比灰度值更丰富,易于适应复杂的图像变换,例如几何畸变、不同分辨率、不同角度的图像变换等。因此,基于特征的匹配算法速度更快,检测效果也更加准确。Harris 等人提出了Harris 角点检测算法,该算法具有一定的旋转不变性,对光照与噪声也有一定的鲁棒性,但Harris 算法却不具备尺度不变性。Lowe于2004 年提出SIFT 算法,是设计改进后的关键点匹配算法,虽然SIFT 耗时比较长,但无论从种类数量、还是整体质量来看,SIFT 的性能都是最好的,即使少数的几个物体也可以产生大量的SIFT 特征向量。因此本文将Harris 算子与SIFT 算法结合,实现图像关键特征的描述及匹配,较好地解决了Harris 算子的分类准确性低和SIFT 算法耗时长等问题。

2 芯片封装质量分析方法

芯片封装后需要对物料条进行质量分析,常见的质量问题主要有塑封不严密、芯片缺件、芯片歪斜、芯片反置以及芯片正面的logo 印刷错漏等情况。

本文研究的芯片封装质量分析系统包括3 个模块:图像采集模块、芯片定位模块和缺陷检测模块。芯片封装质量分析过程示意如图1 所示。

图1 芯片封装质量分析过程示意图Fig.1 Diagram of chip packaging quality analysis process

2.1 图像采集模块

使用工业CCD 相机采集图像,将图像传感器接收到的光学图像转化为计算机能够处理的电信号。将物料条放置在生产线的传送带卡槽内固定,防止其由于运动惯性发生位置偏移;传送带定速将物料条传送至工业相机光源下,相机以固定时间间隔自动拍照。

CCD 相机采集到的视频图像传入系统,存储结构包括芯片生产型号、物料条图像的编号、三通道图像、图像采集时间、图像高度所占像素以及图像宽度所占像素。

2.2 芯片定位模块

相机采集图像后传入系统,使用训练好的YOLOv3 算法检测目标芯片,根据检测结果返回的坐标信息计算检测框间距,判定缺件缺陷并沿检测框剪裁成单芯片图像。

深度学习算法YOLOv3(You Only Look Once)是一种一阶段算法,将检测过程看作回归问题求解,舍弃了显示候选框生成的步骤,对输入图像提取特征后可以迅速预测出目标所属类别和所在位置,检测速度快,能满足工业生产过程中对于缺陷实时检测的需求。YOLOv3 的骨干网络Darknet-53 分别抽取到了下采样32 倍、16 倍和8 倍的特征,可以实现对不同大小尺度的目标检测,采用多尺度融合的方法进行局部特征交互,对主干网络提取到的3 个不同尺度的特征图、和进行融合预测。不同尺度的特征图是把输入图像划分成不同数量的单元格,数量越多、越容易检测小目标物体。分析可知,52×52×255 特征图既拥有深层网络的语义抽象特征,又充分利用了浅层网络的细粒度像素级别的边缘、转角和结构信息的底层特征。YOLOv3 聚类了9个先验框,每个尺度的特征图分配到3 个不同尺寸的先验框,见表1。

表1 YOLOv3 特征图信息Tab.1 Feature map information of YOLOv3

本文借鉴迁移学习思想,采用了在ImageNet 上预训练好的模型参数darknet53.conv.74,在此基础上继续训练。数据增强方法主要选取了旋转、平移、缩放及水平翻转,增加训练集样本数量,提高模型的泛化能力,避免出现过拟合现象。

模型检测目标芯片后,返回所属类别、置信度得分及边界框坐标信息。检测框坐标集合为b={[,,,],[,,,],……,[xywh]},其中为检测出的芯片编号,(x y)表示第个边界框的左上角坐标,(wh)表示第个边界框的宽、高。将b按照x坐标连续递增排序并重新标号,可进一步定位芯片。本实验采用的芯片规格唯一,正常封装的物料条中芯片间距固定,而有缺件缺陷的物料条会出现一段较长的间距。计算两相邻边界框坐标的间距,即为相邻芯片间距,缺件缺陷芯片间距如图2 所示,推导出的定义式可写为:

图2 缺件缺陷芯片间距图Fig.2 Missing parts defect chip spacing diagram

其中,(x y)表示第个边界框左上角的横、纵坐标,若d大于最大预设间距阈值,则可判定第块芯片与第1 块芯片中出现了缺件缺陷。

2.3 缺陷检测模块

缺陷检测模块使用图像分割算法、即大津法(Otsu)分区域提取出引脚部分,将二值图中图像的4个边缘点使用最小二乘法拟合直线,进行芯片歪斜判定;研究又通过改进的Harris-SIFT 算法模板匹配,根据匹配特征点对分布的区域及匹配点对占比进行缺陷分类判定,并对芯片反置、印刷模糊和塑封不严密缺陷进行识别,被判定为合格品或各类缺陷品。

2.3.1 图像预处理

研究对象示例为SOIC(Small Outline IC),即小外形IC 封装,统一规格为7 mm×6.5 mm。受传感器材料属性、拍摄光照角度等因素的影响,工业现场采集的芯片图像通常包含噪声,系统收到图像数据后先要进行预处理,对得到的元器件图像进行光源修正、图像去噪等。

采用直方图均衡化方式处理采集到的一些过暗和过亮的图像,丰富图像的细节,增强图像的质量,以减小由于光源反射而产生的明亮区域的影响,如图3 所示。

图3 直方图均衡化处理Fig.3 Histogram equalization processing

2.3.2 图像分割方法

图像分割是对图像进一步分析、识别的前提,而阈值的选择则是该方法中的核心任务,动态阈值分割算法适用于检测目标前景与背景具有较好区分度的情况。本文采用Otsu 分割算法,操作简单且分割效果良好,类间方差定义如式(2)所示:

其中,() 表示阈值为时目标前景像素点数占整幅图像的比例,前景平均灰度值为() ;() 表示阈值为时背景像素点数占整幅图像的比例,背景平均灰度值为() ;μ为整体图像的灰度均值。最佳的阈值为类间方差() 达到最大值时对应的灰度值。

使用Otsu 算法对图像进行动态阈值分割时,部分区域因光线等因素影响,呈现出与芯片引脚区域相近的颜色,这会影响图像动态阈值的计算结果,导致无法直接通过二值化处理得到完整的引脚区域。由于芯片光照不均匀,导致某些引脚区域与正常引脚颜色存在差异,因此就对引脚和芯片主体区域进行划分,对仅包含引脚的区域进行分析,以减小芯片主体对提取过程的影响。对引脚区域分块,每个分块内利用Otsu 算法计算动态阈值,提取受光照因素影响的引脚。分区域后的Otsu 算法的流程步骤详述如下。

单芯片图像编号,单芯片三通道图像,单芯片在原物料条的坐标位置信息,单芯片图像高度,单芯片图像宽度,引脚数目,芯片主体区域与引脚区域所占宽度比例系数

分割后的芯片引脚二值图像

1.将图像三通道图像转化成灰度图。

3.考虑到图像截取像素差异,将左引脚区域和右引脚区域分别横向均分1 等份,得到左、右引脚分块区域集合。

4.按序号逐次遍历各区域及各区域每个像素点,如果像素点位于图像边缘区域,则将该点像素值融合为该点在原图周围3×3 区域内像素灰度平均值。

5.按序号逐次遍历各区域,分别统计各区域内的灰度直方图并归一化,求得各区域内的平均灰度值,测试多个阈值求出各区域最佳分割阈值,根据不同区域的最佳阈值进行图像二值化分割,更新左、右引脚分块区域集合。

6.将左、右引脚分块区域集合中各区域按序号重新拼接写入左、右引脚。

7.将左、右引脚区域拼接,生成分割后的芯片引脚二值图像并返回。

分割出来的引脚部分可能会由于光照等问题出现截断等现象,可将引脚图像中噪声进行形态学操作。闭运算可以去除前景噪声,并填充原有闭合图像中的空洞。对图像进行闭运算,即先使用膨胀操作,将邻近分散的引脚点连通,有效解决引脚截断的问题;对膨胀过的图像加以腐蚀处理,将芯片内部多余噪声部分腐蚀。闭运算可以去除前景噪声,并填充原有闭合图像中的空洞。闭运算操作效果如图4所示。

图4 闭运算操作效果图Fig.4 Closing operation effect diagram

分割出引脚部分后,可以通过引脚的倾斜角度判断物料条是否出现芯片歪斜缺陷。以分割出的引脚图像4 个边缘点为角点,使用最小二乘法分别拟合4 条直线,组成一个四边形作为引脚图像边缘的最小外接矩,使用中心法确定图像的几何中心位置。假设图像左上角起始坐标为(0,0),右下角坐标为(,),可得中心点坐标(,)的运算公式具体如下:

其中,、分别为图像像素的行数和列数,(,)为图像在点(,)处的灰度值。

角度参数计算如图5 所示。以中心坐标点为原点作延长线,与最小二乘法得出的拟合直线边界交点记为(0,0),以作为原点建立相对直角坐标系,记角点的坐标为(,),其中芯片偏斜角度可由式(5)得出:

图5 角度参数计算图Fig.5 Angle parameters calculation diagram

2.3.3 Harris-SIFT 图像匹配

SIFT 算法耗时主要集中于特征点检测与特征点描述部分,特征点检测时需要多次用到高斯模糊,运算量较大。故本文提出使用Harris 算子在大尺度空间检测角点后映射到小尺度空间,建立SIFT 特征描述子;在匹配点对校正部分,采用角点集类别向量聚类算法进行图像的精确匹配,以剔除错误的匹配点。Harris-SIFT 图像匹配算法过程示意如图6所示。这里,对Harris-SIFT 算法中各主要步骤拟展开阐释分述如下。

图6 Harris-SIFT 算法过程示意图Fig.6 Harris-SIFT algorithm process diagram

(1)检测图像角点。Harris 算法通过计算点的一阶曲率及梯度检测角点,相比SIFT 算法无需构建DoG(Difference of Gaussian)金字塔,故检测速度更快。Harris 角点检测类通过建立小的窗口对对象进行扫描,其对应角点响应函数的运算公式可写为:

其中,为的行列式;为的迹;,是自相关矩阵的2 个特征值;为常量,一般取值为0.04~0.06。

(2)确定角点特征向量。特征点检测完成,生成角点集,使用SIFT 算法为每一个角点分配可以反映角点特征的梯度幅值(,) 和方向(,),研究推得的数学公式见如下:

其中,表示特征点所在尺度空间,由高斯函数与原图像卷积得到。

(3)生成SIFT 特征描述向量。为了确保特征点具有旋转不变性,以关键点主方向为中心旋转,求取16 个4×4 窗口内每个种子点的8 个梯度方向,如此每个特征点就生成一个128 维的SIFT 特征向量,为了消除光照变化的干扰,对其做归一化处理。

(4)特征点匹配。使用K-近邻算法(一般取值为2)求取欧氏距离最近邻和次近邻。当该点的最近邻距离与次近邻距离的比值小于(本文取为0.8)时,被认为是匹配点。

在匹配的点对中,具有最大相似性的点对不一定是正确配对的,一般针对匹配后的点对使用随机采样一致性(RANSAC)算法计算一组局内点的单应矩阵,根据该单应矩阵计算映射误差,根据误差阈值重新迭代计算局内点集合,找到最优局内点集合后,局外点被判断为误配点。但RANSAC 算法迭代次数没有上限,需要人为定义阈值,存在很大的随机性,无法达到最优,且当提取的特征点数量较多时,该算法的计算量会有显著增大,匹配效率较低。故使用K-means 聚类算法修正匹配点的算法研发步骤详见如下。

单芯片图像编号,单芯片三通道图像,单芯片在原物料条的坐标位置信息,单芯片图像宽高,初始匹配点对集合,聚类初始中心点个数

修正后的匹配点对集合

1.For1 →:

得到特征一:匹配点对之间的欧氏距离d

得到特征二:匹配点对之间连线与水平面夹角θ

dθ加入类别向量集合。

2.对类别向量集合进行K-means 聚类,设置聚类的个数为2,生成2 个聚类中心点,计算所有类别向量F到聚类中心点的距离;更新中心点,迭代聚类;当中心点变化满足收敛要求时停止迭代。

3.由于正确匹配点对集中,故点对数目最多的类别为正确匹配点对,将另一匹配有误的类别中的点对从初始匹配点对集合中剔除,得到修正后的匹配点对集合。

3 实验结果及分析

3.1 实验环境与数据准备

本实验硬件环境为:Intel(R)Core(TM)i5-2450 M CPU@2.50 GHz 的处理器,8 GB 内存,4 GB显存,操作系统Windows10 64 位。开发环境为:Python3.8+TensorFlow2.4.0、OpenCV4.4 图像处理库和YOLOv3 目标检测框架,使用CUDA10.1 和CUDNN10.1 加速运算。

深度学习算法依赖于图像标注,故前期的主要工作是对包含不同数量黑色芯片块的PCB 板进行人工标注和训练。分别从网络和工厂车间获取到1 000张PCB 板样本图像,随机对样本图像进行90°、180°和270°旋转,数据增强后获得3 000 张训练图像,平均每张图像中有7 个芯片样本。被标记好的样本图像会生成对应的.xml 文件,该文件主要存放数据集标签信息。训练集、测试集和验证集按3 ∶1 ∶1 划分,使用YOLOv3 迁移学习进行芯片的目标检测算法训练,训练后的图像简化了芯片复杂的背景信息,以便于对芯片封装质量进行下一步的分析。

在实验室环境下进行仿真实验。将带有缺陷的物料条固定放置于传送带上,传送至工业相机光源下,相机以40 fps 帧率录制视频并进行质量分析。分别选择正常芯片、芯片缺失、塑封不严密、芯片歪斜、芯片反置以及芯片正面印刷的logo 错漏缺陷图像各200 张进行实验验证。缺陷认定取芯片偏斜角度阈值为10°,即倾斜角度超过10°被认为存在芯片歪斜缺陷;印刷错漏和芯片反置的匹配点对区间分别为15%~90%和0%~15%,即匹配点对占比超过90%,则认为不存在印刷错漏或芯片反置缺陷,匹配点对占比介于10%~90%、被认为存在印刷错漏缺陷,匹配点对占比低于10%,则认为存在芯片反置缺陷。

3.2 评价指标

采用的评价标准有查准率Pre、查全率Rec、以及虚警率FA。各计算公式可分别写作如下形式:

其中,TP()表示类样本被正确识别的样例; FP()表示其它类样本被识别为类样本的样例; FN()表示类样本被识别为其他样本的样例。

3.3 实验结果及分析

3.3.1 YOLOv3 目标检测结果分析

利用YOLOv3 网络在预训练的模型基础上进行迭代训练,网络文件中的部分参数设置见表2,训练期间损失曲线如图7 所示。可以看出,模型在前5个周期迭代中损失值迅速下降,此时模型正在快速拟合;经过60 个周期的迭代训练后,该模型的损失值降低至0.024、并趋于稳定,不再继续收敛,此时网络模型已达到最优状态,可以使用训练好的模型检测数据集中的芯片。

表2 网络训练参数Tab.2 Network training parameters

图7 训练期间的损失曲线Fig.7 Loss curve during training

3.3.2 Harris-SIFT 算法检测结果可视化

本文提出的Harris-SIFT 算法与传统SIFT 算法特征点检测时间对比结果如图8 所示,本文算法比SIFT 算法检测时间同比缩短2~3 倍,有效提高检测速度。

图8 算法检测时间对比图Fig.8 Algorithm detection time comparison chart

使用改进后的Harris-SIFT 算法对缺陷图像进行检测,结果如图9~图11 所示。

图9 反置芯片图像Fig.9 Invert chip images

图10 印刷错漏图像Fig.10 Misprinted images

图11 塑封不严密图像Fig.11 Improper plastic packaging

3.3.3 缺陷检测结果分析

使用本文提出方法对各类图像进行缺陷识别和分类,缺陷检测结果见表3。由表3 可以看出,本文提出的方法针对各类缺陷的查全率和查准率都较高,且虚警率均在11%以下,满足工业生产需求,可以应用到生产芯片封装检测领域。印刷错漏缺陷样本与芯片反置缺陷样本最易出现混淆,少量密封不严密样本与歪斜样本会相互误判,但整体的检测结果仍保持在标准范围内,可对SIFT 算法做进一步调优,针对特征点对匹配阈值范围进行调节。

表3 缺陷检测结果Tab.3 Defects detection results

4 结束语

针对现有的芯片封装质量检测过程中存在的问题,本文将深度学习算法与图像处理技术相结合,提出了一种基于视频图像的芯片封装质量分析方法。实验结果表明,本方法准确地判断出了芯片封装的残次品并指出了缺陷对应的类型,以便及时回收残次品并重新封装。该缺陷分类方法取得了93%的准确率,说明提出模型同时具备良好的鲁棒性与泛化能力,但由于复杂工业条件下影响检测准确率、召回率的因素繁杂,该算法还有继续优化的空间,进一步提高芯片封装质量分析的准确率和检测效率是未来研究的主要方向。

猜你喜欢

灰度阈值芯片
芯片会议
非平稳声信号下的小波变换去噪方法研究
非均匀光照下文本图像分割算法研究
天津港智慧工作平台灰度发布系统和流程设计
华为“灰度”哲学
Arduino小车巡线程序的灰度阈值优化方案
装错芯片的机器人
利用迭代软阈值方法抑制恒时演化类核磁共振实验中的采样截断伪峰
什么是AMD64
两种改进的局部阈值分割算法