基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记
基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计
此内容为付费资源,请付费后查看
90
立即购买
您当前未登录!建议登录后购买,可保存购买订单
付费资源

资源概况

购买将获得以下全部内容:

  1. 数据集(已全部标注),可单独购买:https://www.csds.chat/3035.html
  2. 完整系统(数据集+训练好的模型+UI界面+文件说明+运行说明),可单独购买:https://www.csds.chat/3050.html
  3. 配套论文报告(查重30%以下),可单独购买:https://www.csds.chat/3031.html

其他注意:

  1. 一经购买,概不退款,不提供指导,每年数量有限,售完为止。
  2. 可额外付费50元,远程操作配置环境跑通程序,请加微信:P1313918

资源介绍(截取部分,完整请购买)

视频演示:https://www.bilibili.com/video/BV1C9V5egERb/?spm_id_from=333.1387.upload.video_card.click

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

摘  要

随着人工智能技术的飞速发展,深度学习在图像处理领域取得了显著的成就,尤其是在PCB印刷板缺陷检测方面。PCB印刷板缺陷检测作为工业视觉检测领域的一个重要分支,其应用广泛,包括但不限于电子制造质量控制、自动化生产线检测和智能设备维护等。本文提出了一种基于深度学习的PCB印刷板缺陷检测系统,该系统采用最新的YOLOv8算法作为核心检测模型,并利用PySide6框架构建了用户友好的图形用户界面(GUI)。YOLOv8算法以其高效的检测速度和较高的准确率在实时缺陷检测领域具有明显优势,而PySide6则为系统提供了一个直观、交互性强的操作界面。

本文首先介绍了PCB印刷板缺陷检测技术的发展历程和深度学习在该领域的应用,并对YOLO系列算法进行了综述。接着,详细阐述了系统的设计方案,包括系统架构、数据预处理、模型设计以及界面设计。在系统实现部分,描述了环境搭建、模型训练、界面实现以及系统测试的过程。通过实验,对比了YOLOv5和YOLOv8两种算法训练的检测模型,并验证了基于YOLOv8算法训练的模型的系统在不同场景下的PCB印刷板缺陷检测性能,包括检测精度、速度和模型的泛化能力。实验结果表明,该系统在保持较高检测准确率的同时,能够实现快速的检测速度,满足实时PCB印刷板缺陷检测的需求。最后,本文总结了研究成果,并对未来的研究方向进行了展望。该研究不仅为实时PCB印刷板缺陷检测提供了一种有效的解决方案,也为深度学习在工业视觉检测领域的应用提供了新的视角。

关键词:目标检测 深度学习 YOLO算法 印刷板缺陷检测

第1章 绪论

1.1 研究背景和意义

1.1.1研究背景

随着电子技术的快速发展,PCB在电子设备中的作用日益凸显.PCB缺陷检测技术的研究对于提高电子产品的质量和可靠性至关重要,印刷电路板(Printed Circuit Board,简称PCB)是现代电子设备中的核心组件,其制造质量直接影响到电子产品的性能和可靠性.在PCB的生产过程中,由于工艺复杂、操作环境多变等因素,难免会产生各种缺陷,如线路短路、焊接不良、元件缺失等.这些缺陷若未被及时发现和修复,将严重影响产品的质量和安全性,增加企业的维修成本和市场风险.传统的PCB缺陷检测方法主要依赖人工目视检查,这种方法效率低下、易受主观因素影响,且难以满足大规模生产的需求.随着计算机视觉技术的发展,基于视觉的自动检测技术因其高效、准确、客观等优势逐渐成为PCB缺陷检测的主流方法.自动视觉检测技术能够实现对PCB表面缺陷的快速识别和定位,大大提高了检测的准确性和生产效率.近年来,随着深度学习技术的突破,基于深度学习的图像识别和处理技术在PCB缺陷检测领域展现出巨大潜力.深度学习模型,尤其是卷积神经网络(CNN),通过学习大量的图像数据,能够自动提取特征并进行缺陷分类,这在一定程度上解决了传统机器视觉系统对特定特征依赖性高、泛化能力差的问题.

近年来,深度学习技术在图像处理和目标检测领域取得了显著进展,尤其是YOLO(You Only Look Once)系列算法[1],因其高效的检测速度和良好的实时性能,被广泛应用于工业视觉检测。YOLOv8作为该系列的最新版本,通过优化网络结构和检测机制,进一步提升了检测精度和速度。例如,YOLOv8在处理小目标检测时表现出色,通过改进的特征提取机制和优化的网络架构,能够有效提高对复杂背景下的小目标识别能力。

时代的发展催生了印制电路板(Printed Circuit Board,PCB).印刷电路板的产量也随着科技的发展开始逐日增加而对 PCB 缺陷检测精度的需求也在增加.但传统图像检测方法漏检率高,相对落后的问题已经不能满足生产厂家对于 PCB 缺陷检测的要求.为了满足当前高准确率的需求,检测精度需要尽可能的高;同时为了更好满足部署在设备上的要求,检测用的模型需要尽可能地更小[2],在电子产品的制造过程中,PCB板的质量直接决定了产品的性能和稳定性,因此,通过缺陷检测确保PCB板的质量标准至关重要.这不仅能够减少不良品率,提高产品可靠性,还能在生产过程中实时检测和识别各种缺陷类型,有效提升生产效率,减少因缺陷导致的生产中断和返工.此外,通过对缺陷数据的统计和分析,可以优化生产过程,降低生产成本,同时减少返工和废品率,进一步降低成本.快速准确的检测还能在产品设计初期发现潜在问题,缩短产品从设计到生产的周期,加速产品上市,提高企业的市场竞争力.在风险管理方面,PCB制造过程中的潜在风险因素,如设备故障、材料缺陷、人为操作失误等,都可以通过缺陷检测得到识别、评估和控制,从而减少返工和废品率,确保生产过程的稳定性和可靠性。

其余完整内容详见下载

第2章 YOLOv8 评估指标和原理  

第3章 算法及其检测系统设计

3.1 环境搭建

该印刷电路板缺陷检测系统的开发主要由深度学习模型训练和可视化操作界面开发两部分组成,其开发流程如图3.1所示。

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

3.1.1硬件环境

在本毕业设计中,为了确保印刷电路板缺陷检测系统能够在各种条件下稳定运行,对硬件环境进行了精心的选择和配置,对于原型系统,至少需要一个2.5 GHz以上的四核处理器,建议使用更高性能的处理器,如Intel Core i7或AMD Ryzen 7,以获得更快的处理速度。由于深度学习模型通常在GPU上进行训练和推理,因此我们推荐使用NVIDIA系列的GPU,如GeForce RTX 30系列或更高版本,以利用其强大的并行处理能力。对于需要进行模型训练的场景,至少需要4GB以上的显存。系统需要至少8GB的RAM来确保流畅的运行。对于涉及大型模型或复杂数据处理的任务,建议使用16GB或更多的RAM。基于以上考虑,本次实验中的所有数据皆在如表3.1所示的硬件平台上运行所得。

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

3.1.2软件环境

为了支持基于印刷电路板缺陷检测系统的开发和运行,需要配置一个适宜的软件环境。选择Windows 11作为主要的操作系统,因为它提供了广泛的硬件支持和稳定性,同时也兼容大多数深度学习框架和库。通过Anaconda搭建封闭的虚拟环境,专门用于该项目运行。Python 3.9作为主要的编程语言,因为它拥有丰富的库支持和活跃的社区,是深度学习和机器学习领域的标准选择。选择PyTorch 1.9,这是一个开源的机器学习库,广泛用于深度学习研究和生产,特别适合于研究原型和快速迭代。使用Ultralytics提供的YOLOv5和YOLOv8实现,它是一个经过优化的版本,专为高效的印刷电路板缺陷检测而设计。与此同时,如表3.2是模型训练和系统开发阶段所使用的部分第三方库及其对于的版本号。

其余完整详见下载

3.2 深度学习模型训练

3.2.1数据集制作与分析

本次印制电路板缺陷数据集由网络中收集和北京大学PKU-Market-PCB数据集组成,如图3.2所示,对于未标注的网络图片,使用LabelImg工具进行图像标注,其过程涉及以下步骤:打开图像、创建一个新的标注文件、选择预定义类别、在图像上绘制边界框、保存标注结果。这个过程虽然简单,但对于创建高质量的训练数据集至关重要。通过LabelImg绘制矩形框来标记图像中的对象,并为每个对象分配相应的类别标签,可以有效地准备用于训练机器学习模型的数据,从而提高模型的性能和准确性。数据集先标注为XML格式,标注完成后需要借助Python脚本将数据集标签由XML格式转换为YOLO格式,再将数据集随机划分为训练集、验证集和测试集,有助于模型在训练过程中避免过拟合,本设计划分的比例为8:1:1。

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

处理完成的数据集总共有766张图片用于模型的训练阶段,而为了评估模型的泛化能力,还特别划分了73张图片用于验证集,以及73张图片用于测试集。这些图片涵盖了印刷电路板缺陷数据集中的复杂场景,图片中既有单缺陷也有多缺陷,确保了数据集的多样性和复杂性。在这些图片中,检测的缺陷类别包括“missing_hole”(漏孔)、“mouse_bite”(鼠咬)、“open_circuit”(开路)、“short”(短路)、“spurious_copper”(多余铜箔/杂铜)和“spur”(尖刺/杂散),数据集中包含了超过2600个印刷电路板缺陷目标,这为训练一个精准的印刷电路板缺陷检测模型提供了丰富的样本。通过分析图3.3左上角的图表,我们可以看到各类别的样本数量非常充足,这有助于模型学习到不同情况下的印刷电路板缺陷特征。而图3.3右上角的图表则展示了训练集中边界框的大小分布以及相应数量,这有助于我们了解印刷电路板缺陷目标在图片中的尺寸变化,以及不同尺寸目标的频率。这些信息对于模型在处理不同大小的印刷电路板缺陷时的准确性至关重要。图3.3左下角的图表描述了边界框中心点在图像中的位置分布情况,这有助于我们了解印刷电路板缺陷在图片中的位置分布,是否均匀分布,或者倾向于集中在图片的某个区域。这对于模型在不同位置都能准确检测到印刷电路板缺陷非常关键。最后,图3.3右下角的图表反映了训练集中目标高宽比例的分布状况,了解印刷电路板缺陷目标的高宽比例分布对于模型的准确性至关重要,因为不同角度和姿态的印刷电路板缺陷可能会导致不同的高宽比。

将这个经过精心处理的数据集输入到YOLO算法中进行模型训练,可以期待模型能够学习到在各种复杂环境下准确检测印刷电路板缺陷的能力。尽管数据集的复杂性和多样性给模型训练带来了挑战,但通过合理的数据处理和模型调优,有望训练出一个能够适应不同场景和条件的强大印刷电路板缺陷检测模型。

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

另外,数据集中存在许多较小的目标,占比达到了99.8%,各尺寸目标大小定义及具体数量如图3.4所示,横坐标为目标尺寸,纵坐标为目标的数量。在这种情况下,可以通过增加专门的小目标检测头,以增强模型对细小目标的识别能力,或者添加注意力机制,增强了模型对小目标的关注,提高了检测精度等。总之,在解决目标检测问题时,需要针对数据集中的具体情况进行相应的处理和优化,以提高模型的检测准确率和性能。

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

其余完整详见下载

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

3.3 可视化操作界面开发

基于深度学习的印刷电路板缺陷检测系统的模块框图如图3.5所示。主要包括文件导入模块、检测模块、检测结果选择模块、检测结果表格模块和操作模块,共五大模块。文件导入模块负责让用户选择检测源,用户可以跟进需求选择检测图片、视频或开启视像头实时检测。检测模块则是核心模块,其通过加载训练好的深度学习模型对预处理过的检测源进行推理,在检测源上绘制目标推理框,并在系统界面的中心区域显示出来供用户参考。检测结果模块则是考虑到推理结果可能包含多个目标,用户可以通过该模块快速选择并定位到该目标,查看该推理目标的类型、置信度、位置坐标信息等,除此之外,该模块还统计了模型对本次检测源检测用时和检测结果中目标数量。检测结果表格模块则是以表格的形式记录了每个检测源的文件路径和每个目标的置信度等信息。用户通过点击操作模块中的“保存”,可以将本次检测结果保存至该项目目录下的Save_data文件夹里;“关闭”则是将该系统关闭。

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

其余完整详见下载

第4章 模型训练与结果

4.1训练过程分析

4.2模型指标分析

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

如图4.4所示,本系统中训练的基于YOLOv8训练的PCB印刷板缺陷识别模型的精确率达到了95.9%,模型的召回率达到89.5%,与此同时,均值平均精确率达到了94.3%。而如图4.5所示为基于YOLOv5训练的PCB印刷板缺陷识别模型,其精确率为94.3%,其87.8%的召回率和92.3%的均值平均精确率均低于YOLOv8模型,说明YOLOv5训练的PCB印刷板缺陷识别模型在目标定位方面略逊色于YOLOv8训练的PCB印刷板缺陷识别模型,因此YOLOv8作为训练的PCB印刷板缺陷识别模型作为该系统的核心深度学习模型。

模型的精确率达到的95%以上。说明模型在推理PCB印刷板缺陷目标时预测正类时很少出现错误,即产生的假正例较少,这意味着模型在识别特定目标时更加准确和可靠;且精确度较高表明模型在识别目标时具有较高的准确性,能够准确地区分目标和背景,减少误判。在目标检测任务中,高精确度通常意味着模型性能较好,因为它表明模型能够有效地识别和定位感兴趣的目标。

89.5%的召回率说明模型在PCB印刷板缺陷的推理上具有较高的检测覆盖,即模型能够检测到大多数甚至所有的实际正类样本,这意味着模型在识别PCB印刷板缺陷目标方面具有较强的能力,能够捕捉到更多的目标对象;且较高的召回率表明模型在预测时较少错过正类样本,即漏检(Miss)的情况较少,这对于需要高检测敏感性的应用场景非常重要,在工业制造领域需要尽可能地检测出所有目标,该模型的高召回率能够满足这一需求。94.3%的均值平均精确率则说明模型在较高的IoU阈值下具有较好的检测性能,即模型能够更准确地定位PCB印刷板缺陷目标对象。

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

在对基于 YOLOv8 的PCB印刷板缺陷识别分类系统进行性能测试时,我们分别从单张图像测试、批量推理测试以及视频流测试三个维度进行了评估。如图4.6所示,在单张图像测试中,经过 100 次平均计算,系统的平均推理时间为 9.97 毫秒,对应的帧率(FPS)达到了 100.31。而在批量推理测试环节,当设置批次大小为 4 并进行 50 次平均计算后,平均批次时间为 25.59毫秒,此时的帧率提升至 156.30,这表明系统在处理批量图像时能够更高效地利用计算资源,从而显著提高了处理速度。至于视频流测试,系统处理了200帧图像,总耗时为 1.78 秒,计算得出的帧率为 112.47。通过以上测试结果可以看出,该PCB印刷板缺陷识别分类系统在不同的测试场景下均展现出了良好的性能表现,能够满足实际应用中对PCB印刷板缺陷识别分类任务的实时性要求。

4.3系统测试实验

如图4.7为训练好的模型对于输入的图片的检测结果,可以看出图片中的每个印刷电路板缺陷-漏孔都被检测出来了,共有3个,而且该图片中印刷电路板缺陷目标较小较模糊。如图4.8为模型对于鼠咬缺陷的推理,共有一个置信度70%的缺陷目标被检测出来。如图4.9为模型对于开路缺陷的推理,共有一个置信度73%的缺陷目标被检测出来。如图4.10为模型对于短路缺陷的推理,共有3个置信度分别为77%、77%、80%的缺陷目标被检测出来。如图4.11为模型对于尖刺缺陷的推理,共有2个置信度分别为78%、76%的缺陷目标被检测出来。如图4.12为模型对于多余铜箔缺陷的推理,共有5个置信度分别为71%、72%、74%、77%、79%的缺陷目标被检测出来。该模型不仅能够在模糊背景的图片中检测出微小的目标,而且因为其较高的召回率,使得其能够尽可能地检测出所有的目标,对于严谨的工业检测等领域,其具有较高的符合性。

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

基于深度学习YOLOv8和YOLOv5的PCB板印刷电路板印制线路板缺陷检测系统设计-创享日记

其余完整详见下载

© 版权声明
THE END
喜欢就支持一下吧
点赞8赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容