基于改进YOLOv5的轻量级芯片封装缺陷检测方法

2023-09-14 03:06赖武刚李家楠林凡强
包装工程 2023年17期
关键词:轻量化复杂度卷积

赖武刚,李家楠,林凡强

基于改进YOLOv5的轻量级芯片封装缺陷检测方法

赖武刚,李家楠,林凡强

(成都理工大学 机电工程学院,成都 610059)

针对芯片封装缺陷检测过程中检测精度低与模型难部署的问题,提出YOLOv5-SPM检测网络,旨在提高检测精度并实现模型轻量化。首先,通过在特征提取模块后增加通道注意力机制,提高缺陷通道的关注度,减少冗余特征的干扰,进而提升目标的检测精度。其次,在主干网络与颈部网络连接处使用快速特征金字塔结构,更好地融合了自建芯片数据集的多尺度特征信息。最后,将主干网络的特征提取模块更换为MobileNetV3,将常规卷积更换为深度卷积和点卷积,有效降低了模型尺寸和计算量。经过改进后的新网络YOLOv5s-SPM在模型参数下降29.5%的情况下,平均精度较原网络提高了0.6%,准确率提高了3.2%。新网络相较于传统网络在芯片缺陷检测任务中实现了模型精度与速度的统一提高,同时由于模型参数减小了29.5%,更适合部署在资源有限的工业嵌入式设备上。

YOLOv5;芯片封装缺陷检测;通道注意力机制;特征金字塔池化;轻量化

芯片技术是当今高新技术中的重要组成部分,其中封装是芯片从制造到成品不可或缺的关键环节之一。然而在工厂加工生产中时常会出现划痕或缺脚等各种封装缺陷,对芯片的丝印识别和实际使用都会造成巨大影响,从而降低良品率。因此,对芯片封装缺陷进行检测有着重要的现实意义。

传统方法对芯片封装缺陷的检测一般使用数字图像处理技术[1],但近年来随着神经网络技术的发展,逐渐引入深度学习来进行缺陷识别,其中大致分为两阶段模型Faster R-CNN和单阶段模型YOLO系列。对于两阶段模型,Zhang等[2]利用改进后的Faster R-CNN,提出了一种全新的LED芯片表面缺陷检测方法。该方法首先在COCO数据集上完成了预训练,然后再在收集的LED芯片表面数据集上完成了微调。实验结果表明,该方法在生产线上具有良好的检测效果。

考虑到两阶段网络的检测速度相对较慢,有许多学者采用单阶段模型。Liu等[3]提出了一种基于YOLOv3的小目标检测方法UAV-YOLO,通过对网络浅层添加额外的卷积层来丰富空间信息,并优化了网络训练方法,能够适应不同环境下的小目标检测任务。周天宇等[4]改进了YOLOv3的特征提取网络,设计了4个检测尺度,并优化了网络的初始检测框,实现了对多种载波芯片缺陷的高精度检测。相似地,Wang等[5]提出了一种名为YOLOv4-SA的目标检测网络,通过将注意力机制与YOLOv4相结合,用于微小缺陷的检测。该网络由特征提取主干、空间注意模块(SAM)和特征融合模块组成。通过SAM的校正,使特征图能够突出缺陷区域,从而更有效地识别微小缺陷。实验证明,该网络可以有效提高平均精度均值(AP)。

除此之外,罗月童等[6]提出一种无监督学习的方法,对含有缺陷的芯片图像利用卷积去噪自编码器进行重构,再将重构后的新图像与输入图像相减,得到的结果被称为“残差图”。这种方法能够提取出包含缺陷信息的特征图,从而更容易地进行缺陷检测。

可以看出,在使用深度学习技术进行芯片封装缺陷检测的任务中,监督学习占主流趋势,而模型的检测速度与精度,还有模型大小一直都是学者们关注的重点。为进一步解决这些问题,本文以更先进的YOLOv5网络为基础,进一步提升模型性能指标,实现模型的轻量化,进而降低芯片封装缺陷检测设备的部署门槛。

1 YOLOv5原网络介绍

YOLOv5是一种快速的目标检测算法[7],能够实时地对图像中的物体进行分类和定位。其网络结构如图1所示。

YOLOv5网络结构包含4个部分:Input、Backbone、Neck和Head[8]。

Input部分:根据真实框分布使用k-means聚类算法进行自适应锚框计算,并采用与YOLOv4相同的数据增强方式。

Backbone部分:主要由CBS、C3、SPPF等模块组成。其中C3模块包含3个CBS层和多个Bottleneck层,将原有特征图分为两部分,分别为正常卷积和残差卷积,然后将两者拼接,从而对残差特征进行学习。SPPF模块(空间金字塔池化)对特征图进行卷积和串行最大池化,生成包含多尺度信息的最终特征图。

Neck部分:主要采用了FPN(Feature Pyramid Networks)来获取多级特征图并接入PAN(Path Aggregation Network)模块进行特征聚合,以增强模型对不同尺度目标特征的融合。

图1 YOLOv5原网络

Head部分:用于完成预测的任务。输出端包含损失函数的计算和非极大值抑制(NMS),NMS用于在目标检测任务中解决生成多个预测框的问题,有效解决冗余[9]。

2 本文改进的YOLOv5网络

本文改进的YOLOv5网络模型结构如图2所示。网络采用MobileBlock(MobilenetV3 Block)更换了网络主干部分的特征提取模块,使用深度卷积和点卷积的耦合取代常规卷积,实现了模型的轻量化。此外,在MobileBlock的输出特征图进行特征融合之前,使用SE通道注意力机制强化目标的特征信息,从而提高网络检测精度。同时,本网络使用SimSPPF特征金字塔模块对多尺度信息进行融合,提高了模型的鲁棒性,从而提高模型对芯片封装缺陷的检测精度。

2.1 SE模块的引入

通道注意力机制可以帮助模型更好地学习目标特征。具体来说,在使用大量的芯片缺陷训练数据后,网络会自适应地决定哪些通道对检测结果的影响更显著,从而使模型更加专注于学习目标特征,减少对冗余信息的依赖,进而提高检测精度[10]。

再使用excitation操作,构建全连接网络,从而获取特征图每个通道的重要程度:

2.2 SimSPPF空间金字塔池化

SPP(Spatial Pyramid Pooling)空间金字塔池化是一种广泛应用于各种深度学习模型中的特征池化模块[11]。在该模块的基础上,本文使用了SimSPPF模块,该模块主要优化了SPP模块中的并行池化操作。由于并行池化操作需要同时处理多个池化层,因此计算量较大,处理速度较慢。SimSPPF模块将并行池化操作变为串行操作,同时将激活函数从SiLU替换为Relu,大大降低了计算量,提高了处理速度。SPP与SimSPPF结构见图4。

图2 本文改进的YOLOv5网络

图3 SE模块结构

2.3 主干网络MobileBlock模块

本文使用的MobileBlock模块由MobilenetV3网络构成[12]。模块如图5所示,该模块极大地降低了网络的计算量,同时经过后续的实验验证,使用MobileBlock模块能保证对芯片封装缺陷的检测效果,同时使得模型更加轻量化。

MobileBlock使用的深度可分离卷积是一种轻量化卷积操作,它将标准卷积划分为深度卷积和点卷积2个独立的层。其中深度卷积通过对每层特征图应用一个单独的卷积核来执行过滤步骤,而点卷积则通过输入通道的点对点线性计算来构建过滤后的新特征。这种分解方式可以大大减少参数量和计算量,从而实现模型的轻量化。深度卷积计算式见式(3)。

本文使用MobileBlock替换原YOLOv5s网络中的C3模块,并且对骨干网络进行精简处理,减少了特征提取的次数,进一步提升了芯片封装缺陷检测特征提取网络的轻量化程度。

3 结果与分析

3.1 实验环境及数据集

本文的实验环境基于AutoDL云平台,使用PyTorch 1.9.0框架,Python版本3.8.10,CUDA版本12.0。GPU为RTX 3080,CPU配置为12 vCPU Intel(R) Xeon(R) Platinum 8255C CPU @ 2.50 GHz。实验在强聚光效果的点光源照射条件下,针对SOT-89封装的AMS1117稳压芯片使用图像采集与捕捉平台(图6)搭载的工业智能相机采集芯片图像,建立自建芯片封装数据集。其中相机的处理器为Intel四核1.9 GHz,CPU为4 GB内存,相机帧频为30帧/s,分辨率为2 592×2 048,后续处理成640×640大小。数据集中含有划痕(Scratch)和引脚缺损(Pin Defect)2种类型的缺陷,共计535张图片[13],使用4-mosaic数据增强方式提高数据集丰富程度,以防止模型过拟合。

图片为640×640的RGB三通道图,建立数据集过程中保证待检测芯片位于图片正中,还原工业检测流程,同时按照8∶2的比例将数据集划分为训练集和验证集2个部分。其中,图7为拍摄的原图;图8为检测结果图,图8结果表明可以正确检测出所含有的缺陷。

3.2 评估指标

通过从模型参数量、预测速度、运算量、准确率、召回率、平均精度P、平均精度均值AP等方面综合评估模型性能及复杂度。其中准确率表示预测正确的比例,召回率表示预测的全面性;平均精度P通过计算-曲线下的面积,得到模型在所有置信度阈值下的平均精度[14],通过对每个类别的P求均值就可以得到所有类别的平均精度均值AP[15]。其中准确率、召回率、平均精度P和平均精度均值AP的计算公式如下:

图4 SPP和SimSPPF结构

Fig.4 Structure of SPP and SimSPPF

图5 MobileBlock模块

图6 图像采集与捕捉平台

图7 芯片封装缺陷检测原图

图8 芯片封装缺陷检测结果

3.3 实验结果与分析

3.3.1 模型复杂度与性能对比

为了验证单一结构改变对模型复杂度与性能的影响,本文进行了一系列实验,使用了YOLOv5s作为基准网络,在此基础上进行了改进。各网络模型的复杂度与性能对比如表1和表2所示,其中AP@0.5值表示oU阈值为0.5时的平均精度均值,AP@0.5:0.95值为oU阈值从0.5变化到0.95上的平均精度均值。

表1 模型复杂度对比

Tab.1 Comparison of model complexity

注:加粗字体均为表格中所有模型该项指标的最优值,其中预测速度指标为5次实验结果的期望值。

表2 模型性能对比

Tab.2 Comparison of model performance

分析实验结果可知,YOLOv5s-S在少量提高模型复杂度的基础上,AP@0.5的数值上提升了1.2%,AP@0.5:0.95的数值上提升了2.1%,说明通过在不同维度特征图后添加通道注意力机制能有效地对目标特征进行强化,从而使得模型更好地识别出芯片封装缺陷。YOLOv5s-P在复杂度不变的情况下,略微提升模型预测速度,且AP数值比原网络提高了0.8%,说明串行结构相较于并行结构的特征金字塔能更好地融合自建芯片数据集的尺度特征,鲁棒性更强。YOLOv5s-M在略微降低模型性能的同时,只使用原模型70%的参数,极大地降低了模型复杂度,能更快地进行预测,满足轻量化要求。本文提出的YOLOv5s-SPM在模型复杂度远低于YOLOv5s原模型的基础上,AP@0.5的数值提升了0.6%,AP@0.5:0.95的数值提升了0.8%,进一步提升了对划痕与引脚损伤2种缺陷的定位与识别精确度。

3.3.2 损失函数分析

YOLOv5s的损失函数分为cls_loss、obj_loss以及box_loss共3个部分[17]。其中cls_loss和obj_loss均采用交叉熵损失,box_loss则采用CIoU计算损失[18],相关公式如下:

本文提出的YOLOv5s-SPM网络在验证集上的损失函数如图9所示。

设置训练的迭代次数为400次,在0~100次时损失函数剧烈下降,之后训练速度放缓,直至400轮迭代结束各损失函数均趋于平稳,最终并未出现过拟合现象。

3.3.3 不同模型对比

为了进一步评估改进的模型在自建芯片数据集上的性能,选取YOLO系列的其他模型以及经典的轻量化模型进行了对比实验,用来验证所提出模型的综合性能。不同模型检测结果的对比如表3所示,其中Ghostnet为将YOLOv5s骨干网络替换对应轻量化网络的模型。

图9 YOLOv5-SPM损失函数迭代曲线

表3 不同模型检测结果对比

Tab.3 Comparison of detection results of different models

分析YOLOv5s、YOLOv7-tiny、GhostNet,YOLOv5s-SPM模型的各类型缺陷检测结果,从表3可以看出,YOLOv5-SPM的平均精度对比前3个模型分别提高了0.6%、16.3%,2.9%,且在2种类型的缺陷检测任务中的表现也更加优异。证明本文设计的YOLOv5s-SPM模型优于YOLOv5s、YOLOv7-tiny、GhostNet等3个模型。同时,不同模型的性能对比结果如表4所示。

表4 不同模型性能对比

Tab.4 Performance comparison of different models

通过对比可以看出,相较于拥有最快预测速度的YOLOv7-tiny,YOLOv5-SPM在模型参数量、准确率、召回率以及AP@0.5等多项指标表现更优。尽管改进后的网络预测速度低于YOLOv7-tiny的网络预测速度,但在保证帧率为60帧/s的情况下平均精度超过了17%,能满足芯片封装缺陷检测的实时性要求。与经典轻量级网络GhostNet相比,YOLOv5s-SPM在模型参数量上仅相差6%,而准确率和AP@0.5指标分别高出6%和3%,说明MobilenetV3在整体性能上的表现要优于GhostNet。综合考虑,本文提出的YOLOv5s-SPM模型与新版本的YOLO以及典型轻量化模型相比综合性能优秀,平均精度、检测速度和模型复杂度均满足工业生产需求,能够处理典型的生产关键问题(如实时性问题和小目标检测问题)[19],并且能够方便地在嵌入式设备中进行部署,能良好地完成芯片封装缺陷检测任务。

4 结语

本文提出了一种基于改进YOLOv5的芯片封装缺陷检测方法,通过在自建芯片数据集上进行训练、对比和优化。通过引入SE通道注意力机制,强化了目标特征的重要程度进而提高了检测精度;在主干网络和颈部网络之间加入了SimSPPF特征金字塔结构用来融合不同尺度的特征信息;将主干网络替换为MobileNetV3,并使用深度可分离卷积,实现轻量化目标的同时,性能优于原YOLOv5网络。后续将进行数据集的扩充工作,增加可识别缺陷类别,同时进一步提高模型的检测精度和速度,并研究如何将模型部署在工业嵌入式设备上,以进一步优化和完善芯片封装缺陷检测平台在实际封装缺陷检测应用中的表现,拓展其应用场景。

[1] 王新宇, 蒋三新. 芯片缺陷检测综述[J]. 现代制造技术与装备, 2022, 58(5): 94-98.

WANG Xin-yu, JIANG San-xin. Overview of Chip Defect Detection[J]. Modern Manufacturing Technology and Equipment, 2022, 58(5): 94-98.

[2] ZHANG Zhi-wei, GONG Qian, CAO Yuan, et al. Detecting LED Chip Surface Defects with Modified Faster R-CNN[C]// 18th International SoC Design Conference, Jeju Island, 2021: 268-269.

[3] LIU Ming-jie, WANG Xian-hao, ZHOU An-jian, et al. UAV-YOLO: Small Object Detection on Unmanned Aerial Vehicle Perspective[J]. Sensors, 2020, 20(8): 2238.

[4] 周天宇, 朱启兵, 黄敏, 等. 基于改进YOLOV3的载波芯片缺陷检测[J]. 激光与光电子学进展, 2021, 58(12): 78-85.

ZHOU Tian-yu, ZHU Qi-bing, HUANG Min, et al. Defect Detection of Chip on Carrier Based on Improved YOLOV3[J]. Laser & Optoelectronics Progress, 2021, 58(12): 78-85.

[5] WANG Shuo, WANG Hong-yu, YANG Fan, et al. Attention-Based Deep Learning for Chip-Surface-Defect Detection[J]. The International Journal of Advanced Manufacturing Technology, 2022, 121(3/4): 1957.

[6] 罗月童, 卞景帅, 张蒙, 等. 基于卷积去噪自编码器的芯片表面弱缺陷检测方法[J]. 计算机科学, 2020, 47(2): 118-125.

LUO Yue-tong, BIAN Jing-shuai, ZHANG Meng, et al. Detection Method of Chip Surface Weak Defect Based on Convolution Denoising Auto-Encoders[J]. Computer Science, 2020, 47(2): 118-125.

[7] WANG Min, YANG Wen-zhong, WANG Lie-jun, et al. FE-YOLOv5: Feature Enhancement Network Based on YOLOv5 for Small Object Detection[J]. Journal of Visual Communication and Image Representation, 2023, 90: 103752.

[8] HE Di, XU Ke, ZHOU Peng. Defect Detection of Hot Rolled Steels with a New Object Detection Framework Called Classification Priority Network[J]. Computers & Industrial Engineering, 2018, 128: 290-297.

[9] ROY A M, BOSE R, BHADURI J. A Fast Accurate Fine-Grain Object Detection Model Based on YOLOv4 Deep Neural Network[EB/OL]. 2021: arXiv: 2111.00298. https://arxiv.org/abs/2111.00298

[10] 王一, 龚肖杰, 程佳, 等. 基于改进YOLOv5的金属工件表面缺陷检测[J]. 包装工程, 2022, 43(15): 54-60.

WANG Yi, GONG Xiao-jie, CHENG Jia, et al. Surface Defect Detection of Metal Workpiece Based on Improved YOLOv5[J]. Packaging Engineering, 2022, 43(15): 54-60.

[11] HE K, ZHANG X, REN S, et al. Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(9): 1904-1916.

[12] JIA Liang-quan, WANG Ya-wen, ZANG Ying, et al. MobilenetV3 With CBAM for Bamboo Stick Counting[J]. IEEE Access, 2022, 10: 53963-53971.

[13] 武泽坤, 叶晓娴, 陈梦. 基于改进YOLOv5的药用胶囊表面缺陷检测方法[J]. 包装工程, 2022, 43(23): 297-304.

WU Ze-kun, YE Xiao-xian, CHEN Meng. Surface Defect Detection Method for Pharmaceutical Capsules Based on Modified YOLOv5[J]. Packaging Engineering, 2022, 43(23): 297-304.

[14] WAN Guang, FANG Hong-bo, WANG Deng-zhun, et al. Ceramic Tile Surface Defect Detection Based on Deep Learning[J]. Ceramics International, 2022, 48(8): 11085-11093.

[15] 马学森, 马吉, 蒋功辉, 等. 基于注意力机制和多尺度特征融合的绝缘子缺陷检测方法[J]. 南京大学学报(自然科学), 2022, 58(6): 1020-1029.

MA Xue-sen, MA Ji, JIANG Gong-hui, et al. Insulator Defect Detection Method Based on Attention Mechanism and Multi-Scale Feature Fusion[J]. Journal of Nanjing University (Natural Science), 2022, 58(6): 1020-1029.

[16] 李鑫, 汪诚, 李彬, 等. 改进YOLOv5的钢材表面缺陷检测算法[J]. 空军工程大学学报(自然科学版), 2022, 23(2): 26-33.

LI Xin, WANG Cheng, LI Bin, et al. Steel Surface Defect Detection Algorithm Based on Improved YOLOv5[J]. Journal of Air Force Engineering University (Natural Science Edition), 2022, 23(2): 26-33.

[17] XUE Jin-lin, CHENG Feng, LI Yu-qing, et al. Detection of Farmland Obstacles Based on an Improved YOLOv5s Algorithm by Using CIoU and Anchor Box Scale Clustering[J]. Sensors, 2022, 22: 1790.

[18] LIU Yuan-jie, LYU Zun-chao, HU Ying-yue, et al. Improved Cotton Seed Breakage Detection Based on YOLOv5s[J]. Agriculture, 2022, 12: 1630.

[19] CHEN Ya-jun, DING Yuan-yuan, FAN Zhao, et al. Surface Defect Detection Methods for Industrial Products: A Review[J]. Applied Sciences, 2021, 11(16): 7657.

Lightweight Chip Package Defect Detection Method Based on Improved YOLOv5

LAI Wu-gang, LI Jia-nan, LIN Fan-qiang

(College of Mechanical and Electrical Engineering, Chengdu University of Technology, Chengdu 610059, China)

The work aims to propose a YOLOv5-SPM detection network, solve the challenges concerning diminished detection accuracy and complex model deployment encountered in chip packaging defect detection, to enhance detection accuracy and facilitate the implementation of lightweight models. The channel attention mechanism was placed after each feature extraction module to increase the importance of defect-related channels, reduce the interference of redundant features and improve the target detection accuracy. Then, the SimSPPF pyramid pooling structure was used in the connection of the backbone network and the neck network to integrate multi-resolution features of the self-built chip data set more effectively. After that, the feature extraction module of the backbone network was replaced with MobileNetV3 and the conventional convolution was replaced with deep convolution and point convolution to significantly reduce the model size and calculation scale. The improved new network YOLOv5s-SPM achieved a 0.6% increase in mean average precision and a 3.2% increase in accuracy compared with the original network, while reducing the model parameters by 29.5%. The experimental results validate the superiority of the proposed network in achieving higher accuracy and faster detection speed in the task of chip defect detection. Since the model parameters are reduced by 29.5%, it can also be deployed on industrial embedded devices.

YOLOv5; chip package defect detection; channel attention mechanism; simplified spatial pyramid pooling-fast; lightweight

TB487

A

1001-3563(2023)17-0189-08

10.19554/j.cnki.1001-3563.2023.17.023

2023-04-18

四川省科技计划重点研发项目(2020YFS0472)

责任编辑:曾钰婵

猜你喜欢
轻量化复杂度卷积
汽车轻量化集成制造专题主编
基于3D-Winograd的快速卷积算法设计及FPGA实现
从滤波器理解卷积
一种轻量化自卸半挂车结构设计
一种轻量化自卸半挂车结构设计
一种低复杂度的惯性/GNSS矢量深组合方法
基于傅里叶域卷积表示的目标跟踪算法
求图上广探树的时间复杂度
瞄准挂车轻量化 锣响挂车正式挂牌成立
某雷达导51 头中心控制软件圈复杂度分析与改进