1、2023 年第 5 期仪 表 技 术 与 传 感 器InstrumentTechniqueandSensor2023No 5基金项目:国家自然科学基金青年基金资助项目(62006073)收稿日期:20221103基于改进 YOLOv5 的 PCB 板表面缺陷检测王淑青1,张子言1,朱文鑫1,刘逸凡2,王娟1,李青珏1(1 湖北工业大学电气与电子工程学院,湖北武汉430068;2 华中科技大学武汉光电国家研究中心,湖北武汉430074)摘要:针对当前 PCB 板检测参数量庞大、检测精度低等问题,提出了一种改进 YOLOv5 的检测模型。以 YOLOv5 模型为框架,采用 EfficientNet
2、V2 结构替换原始模型的主干网络,针对小目标缺陷,引入对空间信息更敏感的 CA 注意力机制,并采用 IoU 损失函数提高模型回归精度。实验结果表明:改进后的 YOLOv5 网络模型较原始网络均值平均精度提高了 2 6%,参数量减少 47%,可应用在小型工业检测设备中。关键词:PCB 板检测;YOLOv5;EfficientNetV2;缺陷检测;注意力机制;损失函数中图分类号:TP391文献标识码:A文章编号:10021841(2023)05010606Surface Defect Detection of PCB Based on Improved YOLOv5WANG Shu-qing1,Z
3、HANG Zi-yan1,ZHU Wen-xin1,LIU Yi-fan2,WANG Juan1,LI Qing-jue1(1 School of Electrical and Electronic Engineering,Hubei University of Technology,Wuhan 430068,China;2 WuhanOptoelectronics National esearch Center,Huazhong University of Science and Technology,Wuhan 430074,China)Abstract:In order to solve
4、 the problems of large number of parameters and low detection accuracy of current PCB detection,a detection model of improved YOLOv5 was proposed Taking the YOLOv5 model as the framework,the main network of the origi-nal model was replaced by the structure of EfficientNetV2 Aiming at the defects of
5、small targets,the CA attention mechanismwhich is more sensitive to spatial information was introduced,and the IOU loss function was used to improve the accuracy ofthe model regression The experimental results show that compared with the original network,the improved YOLOv5 network mod-el improves th
6、e mean average accuracy by 2 6%and reduces the number of parameters by 47%,which can be easily deployed insmall industrial testing equipmentKeywords:PCB detection;YOLOv5;EfficientNetV2;defect detection;mechanism of attention;loss function0引言进入工业 4 0 时代以来,电子设备与我们的生活紧密相连,而精密的电子产品往往依赖于 PCB 板进行走线和装配13。在
7、工业生产中会因为工业设备操作不当,而破坏 PCB 板原有的电路属性,造成资源浪费。目前,用于 PCB 板缺陷检测的主要方法有:人工检测法和在线测试4。人工检测法受检测人员主观因素较大,且在检测过程中可能会人为造成其他缺陷,检测效率低、人工成本高5。在线测试通过电气性能来识别缺陷,常见的有针床测试仪和飞针测试仪,但制造夹具的成本高,检测速度慢67。随着机器视觉的快速发展,一种高精度、非接触性的实时检测方法逐渐进入人们视角8,通过终端与高精度工业相机连接9,可精准、高效的检测 PCB 板多类缺陷。如胡珊珊等10 提出了一种上采样和跳层连接(Skip Connect)进行特征融合的方法,实现对 PC
8、B板微小缺陷的检测,但速度有待提高;杨庆华等11 采用 Hough 变换和仿射变换配准获取缺陷区域,但检测数据集较少,实验结果缺少说服力;J Shen 等12 提出一种轻量化模型实现对 PCB 板的缺陷检测,检测精度较高,有良好鲁棒性。针对上述研究中 PCB 板表面缺陷检测存在的各种问题,以 YOLOv5 深度学习模型为基础,提出了一种更加轻量化的模型。采用 EfficientNetV2 替代 YOLOv5的主干网络,减少模型运算参数。改进注意力机制,引入 CA 注意力机制代替 SE 注意力机制,增强模型空间识别能力,提高模型对小目标缺陷的检测效果。引入 族群损失函数,在不增加模型额外参数的情
9、况下,提升模型检测精度和加快模型收敛速度。实验结果表明,改进后的模型针对 PCB 表面缺陷检测,能够以更高的检测精度和更快的收敛速度,完成 PCB 板工业检测系统部署1314。第 5 期王淑青等:基于改进 YOLOv5 的 PCB 板表面缺陷检测1071YOLOv5 模型分析与改进1 1YOLOv5 检测模型YOLOv5 作为当前单阶段目标检测算法中15,表现较为高效、稳定的深度学习框架,可将模型分为输入端(Input)、主干网络(Backbone)、颈部网络(Neck)和输出端(Output):1 1 1Input内嵌数据增强,通过将数据集进行拼接组合和调整色度、饱和度的方法,实现数据集的扩
10、充,以增加检测数据的丰富性;采用自适应锚框计算,通过对比预测框和真实框的差距,自适应性反向更新,迭代网络参数;自适应图片缩放,为使图片达到检测所需尺寸,在黑边最少的情况下,选择性地对图片进行缩放。1 1 2Backbone为更高效的使用现有 GPU 设备,首次提出 Focus结构,采用切片操作,在不丢失语义信息的情况下,使输入通道扩充为原来的 4 倍,经过卷积操作后,得到 2倍下采样图。1 1 3Neck采用 FPN+PAN 结构,引入 SPPF 模块,通过将不同大小的最大池化层串行操作和卷积操作,将不同等级的特征层进行融合,得到语义信息更丰富的新特征图,通过 PAN 结构自底向上传达强语义信
11、息,从而实现对不同检测层的参数聚合。1 1 4OutputGIOU_Loss 在 IOU_Loss 的基础上增加了相交尺度的衡量方式,解决了边界框不重合的问题;采用加权 NMS 非极大值抑制的方式,使其效果更优。1 2EfficientnetV2 主干特征提取网络针对 EfficientNetV1 在网络浅层和深层使用深度卷积(depthwise convolution),却无法充分利用现有加速器等问题,拟采用 EfficientNetV2 作为主干特征提取网络,其主要由移动反向瓶颈卷积结构(MBConv)和融合移动反向瓶颈卷积结构(Fused MBConv)2 个模块组成,其结构如图 1 所
12、示。MBConv 结构主要由 1*1卷积层、深度可分离卷积(depthwise separable conv)、批量归一化(batch normalization,BN)、SiLU 激活函数、SE 注意力机制和残差边组成,使用深度可分离卷积可以较大程度上减少模型参数量,提升网络的训练速度。Fused MBConv 则是将 MBConv 中的 1*1 卷积和3*3 深度可分离卷积替换成 3*3 卷积层,使浅层网络可以更好的利用现有加速器,从而进一步提升模型的训练速度。(a)MBConV 结构(b)FusedMBConv 结构图 1MBConv 和 FusedMBConv 结构图深度可分离卷积由深
13、度卷积和逐点卷积(point-wise convolution)两部分组成,深度卷积在不改变输入特征图深度的情况下,对每一个通道进行卷积操作;逐点卷积则是利用 1*1 卷积对输入特征图进行升维或降维,卷积过程如图 2 所示。图 2卷积过程图若假设输入特征图的大小尺寸为 DF*DF*M,卷积核尺寸为 DK*DK*M,输出特征图大小尺寸为 DF*DF*N,N 表示为卷积核的个数,分别计算上述各类卷积的参数量:图 2 中标准卷积的参数量如式(1)所示:N_sc=(DK*DK*M)*N(1)图2 中深度卷积通过与输入特征图的每一层特征独立的在二维平面上进行卷积操作,减少了模型在深度方向的计算量,但由于
14、没有充分利用不同通道在空间上的特征信息,故需要逐点卷积(见图 2 右图)提取空间语义信息,深度卷积的参数量如式(2)所示:N_DC=(DK*Dk*1)*M(2)逐点卷积通过 1*1 卷积来对输入的特征图进行空间上的加权组合,从而生成与卷积核数量相同的输出特征图,逐点卷积的参数量如式(3)所示:108Instrument Technique and SensorMay 2023N_PC=1*1*M*N(3)将式(2)、式(3)相加,就可以得到深度可分离卷积的参数量如式(4)所示:N_DSC=DK2*M+N*M(4)因此深度可分离卷积与标准卷积的参数量之比 k如式(5)所示:k=DK*DK*M+M
15、*N(DK*DK*M)*N=1N+1DK*DK(5)由式(5)可以看出,卷积核尺寸越大、数量越多,则深度可分离卷积就相比于标准卷积使用更少的参数量,且在 PCB 板表面缺陷类型多而密的情况下,需要挖掘更深层次的语义信息,故深度可分离卷积在理论上可以为模型训练减少大量时间成本,并提升检测精度。1 3CA 坐标注意力机制为进一步提升 PCB 板对于细小缺陷的检测能力,采用 CA 坐标注意力机制替换 EfficientNetV2 中的 SE注意力模块。CA 坐标注意力机制通过将通道注意力分解为 2 个一维特征编码的方式,分别沿垂直和水平2 个方向,独立地获取空间方向远程依赖关系以及保留精确的位置信息
16、,最后将 2 个方向的注意力图整合到输入特征图,以提升 EfficientNetV2 特征提取网络的特征表达能力,如图 3 所示。图 3CA 坐标注意力机制对于给定的输入 X,采用范围为(H,1)和(1,W)分别沿水平坐标和垂直坐标对每个通道进行编码,H表示输入特征张量 X 的高度、W 表示宽度,因此,第 c个通道在高度 h 处的输出可以表示为:zhc(h)=1W0iWxc(h,i)(6)式中:W 为通道宽度特征向量;xc为第 c 个通道的输入值。同理可以得出第 c 个通道在宽度 w 处的输出表达式,如式(7)所示。zwc(w)=1H0jHxc(j,w)(7)式中 H 为通道高度特征向量。与 SE 模块中的挤压操作不同,上述 2 种转换分别沿 2 个空间方向聚合特征,生成一对方向感知特征映射,也允许注意力模块捕捉沿着一个空间方向的长期依赖关系,并保留另一个空间方向上的精确位置信息,使网络能够更精确的定位感兴趣区域。通过上述信息嵌入之后,将生成的聚合特征映射进行连接,然后通过 1*1 卷积变换函数 F1对其进行变换,如(8)式所示。f=(F1(zh,zw)(8)式中:zh,zw 为沿空间