CN114596302B - 一种pcb板缺陷检测方法、系统、介质、设备及终端 - Google Patents
一种pcb板缺陷检测方法、系统、介质、设备及终端 Download PDFInfo
- Publication number
- CN114596302B CN114596302B CN202210270622.0A CN202210270622A CN114596302B CN 114596302 B CN114596302 B CN 114596302B CN 202210270622 A CN202210270622 A CN 202210270622A CN 114596302 B CN114596302 B CN 114596302B
- Authority
- CN
- China
- Prior art keywords
- yolov
- network
- convolution
- algorithm
- pcb
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 139
- 230000007547 defect Effects 0.000 title claims abstract description 130
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 100
- 238000012549 training Methods 0.000 claims abstract description 55
- 238000000034 method Methods 0.000 claims abstract description 48
- 238000000605 extraction Methods 0.000 claims abstract description 44
- 230000006872 improvement Effects 0.000 claims abstract description 37
- 238000012360 testing method Methods 0.000 claims abstract description 16
- 238000007621 cluster analysis Methods 0.000 claims abstract description 10
- 238000004364 calculation method Methods 0.000 claims description 25
- 238000012795 verification Methods 0.000 claims description 21
- 230000002776 aggregation Effects 0.000 claims description 15
- 238000004220 aggregation Methods 0.000 claims description 15
- 238000004458 analytical method Methods 0.000 claims description 14
- 230000000694 effects Effects 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 13
- 238000013528 artificial neural network Methods 0.000 claims description 9
- 230000004048 modification Effects 0.000 claims description 9
- 238000012986 modification Methods 0.000 claims description 9
- 238000002474 experimental method Methods 0.000 claims description 7
- 238000003064 k means clustering Methods 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008602 contraction Effects 0.000 claims description 4
- 238000013527 convolutional neural network Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 claims description 4
- 230000006835 compression Effects 0.000 claims description 3
- 238000007906 compression Methods 0.000 claims description 3
- 230000005284 excitation Effects 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 2
- 230000008859 change Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 15
- 238000004519 manufacturing process Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 5
- 238000007430 reference method Methods 0.000 description 4
- 238000007689 inspection Methods 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000003466 welding Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 101000863875 Mus musculus Tyrosine-protein phosphatase non-receptor type substrate 1 Proteins 0.000 description 1
- 229940060587 alpha e Drugs 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 239000006059 cover glass Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 150000003071 polychlorinated biphenyls Chemical class 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000007921 spray Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000011179 visual inspection Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
- G06T7/0008—Industrial image inspection checking presence/absence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30141—Printed circuit board [PCB]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明属于PCB板缺陷检测技术领域,公开了一种PCB板缺陷检测方法、系统、介质、设备及终端,该方法首先采用Bisecting K‑means算法对PCB缺陷数据集进行聚类分析,得到聚类中心,将聚类中心值输入至YOLOv4网络;在YOLOV4各检测头增加稀疏网络结构InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测,采用轻量化特征提取网络作为YOLOv4特征提取网络,将改进思路在YOLOv4代码中进行修改,设置参数进行训练;利用权重文件对PCB测试数据集进行缺陷检测。本发明检测实时性高,柔性更强,可以更好应对目标尺寸变化。
Description
技术领域
本发明属于PCB板缺陷检测技术领域,尤其涉及一种PCB板缺陷检测方法、系统、介质、设备及终端。
背景技术
目前,PCB作为电子产品的核心组件,其质量检测是满足电子制造业日益增长的质量需求的关键。在生产过程中受设备、环境、人工操作等影响,PCB会产生短路、开路、缺口、毛刺、焊点漏焊、余铜等缺陷。
目前在PCB生产过程中,主要依靠人工目视和电气特性检测方法对PCB进行缺陷检测。这些方法存在效率低、误检率高、成本高、接触检测易损伤PCB等诸多缺点,无法满足PCB高效率、高精度、高性能的生产需求。
机器视觉检测方法是一种无接触、无损伤的自动化缺陷检测方法,具有检测工作效率高的优点。
基于机器视觉的PCB缺陷检测方法分为参考法、混合法和无参考法,参考法需制作大量模板,易受噪声影响导致检测通用性低、精度低。混合法设计复杂,检测时间长,难以满足工业应用要求。无参考法具有较好的检测柔性,对噪声影响小,检测精度高。
无参考法常以深度学习方法进行PCB缺陷检测,在深度学习算法中,YOLO(YouOnly Look Once,你只看一次)v4目标检测框架通过将整张图片作为输入,在网络传播阶段结合邻域特征进行检测,避免出现背景误检问题,能较好满足PCB缺陷检测要求。
通过上述分析,现有技术存在的问题及缺陷为:
(1)现有依靠人工目视和电气特性检测方法对PCB进行缺陷检测的方法存在效率低、误检率高、成本高、接触检测易损伤PCB等诸多缺点,无法满足PCB高效率、高精度、高性能的生产需求。
(2)现有基于机器视觉的PCB缺陷检测方法中,参考法需制作大量模板,易受噪声影响导致检测通用性低、精度低;混合法设计复杂,检测时间长,难以满足工业应用要求。
解决以上问题及缺陷的难度为:
要解决以上对PCB缺陷检测方法目前存在的问题,需要提出一种可以替代目前PCB缺陷检测方法,解决这个问题主要难度为,该方法需要具备有高精度、高检测效率、检测成本低、检测通用性高等性能。
解决以上问题及缺陷的意义为:
通过解决以上存在的问题及缺陷,提出一种具有高检测效率,高精度,无损伤的PCB缺陷检测方法,以实现对工业生产现场PCB板高精度、高效率自动化缺陷检测,减少企业生成成本,同时对PCB缺陷检测提出新的思路。
发明内容
针对现有技术存在的问题,本发明提供了一种PCB板缺陷检测方法、系统、介质、设备及终端,尤其涉及一种基于改进YOLOv4的PCB板缺陷检测方法、系统、介质、设备及终端,旨在解决PCB缺陷种类多、不同种类之间缺陷尺寸跨度大、YOLOv4应用存在检测时效性低准确率低的问题。
本发明是这样实现的,一种PCB板缺陷检测方法,所述PCB板缺陷检测方法包括以下步骤:
步骤一,采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,共计聚类出9个不同尺寸的聚类中心;
步骤二,将Bisecting K-means对PCB缺陷数据集进行聚类得到的聚类中心值输入至YOLOv4网络,将数据集的相关信息输入至YOLOv4算法中;
步骤三,在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测;
步骤四,对改进检测网络后的YOLOv4特征提取网络进行算法改进,引用MobileNetV3网络代替YOLOv4特征提取网络,根据相关理论对YOLOv4代码进行改进;
步骤五,将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证;
步骤六,利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果。
进一步,所述步骤一中的采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,共计聚类出9个不同尺寸的聚类中心包括:
采用Bisecting K-means算法实现对PCB缺陷数据集的聚类分析,通过聚类分析得到9个不同尺寸的聚类中心,作为YOLOv4的锚框数值,具体包括:
采用公开的PCB缺陷数据集进行Bisecting K-means聚类算法,将所有标定数据集的标定框数据作为输入,将所有数据作为一个聚类簇;将该簇利用K-means算法分为两个簇,并计算每个簇的误差;选择能使聚类损失函数IoU最小的簇划分为两个簇,以此继续进行,直到选出簇数目达到用户给定的K值为止;
其中,误差IOU计算公式如下:
式中,boxi代表第i个标定框数值,cenj代表第j个锚框数值;采用改进BisectingK-means聚类算法对数据集进行聚类,共聚类出9个锚框。
进一步,所述步骤二中的将Bisecting K-means对PCB缺陷数据集聚类得到的聚类中心值输入至YOLOv4网络,将数据集的相关信息输入至YOLOv4算法包括:
通过将采用Bisecting K-means算法得到的聚类中心输入至YOLOv4中,利用Bisecting K-means算法对PCB缺陷数据集进行聚类得到的聚类中心数值,将所述数值依次从小到大输入至YOLOv4模型参数中;设置待检测缺陷类别,将待设置的类别输入至YOLOv4模型相关参数中;利用留出法对所有数据集进行数据集划分,根据9:1的比例设置训练数据集和验证数据集,将各类数据集相关信息汇成文本文档,输入至YOLOv4模型中。
进一步,所述步骤三中的在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测包括:
利用Inceptionv3网络加入至YOLOv4检测头中,实现多种尺度卷积核对特征进行检测。网络通过将神经网络层与层之间的卷积运算进行扩展,采用不同大小1×1、3×3、5×5的卷积核进行卷积,拼接起来融合不同尺度的特征;在算法检测层添加Ineceptionv3结构,在不增加参数量的前提下增加网络深度。
进一步,所述步骤四中的对YOLOv4特征提取网络进行算法改进,引用MobileNetV3网络代替YOLOv4特征提取网络,根据相关理论对YOLOv4代码进行改进包括:
采用MobileNetV3网络改进YOLOv4特征提取网络;所述MobileNetv3网络是MobileNet网络的第三个更新版本,采用深度可分离卷积以及引入宽度乘子和分辨率乘子两个收缩超参数。
标准卷积方式通过一部对所有输入进行结合并运算得到新的输出,深度可分离卷积将标准卷积方式分解成一个深度卷积和一个1×1的逐点卷积方式;深度可分离卷积采用深度卷积方式对单个输入通道采用单个滤波器进行滤波计算,并采用逐点卷积方式实现对深度卷积输出进行结合从而输出最终新的结果;标准卷积方式,对输入尺寸DF×DF×M大小的特征图,采用卷积核大小为Dk×Dk×M×N的标准卷积方式对输入特征图进行卷积计算,其中DF表示输入特征图高和宽,M代表输入通道数,DK是卷积核宽和高,N代表输出通道数,标准卷积在计算过程中计算量为DF×DF×M×N×Dk×Dk。
对于深度可分离卷积方式,进行深度卷积,对输入图像MF×MF×M的图像采用Dk×Dk×1大小的卷积核进行卷积运算这个过程中计算量大小为DF×DF×M×Dk×Dk;对深度卷积的输出利用逐点卷积方式进行线性结合得到输出,逐点卷积方式所需计算量为DF×DF×M×N,进行深度可分离卷积时计算量大小为DF×DF×M×Dk×Dk+DF×DF×M×N;采用深度可分离卷积比标准卷积计算量缩减
使用α对每一层进行均匀薄化,在输入通道数M变为αM,输出通道数变为αN,深度可分离卷积方式计算量变为Dk×Dk×αM×DF×DF+αM×αN×DF×DF,宽度乘子α∈(0,1],加入通道乘子后深度可分离卷积方式计算亮再减少α2倍。MobileNet网络使用分辨率乘子ρ,并应用至输入图片及每一层表达中,加入宽度乘子和分辨率乘子后的深度可分离卷积计算量变为Dk×Dk×αM×ρDF×ρDF+αM×αN×ρDF×ρDF。
MobileNet算法系列发展到MobileNetV3算法,主要改进是在MobileNetV2的基础上增加了SE注意力模块,缩减通道数量。SENet模块包含三个主要部分:压缩、激励和权重赋值。SENet模块通过对卷积特征中通道的相互关系进行建模,对卷积神经网络特定层中的通道响应进行重新赋权。
进一步,所述步骤五中的将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证包括:
对YOLOv4算法进行改进,并实现相关代码修改与训练;利用MobileNetV3网络代替YOLOv4特征提取网络,修改相应通道数进行代码修改,在YOLOv4检测头中增加Inceptionv3网络,修改相应代码;利用改进算法实现对PCB缺陷数据集训练,设置好相关参数,包括训练迭代次数epoch、训练中训练样本数batch_size、训练学习率设置策略、训练数据增强方式和训练输入图像尺寸大小。
所述步骤六中的利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果包括:
在训练过程中获得每次训练权重文件,利用所述权重文件实现对PCB缺陷测试数据集的检测,实现对PCB板的高效精确检测,并获取检测相关性能参数。
本发明的另一目的在于提供一种应用所述的PCB板缺陷检测方法的PCB板缺陷检测系统,所述PCB板缺陷检测系统包括:
数据集聚类分析模块,用于采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,共计聚类出9个不同尺寸的聚类中心;
数据输入模块,用于将Bisecting K-means对PCB缺陷数据集进行聚类得到的聚类中心值输入至YOLOv4网络,将数据集的相关信息输入至YOLOv4算法中;
目标检测模块,用于在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测;
算法改进模块,用于对YOLOv4特征提取网络进行算法改进,引用MobileNetV3网络代替YOLOv4特征提取网络,并根据相关理论对YOLOv4代码进行改进;
实验验证模块,用于将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证;
缺陷检测模块,用于利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果。
本发明的另一目的在于提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,共计聚类出9个不同尺寸的聚类中心;将Bisecting K-means对PCB缺陷数据集进行聚类得到的聚类中心值输入至YOLOv4网络,将数据集的相关信息输入至YOLOv4算法中;
在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测;对YOLOv4特征提取网络进行算法改进,引用MobileNetV3网络代替YOLOv4特征提取网络,根据相关理论对YOLOv4代码进行改进;
将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证;利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果。
本发明的另一目的在于提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,共计聚类出9个不同尺寸的聚类中心;将Bisecting K-means对PCB缺陷数据集进行聚类得到的聚类中心值输入至YOLOv4网络,将数据集的相关信息输入至YOLOv4算法中;
在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测;对YOLOv4特征提取网络进行算法改进,引用MobileNetV3网络代替YOLOv4特征提取网络,根据相关理论对YOLOv4代码进行改进;
将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证;利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果。
本发明的另一目的在于提供一种信息数据处理终端,所述信息数据处理终端用于实现所述的PCB板缺陷检测系统。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:本发明提供的PCB板缺陷检测方法,具体涉及一种结合Inceptionv3和MobileNetV3网络改进YOLOv4的PCB缺陷检测方法,主要有以下几个优点:
1.检测实时性高,降低工业现场计算机计算能力要求,在采用YOLOv4算法对PCB进行缺陷检测时,其特征提取网络采用复杂的深层次结构,对于计算机的计算能力要求较高,同时网络参数较多,计算时间更长,难以满足工业检测实时性要求。使用MobileNetV3网络代替YOLOv4特征提取网络,利用轻量化特征提取网络,在保证特征提取能力基础上大幅减少计算量,使算法满足实时性要求。
2.检测柔性更强。PCB板缺陷种类较多,在使用YOLOv4进行缺陷检测时,其检测头采用3×3卷积核进行检测,存在目标细节遗漏的情况,采用Inceptionv3网络改进YOLOv4检测头,利用多种卷积核进行卷积最后拼接成不同尺度的特征,可以有效提升检测柔性。
3.检测可以更好应对目标尺寸变化。YOLOv4采用K-means算法对数据集进行聚类分析,在计算过程中首先随机选取初始聚类中心,然后计算与聚类中心距离进行簇的划分,易出现聚类结果不稳定且易陷入局部最优,不利于多尺度变化的目标检测。提出采用Bisecting K-means算法改进YOLOv4中K-means算法,克服随机选取初始聚类中心问题,更好适应多种尺度缺陷检测。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的PCB板缺陷检测方法流程图。
图2是本发明实施例提供的PCB板缺陷检测系统结构框图;
图中:1、数据集聚类分析模块;2、数据输入模块;3、算法改进模块;4、目标检测模块;5、实验验证模块;6、缺陷检测模块。
图3是本发明实施例提供的Inceptionv3网络模块示意图。
图3(a)是本发明实施例提供的模块1示意图。
图3(b)是本发明实施例提供的模块2示意图。
图3(c)是本发明实施例提供的模块3示意图。
图4是本发明实施例提供的标准卷积方式与深度可分离卷积方式示意图。
图4(a)是本发明实施例提供的传统卷积方式示意图。
图4(b)是本发明实施例提供的深度卷积方式示意图。
图4(c)是本发明实施例提供的点卷积方式示意图。
图5是本发明实施例提供的SE通道注意力机制模块示意图。
图6是本发明实施例提供的对数据集利用改进Bisecting K-means算法得到的聚类中心图。
图7是本发明实施例提供的改进MobilNetV3-YOLOv4-Inceptionv3网络结构参数图。
图8是本发明实施例提供的训练好的模型检测mAP图。
图9是本发明实施例提供的利用训练好的模型对PCB进行缺陷检测的实际检测效果图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种PCB板缺陷检测方法、系统、介质、设备及终端,下面结合附图对本发明作详细的描述。
如图1所示,本发明实施例提供的PCB板缺陷检测方法包括以下步骤:
S101,采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,共计聚类出9个不同尺寸的聚类中心;
S102,将Bisecting K-means对PCB缺陷数据集进行聚类得到的聚类中心值输入至YOLOv4网络,将数据集的相关信息输入至YOLOv4算法中;
S103,在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测;
S104,对改进检测网络后的YOLOv4特征提取网络进行算法改进,引用MobileNetV3网络代替YOLOv4特征提取网络,根据相关理论对YOLOv4代码进行改进;
S105,将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证;
S106,利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果。
如图2所示,本发明实施例提供的PCB板缺陷检测系统包括:
数据集聚类分析模块1,用于采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,共计聚类出9个不同尺寸的聚类中心;
数据输入模块2,用于将Bisecting K-means对PCB缺陷数据集进行聚类得到的聚类中心值输入至YOLOv4网络,将数据集的相关信息输入至YOLOv4算法中;
目标检测模块3,用于在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测;
算法改进模块4,用于对YOLOv4特征提取网络进行算法改进,引用MobileNetV3网络代替YOLOv4特征提取网络,并根据相关理论对YOLOv4代码进行改进;
实验验证模块5,用于将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证;
缺陷检测模块6,用于利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果。
下面结合具体实施例对本发明的技术方案作进一步描述。
1、发明目的:
本发明目的在于对PCB进行缺陷检测。针对PCB缺陷种类多、不同种类之间缺陷尺寸跨度大、YOLOv4应用存在检测时效性低准确率低的问题,提出一种结合Inceptionv3和MobileNetV3网络改进YOLOv4的PCB缺陷检测方法,本方法采取的技术方案为:
本发明实施例提供的结合Inceptionv3和MobileNetV3网络改进YOLOv4的PCB缺陷检测方法,所包括的步骤如下:
(1)采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,共计聚类出9个不同尺寸的聚类中心;
(2)将Bisecting K-means对PCB缺陷数据集进行聚类得到的聚类中心值输入至YOLOv4网络,将数据集等相关信息输入至YOLOv4算法中。
(3)在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标检测,提升检测精度。
(4)对改进后的YOLOv4特征提取网络进行算法改进,引用MobileNetV3网络代替YOLOv4特征提取网络,根据相关理论对YOLOv4代码进行改进。
(5)将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证。
(6)利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果。
2、发明内容:
根据步骤(1)的要求,主要是采用Bisecting K-means算法实现对PCB缺陷数据集的聚类分析,通过聚类分析得到9个不同尺寸的聚类中心,作为YOLOv4的锚框数值。其具体的流程是,采用公开的PCB缺陷数据集进行Bisecting K-means聚类算法,主要流程是将所有标定数据集的标定框数据作为输入,将所有数据作为一个聚类簇,然后将该簇利用K-means算法分为两个簇,并计算每个簇的误差。选择能使聚类损失函数即IoU最小的簇划分为两个簇,以此继续进行下去,直到选出簇数目达到用户给定的K值为止。其中,误差IOU计算公式如下:
其中boxi代表第i个标定框数值,cenj代表第j个锚框数值。采用改进Bisecting K-means聚类算法对数据集进行聚类,共聚类出9个锚框。
根据步骤(2)的要求,需要通过将采用Bisecting K-means算法得到的聚类中心输入至YOLOv4中,利用Bisecting K-means算法对PCB缺陷数据集进行聚类得到的聚类中心数值,将这些数值依次从小到大输入至YOLOv4模型参数当中。然后设置需要检测缺陷类别,将需要设置的类别输入至YOLOv4模型相关参数中。利用留出法对所有数据集进行数据集划分,根据9:1的比例设置训练数据集和验证数据集,将各类数据集相关信息汇成文本文档,输入至YOLOv4模型当中。
根据步骤(3)的要求,主要是利用Inceptionv3网络加入至YOLOv4检测头中,实现多种尺度卷积核对特征进行检测。Inceptionv3网络具有密集矩阵的高性能特点,同时还保持着稀疏结构。网络通过将神经网络层与层之间的卷积运算进行扩展,采用不同大小(1×1、3×3、5×5)的卷积核进行卷积,最后拼接起来融合不同尺度的特征,在减少计算量的同时提高了模型的识别能力。因此,为满足PCB多类别缺陷检测要求,在算法检测层添加Ineceptionv3结构,在不增加参数量的前提下增加网络深度,提升检测性能。
Inceptionv3模型主要遵循4项优化方法和原则:(1)适当降低bottleneck,防止信息丢失;(2)更高维度的特征表示,更稀疏,更耦合,具体通过图3中(a)模块1实现;(3)空间聚合嵌入到较小的维度中,减低参数量同时不会降低网络表示能力,具体通过图3(b)中模块2实现;(4)平衡好网络宽度和深度,具体通过图3(c)中模块3实现。
根据步骤(4)的要求,主要是采用MobileNetV3网络改进YOLOv4特征提取网络。MobileNetv3网络是MobileNet网络的第三个更新版本,在2017年,谷歌提出了轻量化卷积神经网络MobileNet网络,其最大的特点是采用了深度可分离卷积以及引入宽度乘子和分辨率乘子两个收缩超参数。
标准卷积方式通过一部对所有输入进行结合并运算得到新的输出,具体如图4中(a)所示,深度可分离卷积将标准卷积方式分解成一个深度卷积和一个1×1的逐点卷积方式,能有效减少计算量及模型大小,具体如图4中(b)、(c)所示。深度可分离卷积首先采用深度卷积方式对单个输入通道采用单个滤波器进行滤波计算,然后采用逐点卷积方式实现对深度卷积输出进行结合从而输出最终新的结果。标准卷积方式,对输入尺寸DF×DF×M大小的特征图,采用卷积核大小为Dk×Dk×M×N的标准卷积方式对输入特征图进行卷积计算,其中DF表示输入特征图高和宽,M代表输入通道数,DK是卷积核宽和高,N代表输出通道数,标准卷积在计算过程中计算量为DF×DF×M×N×Dk×Dk。对于深度可分离卷积方式,首先进行深度卷积,对输入图像MF×MF×M的图像采用Dk×Dk×1大小的卷积核进行卷积运算这个过程中计算量大小为DF×DF×M×Dk×Dk。接着对深度卷积的输出利用逐点卷积方式进行线性结合得到输出,逐点卷积方式所需要计算量为DF×DF×M×N,因此进行深度可分离卷积时计算量大小为DF×DF×M×Dk×Dk+DF×DF×M×N。因此采用深度可分离卷积比标准卷积计算量缩减了当所采用的深度卷积卷积核大小为3×3时,其运算量比标准卷积少了8至9倍。
同时MobileNet网络采用宽度乘子α使通道计算量更进一步减少,使用α对每一层进行均匀薄化,即在输入通道数M变为αM,输出通道数变为αN,这样使得深度可分离卷积方式计算量变为Dk×Dk×αM×DF×DF+αM×αN×DF×DF,宽度乘子α∈(0,1],加入通道乘子后深度可分离卷积方式计算量再减少约α2倍。MobileNet网络还使用分辨率乘子ρ减少神经网络计算量,将其应用至输入图片及每一层表达中,加入宽度乘子和分辨率乘子后的深度可分离卷积计算量变为Dk×Dk×αM×ρDF×ρDF+αM×αN×ρDF×ρDF。
为了更进一步提升检测精度和检测速度,MobileNet算法系列发展到了MobileNetV3算法。其主要改进是在MobileNetV2的基础上增加了SE(Squeeze andExciation)注意力模块,缩减通道数量,如图5所示。SENet模块包含三个主要部分:压缩(Squeeze)、激励(Excitation)、权重赋值。SENet模块通过对卷积特征中通道的相互关系进行建模,对卷积神经网络特定层中的通道响应进行重新赋权,以增强网络对有用信息的提取。
根据步骤(5)的要求,主要是对YOLOv4算法进行改进,并实现相关代码修改与训练。在YOLOv4检测头中增加Inceptionv3网络,修改相应代码,利用MobileNetV3网络代替YOLOv4特征提取网络,修改相应通道数进行代码修改,。利用改进算法实现对PCB缺陷数据集训练,设置好相关参数,主要包括,训练迭代次数epoch、训练中训练样本数batch_size、训练学习率设置策略、训练数据增强方式、训练输入图像尺寸大小等相关参数。
根据步骤(6)的要求,在训练过程中,获得了每次训练权重文件,利用该权重文件实现对PCB缺陷测试数据集的检测,实现对PCB板的高效精确检测,并获取检测相关性能参数。
实施例2
如图2所示,本发明实施例提供的改进的基于YOLOv4的PCB缺陷检测算法,包括:
步骤101:利用Bisecting K-means算法实现对PCB缺陷数据集进行聚类,得到指定个数的聚类中心。
采用Bisecting K-means算法实现对PCB标定数据集的相关信息进行聚类,根据标定数据的标定框长度和宽度信息,利用Bisecting K-means聚类算法获得9个不同大小的聚类中心值,其聚类中心在数据集中具体位置如图6所示。使用Bisecting K-means算法对PCB缺陷数据集聚类得到的聚类中心数值是:(20,21),(33,22),(22,34),(43,34),(30,46),(62,24),(25,69),(52,68),(69,52)。
步骤102:将对数据集进行聚类获取的锚框信息、数据集中训练数据集、缺陷种类等相关信息输入至YOLOv4算法网络中。
利用Bisecting K-means算法实现对PCB缺陷数据集进行聚类,图像大小设置为608pixels×608pixels得到聚类结果为(20,21),(33,22),(22,34),(43,34),(30,46),(62,24),(25,69),(52,68),(69,52)。将聚类结果根据从小到大思路进行排序,输入至YOLOv4算法中的model_data中的anchor信息。根据数据集的图像信息和标注信息得到train.txt和trainval.txt文件信息,这些文本文档中存放训练数据集和验证数据集中图片、路径等信息。然后将缺陷类别信息输入至classes.txt文本文档中,本发明设置的缺陷种类信息分别为:missing_hole,mouse_bite,open_circuit,short,spur,spurious_copper。然后下载好预训练权重文件输入至model_data文件夹中。至此,完成了模型需要数据的相关设置。
步骤103:搭建Inceptionv3网络,在YOLOv4特征检测网络中增加Inceptionv3网络,进行相应代码修改。
Inceptionv3网络具有密集矩阵的高性能特点,同时还保持着稀疏结构。网络通过将神经网络层与层之间的卷积运算进行扩展,采用不同大小(1×1、3×3、5×5)的卷积核进行卷积,最后拼接起来融合不同尺度的特征,在减少计算量的同时提高了模型的识别能力。遵循4项优化方法和原则:(1)适当降低bottleneck,防止信息丢失;(2)更高维度的特征表示,更稀疏,更耦合;(3)空间聚合嵌入到较小的维度中,减低参数量同时不会降低网络表示能力;(4)平衡好网络宽度和深度,其具体网络结构如表1所示。将改进Inceptionv3网络加入至YOLOv4特征检测网络,改进特征提取网络和特征检测网络的YOLOv4网络结构如图8所示,在YOLOv4中修改相应检测网络代码以及网络参数。
表1 Inceptionv3各层网络参数
步骤104:对改进检测网络后的YOLOv4特征提取网络进行更改,改为以MobileNetV3作为YOLOv4特征提取网络,利用相关原理进行代码修改。
YOLOv4检测网络采用CSPDarknet53网络作为特征提取网络,存在计算量大,对小目标特征提取能力不足的问题,因此,提出采用轻量化特征提取网络MobileNetV3网络作为其特征提取网络。MobileNetV3网络最大的特点是采用了深度可分离卷积以及引入宽度乘子和分辨率乘子两个收缩超参数。标准卷积方式通过一部对所有输入进行结合并运算得到新的输出,对输入尺寸DF×DF×M大小的特征图,采用卷积核大小为Dk×Dk×M×N的标准卷积方式对输入特征图进行卷积计算,其中DF表示输入特征图高和宽,M代表输入通道数,DK是卷积核宽和高,N代表输出通道数,标准卷积在计算过程中计算量为DF×DF×M×N×Dk×Dk。深度可分离卷积将标准卷积方式分解成一个深度卷积和一个1×1的逐点卷积方式,对输入图像MF×MF×M的图像采用Dk×Dk×1大小的卷积核进行卷积运算这个过程中计算量大小为DF×DF×M×Dk×Dk。接着对深度卷积的输出利用逐点卷积方式进行线性结合得到输出,逐点卷积方式所需要计算量为DF×DF×M×N,因此进行深度可分离卷积时计算量大小为DF×DF×M×Dk×Dk+DF×DF×M×N。因此采用深度可分离卷积比标准卷积计算量缩减了当所采用的深度卷积卷积核大小为3×3时,其运算量比标准卷积少了8至9倍。MobileNet网络采用宽度乘子α使通道计算量更进一步减少,使用α对每一层及逆行均匀薄化,即在输入通道数M变为αM,输出通道数变为αN,这样使得深度可分离卷积方式计算量变为Dk×Dk×αM×DF×DF+αM×αN×DF×DF,宽度乘子α∈(0,1],加入通道乘子后深度可分离卷积方式计算亮再减少约α2倍。MobileNet网络还使用分辨率乘子ρ减少神经网络计算量,将其应用至输入图片及每一层表达中,加入宽度乘子和分辨率乘子后的深度可分离卷积计算量变为Dk×Dk×αM×ρDF×ρDF+αM×αN×ρDF×ρDF。具体的MobileNetV3网络层及相关参数如表2所示。根据相关参数搭建MobileNetV3网络,并应用至YOLOv4特征提取网络进行相关参数修改。
表2 MobileNetV3网络网络参数
步骤105:对改进的YOLOv4算法进行训练,结合预训练权重文件设置好相关参数进行训练。
对利用MobileNetV3改进YOLOv4特征提取网络,在YOLOv4加入Inceptionv3网络地YOLOv4算法进行训练,训练过程中,图像输入大小设置为(608pixels×608pixels)设置迭代次数为300,在这300次迭代中,前100次进行冻结训练,即对特征提取网络参数不进行更改,只对别的参数进行更改,学习率设置为0.001,batch_size设置为16。在100epoch之后,进行非冻结训练,学习率设置为0.0001,batch_size设置为8,学习率优化方式采用Adam方式,不采用数据增强方式。经过训练之后,得到训练好的网络模型。改进MobilNetV3-YOLOv4-Inceptionv3网络结构参数如图7所示。
步骤106:利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,验证模型检测效果。
将需要检验的缺陷样本图像放入数据集下sample文件夹中,采用获得的权重文件及网络对缺陷样本进行检测,得到缺陷的类别、位置以及置信度信息。平均检测一张图像的时间为:23.5毫秒,模型的检测mAP如图8所示,得到的检测结果如图9所示。由图中可以看出,通过本发明的方法,可以准确得到盖板玻璃缺陷信息,以及可以满足工业实时性要求。
在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上;术语“上”、“下”、“左”、“右”、“内”、“外”、“前端”、“后端”、“头部”、“尾部”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”等仅用于描述目的,而不能理解为指示或暗示相对重要性。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘Solid StateDisk(SSD))等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (7)
1.一种PCB板缺陷检测方法,其特征在于,所述PCB板缺陷检测方法包括以下步骤:
步骤一,采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,聚类出多不同尺寸的聚类中心;
步骤二,将Bisecting K-means对PCB缺陷数据集进行聚类得到的聚类中心值输入至YOLOv4网络,将数据集的相关信息输入至YOLOv4算法中;
步骤三,在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测;
步骤四,对改进YOLOv4算法后的特征提取网络进行算法改进,引用轻量化网络MobileNetV3网络作为YOLOv4特征提取网络,根据相关理论对YOLOv4代码进行改进;
步骤五,将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证;
步骤六,利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果;
所述步骤一中的采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,共计聚类出9个不同尺寸的聚类中心包括:
采用Bisecting K-means算法实现对PCB缺陷数据集的聚类分析,通过聚类分析得到9个不同尺寸的聚类中心,作为YOLOv4的锚框数值,具体包括:
采用公开的PCB缺陷数据集进行Bisecting K-means聚类算法,将所有标定数据集的标定框数据作为输入,将所有数据作为一个聚类簇;将该簇利用K-means算法分为两个簇,并计算每个簇的误差;选择能使聚类损失函数IoU最小的簇划分为两个簇,以此继续进行,直到选出簇数目达到用户给定的K值为止;
其中,误差IOU计算公式如下:
式中,boxi代表第i个标定框数值,cenj代表第j个锚框数值;采用改进Bisecting K-means聚类算法对数据集进行聚类,共聚类出9个锚框;
所述步骤二中的将Bisecting K-means对PCB缺陷数据集聚类得到的聚类中心值输入至YOLOv4网络,将数据集的相关信息输入至YOLOv4算法包括:
通过将采用Bisecting K-means算法得到的聚类中心输入至YOLOv4中,利用BisectingK-means算法对PCB缺陷数据集进行聚类得到的聚类中心数值,将所述数值依次从小到大输入至YOLOv4模型参数中;设置待检测缺陷类别,将待设置的类别输入至YOLOv4模型相关参数中;利用留出法对所有数据集进行数据集划分,根据9:1的比例设置训练数据集和验证数据集,将各类数据集相关信息汇成文本文档,输入至YOLOv4模型中;
所述步骤四中的对YOLOv4特征提取网络进行算法改进,引用MobileNetV3网络代替YOLOv4特征提取网络,根据相关理论对YOLOv4代码进行改进包括:
采用MobileNetV3网络改进YOLOv4特征提取网络;所述MobileNetv3网络是MobileNet网络的第三个更新版本,采用深度可分离卷积以及引入宽度乘子和分辨率乘子两个收缩超参数;
标准卷积方式通过一部对所有输入进行结合并运算得到新的输出,深度可分离卷积将标准卷积方式分解成一个深度卷积和一个1×1的逐点卷积方式;深度可分离卷积采用深度卷积方式对单个输入通道采用单个滤波器进行滤波计算,并采用逐点卷积方式实现对深度卷积输出进行结合从而输出最终新的结果;标准卷积方式,对输入尺寸DF×DF×M大小的特征图,采用卷积核大小为Dk×Dk×M×N的标准卷积方式对输入特征图进行卷积计算,其中DF表示输入特征图高和宽,M代表输入通道数,Dk是卷积核宽和高,N代表输出通道数,标准卷积在计算过程中计算量为DF×DF×M×N×Dk×Dk;
对于深度可分离卷积方式,进行深度卷积,对输入图像MF×MF×M的图像采用Dk×Dk×1大小的卷积核进行卷积运算这个过程中计算量大小为DF×DF×M×Dk×Dk;对深度卷积的输出利用逐点卷积方式进行线性结合得到输出,逐点卷积方式所需计算量为DF×DF×M×N,进行深度可分离卷积时计算量大小为DF×DF×M×Dk×Dk+DF×DF×M×N;采用深度可分离卷积比标准卷积计算量缩减
使用α对每一层进行均匀薄化,在输入通道数M变为αM,输出通道数变为αN,深度可分离卷积方式计算量变为Dk×Dk×αM×DF×DF+αM×αN×DF×DF,宽度乘子α∈(0,1],加入通道乘子后深度可分离卷积方式计算亮再减少α2倍;MobileNet网络使用分辨率乘子ρ,并应用至输入图片及每一层表达中,加入宽度乘子和分辨率乘子后的深度可分离卷积计算量变为Dk×Dk×αM×ρDF×ρDF+αM×αN×ρDF×ρDF;
MobileNet算法系列发展到MobileNetV3算法,主要改进是在MobileNetV2的基础上增加了SE注意力模块,缩减通道数量;SENet模块包含三个主要部分:压缩、激励和权重赋值;SENet模块通过对卷积特征中通道的相互关系进行建模,对卷积神经网络特定层中的通道响应进行重新赋权。
2.如权利要求1所述PCB板缺陷检测方法,其特征在于,所述步骤三中的在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测包括:
利用Inceptionv3网络加入至YOLOv4检测头中,实现多种尺度卷积核对特征进行检测;网络通过将神经网络层与层之间的卷积运算进行扩展,采用不同大小1×1、3×3、5×5的卷积核进行卷积,拼接起来融合不同尺度的特征;在算法检测层添加Ineceptionv3结构,在不增加参数量的前提下增加网络深度。
3.如权利要求1所述PCB板缺陷检测方法,其特征在于,所述步骤五中的将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证包括:
对YOLOv4算法进行改进,并实现相关代码修改与训练;利用MobileNetV3网络代替YOLOv4特征提取网络,修改相应通道数进行代码修改,在YOLOv4检测头中增加Inceptionv3网络,修改相应代码;利用改进算法实现对PCB缺陷数据集训练,设置好相关参数,包括训练迭代次数epoch、训练中训练样本数batch_size、训练学习率设置策略、训练数据增强方式和训练输入图像尺寸大小;
所述步骤六中的利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果包括:
在训练过程中获得每次训练权重文件,利用所述权重文件实现对PCB缺陷测试数据集的检测,实现对PCB板的高效精确检测,并获取检测相关性能参数。
4.一种应用如权利要求1~3任意一项所述PCB板缺陷检测方法的PCB板缺陷检测系统,其特征在于,所述PCB板缺陷检测系统包括:
数据集聚类分析模块,用于采用Bisecting K-means算法实现对PCB缺陷数据集聚类分析,共计聚类出9个不同尺寸的聚类中心;
数据输入模块,用于将Bisecting K-means对PCB缺陷数据集进行聚类得到的聚类中心值输入至YOLOv4网络,将数据集的相关信息输入至YOLOv4算法中;
目标检测模块,用于在YOLOv4算法中的每个检测头中,增加InceptionV3网络,通过使用多种尺度卷积核实现对目标的检测;
算法改进模块,用于对YOLOv4特征提取网络进行算法改进,引用MobileNetV3网络代替YOLOv4特征提取网络,并根据相关理论对YOLOv4代码进行改进;
实验验证模块,用于将改进思路在YOLOv4代码中进行修改,设置相关参数进行训练以及进行实验验证;
缺陷检测模块,用于利用训练的得到的权重文件对PCB数据集测试数据集进行缺陷检测,并验证模型检测效果。
5.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1~3任意一项所述PCB板缺陷检测方法的步骤。
6.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1~3任意一项所述PCB板缺陷检测方法的步骤。
7.一种信息数据处理终端,其特征在于,所述信息数据处理终端用于实现如权利要求4所述PCB板缺陷检测系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210270622.0A CN114596302B (zh) | 2022-03-18 | 2022-03-18 | 一种pcb板缺陷检测方法、系统、介质、设备及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210270622.0A CN114596302B (zh) | 2022-03-18 | 2022-03-18 | 一种pcb板缺陷检测方法、系统、介质、设备及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114596302A CN114596302A (zh) | 2022-06-07 |
CN114596302B true CN114596302B (zh) | 2024-09-06 |
Family
ID=81809857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210270622.0A Active CN114596302B (zh) | 2022-03-18 | 2022-03-18 | 一种pcb板缺陷检测方法、系统、介质、设备及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114596302B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115359016A (zh) * | 2022-08-26 | 2022-11-18 | 湖南科技大学 | 基于改进YOLOv5的PCB小目标缺陷检测方法和系统 |
CN118070748B (zh) * | 2024-04-16 | 2024-07-23 | 中南民族大学 | 基于目标检测的电路板器件热分析方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112651966A (zh) * | 2021-01-18 | 2021-04-13 | 厦门大学嘉庚学院 | 一种基于acyolov4_csp的印刷电路板微小缺陷检测方法 |
CN113313694A (zh) * | 2021-06-05 | 2021-08-27 | 西北工业大学 | 一种基于轻量型卷积神经网络的表面缺陷快速检测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112362679B (zh) * | 2019-07-23 | 2024-06-04 | 纬创资通股份有限公司 | 影像辨识装置、影像辨识方法及其计算机程序产品 |
-
2022
- 2022-03-18 CN CN202210270622.0A patent/CN114596302B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112651966A (zh) * | 2021-01-18 | 2021-04-13 | 厦门大学嘉庚学院 | 一种基于acyolov4_csp的印刷电路板微小缺陷检测方法 |
CN113313694A (zh) * | 2021-06-05 | 2021-08-27 | 西北工业大学 | 一种基于轻量型卷积神经网络的表面缺陷快速检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114596302A (zh) | 2022-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110992317B (zh) | 一种基于语义分割的pcb板缺陷检测方法 | |
CN111699499B (zh) | 检查、图像识别、识别器生成系统及学习数据生成装置 | |
CN114596302B (zh) | 一种pcb板缺陷检测方法、系统、介质、设备及终端 | |
CN113516650B (zh) | 基于深度学习的电路板塞孔缺陷检测方法及装置 | |
CN110136141B (zh) | 一种面向复杂环境的图像语义分割方法及装置 | |
CN109740617A (zh) | 一种图像检测方法及装置 | |
CN117670820B (zh) | 一种塑料薄膜生产缺陷检测方法及系统 | |
CN116258707A (zh) | 一种基于改进的YOLOv5算法的PCB表面缺陷检测方法 | |
CN111461113B (zh) | 一种基于变形平面物体检测网络的大角度车牌检测方法 | |
CN111126481A (zh) | 一种神经网络模型的训练方法及装置 | |
CN113763364B (zh) | 一种基于卷积神经网络的图像缺陷检测方法 | |
CN117152123B (zh) | 一种用于锡膏印刷的检测定位优化方法、系统及存储介质 | |
CN112419268A (zh) | 一种输电线路图像缺陷检测方法、装置、设备及介质 | |
CN112036249A (zh) | 端对端行人检测及属性识别的方法、系统、介质及终端 | |
CN116071331A (zh) | 一种基于改进ssd算法的工件表面缺陷检测方法 | |
CN115578585A (zh) | 工业图像异常检测方法、系统、计算机设备和存储介质 | |
CN116958021A (zh) | 基于人工智能的产品缺陷识别方法、相关装置和介质 | |
CN118053027A (zh) | 一种缺陷识别方法、装置、电子设备及存储介质 | |
CN113850523A (zh) | 基于数据补全的esg指数确定方法及相关产品 | |
CN117557538A (zh) | Pcb表面缺陷检测方法、装置、计算机设备和存储介质 | |
Li et al. | PCB Defect Detection Based on Improved YOLOX Algorithm | |
CN116109627B (zh) | 基于迁移学习和小样本学习缺陷检测方法、装置及介质 | |
CN117710286A (zh) | 工业视觉大模型的训练方法、装置、电子设备和存储介质 | |
CN117058716A (zh) | 基于图像预融合的跨域行为识别方法及装置 | |
CN115239712B (zh) | 电路板表面缺陷检测方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |