CN116452540A - Pcb表面缺陷检测方法、系统 - Google Patents
Pcb表面缺陷检测方法、系统 Download PDFInfo
- Publication number
- CN116452540A CN116452540A CN202310414200.0A CN202310414200A CN116452540A CN 116452540 A CN116452540 A CN 116452540A CN 202310414200 A CN202310414200 A CN 202310414200A CN 116452540 A CN116452540 A CN 116452540A
- Authority
- CN
- China
- Prior art keywords
- image
- defect
- pcb
- synthesized
- background
- 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.)
- Pending
Links
- 230000007547 defect Effects 0.000 title claims abstract description 148
- 238000001514 detection method Methods 0.000 title claims abstract description 109
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000012549 training Methods 0.000 claims abstract description 46
- 238000012360 testing method Methods 0.000 claims abstract description 40
- 238000013528 artificial neural network Methods 0.000 claims abstract description 25
- 238000012795 verification Methods 0.000 claims abstract description 25
- 238000010586 diagram Methods 0.000 claims abstract description 18
- 238000007781 pre-processing Methods 0.000 claims abstract description 10
- 239000002131 composite material Substances 0.000 claims description 46
- 238000012545 processing Methods 0.000 claims description 21
- 230000015572 biosynthetic process Effects 0.000 claims description 15
- 238000003786 synthesis reaction Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 10
- 238000000605 extraction Methods 0.000 claims description 7
- 230000008859 change Effects 0.000 claims description 4
- 238000002372 labelling Methods 0.000 claims description 4
- 238000003672 processing method Methods 0.000 claims description 4
- 230000001351 cycling effect Effects 0.000 claims description 3
- 238000011176 pooling Methods 0.000 claims description 3
- 230000001172 regenerating effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 10
- 230000004927 fusion Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241000764238 Isis Species 0.000 description 1
- 229910000831 Steel Inorganic materials 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000000227 grinding Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 150000003071 polychlorinated biphenyls Chemical class 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000010959 steel Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 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
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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/20—Special algorithmic details
- G06T2207/20092—Interactive image processing based on input by user
- G06T2207/20104—Interactive definition of region of interest [ROI]
-
- 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)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种PCB表面缺陷检测方法、系统。其中,方法包括:基于采集的PCB缺陷图像信息构建训练集、验证集和测试集;对训练集进行预处理,获取多缺陷合成图像;构建目标检测神经网络;采用多缺陷合成图像对其进行训练,获得缺陷检测模型;在验证集上对缺陷检测模型进行验证,获得综合检测模型;在测试集上对综合检测模型进行测试,获得PCB表面缺陷检测结果图;该方法能够有效增加样本多样性;通过构建的目标检测神经网络,使其可以充分关注缺陷间的联系,同时给予图像生成网络反馈,合成更多有利于提高检测精度的样本,同时增加缺陷检测的精度,确保生成图像的真实性,从而提高缺陷检测模型的泛化能力,有效缓解前景‑前景不平衡问题。
Description
技术领域
本公开涉及表面缺陷检测技术领域,尤其涉及一种PCB表面缺陷检测方法、系统。
背景技术
在现代电子信息产业的发展中,印刷电路板(Printed circuitboard,PCB)已经属于不可替代的基础组成部分,它有着连接、集成、控制各种电子元器件的重要功能,在各种电子信息类产品生产使用中有着难以磨灭的影响。例如,我们日常生活中使用的智能手机、便携平板电脑等均离不开PCB的使用。由于PCB集成度极高的特性,PCB中任何环节出现问题都会影响PCB的使用,因此,PCB的缺陷检测就显得尤为重要。
近些年,神经网络的发展异常迅猛,可以高效地执行图像分类、目标检测、语义分割等任务。在缺陷检测方面,神经网络也被广泛的使用,例如钢材缺陷检测、PCB缺陷检测等。
现有技术中公开的方案只专注于识别目标本身,严重忽略了目标间的关系,当物体位于不同图像位置、不同尺度或者不同类别时,它们的数量在不同的图像中基本都不相同,导致检测出来的结果出现前景-前景不平衡,影响检测精度。
发明内容
有鉴于此,本公开实施例提供了一种PCB表面缺陷检测方法、系统,能够提高PCB缺陷检测精度。
第一方面,本公开实施例提供了一种PCB表面缺陷检测方法,包括以下步骤:
基于采集的PCB缺陷图像信息按照预设比例构建训练集、验证集和测试集;
对所述训练集进行预处理,获取多缺陷合成图像;
构建目标检测神经网络;
采用所述多缺陷合成图像对所述目标检测神经网络进行训练,获得缺陷检测模型;
在所述验证集上对所述缺陷检测模型进行验证;
在所述测试集上对所述缺陷检测模型进行测试,获得PCB表面缺陷检测结果图。
可选的,所述基于采集的PCB缺陷图像信息按照预设比例构建训练集、验证集和测试集,包括:
采集PCB成品图像;
基于预设缺陷类型对所述PCB成品图像进行分类,并进行标签化处理,获得PCB缺陷图像信息数据集;
将所述PCB缺陷图像信息数据集按照8:1:1的比例划分为所述训练集、所述验证集、所述测试集。
可选的,所述对所述训练集进行预处理,获取多缺陷合成图像,包括:
基于所述训练集,采用特征提取网络对第一前景掩码和第一背景图像进行特征提取,获得第一前景掩码特征图像和第一背景特征图像;
采用合成网络对所述第一前景掩码特征图像、所述第一背景特征图像进行处理,获得所述多缺陷合成图像。
可选的,所述采用合成网络对所述第一前景掩码特征图像、所述第一背景特征图像进行处理,获得所述多缺陷合成图像,包括:
对所述第一前景掩码进行同维度处理,获得与所述第一背景图像相同维度的第二前景掩码;
采用图像处理方法对所述第二前景掩码、所述第一背景图像融合,获得第一合成图像;
采用空间变换网络对所述第一背景图像、所述第二前景掩码、第一合成图像进行处理,获得第二合成图像;
在第二背景图像中提取一个与所述第一前景掩码形状相同的第一缺陷图像;
将所述第一缺陷图像与所述第二合成图像融合,获得第三合成图像;
在所述第二背景图像中提取一个与所述第一缺陷图像形状相同的第一背景掩码;
将所述第一背景掩码与所述第三合成图像融合,获得第四合成图像;
判断所述第四合成图像中是否包含至少三种缺陷,若是,则所述第四合成图像即为所述多缺陷合成图像;
若否,执行循环步骤。
可选的,所述循环步骤包括:
在第m背景图像中提取一个与第n前景掩码形状相同的第n缺陷图像;其中,m≥3,n=m-1;
将第n缺陷图像与第s合成图像融合,获得第s+1合成图像;其中,s=2m-2;
在第m背景图像中提取一个与第n缺陷图像形状相同的第n背景掩码;
将第n背景掩码与第s+1合成图像融合,获得第s+2合成图像;
判断所述第s+2合成图像中是否至少包含三种缺陷,若是,则所述第s+2合成图像即为该多缺陷合成图像,
若否,循环以上步骤,直至所述第s+2合成图像中是否至少包含三种缺陷。
可选的,还包括以下步骤:
采用判别器对所述多缺陷合成图像进行二次判别;
判断输出的真概率值是否大于预设值,若是,则判定所述多缺陷合成图像为真实合成图像;
若否,则判定所述多缺陷合成图像为虚假合成图像,触发所述合成网络改变训练参数,重新生成多缺陷合成图像;
所述训练参数包括学习率和损失函数。
可选的,所述目标检测神经网络包括依次串联的卷积层、池化层和全连接层;
所述全连接层包括相关模块和删除网络模块,所述相关模块用于对所述多缺陷合成图像进行不同缺陷之间的关联处理;
所述删除网络模块用于删除不合适的感兴趣区域,获得预设的感兴趣区域集合。
第二方面,本公开实施例提供了一种PCB表面缺陷检测系统,包括:
划分模块,配置为基于采集的PCB缺陷图像信息按照预设比例构建训练集、验证集和测试集;
预处理模块,配置为对所述训练集进行预处理,获取多缺陷合成图像;
构建模块,配置为构建目标检测神经网络;
训练模块,配置为采用所述多缺陷合成图像对所述目标检测神经网络进行训练,获得缺陷检测模型;
验证模块,配置为在所述验证集上对所述缺陷检测模型进行验证;
测试模块,配置为在所述测试集上对所述缺陷检测模型进行测试,获得PCB表面缺陷检测结果图。
第三方面,本公开实施例还提供了一种电子设备,采用如下技术方案:
所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行以上任一所述的PCB表面缺陷检测方法。
第四方面,本公开实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行以上任一所述的PCB表面缺陷检测方法。
本申请公开的一种PCB表面缺陷检测方法,获取的多缺陷合成图像,包含多种类型缺陷,有效增加样本多样性;通过构建的目标检测神经网络,使其可以充分关注缺陷间的联系,同时给予图像生成网络反馈,合成更多有利于提高检测精度的样本,同时增加缺陷检测的精度,确保生成图像的真实性,从而提高缺陷检测模型的泛化能力,有效缓解前景-前景不平衡问题。
本申请通过采用合成网络,有效解决图像集缺陷单一问题以及无法使用缺陷之间的联系产生的前景-前景不平衡问题,有效增加样本多样性,使图像中包含多种缺陷特征,便于利用缺陷间的信息。
上述说明仅是本公开技术方案的概述,为了能更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为让本公开的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本公开实施例提供的PCB表面缺陷检测方法的流程示意图。
图2为本申请提供的PCB表面缺陷检测方法中的训练集构建流程示意图。
图3为本公开实施例中的多缺陷合成图像的获取方法流程示意图。
图4为本公开实施例中的特征提取合成的流程示意图。
图5为本公开实施例中的循环步骤的流程示意图。
图6为本公开实施例中的目标检测神经网络构成示意图。
图7为本申请公开的PCB表面缺陷检测方法的另一种实施例的流程示意图。
图8为本申请中的真实合成图像的获取流程示意图。
图9为本公开实施例提供的PCB表面缺陷检测系统的原理框图;
图10为本公开实施例提供的一种电子设备的原理框图。
具体实施方式
下面结合附图对本公开实施例进行详细描述。
应当明确,以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目各方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本公开的基本构想,图式中仅显示与本公开中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。
参照图1,本申请的第一方面公开了一种PCB表面缺陷检测方法,该方法包括以下步骤:
S100,基于采集的PCB缺陷图像信息按照预设比例构建训练集、验证集和测试集;
S200,对训练集进行预处理,获取多缺陷合成图像;
S300,构建目标检测神经网络;
S400,采用多缺陷合成图像对目标检测神经网络进行训练,获得缺陷检测模型;
S500,在验证集上对缺陷检测模型进行验证,获得综合检测模型;
在测试集上对综合检测模型进行测试,获得测试集中的PCB表面缺陷检测结果图。
本申请公开的一种PCB表面缺陷检测方法,获取的多缺陷合成图像,包含多种类型缺陷,有效增加样本多样性;通过构建的目标检测神经网络,使其可以充分关注缺陷间的联系,同时给予图像生成网络反馈,合成更多有利于提高检测精度的样本,同时增加缺陷检测的精度,确保生成图像的真实性,从而提高缺陷检测模型的泛化能力,有效缓解前景-前景不平衡问题。
具体地参照图2,训练集、验证集和测试集的构建方法具体包括:
S110,采集PCB成品图像;
S120,基于预设缺陷类型对PCB成品图像进行分类,并进行标签化处理,获得PCB缺陷图像信息数据集;其中,PCB缺陷图像信息数据集包括多个单缺陷的PCB缺陷图像;
S130,将PCB缺陷图像信息数据集按照8:1:1的比例划分为训练集、验证集、测试集。
其中,预设缺陷类型包括短路、开路、鼠咬、缺失孔、毛刺和假铜。
其中,进行标签化处理具体包括生成对应的xml格式的标签文件。
参照图3,多缺陷合成图像的获取方法具体包括以下步骤:
S210,基于训练集,采用特征提取网络对第一前景掩码和第一背景图像进行特征提取,获得第一前景掩码特征图像和第一背景特征图像;
S220,采用合成网络对第一前景掩码特征图像、第一背景特征图像进行处理,获得多缺陷合成图像。
通过采用合成网络,有效解决图像集缺陷单一问题以及无法使用缺陷之间的联系产生的前景-前景不平衡问题,有效增加样本多样性,使图像中包含多种缺陷特征,便于利用缺陷间的信息。
具体地参照图4,对第一前景掩码M1进行同维度处理,获得与第一背景图像B1相同维度的第二前景掩码M2;
采用图像处理方法对第二前景掩码M2、第一背景图像B1融合,获得第一合成图像F1;
采用空间变换网络对第一背景图像B1、第二前景掩码M2、第一合成图像F1进行处理,获得第二合成图像F2;
在第二背景图像B2中提取一个与第一前景掩码M1形状相同的第一缺陷图像Q1;
将第一缺陷图像Q1与第二合成图像F2融合,获得第三合成图像F3;
在第二背景图像B2中提取一个与第一缺陷图像Q1形状相同的第一背景掩码A1;
将第一背景掩码A1与第三合成图像F3融合,获得第四合成图像F4;
判断第四合成图像F4中是否包含至少三种缺陷,若是,则第四合成图像即为多缺陷合成图像;
若否,执行循环步骤。
在本实施例中,图像处理方法优选为α融合。
通过本方法,能够有效解决过多的正样本影响后续目标检测网络的泛化能力的问题。
参照图5,循环步骤包括:在第m背景图像Bm中提取一个与第n前景掩码Mn形状相同的第n缺陷图像Qn;其中,m≥3,n=m-1;
将第n缺陷图像Qn与第s合成图像Fs融合,获得第s+1合成图像Fs+1;其中,s=2m-2;
在第m背景图像Bm中提取一个与第n缺陷图像Mn形状相同的第n背景掩码An;
将第n背景掩码An与第s+1合成图像Fs+1融合,获得第s+2合成图像Fs+2;
判断第s+2合成图像Fs+2中是否至少包含三种缺陷,若是,则第s+2合成图像Fs+2即为该多缺陷合成图像,
若否,循环以上步骤,直至第s+2合成图像Fs+2中是否至少包含三种缺陷。
具体地,当第四合成图像中没有包含至少三种缺陷时,m=3,n=2,s=4,具体如下:
在第三背景图像B3中提取一个与第二前景掩码M2形状相同的第二缺陷图像Q2;
将第二缺陷图像Q2与第四合成图像F4融合,获得第五合成图像F5;
在第三背景图像B3中提取一个与第二缺陷图像Q2形状相同的第二背景掩码A2;
将第二背景掩码A2与第五合成图像F5融合,获得第六合成图像F6。
判断第六合成图像F6中是否包含至少三种缺陷,若是,则第六合成图像F6即为该多缺陷合成图像,若否,按照以上步骤继续循环,直至第s+2合成图像Fs+2中包含至少三种缺陷停止。
需要说明的是,第二背景图像、第三背景图像是选择的与第一背景图像不同的背景图像,即之前用过的背景图像,下次循环不会再使用,而是随机选择新的背景图像。
参照图6,在本实施例中,目标检测神经网络包括依次串联的卷积层、池化层和全连接层;全连接层包括相关模块(即Relation模块)和删除网络模块,相关模块用于对多缺陷合成图像进行不同缺陷之间的关联处理;删除网络模块用于删除不合适的感兴趣区域,获得预设的感兴趣区域集合(即最合适的感兴趣区域集合)。
具体地,Relation模块运用了Self-Attention机制,该机制输入由Query和一组键值对(Key-Value)组成,输出可以通过值的加权和计算得出,Queryy、Key、Value和输出都是向量。计算过程会用到一个Softmax函数来获得值的权重。给定一个查询Query(公式中的Q),所有的Keys(公式中的K)和Values(公式中的V),输出值对输入值进行加权平均:
Relation模块需要对描述的对象关系进行计算。物体由几何特征fG和外观特征fA组成。这里,fG是一个4维的对象包围框,fA是用于Relation模块的关键特征。给定N个对象的输入集合为对于第n个对象设置的整个对象关系特征fR(n)计算为:
输出是来自其他对象的外观特征的加权和,由WV线性转换(对应于Self-Attention中的值V)。关系权值ωmn表示受其他物体的影响。计算方法为:
使用点积的计算方式计算,与Self-Attention公式类似,
WK和WQ都是矩阵,其作用与Self-Attention公式中的K和Q类似。它们将原始特征和/>投影到子空间中,以衡量它们的匹配程度。投影后的特征维数为dk。
几何权值的计算为:
首先,将两个对象的几何特征嵌入到一个高维表示中,记为εG。为了使它在平移和缩放时保持不变性,会使用一个4维的相对几何特征,如
这个4维特征通过Self-Attention机制的方法嵌入到高维表示中,该方法计算不同波长的余弦和正弦函数。嵌入后的特征维为dg。然后,用WG对这个特征向量进行线性映射,得到一个标量,并截断到0,起到类似Relu的非线性激活作用。
Relation关系模块聚合了全部Nr关系特征,并通过加法来增强输入对象的外观特征。
其中,Concat[]用于聚合多个关系特征。为匹配通道尺寸,将每个的输出通道设为输入特征/>尺寸的/>
删除重复网络有三个步骤。首先,将1024维特征与分类评分融合生成外观特征。其次,关系模块转换所有对象的这些外观特征。最后,每个对象转换后的特征通过一个线性分类器(图4中的WS)和Sigmoid来输出概率∈[0,1]。Relation模块是网络的核心。它可以使用来自多个来源的信息(边界框、原始外观特征和分类分数)进行有效的端到端学习。
为了更有效地完成删除,需要将分数转换为排名,而不是仅使用它的值,即输入的N个对象按照分数降序排序。每个对象通过计算得到相应的排列∈[1,N]。然后将标量排列嵌入到更高维度的128特征中。排列特征和原来的1024维外观特征都被转换为128维(分别通过图5中的WfR和Wf),随后两者融合作为关系模块的输入。
最后通过设定一个预定义的阈值η,检测框与真值框的IoU≥η且得分最高的检测框是正确的,其他的是重复的。
通过本申请构建的目标检测神经网络,利用缺陷间的外观和几何信息,以缓解前景-前景不平衡问题,再加入删除网络模块,回归过程中选取最优解,进一步提升检测的速度。
参照图7,进一步地,在本申请的其它实施例中,本申请公开的一种PCB表面缺陷检测方法,具体包括以下步骤:
基于采集的原始PCB缺陷图像信息按照预设比例构建训练集、验证集和测试集;
对训练集进行预处理,获取多缺陷合成图像;
对多缺陷合成图像进行二次判别,获得真实合成图像;
构建目标检测神经网络;
采用真实合成图像对目标检测神经网络进行训练,获得缺陷检测模型;
在验证集上对缺陷检测模型进行验证;
在测试集上对缺陷检测模型进行测试,获得PCB表面缺陷检测结果图。
或者,在验证集上对缺陷检测模型进行验证,获得综合检测模型;在测试集上对综合检测模型进行测试,获得测试集中的PCB表面缺陷检测结果图。
参照图8,真实合成图像的获取步骤如下:
采用判别器对多缺陷合成图像进行二次判别;
判断输出的真概率值是否大于预设值,若是,则判定该多缺陷合成图像为真实合成图像;
若否,则判定多缺陷合成图像为虚假合成图像,触发合成网络改变训练参数,重新生成多缺陷合成图像。
训练参数包括学习率和损失函数。
在本实施例中,所采用的判别器为训练好的判别器,具体训练过程如下:将采集的PCB缺陷图像信息(即单缺陷图像信息)、多缺陷合成图像均作为样本输入至判别器,采用生成式对抗网络对生成器、判别器进行对抗训练;若判别器能够判别出多缺陷合成图像是假的,说明生成器的性能不行,生成的图太假,进而提高生成器的生成性能;直到生成器提高的性能输出的多缺陷合成图像被判别器判定为真的时,说明生成器性能很好了,此时获得的多缺陷合成图像也是最优的。
在本实施例中,多缺陷合成图像是通过合成网络获得,因此,在对抗训练过程中,生成器性能的好坏是直接与合成网络同步的,当多缺陷合成图像被判别为虚假图像时,会实时反馈至合成网络,触发合成网络改变训练参数,重新生成多缺陷合成图像;通过这样对抗的形式,获得高性能的合成网络,保证获得的多缺陷合成图像更加真实,防止目标检测网络过拟合。
对于PCB图像缺陷检测,主要使用的评价指标为AP和mAP。其中AP为每个类别的平均精度,mAP为所有类别下的平均精度。
表1为均使用图像合成和鉴别器的前提下,将目标检测网络分别替换为下列目标检测网络进行的对比试验。
从表1可以看出本文的方法得到的mAP为96.37%,比Faster R-CNN提高了7.8%,比Mask R-CNN提高了6.31%,然后对比一阶段的SSD提高了5.65%,在对于PCB缺陷检测方面,本文提出的方法取得了较好的结果;对于不同类型的缺陷检测效果都有较大提升,且极大程度减小了不同类型缺陷的检测差距。
表1PCB缺陷检测对比试验
参照图9,本申请的第二方面公开了一种PCB表面缺陷检测系统,包括:
划分模块,配置为基于采集的PCB缺陷图像信息按照预设比例构建训练集、验证集和测试集;
预处理模块,配置为对训练集进行预处理,获取多缺陷合成图像;
构建模块,配置为构建目标检测神经网络;
训练模块,配置为采用多缺陷合成图像对目标检测神经网络进行训练,获得缺陷检测模型;
验证模块,配置为在验证集上对缺陷检测模型进行验证,获得综合检测模型;
测试模块,配置为在测试集上对综合检测模型进行测试,获得测试集中的PCB表面缺陷检测结果图。
根据本公开实施例的电子设备包括存储器和处理器。该存储器用于存储非暂时性计算机可读指令。具体地,存储器可以包括一个或多个计算机程序产品,该计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。该易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。该非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。
该处理器可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制电子设备中的其它组件以执行期望的功能。在本公开的一个实施例中,该处理器用于运行该存储器中存储的该计算机可读指令,使得该电子设备执行前述的本公开各实施例的PCB表面缺陷检测方法全部或部分步骤。
本领域技术人员应能理解,为了解决如何获得良好用户体验效果的技术问题,本实施例中也可以包括诸如通信总线、接口等公知的结构,这些公知的结构也应包含在本公开的保护范围之内。
如图10为本公开实施例提供的一种电子设备的结构示意图。其示出了适于用来实现本公开实施例中的电子设备的结构示意图。图10示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图10所示,电子设备可以包括处理装置(例如中央处理器、图形处理器等),其可以根据存储在只读存储器(ROM)中的程序或者从存储装置加载到随机访问存储器(RAM)中的程序而执行各种适当的动作和处理。在RAM中,还存储有电子设备操作所需的各种程序和数据。处理装置、ROM以及RAM通过总线彼此相连。输入/输出(I/O)接口也连接至总线。
通常,以下装置可以连接至I/O接口:包括例如传感器或者视觉信息采集设备等的输入装置;包括例如显示屏等的输出装置;包括例如磁带、硬盘等的存储装置;以及通信装置。通信装置可以允许电子设备与其他设备(比如边缘计算设备)进行无线或有线通信以交换数据。虽然图10示出了具有各种装置的电子设备,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储装置被安装,或者从ROM被安装。在该计算机程序被处理装置执行时,执行本公开实施例的PCB表面缺陷检测方法的全部或部分步骤。
有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此不再赘述。
根据本公开实施例的计算机可读存储介质,其上存储有非暂时性计算机可读指令。当该非暂时性计算机可读指令由处理器运行时,执行前述的本公开各实施例的PCB表面缺陷检测方法的全部或部分步骤。
上述计算机可读存储介质包括但不限于:光存储介质(例如:CD-ROM和DVD)、磁光存储介质(例如:MO)、磁存储介质(例如:磁带或移动硬盘)、具有内置的可重写非易失性存储器的媒体(例如:存储卡)和具有内置ROM的媒体(例如:ROM盒)。
有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此不再赘述。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
在本公开中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序,本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
另外,如在此使用的,在以“至少一个”开始的项的列举中使用的“或”指示分离的列举,以便例如“A、B或C的至少一个”的列举意味着A或B或C,或AB或AC或BC,或ABC(即A和B和C)。此外,措辞“示例的”不意味着描述的例子是优选的或者比其他例子更好。
还需要指出的是,在本公开的系统和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的组成、手段、方法或动作。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (10)
1.一种PCB表面缺陷检测方法,其特征在于,包括以下步骤:
基于采集的原始PCB缺陷图像信息按照预设比例构建训练集、验证集和测试集;
对所述训练集进行预处理,获取多缺陷合成图像;
构建目标检测神经网络;
采用所述多缺陷合成图像对所述目标检测神经网络进行训练,获得缺陷检测模型;
在所述验证集上对所述缺陷检测模型进行验证,获得综合检测模型;
在所述测试集上对所述综合检测模型进行测试,获得所述测试集中的PCB表面缺陷检测结果图。
2.根据权利要求1所述的PCB表面缺陷检测方法,其特征在于,所述基于采集的PCB缺陷图像信息按照预设比例构建训练集、验证集和测试集,包括:
采集PCB成品图像;
基于预设缺陷类型对所述PCB成品图像进行分类,并进行标签化处理,获得PCB缺陷图像信息数据集;
将所述PCB缺陷图像信息数据集按照8:1:1的比例划分为所述训练集、所述验证集、所述测试集。
3.根据权利要求1所述的PCB表面缺陷检测方法,其特征在于,所述对所述训练集进行预处理,获取多缺陷合成图像,包括:
基于所述训练集,采用特征提取网络对第一前景掩码和第一背景图像进行特征提取,获得第一前景掩码特征图像和第一背景特征图像;
采用合成网络对所述第一前景掩码特征图像、所述第一背景特征图像进行处理,获得所述多缺陷合成图像。
4.根据权利要求3所述的PCB表面缺陷检测方法,其特征在于,所述采用合成网络对所述第一前景掩码特征图像、所述第一背景特征图像进行处理,获得所述多缺陷合成图像,包括:
对所述第一前景掩码进行同维度处理,获得与所述第一背景图像相同维度的第二前景掩码;
采用图像处理方法对所述第二前景掩码、所述第一背景图像融合,获得第一合成图像;
采用空间变换网络对所述第一背景图像、所述第二前景掩码、第一合成图像进行处理,获得第二合成图像;
在第二背景图像中提取一个与所述第一前景掩码形状相同的第一缺陷图像;
将所述第一缺陷图像与所述第二合成图像融合,获得第三合成图像;
在所述第二背景图像中提取一个与所述第一缺陷图像形状相同的第一背景掩码;
将所述第一背景掩码与所述第三合成图像融合,获得第四合成图像;
判断所述第四合成图像中是否包含至少三种缺陷,若是,则所述第四合成图像即为所述多缺陷合成图像;
若否,执行循环步骤。
5.根据权利要求4所述的PCB表面缺陷检测方法,其特征在于,所述循环步骤包括:
在第m背景图像中提取一个与第n前景掩码形状相同的第n缺陷图像;其中,m≥3,n=m-1;
将第n缺陷图像与第s合成图像融合,获得第s+1合成图像;其中,s=2m-2;
在第m背景图像中提取一个与第n缺陷图像形状相同的第n背景掩码;
将第n背景掩码与第s+1合成图像融合,获得第s+2合成图像;
判断所述第s+2合成图像中是否至少包含三种缺陷,若是,则所述第s+2合成图像即为该多缺陷合成图像,
若否,循环以上步骤,直至所述第s+2合成图像中是否至少包含三种缺陷。
6.根据权利要求5所述的PCB表面缺陷检测方法,其特征在于,还包括以下步骤:
采用判别器对所述多缺陷合成图像进行二次判别;
判断输出的真概率值是否大于预设值,若是,则判定所述多缺陷合成图像为真实合成图像;
若否,则判定所述多缺陷合成图像为虚假合成图像,触发所述合成网络改变训练参数,重新生成多缺陷合成图像;
所述训练参数包括学习率和损失函数。
7.根据权利要求1所述的PCB表面缺陷检测方法,其特征在于,所述目标检测神经网络包括依次串联的卷积层、池化层和全连接层;
所述全连接层包括相关模块和删除网络模块,所述相关模块用于对所述多缺陷合成图像进行不同缺陷之间的关联处理;
所述删除网络模块用于删除不合适的感兴趣区域,获得预设的感兴趣区域集合。
8.一种PCB表面缺陷检测系统,其特征在于,包括:
划分模块,配置为基于采集的PCB缺陷图像信息按照预设比例构建训练集、验证集和测试集;
预处理模块,配置为对所述训练集进行预处理,获取多缺陷合成图像;
构建模块,配置为构建目标检测神经网络;
训练模块,配置为采用所述多缺陷合成图像对所述目标检测神经网络进行训练,获得缺陷检测模型;
验证模块,配置为在所述验证集上对所述缺陷检测模型进行验证;
测试模块,配置为在所述测试集上对所述缺陷检测模型进行测试,获得PCB表面缺陷检测结果图。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一所述的PCB表面缺陷检测方法。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行权利要求1-7中任一所述的PCB表面缺陷检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310414200.0A CN116452540A (zh) | 2023-04-18 | 2023-04-18 | Pcb表面缺陷检测方法、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310414200.0A CN116452540A (zh) | 2023-04-18 | 2023-04-18 | Pcb表面缺陷检测方法、系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116452540A true CN116452540A (zh) | 2023-07-18 |
Family
ID=87119754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310414200.0A Pending CN116452540A (zh) | 2023-04-18 | 2023-04-18 | Pcb表面缺陷检测方法、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116452540A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117474904A (zh) * | 2023-12-26 | 2024-01-30 | 北京阿丘机器人科技有限公司 | 工业缺陷检测方法、装置、设备及存储介质 |
-
2023
- 2023-04-18 CN CN202310414200.0A patent/CN116452540A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117474904A (zh) * | 2023-12-26 | 2024-01-30 | 北京阿丘机器人科技有限公司 | 工业缺陷检测方法、装置、设备及存储介质 |
CN117474904B (zh) * | 2023-12-26 | 2024-03-12 | 北京阿丘机器人科技有限公司 | 工业缺陷检测方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111860171B (zh) | 一种大规模遥感图像中不规则形状目标的检测方法及系统 | |
CN105975573B (zh) | 一种基于knn的文本分类方法 | |
Chen et al. | Faster region-based hotspot detection | |
CN112270196A (zh) | 实体关系的识别方法、装置及电子设备 | |
CN112669275A (zh) | 基于YOLOv3算法的PCB表面缺陷检测方法及装置 | |
CN112767386B (zh) | 基于主题特征和评分分布的图像美学质量评价方法及系统 | |
CN116452540A (zh) | Pcb表面缺陷检测方法、系统 | |
CN115860091B (zh) | 一种基于正交约束的深度特征描述符学习方法 | |
CN112419268A (zh) | 一种输电线路图像缺陷检测方法、装置、设备及介质 | |
CN110852425A (zh) | 基于优化的神经网络的处理方法、装置和电子系统 | |
CN115761599A (zh) | 一种视频异常检测方法及系统 | |
CN108090905B (zh) | 产线异常的判断方法及系统 | |
CN113221680B (zh) | 基于文本动态引导视觉特征提炼的文本行人检索方法 | |
Grimme et al. | Lost in transformation: Rediscovering llm-generated campaigns in social media | |
CN111967383A (zh) | 年龄估计方法、年龄估计模型的训练方法和装置 | |
CN106485286B (zh) | 一种基于局部敏感判别的矩阵分类模型 | |
CN111354019B (zh) | 一种基于神经网络的视觉跟踪失效检测系统及其训练方法 | |
Bi et al. | CASA-Net: a context-aware correlation convolutional network for scale-adaptive crack detection | |
CN114706780A (zh) | 一种基于Stacking集成学习的软件缺陷预测方法 | |
CN110633466B (zh) | 基于语义分析的短信犯罪识别方法、系统和可读存储介质 | |
CN112836754A (zh) | 一种面向图像描述模型泛化能力评估方法 | |
Liu et al. | Lightweight Single Shot Multi-Box Detector: A fabric defect detection algorithm incorporating parallel dilated convolution and dual channel attention | |
Zhao et al. | A Lightweight Generalizable Evaluation and Enhancement Framework for Generative Models and Generated Samples | |
CN110490226A (zh) | 一种识别方法及设备 | |
CN116536906B (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 |