1、2024 年第 3 期仪 表 技 术 与 传 感 器Instrument Technique and Sensor基金项目:中央高校基本科研业务费专项资金资助项目(FRF-DF-22-12)收稿日期:2023-08-27基于 YOLOv5_4layers 的 PCB 小目标缺陷识别方法杨萍萍,白艳茹北京科技大学高等工程师学院 摘要:针对 PCB 表面缺陷分辨率低、小目标性以及多样性等问题,提出了一种基于 YOLOv5_4layers的 PCB 小目标缺陷识别方法。该方法在 YOLOv5 架构的基础上,通过新增采样层的方式添加小目标检测层,优化特征金字塔模型,提升小目标特征提取性能,实现小目标缺
2、陷识别。在调整合适的锚框规格后,改进后的模型在输入 640 像素640 像素图像时,相较原模型识别精确率提升了 7.5%。在输入 736像素736 像素图像时,识别精确率提升了 1.3%,有效地提升了对 PCB 小目标缺陷的识别能力,对提高PCB 制造过程的质量控制和产品可靠性具有实际意义。关键词:PCB;小目标缺陷识别;深度学习;YOLOv5_4layers;特征提取中图分类号:TP391 文献标识码:AYOLOv5_4layers Based Small Target Defect Identification Method for PCBYANG Pingping,BAI YanruSc
3、hool of Advanced Engineering,University of Science and Technology BeijingAbstract:Aiming at the issues such as low resolution,small target size,and diversity of surface defects for PCB,a PCB small target defect identification method based on YOLOv5_4layers was proposed.Based on the YOLOv5 architectu
4、re,a small target de-tection layer was added by adding a new sampling layer and optimizing the feature pyramid model with the purpose of improving the feature extraction performance of small targets and realizing the detection of smaller targets.After adjusting the appropriate an-chor frame specific
5、ations,the improved model has a 7.5%higher detection accuracy than the original model while the image input size is 640 pixels640 pixels.When the image input size is 736 pixels736 pixels,the accuracy rate is increased by 1.3%,which effectively improves the identification ability of PCB small target
6、defects,and has practical significance for improving the quality control and product reliability of PCB manufacturing process.Keywords:PCB;small target defect identification;deep learning;YOLOv5_4layers;feature extraction0 引言印制电路板(printed circuit board,PCB)作为集成各种电子元器件的信息载体,提供了电子元器件之间的连接和支持结构。及时准确地检测
7、和识别 PCB 表面缺陷对确保电子设备的正常运行、质量控制和功能实现至关重要1-6。深度学习技术的飞速发展,有效地克服了数据采集过程中外界干扰对目标检测的不利影响,在 PCB 缺陷识别方面取得了初步成效7-8。典型的 YOLO 系列模型因其相较于卷积神经网络(convolutional neural network,CNN)在特征提取实时性和精确性方面的优势,在 PCB 缺陷识别领域得到了广泛关注和认可。例如,利用 YOLOv4 目标检测算法,设计了 PCB 缺陷检测模型,并对模型性能进行评估9;基于 YOLOv5 目标检测算法,设计了全新的 PANet 多特征融合结构,实现了高效的双向跨尺度
8、连接和加权特征层融合10;针对缺陷特性去除大目标检测尺度,保留中小目标检测尺度,改进了 YOLOv5s 网络,实现了 PCB 缺陷检测11;对于小目标 PCB 表面缺陷检测能力较弱的情况,提出 SPDYOLOv5 模型,以 SPDConv 取代模型中各阶段的降采样卷积,提高模型对细节信息的关注度12;将 YOLOv5 轻量化用于 PCB 缺陷检测,用GhostNet 替换了原模型的特征提取网络,提升了模型对 PCB 缺陷检测的识别效果13;在 YOLOv5 目标检测算法的基础上,设计了加强特征网路,实现了特征信息融合,引入注意力机制和 Transformer 结构,增强了模型捕捉全局信息能力,
9、提升了模型准确率14等。这些探索与尝试对于提高 PCB 制造质量、降低成本、提高生产效率具有重要意义,但在小目标检测方面仍然存在不足。虽然采用多个预测尺度等方法来识别57 仪 表 技 术 与 传 感 器第 3 期不同大小的目标,但可能无法在低分辨率的预测尺度上获得足够的特征信息,导致目标识别不准确。为改善小目标的识别效果,本文基于传统深度学习 YOLOv5 架构的网络模型,通过新增采样层的方式添加了小目标检测层,优化特征金字塔模型,使其能够对更小的目标进行识别,在调整合适的锚框规格后,使其满足 PCB 表面缺陷识别的要求,提升整体识别性能,满足 PCB 生产制造的高标准、高效率、高精度要求。1
10、 基于 YOLOv5 架构的缺陷识别方法1.1 YOLOv5 网络结构及算法YOLOv5 是一种基于 CNN 的目标检测算法,具有训练速度快、检测精度高和模型权重小等优点。YOLOv5 的 网 络 结 构 主 要 分 为 输 入 端、Backbone、Neck、Prediction 4 部分。其中,输入端用于接收图像并对其进行预处理;骨干网络 Backbone 负责对其进行特征提取;颈部 Neck 通过不同层级之间的特征融合形成特征金字塔;Head 根据预定义锚框的大小处理不同层级的特征并输出对应的结果15-17。YOLOv5 训练过程中的正反向传播通过不断迭代传播过程,逐渐优化模型性能,提高
11、目标检测的准确性和鲁棒性,使模型能够更准确地检测目标。实验使用的源码为官方发布的 YOLOv5_5.0 版本,使用 Py-thon 语言编程,基于 Pytorch 环境实现,采用的数据集是由北京大学计算机视觉与模式识别实验室开发的用于缺陷识别与检测的数据集。该数据集包含 1 386张 PCB 图像样本,每张图像上都标注了不同类型的瑕疵区域,共计 6 种瑕疵类型:缺失孔(missing_hole)、鼠标咬 伤(mouse _ bite)、开 路(open _ circuit)、短 路(short)、杂散(spur)和伪铜(spurious_copper)。该数据集规模较大且瑕疵类型多样,标注精准
12、,为算法的训练和评估提供了准确参考。由于所提供的数据集将数据按照对应类别划分,且格式属于 YOLOv5 能够使用的 VOC 数据集格式,需要对其进一步整理。将其按照图片和标注划分为2 个数据集,按照 4:1 的比例随机抽取划分为训练集及验证集。然后,对标注中.xml 格式的数据进行解析,解析为.txt 的格式,目的是 将 5 类 标 签 信 息 class、x_center、y_center、width、height 转换为能够被 YOLOv5使用的格式;最后,建立.txt 文件作为训练集和验证集的路径指导。1.2 评价指标训练过程中,采用的评价指标为精确率(Preci-sion)、召回率(R
13、ecall)、平均精度 map 0.5 和 map0.5:0.95。其中,Precision 的表达式为Precision=TPTP+FP(1)式中 TP为正确目标检测个数;FP为错误目标检测个数。Recall 的表达式为Recall=TPTP+FN(2)式中 FN为漏检目标个数。对于目标检测任务,每个分类都可以得到一条精度-召回率曲线 PR Curve,即精确率与召回率的关系曲线,在不同阈值下计算,检测精度是曲线下面积 AP的值。AP 值越高,检测精度越高。map 0.5 是将IoU 设置为 0.5 时,计算每个类别中所有图像的 AP 并求平均值;map 0.5:0.95 是步长为 0.05
14、 时不同 IoU阈值下的平均 map,范围是 0.50.95。上述 4 个评价指标全面地关注模型的预测准确性、目标检测能力和泛化能力,在评估和比较不同模型或不同训练设置时提供了全面的评价,能够有效地评估神经网络的训练结果。通过分析这些指标,了解模型的性能优劣,从而对模型优化与改进。1.3 训练结果与分析在 YOLOv5 算法的基础上,使用相同的迭代次数100,设置了多种输入图像的大小作为实验参照。实验结果如表 1 所示。表 1 基于 YOLOv5 的不同输入图像大小实验结果%输入尺寸/像素精确率召回率map 0.5map 0.5 0.9564064085.680.383.234.3736736
15、93.891.695.045.986486496.696.397.550.696096096.896.297.751.4 输入图像的尺寸对模型的训练效果有一定影响,且随着图像尺寸的增大,模型的性能有所提升。尺寸由 640 像素640 像素提升为 736 像素736 像素时,性能提升效果显著,精确率提升了 8.2%,召回率提升了 11.3%。然而,将图像尺寸由 736 像素736 像素增加到 864 像素864 像素时,模型性能有所提升,但提升幅度有限,精确率提升了 2.8%,召回率提升了4.7%。通过进一步观察可以发现,增加图像尺寸,性能提升效果有限,随着输入图像大小增加到 960 像素960
16、 像素,精确率仅提升了 0.2%,召回率出现下降。可以看出,增加输入图像的尺寸可以提升模型的性67 第 3 期杨萍萍等:基于 YOLOv5_4layers 的 PCB 小目标缺陷识别方法 能,但提升效果逐渐减弱。因此,在选择图像尺寸时需要权衡计算资源和性能提升之间的关系,避免过度增加图像尺寸导致性能提升不明显或资源浪费。选取最具有代表性的 640 像素640 像素和 864像素864 像素输入图像尺寸的混淆矩阵,如图 1(a)、图 1(b)所示,可以看出针对不同分类,网络模型的性能有所提升。在输入图像尺寸为 864 像素864 像素时,观察其精确率和召回率图像,如图 1(c)、图 1(d)所示
17、,可以看出虽然迭代次数设置为 100,但迭代次数为 70 时已经趋近于稳定。(a)混淆矩阵 640 像素640 像素(b)混淆矩阵 864 像素864 像素(c)精确率曲线(d)召回率曲线图 1 训练结果2 基于 YOLOv5_4layers 的小目标缺陷识别算法2.1 YOLOv5_4layers 网络结构PCB 表面缺陷特征比较微弱,且边缘通常比较模糊,容易被周围背景淹没。传统的 YOLOv5 网络采用多个预测尺度检测不同大小的目标,可能无法在低分辨率的预测尺度上获得足够的特征信息,导致目标识别不准确。为改善小目标缺陷的识别效果,在传统YOLOv5 网络结构的基础上,增加 1 个小目标检测
18、层,结构如图2 所示。通过引入更细致的特征提取和更精确的定位机制,优化小目标缺陷的识别性能,使模型更好地适应小目标的特征和尺寸,减少漏检和误检的情况,提高整体的目标识别质量。具体实现过程如下:在网络模型中,增加一个预定义锚框5,6,8,14,15,11,这些锚框的大小和长宽比能够更好地适应小目标缺陷的识别需求;在 Neck(颈部)引入一个上采样层,对特征图进行上采样处理,使得原本较小的特征图扩大至 160 像素160 像素,增加特征图的分辨率;将上采样后的特征图与Backbone 对应大小的底层特征图融合,构建多尺度的目标识别网络来获取更丰富的特征信息,以更准确地定位和识别小目标缺陷,提高召回
19、率和准确率等性能指标。2.2 实验与结果分析在添加了小目标检测层后,将其与传统 YOLOv5方法的运行结果进行对比,输入图像的大小为 640 像素640 像素。从表 2 可以看出,通过增加小目标检测层,网络模型的识别性能有所改善,精确率提升了7.5%,召回率提升了 5.9%。同时,通过对比两者的混淆矩阵(如图 3 所示),可以看出在图像输入尺寸不变的情况下,鼠标咬伤、开路、短路、杂散和伪铜的识别精确度分别提升了 17%、15%、5%、10%、12%。77 仪 表 技 术 与 传 感 器第 3 期图 2 YOLOv4_4layers 结构图表 2 640 像素640 像素实验结果对比%网络模型精
20、确率召回率map 0.5map 0.5 0.95YOLOv585.680.383.234.3YOLOv5s_4layers93.186.292.144.2图 3 混淆矩阵 640 像素640 像素 进一步设置为736 像素736 像素与传统 YOLOv5方法的缺陷识别结果进行对比,如表 3 所示。可见召回率以及 map 0.5 有所下降,但精确率和 map 0.5:0.95 却有所上升。由于 map 0.5:0.95 考虑了不同IoU 阈值的平均精度,表示模型在较高的 IoU 阈值下能够更好地定位目标,模型的边界框预测更加准确,且相对较大目标的识别准确率有所提升。表 3 736 像素736 像
21、素实验结果%网络模型精确率召回率map 0.5map 0.5 0.95YOLOv593.891.695.045.9YOLOv5s_4layers91.889.793.546.9 考虑到可能由于输入图像的大小改变导致预设锚框与其不匹配的原因,通过改变不同锚框的大小进行实验。将5,6,8,14,15,11标记为;7,8,10,13,16,30标记为;9,10,12,24,20,39标记为;10,13,16,30,33,23标记为。实验结果如表 4 所示,可以看出新增预设锚框的大小对模型性能有影响,当预设锚框的大小为9,10,12,24,20,39时,模型整体性能相较均有较大提升,且精确率较传统YO
22、LOv5 方法也有所提升。表 4 锚框大小实验结果%锚框大小精确率召回率map 0.5map 0.5 0.9591.889.793.546.997.187.293.848.595.190.194.947.496.587.694.146.72.3 目标识别结果可视化与分析利用上述 2 种模型,对不同参数设置 YOLOv5-640 像素640 像素、YOLOv5-736 像素736 像素、YOLOv5_4layers-640 像素640 像素-5,6,8,14,15,11、YOLOv5_4layers-640 像素640 像素-9,10,12,24,20,39的识别结果进行对比,如图 4(a)、图
23、 4(b)所示,可以看出仅在增大图片输入尺寸的情况下,模型对 PCB 缺陷的识别能力有所提升。在增加小目标检测层后,如图 4(c)所示,当锚框大小设置不符合所使用的数据集特征时,不能很好地捕捉图像的特征。当通过实验调整合适的锚框大小后,如图 4(d)所示,模型对图像中缺陷的识别性能达到最佳,能够很好地通过多层特征金字塔对目标特征进行提取。3 结束语为了提高 PCB 表面缺陷识别分辨率和精准率,本文在传统 YOLOv5 架构的基础上,通过新增采样层的方式添加了小目标检测层,优化特征金字塔模型,提出了基于深度学习 YOLOv5_4layers 架构的 PCB 表面缺陷识别方法。以北京大学公开的 P
24、CB 数据集为测试与验证对象,将 YOLOv5_4layers 与传统的 YOLOv587 第 3 期杨萍萍等:基于 YOLOv5_4layers 的 PCB 小目标缺陷识别方法(a)YOLOv5-640 像素640 像素(b)YOLOv5-736 像素736 像素(c)改进 YOLOv5-640 像素640 像素-5,6,8,14,15,11(d)改进 YOLOv5-640 像素640 像素-9,10,12,24,20,39图 4 目标识别结果对比进行对比分析。结果表明:本文所提出的方法在精确率、召回率、平均精度 map 0.5 和 map 0.5 0.95等方面有了较大改善,具有良好的缺陷
25、识别性能。参考文献:1 王淑青,鲁濠,鲁东林,等.基于轻量化人工神经网络的 PCB板缺陷检测J.仪表技术与传感器,2022(5):98-104.2 裴新权,周亚丽,张奇志,等.一种应用于 PCB 裸板质量检测的图像拼接算法J.实验室研究与探索,2017,36(8):24-28.3 张丽丽,陈真,刘雨轩,等.基于 ZYNQ 的 PCB 缺陷检测系统实验设计J.实验技术与管理,2023,40(4):96-102.4 吴一全,赵朗月,苑玉彬,等.基于机器视觉的 PCB 缺陷检测算法研究现状及展望J.仪器仪表学报,2022,43(8):1-17.5 庹冰,黄丽雯,唐鑫,等.基于 YOLOX-WSC 的
26、 PCB 缺陷检测算法研究J.计算机工程与应用,2023,59(10):236-243.6 张艳,张明路,吕晓玲,等.深度学习小目标检测算法研究综述J.计算机工程与应用,2022,58(15):1-17.7 董静毅,吕文涛,包晓敏,等.基于机器视觉的 PCB 板表面缺陷检测方法研究进展J.浙江理工大学学报(自然科学版),2021,45(3):379-389.8 张涛,刘玉婷,杨亚宁,等.基于机器视觉的表面缺陷检测研究综述J.科学技术与工程,2020,20(35):14366-14376.9 陈业红,张晨龙,姜国龙,等.基于 YOLOv4 的印刷电路板常见缺陷检测模型研究J.齐鲁工业大学学报,2
27、023,37(2):39-45.10 杨永跃,夏远超.PCB 缺陷检测深度学习算法的精度改进J.电子测量与仪器学报,2023,37(5):1-10.11 张开生,李昊晨,关凯凯,等.基于 LT-YOLOv5s 的 PCB缺陷检测方法J.实验室研究与探索,2023,42(2):108-114.12 季堂煜,赵倩,余文涛,等.基于增强小目标特征提取的PCB 板缺陷检测模型J.仪表技术与传感器,2023(4)87-92.13 李振华,张雷.改进 YOLOv5 的轻量级 PCB 缺陷检测算法J.无线电工程,2023,53(6):1-11.14 徐丽丽.基于 CT-YOLOv5 的 PCB 缺陷检测方法
28、J.佳木斯大学学报(自然科学版),2023,41(1):38-41.15 王淑青,张子言,朱文鑫,等.基于改进 YOLOv5 的 PCB 板表面缺陷检测J.仪表技术与传感器,2023(5):106-111.16 王淑青,张鹏飞,要若天,等.基于改进 YOLOv5 的太阳能电池片表面缺陷检测J.仪表技术与传感器,2022(5):111-116.17党宏社,党晨,张选德.基于改进 YOLOv5s 的交通标志识别算法J.实验技术与管理,2022,39(9):97-102.作者简介:杨萍萍(1986),工程师,硕士,主要从事电工电子相关实验教学、管理和研究工作。E-mail:yangpingping 白艳茹(1984),高级工程师,硕士,主要从事电工电子相关教学与创新创业研究。E-mail:97