学术论文投稿/征稿

欢迎您!请

登录 注册

手机学刊吧

学刊吧移动端二维码

微信关注

学刊吧微信公众号二维码
关于我们
首页 > 学术论文库 > 理工论文 基于改进 YOLOv5 的 PCB 缺陷检测方法研究论文

基于改进 YOLOv5 的 PCB 缺陷检测方法研究论文

28

2024-04-24 14:34:47    来源:    作者:hemenglin

摘要:随着工业制造业的发展,印刷电路板(PCB) 在电子产品制造中愈发重要。在PCB 生产过程中,存在着各种各样的不良缺 陷,因此急需一种高效的PCB 缺陷检测方法

  摘要:随着工业制造业的发展,印刷电路板(PCB) 在电子产品制造中愈发重要。在PCB 生产过程中,存在着各种各样的不良缺 陷,因此急需一种高效的PCB 缺陷检测方法。针对传统的YOLOv5 目标检测算法中对于PCB 图像检测中存在小目标缺陷检测准确 率低的问题,提出了一种基于改进的YOLOv5 的PCB 缺陷检测方法。首先,针对小目标缺陷存在漏检的问题,在YOLOv5 的特征提 取网络中加入了高效通道注意力机制(SE) 模块,提高对小目标缺陷的特征提取能力,从而提高小目标缺陷的检测精度;其次,为了优化和改进原YOLOv5 算法,采用加权损失函数代替原来的损失函数,以充分学习图像的各种特征。在北京大学机器人实验室 公开的PCB 瑕疵数据集上进行测试,实验结果显示,改进后的模型提高了小目标缺陷检测效果,其mAP 值为94. 54% , 比原算法模型提高了2. 1% 。可以准确地完成工业生产的印制电路板的缺陷检测任务。

  关键词:PCB; 缺陷检测;YOLOv5; 注意力机制;损失函数

  Research on PCB Defect Detection Method Based on Improved YOLOv5

   Huang Xi , Zhu Zhaoyou , Ye Haipeng , Liu Da

  ( School of Mechanical and Electronic Engineering ,East China University of Technology ,Nanchang 330013 ,China )

  Abstract :With the development of industrial manufacturing , printed circuit board ( PCB ) is becoming more and more important in the manufacture of electronic products. In the process of PCB production ,there are many kinds of bad defects ,so an efficient PCB defect detection method is urgently needed. A PCB defect detection method based on improved YOLOv5 is proposed to solve the problem of low accuracy of small target defect detection in PCB image detection in traditional YOLOv5 target detection algorithm. Firstly , in order to solve the problem of missing detection of small target defects ,an efficient channel attention mechanism ( SE ) module is added to the feature extraction network of YOLOv5 to improve the feature extraction ability of small target defects ,thus improving the detection accuracy of small target defects. Secondly , in order to optimize and improve the original YOLOv5 algorithm ,a weighted loss function is used to replace the original loss function , so as to fully learn various features of the image. The test is carried out on the PCB defect data set published by Peking University Robotics Laboratory. The experimental results show that the improved model improves the small target defect detection effect ,and its mAP value is 94. 54% ,which is 2. 1% higher than the original algorithm model. It can accurately complete the defect detection task of printed circuit boards in industrial production.

  Key words :PCB ;defect detection ;YOLOv5 ;attention mechanism ;loss function

  引言

  随着电子技术的不断发展,电路板也在不断地发展和应用。PCB ( Printed Circuit Board ), 即印刷电路板,是电子产品中不可缺少的一部分。当今的电子设备中,几乎每个方面都需要使用PCB, 如:汽车、医疗设备、工业设备等。然而,由于生产过程涉及到多个环节,当 生产过程不严谨或设备出现故障等情况时,就有可能会 导致PCB 存在各种缺陷,如短路、开路、氧化、未焊接 等,严重影响产品质量和性能。因此,对PCB 进行缺陷 检测变得尤为重要。

  传统的PCB 缺陷检测方法主要依赖人工检测,效率低、成本高、易造成漏检和误检等问题[1] 。而随着深度学习技术的逐渐成熟和应用,利用其强大 的模式识别和学习能力,开发一种基于深度学习的 PCB 缺陷检测算法,可以有效提高PCB 生产的质量 和效率。

  近几年以来,随着深度学习技术的快速发展,其在 图像检测领域展现出优良的效果。这提供了研究人员一 个可行的思路:可以利用深度学习算法模型对PCB 的微 小缺陷进行检测。目前常见的目标检测算法主要有两种 类型[2]。其中,双阶段检测算法是将检测问题分成两个 阶段来处理,在第一阶段中,划出包含目标信息的候选 区域,在第二阶段对候选区域进行分类等后续处理。目 前常用的Two - stage 检测算法有卷积神经网络( R -CNN ); 由Ren 等[3]提出的卷积神经网络改进的Faster R- CNN 算法。单阶段检测算法目前比较常见有几种:由 俞伟聪[4]提出的一种检测速度较快的SSD 检测算法;学 者Redmon[5 ] 提出的YOLO 系列算法。

  根据工业生产PCB 进行表面小目标缺陷检测的特 点,有学者在2020 年采用深度学习的方法对PCB 中的各 种缺陷进行检测时,先将完整的PCB 图像进行分割成小 图像块,选用FasterR- CNN 网络进行初步检测,并用优化后的网络再次对PCB 进行缺陷检测,得到较好的检测结果[6]。2021 年,胡珊珊等[7]在对PCB 线路的缺陷进行检测时,先将整个的PCB 图像分割成600 像素× 600像素大小的图像块,然后通过卷积神经网络对PCB 图 像中的特征进行提取,并对提取到的特征在多个尺度 上进行融合,最后将融合后的特征对缺陷的位置与类 别信息进行预测。

  本文依据工业上生产的PCB 图片目标检测的特点, 选择拥有出色检测精度和速度的YOLOv5 算法。YOLOv5版本相较于之前的版本增加了许多数据处理方式以达到提高训练模型的精度且降低训练时间的目的。例如用于数据扩增的Mosaic、Cutout 等方式[8]。但是对于小目标的检测,YOLOv5 算法并没有展现出太好的针对性。因 此,本文改进该版本的算法,并提出基于改进的 YOLOv5 的小目标检测方法。首先,在骨干网络的特征 提取模块中加入注意力机制(SE) 模块,提高算法对小目标区域的关注度,增强对小目标特征的提取能力。其 次,采用加权损失函数代替YOLOv5 原有的损失函数,以充分学习图像的特征。

  1 YOLOv5 算法

  本文采用YOLOv5 目标检测算法来检测PCB 图像中的微小缺陷。它用于目标检测的优势在于保证准确率的同时拥有较快的检测速度[9]。基于这点,YOLO 目标检测算法广泛应用于工业检测的不同场景。故本文选用改 进后的YOLOv5 目标检测算法来实现工业上的PCB 缺陷 检测。其网络结构如图1所示。

1.png

  YOLOv5 目标检测算法的主要由输入端、基准网络模块(Back-bone )、颈部模块(Neck )、输出模块(Head ) 构成[10] 。

  首先是在YOLOv5 网络的输入端输入图像,然后通 过Backbone 模块提取图像特征;Neck 模块是通过组合图 像特征的卷积网络层,将图像特征输出到Head 模块;Head 模块采用3个尺度进行预测,每个尺度都具有3个 界限值(BoundingBox), 最后对目标进行类别预测。该模型在检测工业上体积较大目标时明显有天然的优势,而在工业上生产的印制电路板的表面缺陷都是小目标,因此,需要在工业PCB 缺陷目标检测任务上对原始模型 进行优化改进。

  2 改进YOLOv5 算法

  2. 1 基于SE 注意力机制的YOLOv5

  由于工业上拍摄的图像中的PCB 缺陷较小,为了提高模型的识别精度,将压缩-激励注意力机制(Squeeze and Excitation Module ) 模块[11] 加入YOLOv5 网络结构中, 利用注意力机制的特点,提高检测小目标缺陷的精度。

  改进后的骨干网络将以残差块主干分支C3 层的输出作为 SE 模块的特征输入,用不降低维度的通道级全局平均池 化(GAP) 来压缩特征图,用全连接层对压缩过的特征图进行非线性变换,用相关性拟合求得每个通道的权重,最后用Sigmoid 函数生成通道权值[12] , 再将原始输入特征处理后得到有关注度的特征。

  在工业生产PCB 的图像缺陷检测任务中,原YOLOv5模型的许多的训练资源被用于无效目标区域。为了解决这 个问题,本文将SE- Net 注意力添加到YOLOv5 目标检测 模型的特征提取层,具体网络结构如图2所示。由图可 知,改进后的网络结构可以选择性地增强包含小目标特征 的细节,抑制不相关或弱特征。本文提出的模型在骨干网 络的最后一层加入了SE 注意力机制。

2.png

  2. 2 加权损失函数

  YOLOv5 算法的损失函数一般由分类损失、置信度损失以及边界框损失三部分构成[13]。YOLOv5 算法中置信度损失和分类损失用的是二元交叉熵损失函数,GIOU作为边界框回归损失函数[14] 。GIOU 损失函数继承了IOU 的优点的同时,克服了IOU 损失函数的部分缺点。计算损失公式如下。

(1.png

  式中:B 为预测框;B gt 为真实框;C 为包含预测框和真实框的最小闭合框。

  由GIOU 公式可得出GIOU 类似IOU 采用预测框和真实框之间的距离来度量损失函数[15]。因此,GIOU 在关注预测框和真实框之间的重复区域时,还关注其他非重复区域。能 更好地反映预测框和真实框地重合度。但是由于GIOU 十分 依赖IOU, 使其两个框相交时,在水平和垂直方向上收敛慢,误差较大,很难收敛,致使GIOU 不够稳定。

  2. 3 改进YOLOv5 的损失函数

  为了增强学习图像特征,本文设计的改进后的YOLOv5 模型采用加权损失函数,包括交叉熵损失函数、IOU 系数损失函数和Focal loss 损失函数[16] 。

  ( 1 ) 交叉熵损失函数

  交叉熵损失函数公式如下:

(2.png

  式中:yt 为真实掩膜图像;yp 为改进后的YOLOv5s 目标检测预测结果。

  (2 ) IOU 系数损失函数

  IOU 系数是用于衡量两个集合的重叠大小程度[17],定义如下:

(3.png

  Focal loss 损失函数能够让模型专注于更难分类的样本,从而加强对正样本的关注度[18] 。可以改善小目标不均衡的现象,对此情况比原YOLOv5 模型中使用的交叉 熵损失函数要好很多。改进后模型的损失函数为3个损失函数的加权:

(7.png

  

      3 实验与结果分析

  3. 1 数据集

  工业上生产的PCB 板的缺陷产品较少,PCB 缺陷图 像的拍摄和采集较为困难,而且面临工业生产环境下缺 陷目标小,光照不均匀等问题。为了保证PCB 缺陷数据集的准确性,本文选用了PKU- Market- PCB 数据集。该数据集是由北京大学实验室发布的印制电路板(PCB ) 瑕疵数据集[19] , 其中包含1386 张图和多种不同的PCB缺陷类型。共有6种常见的PCB 缺陷:缺失孔,鼠标咬 伤,开路,短路,杂散,伪铜。图3所示为部分数据集 的样图。将该数据集划分为训练集和验证集。

3.png

       3. 2 实验平台

  本文搭建的实验环境为:AMD Ryzen 7 5800H 处理器,基准频率为3. 20 GHz , GPU 为RTX3070 , 8GB 显存,Windows 操作系统。

  3. 3 评价指标

  在目标检测领域,评价一个目标检测模型的效果是根据该模型的准确率(Precision )、召回率(Recall )、IOU 在0. 5 以上时的平均精度(mAP @ 0. 5. mean Average Precision )、IOU 在0.5 至0.95 区间时的平均精度(mAP@ 0. 5 : 0. 95 ) 来评估[20] 。

  ( 1 ) 准确率与召回率

  准确率就是模型成功检测出的样本数量和所有样本 数量的比值,召回率就是存在检测目标的样本被预测为存在检测目标的概率。准确率与召回率的计算公式如式(8 ) 和式(9 ) 所示。

(8.png

  其中NTP 是指模型预测结果正确判断分类的样本数;NFN 是指模型预测结果被错误判定为错误样本的正确样本 数;NFP 是指模型预测结果中被错误判定为正确样本的负样本数。

  (2 ) AP , mAP@ 0. 5 和mAP@ 0. 5 : 0. 95AP ( Average Precision ) 为单个类别检测目标的平均 精度,mAP ( mean Average Precision ) 是指对所有类别的目标检测的平均准确率进行加权求平均,即平均精度均值。mAP@ 0. 5 是指在IOU 大于0. 5 时的平均精度,而mAP@ 0. 5 : 0. 95 就是从IOU 等于0. 5 开始,以0. 05 为步长,直到IOU 等于0. 95 为止的mAP 的平均数。mAP 的计算公式如下所示:

(10.png

  式中:R 为召回率;P 为准确率。

  3. 4 实验数据

  将印制电路板缺陷数据集分别通过两个模型开始训 练,将迭代次数定为200 次,训练结束后得到的实验数据如图4所示。由图可知,改进后的YOLOv5s- Improve模型的mAP , Precision 和Recall 都提高了。

  改进后的模型检测的6个类别的PCB 缺陷的精度如 表1所示,对比两个模型实验数据可知,改进后的 YOLOv5s- Improve 模型,每个缺陷类别的检测精度都有 所提高。

  通过实验验证改进的算法的效果,将改进的算法与 原模型的检测效果进行比较,检测结果如表2所示。由 表可知,相比YOLOv5 模型,改进后的YOLOv5 - Improve模型的检测精度、检测速度都获得了较好的结果。其中,mAP 比原模型精度都高。YOLOv5 - Improve 模型和原 YOLOv5 模型的检测时间相近。其中,在检测精度上,YOLOv5- Improve 模型比YOLOv5 模型提高了2. 1% 。

表2.png

  在原来数据集上对改进算法的效果进行验证,对 PCB 缺陷验证集进行测试并且与原算法进行对比,最终结果如图5~6 所示。

5.png

  原YOLOv5 模型存在对小目标PCB 缺陷的漏检情况,改进后的模型可以改善漏检情况,提高目标缺陷的检测 精度。验证结果显示,通过在YOLOv5 模型中加入注意 力机制,可以提高模型对小目标检测的精度,改善了漏 检情况。

  4 结束语

  本文针对工业生产的印制电路板的缺陷检测精度较 低的问题,提出了基于改进YOLOv5 的PCB 缺陷检测算 法。该算法加入了SE 注意力机制加强网络提取目标特征 图信息,加强缺陷检测效果。为了解决不同类别样本数 量不平衡对模型分类损失产生的问题,使用加权损失函 数改善PCB 图像中小目标缺陷不同类别不平衡导致的模 型精度较低的问题。并采用在北京大学发布的PKU -Market- PCB 数据集上进行测试,多次对比实验结果表 明,本文所改进的新模型比原YOLOv5 模型提高了2. 1%的mAP, 在实际工业生产PCB 场景下,新模型在拥有不 错的检测速度的同时提升检测的精度,可以准确地检测 出工业上成品印制电路板缺陷。


参考文献:

  [ 1 ] 卢小康,欧阳华兵,陈田,等.基于深度学习的PCB 焊锡缺陷检测[J/OL ] . 无线电工程:1-8 .

  [2]李杰.基于单阶段网络的小目标检测算法研究[D]. 成都:电 子科技大学,2022.

  [3 ] 杜芸彦.基于Faster R- CNN 改进的少样本目标检测算法研 究[D ] . 成都:中国科学院大学(中国科学院光电技术研究 所),2022.

  [4 ] 陆维宽,周志立,阮秀凯,等.基于注意力机制与多尺度融合 的PCB 缺陷检测[J/OL ] . 无线电工程:1-11 .

  [5 ] 王琳毅,白静,李文静,等.YOLO 系列目标检测算法研究进展 [ J/OL ] . 计算机工程与应用:1-17

  [6 ] 胡江宇,贾树林,马双宝.基于改进级联Faster RCNN 的PCB 表 面缺陷检测算法[J]. 仪表技术与传感器,2022(7):106-110.

  [7 ] 胡珊珊,肖勇,王保帅,等.基于深度学习的PCB 缺陷检测研 究[J ] . 电测与仪表,2021 ,58 (3 ):139-145 .

  [8]董延华,李佳澳.改进YOLOv5s 遥感图像识别算法研究[J] . 吉林师范大学学报(自然科学版),2023 ,44 (2 ):117-123 .

  [9 ] 罗逸豪,刘奇佩,张吟,等.基于深度学习的水下图像目标检 测综述[J/OL]. 电子与信息学报:1-15 .

  [ 10 ] 董大兴,刘捍植,武泽,等.基于人工智能的PCB 缺陷检测系 统[J ] . 自动化技术与应用,2023 ,42 (3 ):129-133 .

  [ 11 ] 张晨光,滕桂法,丁文卿.基于改进YOLO V5s 模型的遥感图 像目标检测及应用[J/OL]. 计算机仿真:1-12 .

  [ 12 ] 周晋伟,王建平.YOLO 物体检测算法研究综述[J ] . 常州工 学院学报,2023 ,36 ( 1 ):16-18 .

  [13]叶嘉欣.基于深度学习的两阶段目标检测算法综述[J]. 互 联网周刊,2023 (5 ):16-18 .

  [ 14 ] Xu Shubo ,Zhang Minghua ,Song Wei , et al. A systematic review and analysis of deep learning-based underwater object detection[ J ] . Neurocomputing ,2023 ,527.

  [ 15 ] 张鹏飞,王淑青,王年涛,等.基于改进MobileNetV3 的PCB 裸板缺陷检测[J ] . 湖北工业大学学报,2023 ,38 ( 1 ):27-32 .

  [16]黄允,徐海达,张健滔.基于深度学习的PCB 缺陷检测[J] . 工业控制计算机,2022 ,35 ( 11 ):76-77 .

  [ 17 ] 徐丽丽.基于CT- YOLOv5 的PCB 缺陷检测方法[J ] . 佳木 斯大学学报(自然科学版),2023 ,41 ( 1 ):38-41 .

  [ 18 ]许思昂,李艺杰,梁桥康,等.基于改进YOLOv5 算法的PCB 裸板缺陷检测[J ] . 包装工程,2022 ,43 ( 15 ):33-41 .

  [ 19 ] 苏佳,贾欣雨,侯卫民.基于YOLO- J 的PCB 缺陷检测算法 [J/OL]. 计算机集成制造系统:1-20 .

  [20 ] 徐胜军,胡巧艳,韩九强,等.用于PCB 缺陷检测的增强上下文信息Yolov4_tiny 算法[J ] . 计算机测量与控制,2022 , 30 (9 ):80-86 .