浙江大学学报(工学版), 2025, 59(8): 1608-1616 doi: 10.3785/j.issn.1008-973X.2025.08.007

机械工程、能源工程

基于改进YOLOv5s的印刷电路板缺陷检测算法

周著国,, 鲁玉军,, 吕利叶

1. 浙江理工大学 机械工程学院,浙江 杭州 310018

2. 浙江理工大学 龙港研究院,浙江 温州 325802

Improved YOLOv5s-based algorithm for printed circuit board defect detection

ZHOU Zhuguo,, LU Yujun,, LV Liye

1. School of Mechanical Engineering, Zhejiang Sci-Tech University, Hangzhou 310018, China

2. Longgang Institute of Zhejiang Sci-Tech University, Wenzhou 325802, China

通讯作者: 鲁玉军,男,教授. orcid.org/0009-0008-6155-1216. E-mail: luet_lyj@zstu.edu.cn

收稿日期: 2024-08-2  

基金资助: 浙江理工大学龙港研究院资助项目(LGYJY2021004).

Received: 2024-08-2  

Fund supported: 浙江理工大学龙港研究院资助项目(LGYJY2021004).

作者简介 About authors

周著国(1998—),男,硕士生,从事计算机视觉的研究.orcid.org/0009-0009-8372-8526.E-mail:2284545699@qq.com , E-mail:2284545699@qq.com

摘要

针对印刷电路板(PCB)存在的缺陷目标较小不易被识别、误检率高以及模型尺寸较大不易部署等问题,提出基于改进YOLOv5s的缺陷检测方法. 该方法使用基于密度分层聚类的K-means (HDBK-means) 算法,重新聚类得到更适合PCB缺陷特点的锚框. 使用经空间与通道重建卷积 (SCConv) 改进的重参数化非线性跨阶段部分高效层聚合网络 (RepNCSPELAN) 替换YOLOv5s主干中的特征提取模块,在保证精度的前提下,大大提高了模型推理速度. 通过引入重参数化细节增强广义特征金字塔网络 (RDEGFPN) 进行特征融合,提升模型对于各个尺度缺陷目标的识别能力,减少计算资源消耗. 使用动态上采样(DySample)对特征融合网络进行二次创新,形成广义动态特征融合金字塔网络 (GDFPN),提高模型的轻量级与高效性,使得模型更容易部署. 在公共PCB数据集上进行的对比实验表明,该算法将平均精度均值(mAP)提高了3.8%,将精度提高了2.9%,模型大小减少了26.9%,模型的检测速度达到138.1帧/s. 将模型部署到RK3568平台上进行检测,满足了实时检测与嵌入式设备部署的要求.

关键词: 印刷电路板 ; YOLOv5s ; 聚类算法 ; 特征提取 ; 特征融合

Abstract

A defect detection method based on improved YOLOv5s was proposed aiming at the problems that exist in printed circuit board (PCB), such as small defect targets that are not easy to be identified, high false detection rate, and large model size that is not easy to be deployed. Hierarchical density-based clustering k-means (hierarchical density-based K-means, HDBK-means) algorithm was used to regroup to get the anchor frame more suitable for the characteristics of PCB defects. The feature extraction module in the YOLOv5s backbone was replaced with a reparameterized normalized cross stage partial efficient layer aggregation network (RepNCSPELAN) improved by spatial and channel reconstruction convolution (SCConv), which greatly improved the speed of model inference while ensuring accuracy. Then the recognition ability of the model for defective targets at various scales can be improved by introducing reparameterized detail-enhanced generalized feature pyramid network (RDEGFPN) for feature fusion while reducing the computational resource consumption. Dynamic upsample (DySample) was used to innovate the feature fusion network to form generalized dynamic feature pyramid network (GDFPN), which improved the lightweight and efficiency of the model and made the model easier to deploy. Comparative experiments conducted on public PCB datasets demonstrate that the proposed algorithm achieves a 3.8% improvement in mean average precision (mAP), a 2.9% enhancement in precision, and a 26.9% reduction in model size, while achieving a detection speed of 138.1 frames per second. The deployment of the model on the RK3568 platform meets the requirements for real-time detection and embedded device implementation.

Keywords: printed circuit board ; YOLOv5s ; clustering algorithm ; feature extraction ; feature fusion

PDF (2691KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

周著国, 鲁玉军, 吕利叶. 基于改进YOLOv5s的印刷电路板缺陷检测算法. 浙江大学学报(工学版)[J], 2025, 59(8): 1608-1616 doi:10.3785/j.issn.1008-973X.2025.08.007

ZHOU Zhuguo, LU Yujun, LV Liye. Improved YOLOv5s-based algorithm for printed circuit board defect detection. Journal of Zhejiang University(Engineering Science)[J], 2025, 59(8): 1608-1616 doi:10.3785/j.issn.1008-973X.2025.08.007

近年来,PCB在电子制造行业中扮演着至关重要的角色. 在PCB的制造过程中,由于制造设备、材料质量以及环境因素等多种原因,常常会出现短路、缺口等缺陷. 传统的PCB缺陷检测依靠人工的目视检测[1] 、光学检测[2] 和电气检测[3]. 人工检测容易受到工人主观意识的影响,自动化的光学和电气检测虽然提高了效率,但在面对复杂和微小缺陷时效果不佳. 基于深度学习的PCB缺陷检测以其高精度、高效率和可扩展性,成为现代电子制造中不可或缺的检测技术.

深度学习在目标检测领域主要有双阶段检测[4] 与单阶段检测[5] 2种算法. 双阶段检测算法通过生成一系列可能包含目标的候选区域,随后对这些区域进行详细分类. 目前主流的双阶段算法主要是基于区域的卷积神经网络(region-based convolutional neural network,R-CNN)系列,其中包括Mask R-CNN、Fast R-CNN及Faster R-CNN等[6] . Hu等[7] 在Faster R-CNN框架内创新性地集成了特征金字塔网络,开展PCB缺陷提取. Tsai等[8] 结合支持向量回归与卷积神经网络,实现缺陷检测速度与精度的双重提升. Zhang等[9] 通过引入成本敏感残差卷积神经网络,解决了样本不平衡的问题. 在PCB缺陷工业检测中,两阶段目标检测算法虽然识别精度高,但存在资源占用率高、检测速度慢、模型体积大等问题. 为了提高检测效率,单阶段检测算法应运而生. 这类算法融合了候选区域的特征提取与预测框的定位,可以直接判断目标的类别并确定目标位置[10] . 常见的单阶段算法有YOLO(You Only Look Once )系列以及SSD(single shot multiBox detector)系列,它们以检测速度快、计算量小为特点. 对于PCB缺陷的检测,王永利等[11] 结合差分算法与卷积神经网络进行精细检测,但这两步处理策略占用了大量的计算资源. 苏佳等[12] 在YOLOv4模型的基础上,结合残差网络和二分K-means聚类优化初始锚框的策略,在一定程度上削减了计算量,但是聚类参数的调优过程较繁琐. 王淑青等[13] 将YOLOv5模型的主干网络替换为EfficientNet V2,这一改进显著提高了模型的检测速度,但小缺陷检测精度有所下降. 为了实现高速与高精度检测的平衡,Wang等[14] 在YOLO算法中引入混合注意力和跳跃空心空间卷积金字塔,显著增强了模型对PCB微小缺陷的识别能力,但模型尺寸较大,不利于部署. 基于上述研究可知,虽然单阶段目标检测算法具有较快的检测速度和良好的检测精度,但在微小缺陷检测方面表现不佳,且难以部署在嵌入式设备上. 本文对YOLOv5s模型的现有聚类方式和结构进行针对性改进,力求在实现检测精度与计算效率平衡的同时,满足便携式部署的需求. 本文的主要贡献如下.

(1)设计HDBK-means,使模型能够自动识别PCB不同尺度的缺陷区域,提升算法的定位精度.

(2)将RepNCSPELAN结合SCConv集成到主干网络中,显著降低了模型的参数量和计算复杂度.

(3)使用RDEGFPN重新整合YOLOv5s的颈部结构,提高模型对不同类型的PCB缺陷的检测能力.

(4)在Neck中引入DySample,在保持高性能的同时,显著降低了计算资源消耗.

1. Improved_YOLOv5s网络模型

从以下4个方面对YOLOv5s模型进行改进. 1)将模型原本的K-means算法更换为结合HDBSCAN和二分K-means的HDBK-means算法,对锚框进行重新聚类. 2)在主干网络中引入RepNCSPELAN_SCConv模块,以替代模型原本的特征提取模块. 3)使用RDEGFPN结构来替换原本的FPN结构,对颈部网络进行重新整合. 4)在Neck部分加入超轻量级的动态上采样器代替原本的线性插值采样. 改进后的Improved_YOLOv5s模型网络结构如图1所示. 其中,P1~P5为Backbone结构中的特征变化过程,SPPF为空间金字塔快速池化模块,Conv表示卷积操作,Concat表示特征拼接,DySample表示动态上采样,X3~X5为输出特征,RepNCSPELAN_SCConv 表示重建后的特征提取模块,CSDE表示RDEGFPN内部特征提取组件.

图 1

图 1   Improved_YOLOv5s网络的结构

Fig.1   Structure of Improved_YOLOv5s network


1.1. HDBK-means算法的重新聚类

为了提升YOLOv5s在PCB小目标缺陷检测方面的效能,本文提出创新的分层聚类算法——HDBK-means. 该算法融合了HDBSCAN(Hierarchical Density-Based Spatial Clustering of Applications with Noise )[15] 与二分K-means[16] 2种高级聚类技术. YOLOv5s原本所用的K-means算法在YOLOv5s中的应用往往受到初始聚类中心的随机性、异常值及孤立数据点的影响,导致聚类结果不稳定与不理想. 当缺陷具有不规则形状、重叠或受到噪声干扰时,采用K-means算法,无法精确地将缺陷从背景中分离出来. 采用HDBK-means算法,能够利用HDBSCAN的分层聚类技术对PCB数据集进行初步聚类处理,从而提高对复杂形状和噪声的鲁棒性. HDBSCAN是DBSCAN[17] 算法的扩展,它通过转化为分层聚类的方式,结合了聚类稳定性的概念,并使用了提取平面聚类的先进技术. 相较于传统的DBSCAN,HDBSCAN更擅长处理不同密度和形态的数据簇,能够有效剔除边缘数据点和孤立点的干扰,实现更卓越的聚类效果. 利用HDBSCAN算法的输出结果来确定最佳的聚类中心数量$ K $,采用二分K-means算法对PCB数据集进行二次精细聚类. 二分K-means算法是K-means的优化变体,它通过迭代地将数据簇细分为2个子簇,直至满足用户预设的簇数量,有效规避了传统K-means算法容易陷入局部最优的问题. 依据二分K-means算法的聚类结果,为PCB小目标检测生成了更精准的锚框. 其中代价函数IoU的损失计算式为

$ {\mathrm{loss}} = \sum\limits_{i = 1}^n {\sum\limits_{j = 1}^m {\left[ {1 - \frac{{{\mathrm{bo}}{{\mathrm{x}}_i} \cap {\mathrm{ce}}{{\mathrm{n}}_j}}}{{{\mathrm{bo}}{{\mathrm{x}}_i} \cup {\mathrm{ce}}{{\mathrm{n}}_j}}}} \right]} } . $

式中:$ {\mathrm{bo}}{x{\mathrm{}}}_{i} $为第$ i $个标定的框数值,$ {{\mathrm{cen}}}_{j} $为第$ j $个锚框数值. 结合YOLOv5s模型框架的实际情况,利用HDBSCAN聚类算法得到初始中心$ K=9 $,将$ K=9 $代入二分K-means算法,得出9个锚框为(25,18)、(14,35)、(20,49)、 (51,20)、 (30,36)、 (25,65)、 (47,36)、 (61,32)和(49,55). 针对PCB所具有的不同尺度缺陷,选取这9个尺寸的锚框,取代原YOLOv5s自动生成的锚框来进行模型训练. 最终PCB数据集的聚类结果如图2所示. 其中,F1F2分别为特征1、特征2的值. 结果表明,结合HDBSCAN和二分K-means,可以实现对不同尺度和形状的目标框的有效聚类.

图 2

图 2   HDBK-means算法的聚类结果

Fig.2   Clustering result of HDBK-means algorithm


1.2. 轻量化改进YOLOv5s网络

为了平衡YOLOv5s模型的检测速度与精度,满足便携式嵌入设备的需求,本文引入RepNCSPELAN[18] 模块重构主干网络,以降低模型计算量. 原本YOLOv5s算法是使用C3模块进行特征提取,但对于PCB缺陷特征提取的精细度不够高,难以充分捕捉PCB上细微或复杂的缺陷特征. 本文提出使用RepNCSPELAN_SCConv替换原本的C3模块. RepNCSPELAN采用重参数化和归一化卷积,结合Squeeze-and-Excitation和高效层聚合架构,强调在推理阶段的高效性和特征自适应增强,能够更高效地捕捉各个尺度的细节特征信息. RepNCSPELAN通过利用多个重参数归一化跨阶段连接部分(reparameterized normalized cross stage partial,RepNCSP)单元构建高效层聚合网络(efficient layer aggregation network,ELAN)结构,更有效地聚合多层特征. SCConv[19]利用特征图之间的空间和通道冗余进行卷积神经网络的压缩,旨在通过减少冗余计算并提升特征学习的能力,使得模型在保持高精度的同时控制计算量. 模块的详细结构可以参考图3. 图中,X为输入特征,c1为输入通道数,Y为输出特征,c2为输出通道数. 将改进后的RepNCSPELAN_SCConv应用于YOLOv5s,能够增强模型的特征提取能力,在保证高准确性的同时,提供快速的推理速度.

图 3

图 3   RepNCSPELAN的结构

Fig.3   Structure of RepNCSPELAN


1.3. 重参数化细节增强广义特征金字塔

PCB缺陷检测需要高精度地识别出细微的瑕疵和裂纹,YOLOv5s采用传统的FPN通过自顶向下的路径来融合多尺度特征,这会导致计算成本增加以及各个层间的信息交互不足. Efficient RepGFPN[20] 在特征融合中采用具有不同通道维度的设置来控制计算成本,删除了额外的上采样操作,能够更高效地进行多尺度特征融合. Efficient RepGFPN在特征融合中用跨阶段信息交互结构(cross-stage information interaction structure,CIIS) 替换原始的基于3×3卷积的特征融合,CIIS能够有效地交换高级语义信息和低级空间信息,提升网络对PCB各个尺度缺陷的识别精度.

由于PCB表面缺陷在形态、位置、大小上呈现出极大的差异性,尤其是缺口、多焊及断路缺陷,为了进一步提升网络的学习效率并增强对细节特征信息的提取,设计全新的跨阶段细节增强交互模块(cross-stage detail enhancement interaction module,CSDE),结构如图4所示. 图中,Concat为连接操作,DEConv为细节增强卷积,Rep为重参数化过程,BasicBlock_Revers为特征提取模块. CSDE将原CIIS模块中所有的Conv模块均替换为更高效的细节增强卷积(detail-enhanced convolution,DEConv)[21]模块. DEConv通过5个卷积层并行部署用于特征提取,利用卷积层的可加性将并行部署的卷积简化为单个标准卷积以节省计算量,并提取更丰富的PCB缺陷细节特征. 通过这一改进最终所形成的RDEGFPN结构能够更好地适应 PCB 表面缺陷的复杂性和多样性,提升整个网络在 PCB 缺陷检测任务中的性能.

图 4

图 4   跨阶段细节增强交互模块的结构

Fig.4   Structure of cross-stage detail enhancement interaction module


1.4. 动态上采样

在YOLOv5s的网络结构中,原本所使用的上采样方式基于简单的像素插值,忽视了特征图中蕴含的丰富语义信息. 此外,因精度受限和插值方法的局限性,难以精确重建缺陷的细微特征. 为了满足PCB缺陷检测的需求,提出在模型中引入动态上采样DySample[22]. DySample 采用点采样的方法实现动态上采样,规避了传统的基于内核的动态上采样方法中常见的复杂动态卷积和子网络构建过程,显著减少了参数量. 通过基于动态卷积和点采样的方法,上采样器能够更有效地利用特征图的语义信息而减少信息损失,同时减少计算量和GPU内存需求. 结合动态上采样算子DySample与RDEGFPN网络,形成新的广义动态特征融合金字塔——GDFPN,具体的网络结构如图1所示.

2. 实验与分析

2.1. 实验环境及数据集

模型训练部分的所有实验均在服务器端进行,CPU是3.5 GHz基本频率的Intel Core i5-13600KF,GPU为NVIDIA GeForce RTX 4060Ti,显存为16 GB ,python版本为3.8,pytorch版本为2.2.0,CUDA版本为11.8. 采用北京大学智能机器人实验室的公开数据集进行网络的训练和测试,如图5所示,图像缺陷类型大致分为鼠咬、短路、缺口、开路、毛刺及余铜等缺陷. 该数据集包含684张印刷电路板缺陷图像及标注文件,训练时将训练集、验证集、测试集以8∶1∶1的比例进行随机划分,但是由于数据集过少会导致过拟合的现象,对数据集采取数据扩充. 通过翻转、旋转、滤波去噪等方法,分别对训练集、验证集、测试集的缺陷图像进行扩充并保持比例不变,最终总共扩充到5 158张缺陷图像.

图 5

图 5   印刷电路板的不同类型缺陷图像

Fig.5   Images of different types of defects on PCBs


2.2. 瑞芯微RK3568平台的部署

RK3568作为瑞芯微电子打造的一款面向AI边缘推理的国产芯片,融合了四核ARM Cortex-A55处理器与Mali G52 2EE GPU,不仅支持高分辨率视频编解码,而且内置了具备0.8TOPS算力的NPU,专为轻量级AI应用设计. 瑞芯微提供的RKNN工具链极大地简化了模型转换与部署流程,使用户能够将PC端训练好的PyTorch模型通过ONNX中间格式,转换为RK3568专属的RKNN模型格式. 利用华为云ModelBox这一开源框架,实现模型的加载、推理与应用集成. 如图6所示为从模型训练到RK3568部署的全过程. 在服务器端进行数据处理,对模型进行优化与训练,生成初始模型文件. 通过RKNN工具链,将模型导出为设备可部署的格式. 通过ModelBox框架编写推理代码,对模型进行封装并部署到RK3568开发板上. 在HiLens平台管理AI应用,并部署到开发板,结合摄像头进行PCB样本的图像采集和预处理,利用NPU或GPU实现对PCB缺陷的实时检测功能.

图 6

图 6   模型训练与RK3568平台部署

Fig.6   Model training and RK3568 platform deployment


2.3. 评价指标

为了评估该模型对托盘检测的效果,引入精确率(precision)、召回率(recall)、平均识别精度(mean average precision)来进行分析. 其中TP表示真阳性,FP表示假阳性,FN 表示假阴性,TN表示真阴性.

1)精确率(precision)表示模型预测为正确的样本中正确的比例,即算法能够准确识别出目标缺陷的百分比,如下所示:

$ P = \frac{{{\mathrm{TP}}}}{{{\mathrm{TP}}+{\mathrm{FP}}}}. $

2)召回率(recall)是衡量模型对正类样本识别能力的指标,表示在所有真实为正的样本中被模型成功识别出来的比例. 计算如下所示:

$ R = \frac{{{\mathrm{TP}}}}{{{\mathrm{TP}}+{\mathrm{FN}}}}. $

3)单类平均精度(average precision):在精确率和召回率的基础上,对P进行取平均操作,计算如下所示:

$ {\mathrm{AP}}={\displaystyle {\int }_{0}^{1}P({r}){{{\mathrm{d}}r}}} . $

4)模型平均精度(mean average precision)表示数据集中所有类别AP的平均值,如下所示:

$ {\mathrm{mAP}} = {{N^{-1}\displaystyle \sum\limits_{i = 1}^N {{\mathrm{A}}{{\mathrm{P}}_i}} }} . $

2.4. 消融实验

绘制YOLOv5s和改进后的Improved_YOLOv5s的性能对比曲线,如图7(a)所示. 图中,Repoch为迭代次数. 从图7(a)可以看出,Improved_YOLOv5s模型的mAP优于原YOLOv5s. 各缺陷在改进前、后的检测对比结果如图7(b)所示.

图 7

图 7   YOLOv5s与Improved_YOLOv5s的各性能指标对比

Fig.7   Comparison of various performance indicator between YOLOv5s and Improved_YOLOv5s


通过消融实验分析模型性能的提升,实验结果见表1. 其中,S为模型大小,FLOPs为每秒浮点运算次数. 实验1中原始 YOLOv5s 模型达到94.8% 的 mAP,每秒浮点运算次数为15.8×109,模型大小为13.4 MB. 实验2使用 HDBK-means 聚类算法代替 K-means 算法重新聚类并获得锚框,使 mAP 提升了 1.6%,而未改变模型的参数量及计算量. 实验3将原始 C3 模块替换为 RepNCSPELAN_SSConv,与原始模型相比,FLOPs降低了 21.5%,mAP保持为94.4% . 实验4引入 DySample以增强网络的推理能力,使 mAP 提升了 0.3%. 实验5采用 RDEGFPN结构来增强特征融合,从而提高特征融合的效率,使 mAP 提升了 1.3%. 实验16为本文所提出的融合4种改进方法的模型. 实验结果显示,改进后的模型各个检测性能均有提升,其中召回率达到 95.5%,mAP 达到 98.6%,精确度达到 99.2%,分别比原始模型提升了 5.4%、3.8% 和 2.9%,模型大小减小了26.9%. 其余消融实验的结果如表1所示.

表 1   消融实验结果的对比

Tab.1  Comparison of ablation experimental result

实验编号HDBK-meansRepNCSPELAN
_SSConv
DySampleRDEGFPNR/%P/%mAP/%S/MBFLOPs/109
1××××90.196.394.813.415.8
2×××91.697.396.413.315.8
3×××89.196.694.49.212.4
4×××90.496.195.113.315.8
5×××90.898.196.113.315.6
6××90.196.695.19.412.4
7××91.698.895.313.115.8
8××92.298.097.513.215.5
9××91.196.894.79.512.5
10××93.498.197.39.612.2
11××94.298.397.613.215.6
12×93.197.495.910.012.6
13×92.197.895.39.512.5
14×94.899.298.213.315.6
15×93.998.997.110.112.7
1695.599.298.69.812.8

新窗口打开| 下载CSV


2.5. 各类算法性能的结果比较

为了验证设计的聚类算法和特征融合网络的优越性,本文选取常用的聚类算法,与改进模块进行对比实验. 这些聚类算法和改进模块均可以植入到YOLOv5s模型中,并在本文所扩充的PCB缺陷数据集上进行训练和验证. 通过对植入模块之后的模型在训练集上验证后的性能表现进行对比分析可知,本文所设计的改进在PCB缺陷数据集上表现出巨大的优势. 这些对比实验的结果如表23所示. 从表2可以看出,本文所设计的HDBK-means算法在保证计算量的同时,精度可以达到97.3%,mAP达到96.4%,与其他聚类算法相比均为最优. 从表3可以看出,本文所设计的GDFPN在保证较低计算量的同时,精度可以达到98.3%,mAP达到97.6%,与其他特征融合网络相比均为最优,因此所设计的HDBK-means聚类算法及GDFPN特征融合网络更适合所选的PCB数据集.

表 2   不同聚类算法植入后的模型检测性能对比

Tab.2  Comparison of model detection performance after implanting different clustering algorithms

聚类算法P/%mAP/%FLOPs/109
K-means96.394.815.8
K-means++96.895.115.8
Binary K-means96.995.415.8
DBSCAN97.195.815.8
Agglomerative Clustering94.791.815.8
Mean Shift94.190.115.8
HDBK-means97.396.415.8

新窗口打开| 下载CSV


表 3   不同特征融合网络植入后的模型检测性能对比

Tab.3  Comparison of model detection performance after implanting different feature fusion networks

特征融合方式P/%mAP/%FLOPs/109
BiFPN96.594.915.5
AFPN96.194.116.2
ASFF96.694.716.2
HSFPN97.195.214.5
GFPN97.595.616.1
GDFPN98.397.615.6

新窗口打开| 下载CSV


为了验证所提出的Improved_YOLOv5s模型的性能,选取YOLO系列如YOLOv7n[23]、YOLOv8n[24]等以及其他最新进行PCB表面缺陷检测的文献算法,在自建的PCB缺陷数据集上进行实验训练与评估对比. 对比指标包括检测精度、速度、参数量和模型体积等,以验证该模型在各项关键性能上的优势. 具体来说,在mAP方面,本文算法较Xiao[25] 、Zhou[26] 、Yuan[27] 、Tang[28] 和Du[29] 等提出的算法分别提升了2.8%、2.1%、1.3%、3.1%和2.2%,较选取的2种YOLO模型分别提高了3.3%和4.8%,达到了所有算法中最高的98.6%. 在检测速度方面,本文算法在服务器端的表现尤为突出,较文献[25~29]算法分别提升了20、45.6、2.3、44.7、54.8及13.9帧/s,较选取的2种YOLO模型分别提高了46.3和10帧/s,达到了所有算法中最快的138.1 帧/s. 即使在嵌入式设备上,本文算法的检测速度也达到了66.1 帧/s,在所有算法中最快,且检测效果与在服务器端相同,满足工业部署时信息采集的鲁棒性、检测实时性及轻量级便携部署的要求. 在模型参数量和体积方面,本文算法通过优化模型结构,降低了模型的参数量和体积,较原始模型分别降低了19.0%和26.8%,实现了轻量级便携部署. 以上几种不同模型的对比实验结果如表4所示. 其中,v为检测速度.

表 4   不同文献算法以及YOLO系列算法检测结果对比

Tab.4  Comparison of detection results between different literature algorithms and YOLO series algorithms

算法P/%mAP/%S/MBFLOPs/109v/(帧·s−1)
服务器RK3568
文献[25]算法93.295.85.812.6128.046.1
文献[26]算法94.796.53.85.288.420.5
文献[27]算法93.997.310.511.8137.863.8
文献[28]算法91.695.592.341.492.521.4
文献[29]算法93.296.420.112.848.911.3
YOLOv5s96.394.813.415.8128.452.2
YOLOv7-tiny98.495.36.0310.282.519.8
YOLOv8n96.793.85.968.2134.856.1
Improved_YOLOv5s99.298.69.812.8138.166.1

新窗口打开| 下载CSV


图8(a)、(b)所示为YOLOv5s算法和Improved_YOLOv5s算法的检测性能. 选取包含6种缺陷类型的PCB验证数据集,分别对2种算法进行测试. 从图8(a)可以看出,YOLOv5s模型容易产生漏检且对各个缺陷的检测准确率都较低,如鼠咬精度仅为0.30~0.40,开路精度仅为0.3. 从图8(b)可以看出,利用Improved_YOLOv5s模型,可以将鼠咬精度提高至0.90~1.00,开路精度提高至0.9,并且在检测6种缺陷位置时均优于YOLOv5s算法,大部分准确率均保持为90%~100%.

图 8

图 8   YOLOv5s与Improved_YOLOv5s的检测效果对比

Fig.8   Comparison of detection effect between YOLOv5s and Improved_YOLOv5s


3. 结 语

本文提出基于改进YOLOv5s的PCB缺陷检测算法,主要包括HDBK-means聚类算法、RepNCSPELAN_SCConv特征提取模块和广义动态特征融合金字塔等改进. 实验结果表明,该算法在PCB数据集上的mAP达到98.6%,检测速度为138.1帧/s,模型大小为9.8 MB,有效平衡了检测精度、推理速度和模型轻量化的要求. 在目前的工作中,模型大小虽然满足了一般工业设备部署的要求,但在某些复杂情况下存在部署设备的困难. 未来,将致力于对目标算法进行剪枝和蒸馏,满足特殊和复杂环境下工业设备的部署需求.

参考文献

XIAO Z, WANG Z, LIU D, et al

A path planning algorithm for PCB surface quality automatic inspection

[J]. Journal of Intelligent Manufacturing, 2021, 33 (6): 1- 13

[本文引用: 1]

黄银花, 李东波. 高速高精度印刷电路板表面贴装自动光学检测系统的研究 [J]. 机床与液压, 2014, 42(21): 105-108.

[本文引用: 1]

HUANG Yinhua , LI Dongbo. Research on high-speed and high-precision automatic optical inspection system for surface mount technology of printed circuit board [J]. Machine Tool and Hydraulics, 2014, 42(21): 105-108.

[本文引用: 1]

赵翔宇, 周亚同, 何峰, 等

分层提取匹配印刷电路板元器件缺陷检测

[J]. 仪表技术与传感器, 2018, (8): 84- 89

DOI:10.3969/j.issn.1002-1841.2018.08.022      [本文引用: 1]

ZHAO Xiangyu, ZHOU Yatong, HE Feng, et al

Defect detection of printed circuit board components based on hierarchical extraction and matching

[J]. Instrument Technique and Sensor, 2018, (8): 84- 89

DOI:10.3969/j.issn.1002-1841.2018.08.022      [本文引用: 1]

郭庆梅, 刘宁波, 王中训, 等. 基于深度学习的目标检测算法综述 [J]. 探测与控制学报, 2023, 45(6): 10-20.

[本文引用: 1]

GUO Qingmei, LIU Ningbo , WANG Zhongxun, et al. A review of object detection algorithms based on deep learning [J]. Journal of Detection and Control, 2023, 45(6): 10-20.

[本文引用: 1]

赵景波, 杜保帅

基于深度学习的小目标检测技术发展

[J]. 电光与控制, 2023, 30 (2): 63- 70

DOI:10.3969/j.issn.1671-637X.2023.02.012      [本文引用: 1]

ZHAO Jingbo, DU Baoshuai

Development of small object detection technology based on deep learning

[J]. Electronics Optics and Control, 2023, 30 (2): 63- 70

DOI:10.3969/j.issn.1671-637X.2023.02.012      [本文引用: 1]

谢富, 朱定局

深度学习目标检测方法综述

[J]. 计算机系统应用, 2022, 31 (2): 1- 12

[本文引用: 1]

XIE Fu, ZHU Dingju

A review of deep learning-based object detection methods

[J]. Computer Systems and Application, 2022, 31 (2): 1- 12

[本文引用: 1]

HU B, WANG J H

Detection of PCB surface defects with improved faster-RCNN and feature pyramid network

[J]. IEEE Access, 2020, (8): 108335- 108345

[本文引用: 1]

TSAI D-M, CHOU Y-H

Fast and precise positioning in PCBs using deep neural network regression

[J]. IEEE Transactions on Instrumentation and Measurement, 2019, 69 (7): 4692- 4701

[本文引用: 1]

ZHANG H, JIANG L, LI C

CS-ResNet: cost-sensitive residual convolutional neural network for PCB cosmetic defect detection

[J]. Expert Systems with Applications, 2021, 185: 115673

DOI:10.1016/j.eswa.2021.115673      [本文引用: 1]

张艳, 张明路, 吕晓玲, 等

深度学习小目标检测算法研究综述

[J]. 计算机工程与应用, 2022, 58 (15): 1- 17

DOI:10.3778/j.issn.1002-8331.2112-0176      [本文引用: 1]

ZHANG Yan, ZHANG Minglu, LV Xiaoling, et al

A review of deep learning-based small object detection algorithms

[J]. Computer Engineering and Applications, 2022, 58 (15): 1- 17

DOI:10.3778/j.issn.1002-8331.2112-0176      [本文引用: 1]

王永利, 曹江涛, 姬晓飞

基于卷积神经网络的PCB缺陷检测与识别算法

[J]. 电子测量与仪器学报, 2019, 33 (8): 78- 84

[本文引用: 1]

WANG Yongli, CAO Jiangtao, JI Xiaofei

PCB defect detection and recognition algorithm based on convolutional neural network

[J]. Journal of Electronic Measurement and Instrumentation, 2019, 33 (8): 78- 84

[本文引用: 1]

苏佳, 贾欣雨, 侯卫民

基于YOLO-J的PCB缺陷检测算法

[J]. 计算机集成制造系统, 2024, 30 (11): 3984- 3998

[本文引用: 1]

SU Jia, JIA Xinyu, HOU Weimin

PCB defect detection algorithm based on YOLO-J

[J]. Computer Integrated Manufacturing Systems, 2024, 30 (11): 3984- 3998

[本文引用: 1]

王淑青, 张子言, 朱文鑫, 等

基于改进YOLOv5的PCB板表面缺陷检测

[J]. 仪表技术与传感器, 2023, (5): 106- 111

DOI:10.3969/j.issn.1002-1841.2023.05.020      [本文引用: 1]

WANG Shuqing, ZHANG Ziyan, ZHU Wenxin, et al

Surface defect detection of PCB based on improved YOLOv5

[J]. Instrument Technique and Sensor, 2023, (5): 106- 111

DOI:10.3969/j.issn.1002-1841.2023.05.020      [本文引用: 1]

WANG X, ZHANG H Y, LIU Q H, et al

You-only-look-once multiple-strategy printed circuit board defect detection model

[J]. IEEE Multimedia, 2024, 31 (1): 76- 87

[本文引用: 1]

GEOFFREY S, MAHMOOD A-K. An implementation of the HDBSCAN* clustering algorithm [J], Applied Sciences, 2022, 12(5): 2405.

[本文引用: 1]

WANG Z, WU L, LI T, et al

A smoke detection model based on improved YOLOv5

[J]. Mathematics, 2022, 10 (7): 1190

DOI:10.3390/math10071190      [本文引用: 1]

葛程鹏, 赵东, 王蕊, 等

基于改进DBSCAN和距离共识评估的分段点云去噪方法

[J]. 系统仿真学报, 2024, 36 (8): 1800- 1809

[本文引用: 1]

GE Chengpeng, ZHAO Dong, WANG Rui, et al

A denoising method for segmented point cloud based on improved DBSCAN and distance consensus evaluation

[J]. Journal of System Simulation, 2024, 36 (8): 1800- 1809

[本文引用: 1]

CHIEN-YAO W, YEH IH, HONG-YUAN MARK L. YOLOv9: learning what you want to learn using programmable gradient information [EB/OL]. (2024-02-29) [2024-08-01]. https://doi.org/10.48550/arXiv.2402.13616.

[本文引用: 1]

HE J J, ZHANG S H, YANG C H, et al. Pest recognition in microstates state: an improvement of YOLOv7 based on spatial and channel reconstruction convolution for feature redundancy and vision transformer with bi-level routing attention [J]. Frontiers in Plant Science, 2024, 15: 1327237.

[本文引用: 1]

XU X Z, JIANG Y Q, CHEN W H, et al. DAMO-YOLO : a report on real-time object detection design [EB/OL]. (2023-04-24) [2024-08-01]. https://doi.org/10.48550/arXiv.2211.15444.

[本文引用: 1]

CHEN Z X, HE Z W, LU Z-M

DEA-Net: single image dehazing based on detail-enhanced convolution and content-guided attention

[J]. IEEE Transactions on Image Processing, 2024, 33: 1002- 1015

DOI:10.1109/TIP.2024.3354108      [本文引用: 1]

LIU W Z, LU H, FU H T, et al. Learning to upsample by learning to sample [EB/OL]. (2023-08-29) [2024-08-01]. https://doi.org/10.48550/arXiv.2308.15085.

[本文引用: 1]

CHENG C S, HOU C J, WEN X, et al

Small-sample underwater target detection: a joint approach utilizing diffusion and YOLOv7 model

[J]. Remote Sensing, 2023, 15 (19): 4772

DOI:10.3390/rs15194772      [本文引用: 1]

GUO A, SUN K Q, ZHANG Z Y

A lightweight YOLOv8 integrating FasterNet for real-time underwater object detection

[J]. Journal of Real-Time Image Processing, 2024, 21 (2): 1- 15

[本文引用: 1]

XIAO G S, HOU S L, ZHOU H Y

PCB defect detection algorithm based on CDI-YOLO

[J]. Scientific Reports, 2024, 14 (1): 7351

DOI:10.1038/s41598-024-57491-3      [本文引用: 3]

ZHOU G A, YU L J, SU Y X, et al

Lightweight PCB defect detection algorithm based on MSD-YOLO

[J]. Cluster Computing, 2023, 27 (3): 3559- 3573

[本文引用: 2]

YUAN Z H, TANG X Y, NING H, et al

LW-YOLO: lightweight deep learning model for fast and precise defect detection in printed circuit boards

[J]. Symmetry, 2024, 16 (4): 418

DOI:10.3390/sym16040418      [本文引用: 2]

TANG J L, LIU S B, ZHAO D X, et al

PCB-YOLO: an improved detection algorithm of PCB surface defects based on YOLOv5

[J]. Sustainability, 2023, 15 (7): 5963

DOI:10.3390/su15075963      [本文引用: 2]

DU B W, WAN F, LEI G B, et al

YOLO-MBBi: PCB surface defect detection method based on enhanced YOLOv5

[J]. Electronics, 2023, 12 (13): 2821

DOI:10.3390/electronics12132821      [本文引用: 3]

/