CN113077453B - 一种基于深度学习的电路板元器件缺陷检测方法 - Google Patents
一种基于深度学习的电路板元器件缺陷检测方法 Download PDFInfo
- Publication number
- CN113077453B CN113077453B CN202110403802.7A CN202110403802A CN113077453B CN 113077453 B CN113077453 B CN 113077453B CN 202110403802 A CN202110403802 A CN 202110403802A CN 113077453 B CN113077453 B CN 113077453B
- Authority
- CN
- China
- Prior art keywords
- component
- circuit board
- convolution
- components
- mask
- 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
Images
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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- 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/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Supply And Installment Of Electrical Components (AREA)
Abstract
本发明公开了一种基于深度学习的电路板元器件缺陷检测方法,通过电路板检测生产线的摄像机拍摄待检测电路板,对训练集及待测图片进行区域分割,将SOLOv2网络进行改进以分割图像中的各类元器件及电路板底板,并对多区域检测结果进行融合提高检测精度,然后利用电路板底板类掩膜预测结果矫正图片尺寸,由掩膜预测结果计算各元器件中心位置并基于Hu不变矩计算元器件的主轴方向,将提取出的元器件位置与模板电路板中各元器件的设定位置进行匈牙利匹配,匹配成功的双方对比位置及方向差异,判断出该处是否存在缺件、偏移缺陷,并获得位置偏移量和角度偏移量。本发明可以实现精确检测并定位电路板中含有缺陷的元器件,保证电路板的焊接质量。
Description
技术领域
本发明涉及电路板元器件缺陷检测的技术领域,尤其是指一种基于深度学习的电路板元器件缺陷检测方法。
背景技术
在如今的电气化时代,人们的日常生活工作中离不开各式各样的电器设施,电路板是这些电器设备的核心组成部分,是一切电器运行的基础,因此电路板的质量好坏直接关系着整个产品的成功与否。在电路板的制造过程中,元器件的焊接是非常重要的一环,虽然现在的自动化设备具有较高的焊接准确率,但仍然避不可免的会出现一些焊接失败的问题,这就需要检测环节可以准确检测出这些带有缺陷的电路板,保证下游环节不会出现相关的问题。然而,现有的检测的方法大都采用传统的图像处理方法,对检测环境具有较高的要求,当光照变化或者相机的安装距离发生变化等情况时,难以保存较好的鲁棒性,而对于一些使用深度目标检测网络的方法,却存在的定位不精确,难以识别元件错焊等问题。
发明内容
本发明的目的在于克服现有技术的缺点与不足,提出了一种基于深度学习的电路板元器件缺陷检测方法,该方法对各类元器件及电路板底板进行分割,精确定位每个元器件的位置及方向,通过与模板电路板的元器件位置对比,准确定位有缺陷的元器件,在不同环境仍然具有较好的鲁棒性,能够及时准确发现缺陷电路板,防止劣质电路板的流出。
为实现上述目的,本发明所提供的技术方案为:一种基于深度学习的电路板元器件缺陷检测方法,包括以下步骤:
1)获取电路板检测生产线的摄像机拍摄的电路板图像,将所有电路板图像按比例划分原始训练集和原始测试集,并进行掩膜标注;
2)对原始训练集进行重采样,在检测目标附近剪裁一部分图像,并重新生成对应的标签,作为最终的训练集,再对改进的SOLOv2网络进行训练,其中,该SOLOv2网络的改进是在主干网络中使用深度可分离卷积替代传统卷积,在网络输出层使用多个空洞卷积替代单一的传统卷积;
3)将待检测图像分成多个区域块,按批次送入训练好的改进的SOLOv2网络以对图像中的各类元器件及电路板底板进行分割,获取各类元器件及电路板底板掩膜预测结果;
4)将待测图像所有区域块的各类元器件及电路板底板掩膜预测结果进行融合;
5)通过融合后的电路板底板掩膜预测结果对各类元器件及电路板底板的掩膜预测结果进行矫正使其与模板电路板方向和尺寸相同;
6)依据矫正后的掩膜预测结果计算出各个元器件的实际中心位置及偏转方向;
7)将各个元器件的实际中心位置及偏转方向与其在模板电路板中的设定值对比,判断出该处是否存在缺件、偏移缺陷,并获得位置偏移量和角度偏移量。
在步骤2)中,训练集的重采样方法如下:
2.1)统计出原始训练集中所有元器件的外接框,假设第K个元器件的掩膜标签为{(xi,yi),i∈[0,NK]},NK为元器件K掩膜点的数量,(xi,yi)为第i个掩膜点的横坐标和纵坐标,则该元器件角坐标为其中,为第K个元器件左上角的横坐标和纵坐标,为第K个元器件右下角的横坐标和纵坐标,min({·})、max({·})分别为集合{·}的最小值和最大值,该元器件的外接框为(xK,yK,wK,hK)为第K个元器件外接框左上角的横坐标和纵坐标及外接框的宽和高;
2.2)根据所有元器件的外接框生成新的训练集图像,寻找所有元器件的外接框的最大边长Lmax=max(max({(wj)}),max({(hj)})),j∈[1,M],M为所有的元器件数目,wj、hj为第j个元器件外接框的宽和高,执行操作:选定裁剪目标框的宽高L=random(Lmax,2Lmax),random()指随机取范围内的正整数,裁剪目标框左上角横坐标为纵坐标为由裁剪目标框从原图中剪切出图像PIC,每个元器件多次执行该操作,从而裁剪出大量图像以作为训练集图像;
2.3)针对裁剪得到的训练集图像生成对应的标签,对于落入PIC内的元器件K,计算元器件K在PIC内的部分占元器件K本身大小的比例为元器件K在PIC内的面积,areaK为元器件K自身的面积,其中areaK=wK×hK,若小于阈值0.4,则将该元器件标记为背景,舍去其标签,否则,将其掩膜标签设置为{(xi-xstart,yi-ystart),i∈[0,NK]}。
在步骤2)中,所述改进的SOLOv2网络的具体改进如下:
将主干网络中除第一层卷积之外的所有卷积替换为深度可分离卷积降低网络参数量,以提高前向推导的速度,提高实时性能,深度可分离卷积将传统的单个卷积核分为两个独立的卷积核:分离卷积和逐点卷积;分离卷积将特征图不同通道分离开分别进行卷积操作,逐点卷积对不同特征图上相同像素点进行卷积操作,提取不同特征图之间的关系;使用的深度可分离卷积(DSCM)结构包含分离卷积层、BN层、Mish激活函数、逐点卷积层、BN层和Mish激活函数;
在网络输出层使用多个空洞卷积替换单一的传统卷积,在增加少量参数的情况下,使预测结果中的每个位置充分综合全局信息,提高分割精度,空洞卷积与传统卷积相比,参数量相同,但感受野更大,不同扩张系数的空洞卷积组合能够提取特征图中的多尺度信息,改进后的网络输出层包含多个不同扩张系数的3×3空洞卷积、BN层、Mish激活函数、concat层和逐点卷积层,其中,每个空洞卷积各接一个BN层和Mish激活函数,负责提取一个尺度范围的特征;concat层为特征融合层,将不同空洞卷积生成的特征图按通道拼接;再通过逐点卷积层将包含不同尺度信息的特征图进行融合得到单通道的语义分割图。
在步骤3)中,针对待检测图像,以Lmax/4为步长,从左到右、从上到下依次分割出多个边长为Lmax的正方形图像,即将一张待测图像分割为多个区域块,Lmax为所有元器件的外接框的最大边长,对于最左侧及最下侧,边长不足以切分出设定大小图像的情况,直接以最左侧及最下侧为边缘,从右向左、从下向上分割出Lmax大小的方形图像,但只分割一次,并将所有图像送入改进的SOLOv2网络进行预测。
在步骤4)中,由于目标在分割过程中可能被分割到多个区域块中,且各区域块中包含的目标都不完整,图像特征不全面,都无法预测各自缺失部分的轮廓,因此,将相邻区域块的掩膜预测结果进行融合:若相邻区域块出现轮廓重叠且类别相同的掩膜预测结果,则视其为一个目标,将对应的所有掩膜预测结果取并集作为该目标的掩膜预测结果,以此提高检测精度。
在步骤5)中,首先计算出电路板底板掩膜预测结果的最小外接矩形,利用该矩形四个角点结合模板电路板尺寸对各类元器件及电路板底板掩膜预测结果进行仿射变换矫正,得到与模板电路板尺寸完全一致的掩膜预测结果,使得各元器件在电路板中的相对位置更加精确。
在步骤6)中,从矫正后的掩膜预测结果中提取出各元器件的掩膜预测结果,从而获得各个元器件的中心并基于Hu不变矩计算其主轴方向,即元器件的偏移方向,并记录下各个元器件的中心位置及偏转角度。
在步骤7)中,根据所有元器件的中心位置及偏转角度进行缺陷判断,将所有元器件按类别分为不同的组别,每个组别内使用匈牙利匹配算法,以提取出的元器件位置与元器件设定位置之间的距离作为相似度度量标准,且设定距离越远相似度越低,实现最优匹配,匹配完成后,逐个检索各元器件设定位置,若提取出的元器件没有与其配对或配对成功但二者之间的中心位置偏移量大于第一阈值则认为该处存在缺件缺陷;若小于第一阈值而大于第二阈值,则认为该处存在偏移缺陷;若该处方向偏移量大于第三阈值,则认为该处存在偏移缺陷;若该处中心位置偏移量小于第二阈值且方向偏移量小于第三阈值,则认为该处没有缺陷,以此判断该元器件设定位置处是否存在缺陷,并获得精确的中心位置偏移量和角度偏移量。
本发明与现有技术相比,具有如下优点与有益效果:
1、采用改进的SOLOv2网络(深度学习实例分割网络)进行电路板元器件及电路板底板的分割识别,对于不同光照、不同电路板摆放位置、不同线路布局的电路板均有较好的分割效果,同时可以对识别出不同类型的元器件,增加缺陷判断的信息,提高判断准确率。
2、利用电路板底板的掩膜预测结果对其他所有提取出的元器件掩膜预测结果进行矫正,全部统一到模板电路板尺度之下,可以获得更加精确的元器件位置和方向信息,提高匹配的准确度。
3、按元器件类别分组使用匈牙利匹配算法对提取出的元器件位置和元器件设定位置进行匹配可以得到最优的匹配结果,有效防止一个匹配多个或者两个不同元器件匹配成功的情况发生,减少缺陷判别的错误率。
4、利用提取出的元器件位置和元器件设定位置的中心位置和主轴方向信息进行缺陷检测,在获得电路板某个元件缺陷信息的同时,还可以获得位置偏移量和角度偏移量信息,信息更加丰富。
附图说明
图1为本发明方法逻辑流程示意图。
图2为改进的SOLOv2网络结构图。
图3为深度可分离卷积的结构示意图。
图4为网络输出层的结构示意图。
图5为目标多次分割示意图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
如图1所示,本实施例所提供的基于深度学习的电路板元器件缺陷检测方法,其具体情况如下:
步骤1:获取电路板检测生产线的摄像机拍摄的电路板图像,采用Labelme软件对所有的电路板图像中的各类元器件及电路板底板边缘进行点集标注,获得对应图像的json格式的标签文件,标注文件包括图像中元器件及电路板底板的掩膜点集数据以及类别信息,并将图像和标签按9:1比例分为原始训练集和原始测试集。
步骤2:考虑到各元器件相对电路板比例过小,直接原图输入网络,元器件的特征无法被抽取,导致无法学习到有效的特征,所以对原始训练集进行重采样,训练集重采样方法如下:
2.1)统计出原始训练集中所有元器件的外接框,假设第K个元器件的掩膜标签为{(xi,yi),i∈[0,NK]},NK为元器件K掩膜点的数量,(xi,yi)为第i个掩膜点的横坐标和纵坐标,则该元器件角坐标为其中,为第K个元器件左上角的横坐标和纵坐标,为第K个元器件右下角的横坐标和纵坐标,min({·})、max({·})分别为集合{·}的最小值和最大值,该元器件的外接框为(xK,yK,wK,hK)为第K个元器件外接框左上角的横坐标和纵坐标及外接框的宽和高;
2.2)根据所有元器件的外接框生成新的训练集图像,寻找所有元器件的外接框的最大边长Lmax=max(max({(wj)}),max({(hj)})),j∈[1,M],M为所有的元器件数目,wj,hj为第j个元器件外接框的宽和高,以元器件K为例,选定裁剪目标框的宽高L=random(Lmax,2Lmax),random()指随机取范围内的正整数,裁剪目标框左上角横坐标为纵坐标为由裁剪目标框从原图中剪切出图像PIC,每个元器件多次执行该操作,从而裁剪出大量图像以作为训练集图像;
2.3)针对裁剪得到的训练集图像生成对应的标签,对于落入PIC内的元器件K,计算元器件K在PIC内的部分占元器件K本身大小的比例为元器件K在PIC内的面积,areaK为元器件K自身的面积,其中areaK=wK×hK,若小于阈值0.4,则将该元器件标记为背景,舍去其标签,否则,将其掩膜标签设置为{(xi-xstart,yi-ystart),i∈[0,NK]}。
步骤3:利用重采样后的训练集训练提出的改进的SOLOv2网络,该网络主要是为提高检测速度和检测精度,网络结构如图2所示,主要由基网络、分类分支以及Mask分支组成,整体网络其主要结构介绍如下:
基网络Backbone为ResNet50和FPN,ResNet50拥有良好的特征提取能力,可以获得表征意义很强的特征图,FPN将ResNet50在不同阶段提取的多个分辨率特征图进行整合,建立特征金字塔,获得不同尺度下的特征图,对于不同尺度的目标可以有效提高检测效果;
对于分类分支,将FPN输出的最高层特征图对齐到S×S×256,再经过一系列的3×3卷积操作进一步提取特征,最终将输出对齐到固定的S×S×C大小,其中S与图中实例数目有关,实例越多,实例越小,S则越大,C为图像中实例的总类别数;
对于Mask分支,如图2所示包括Kernel分支和Feature分支。将FPN中最高层特征图对齐到S×S×256大小,再经过一系列的卷积,输出大小为S×S×Z1的Mask卷积核G1,Z1为卷积核通道数;对于Feature分支,将FPN中不同尺度的特征图通过卷积、上采样和双线程插值操作全部变到原图1/4大小,此时高为H,宽为W,然后进行通道拼接操作,利用空洞卷积模块进一步提取多尺度特征,得到H×W×Z2大小的Mask特征图F1,Z2为卷积核通道数,且Z1=9Z2;通过G1与F1的卷积可以得到S2个掩膜,每个掩膜对应一个实例个体。
其中,为了提高前向推导的速度,将主干网络中除第一层卷积之外的所有卷积替换为深度可分离卷积(DSCM)降低网络参数量,提高实时性能,使用的深度可分离卷积结构如图3所示,分离卷积层将特征图不同通道分离开分别进行卷积操作,逐点卷积对不同特征图上相同像素点进行卷积操作,提取不同特征图之间的关系。
网络输出层结构如图4所示,由多个不同扩张系数的3×3空洞卷积、BN层、Mish激活函数、concat层和逐点卷积层组成,扩张系数代表相邻卷积元素之间的距离,为1则为普通的卷积核,每个空洞卷积各接一个BN层和Mish激活函数,负责提取一个尺度范围的特征;concat层为特征融合层,将不同空洞卷积生成的特征图按通道拼接;再通过逐点卷积层将包含不同尺度信息的特征图进行融合得到单通道的语义分割图。
输入图像先通过特征提取网络得到不同尺度下的特征图,将最高层特征图作为分类分支和Kernel分支的输入,获得不同尺度下每个位置存在实例的置信度以及每个位置对应的Mask卷积核,将不同尺度的特征图作为Feature分支的输入,并通过空洞卷积模块进一步提取融合多尺度信息,得到一个原图1/4大小的Mask特征图,由各个位置的Mask卷积核与Mask特征图卷积获得每个位置的掩膜,根据分类分支中的置信度阈值滤除一部分不存在目标的位置,从Mask分支中获取其余位置的实例掩膜,并使用Matrix NMS进行非极大值抑制,相近位置只保留置信度最高的一个实例掩膜,进而得到最终的掩膜分割结果。
利用重采样后的训练集训练改进的SOLOv2网络,训练中采用Adam优化方法、0.001的初始学习率进行训练,选取第100个epoch的模型参数作为预测模型。
步骤4:在使用改进的SOLOv2网络检测测试图像之前,需要对测试图像预处理,为保持网络输入图像与训练图像信息分布一致,将测试图像进行分割,以Lmax/4为步长,从左到右、从上到下依次分割出多个边长为Lmax的正方形图像,即将一张待测图像分割为多个区域块,Lmax为所有元器件的外接框的最大边长,对于最左侧及最下侧,边长不足以切分出设定大小图像的情况,直接以最左侧及最下侧为边缘,从右向左、从下向上分割出Lmax大小的方形图像,但只分割一次,然后将所有区域块送入改进的SOLOv2网络进行预测获得各个区域块的掩膜预测结果。
步骤5:对所有区域块的掩膜预测结果进行后处理,一张原图经过切分得到众多区域块,考虑到目标在分割过程中可能被分割到多个区域块之中,导致该目标最终在多个区域块中出现,由于图像特征都不全面,都无法预测各自缺失部分的轮廓,如图5所示,因此,将相邻区域块的掩膜预测结果进行融合,得到准确的掩膜预测结果,融合方法为:若相邻区域块出现轮廓重叠且类别相同的掩膜预测结果,如图5中阴影部分,则视其为一个目标,将对应的所有掩膜预测结果取并集作为该目标的掩膜预测结果。
步骤6:根据电路板底板掩膜预测结果计算出对应的最小外接矩形,利用矩形四个角点结合模板电路板尺寸对各类元器件及电路板底板掩膜预测结果进行仿射变换矫正,得到与模板电路板尺寸完全一致的掩膜预测结果,使得各元器件在电路板中的相对位置更加精确。
步骤7:从矫正后的掩膜预测结果中提取出各元器件的掩膜预测结果,从而获得各个元器件的中心并基于Hu不变矩计算其主轴方向,即元器件的偏移方向,元器件中心直接由掩膜预测结果的左上角点和右下角点平均求得,元器件主轴方向计算方法如下所示:
首先获取掩膜预测结果的一阶统计矩和二阶统计矩,如下式所示:
其中,P代表掩膜预测结果一共有P行,Q代表掩膜预测结果一共有Q列,p代表第p行,q代表第q列,u代表行阶数,v代表列阶数,F(p,q)代表掩膜预测结果位于p行q列的值,Muv代表掩膜预测结果的统计矩,掩膜预测结果的质心坐标,计算公式如下式所示:
(xcenter,ycenter)为质心坐标,M00为0阶中心矩,M01,M10为1阶不变矩,倾角计算如下式所示:
其中,a为通过统计矩计算得到的掩膜预测结果在行方向的二阶中心矩,b为通过统计矩计算得到的掩膜预测结果在行方向和列方向的二阶中心矩,c为通过统计矩计算得到的掩膜预测结果在列方向的二阶中心矩,θ为掩膜预测结果长轴偏转角度。
使用以上方法,对所有元器件的掩膜预测结果进行计算,并记录各个元器件的中心位置及偏转角度。
步骤8:根据所有元器件的中心位置及偏转角度进行缺陷判断,将所有元器件按类别分为不同的组别,每个组别内使用匈牙利匹配算法,提取出的元器件位置与元器件设定位置之间相似度度量标准,即匈牙利匹配的优化矩阵如下式所示:
为第R类元器件中,第s个提取出的元器件位置与第t个元器件设定位置之间的距离,为第R类元器件中,第s个提取出的元器件位置与第t个元器件设定位置之间的相似度,所有元素组成匈牙利优化矩阵,NpR为提取出的R类元器件总数,NsR为模板电路板中R类元器件总数,为第R类元器件中,第s个提取出的元器件位置坐标,为第R类元器件中,第t个元器件设定位置坐标。
该相似度随着匹配双方距离越远变的越低,最终实现最优匹配,匹配完成后,逐个检索各元器件设定位置,若提取出的元器件没有与其配对或配对成功但二者之间的中心位置偏移量大于第一阈值则认为该处存在缺件缺陷;若小于第一阈值而大于第二阈值,则认为该处存在偏移缺陷;若该处方向偏移量大于第三阈值,则认为该处存在偏移缺陷;若该处中心位置偏移量小于第二阈值且方向偏移量小于第三阈值,则认为改处没有缺陷,以此判断该元器件设定位置处是否存在缺陷,并获得精确的中心位置偏移量和角度偏移量。
综上所述,在采用以上方案,本发明为检测电路板缺陷提供了新的方法,采用深度学习、传统图像处理算法实现了对电路板元器件的缺件、偏移的高精度检测和定位,具有实际推广价值,值得推广。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (3)
1.一种基于深度学习的电路板元器件缺陷检测方法,其特征在于,包括以下步骤:
1)获取电路板检测生产线的摄像机拍摄的电路板图像,将所有电路板图像按比例划分原始训练集和原始测试集,并进行掩膜标注;
2)对原始训练集进行重采样,在检测目标附近剪裁一部分图像,并重新生成对应的标签,作为最终的训练集,再对改进的SOLOv2网络进行训练,其中,该SOLOv2网络的改进是在主干网络中使用深度可分离卷积替代传统卷积,在网络输出层使用多个空洞卷积替代单一的传统卷积;
训练集的重采样方法如下:
2.1)统计出原始训练集中所有元器件的外接框,假设第K个元器件的掩膜标签为{(xi,yi),i∈[0,NK]},NK为元器件K掩膜点的数量,(xi,yi)为第i个掩膜点的横坐标和纵坐标,则该元器件角坐标为其中,为第K个元器件左上角的横坐标和纵坐标,为第K个元器件右下角的横坐标和纵坐标,min({·})、max({·})分别为集合{·}的最小值和最大值,该元器件的外接框为(xK,yK,wK,hK)为第K个元器件外接框左上角的横坐标和纵坐标及外接框的宽和高;
2.2)根据所有元器件的外接框生成新的训练集图像,寻找所有元器件的外接框的最大边长Lmax=max(max({(wj)}),max({(hj)})),j∈[1,M],M为所有的元器件数目,wj、hj为第j个元器件外接框的宽和高,执行操作:选定裁剪目标框的宽高L=random(Lmax,2Lmax),random()指随机取范围内的正整数,裁剪目标框左上角横坐标为纵坐标为由裁剪目标框从原图中剪切出图像PIC,每个元器件多次执行该操作,从而裁剪出大量图像以作为训练集图像;
2.3)针对裁剪得到的训练集图像生成对应的标签,对于落入PIC内的元器件K,计算元器件K在PIC内的部分占元器件K本身大小的比例 为元器件K在PIC内的面积,areaK为元器件K自身的面积,其中areaK=wK×hK,若小于阈值0.4,则将该元器件标记为背景,舍去其标签,否则,将其掩膜标签设置为{(xi-xstart,yi-ystart),i∈[0,NK]};
所述改进的SOLOv2网络的具体改进如下:
将主干网络中除第一层卷积之外的所有卷积替换为深度可分离卷积降低网络参数量,以提高前向推导的速度,提高实时性能,深度可分离卷积将传统的单个卷积核分为两个独立的卷积核:分离卷积和逐点卷积;分离卷积将特征图不同通道分离开分别进行卷积操作,逐点卷积对不同特征图上相同像素点进行卷积操作,提取不同特征图之间的关系;使用的深度可分离卷积结构包含分离卷积层、BN层、Mish激活函数、逐点卷积层、BN层和Mish激活函数;
在网络输出层使用多个空洞卷积替换单一的传统卷积,在增加少量参数的情况下,使预测结果中的每个位置充分综合全局信息,提高分割精度,空洞卷积与传统卷积相比,参数量相同,但感受野更大,不同扩张系数的空洞卷积组合能够提取特征图中的多尺度信息,改进后的网络输出层包含多个不同扩张系数的3×3空洞卷积、BN层、Mish激活函数、concat层和逐点卷积层,其中,每个空洞卷积各接一个BN层和Mish激活函数,负责提取一个尺度范围的特征;concat层为特征融合层,将不同空洞卷积生成的特征图按通道拼接;再通过逐点卷积层将包含不同尺度信息的特征图进行融合得到单通道的语义分割图;
3)将待检测图像分成多个区域块,按批次送入训练好的改进的SOLOv2网络以对图像中的各类元器件及电路板底板进行分割,获取各类元器件及电路板底板掩膜预测结果;
4)将待测图像所有区域块的各类元器件及电路板底板掩膜预测结果进行融合;
5)通过融合后的电路板底板掩膜预测结果对各类元器件及电路板底板的掩膜预测结果进行矫正使其与模板电路板方向和尺寸相同,具体如下:
首先,计算出电路板底板掩膜预测结果的最小外接矩形,利用该矩形四个角点结合模板电路板尺寸对各类元器件及电路板底板掩膜预测结果进行仿射变换矫正,得到与模板电路板尺寸完全一致的掩膜预测结果,使得各元器件在电路板中的相对位置更加精确;
6)依据矫正后的掩膜预测结果计算出各个元器件的实际中心位置及偏转方向,具体如下:
从矫正后的掩膜预测结果中提取出各元器件的掩膜预测结果,从而获得各个元器件的中心并基于Hu不变矩计算其主轴方向,即元器件的偏移方向,并记录下各个元器件的中心位置及偏转角度;
7)将各个元器件的实际中心位置及偏转方向与其在模板电路板中的设定值对比,判断出该处是否存在缺件、偏移缺陷,并获得位置偏移量和角度偏移量,具有如下:
根据所有元器件的中心位置及偏转角度进行缺陷判断,将所有元器件按类别分为不同的组别,每个组别内使用匈牙利匹配算法,提取出的元器件位置与元器件设定位置之间相似度度量标准,即匈牙利匹配的优化矩阵如下式所示:
为第R类元器件中,第s个提取出的元器件位置与第t个元器件设定位置之间的距离,为第R类元器件中,第s个提取出的元器件位置与第t个元器件设定位置之间的相似度,所有元素组成匈牙利优化矩阵,NpR为提取出的R类元器件总数,NsR为模板电路板中R类元器件总数,为第R类元器件中,第s个提取出的元器件位置坐标,为第R类元器件中,第t个元器件设定位置坐标;
相似度随着匹配双方距离越远变的越低,最终实现最优匹配,匹配完成后,逐个检索各元器件设定位置,若提取出的元器件没有与其配对或配对成功但二者之间的中心位置偏移量大于第一阈值则认为该处存在缺件缺陷;若小于第一阈值而大于第二阈值,则认为该处存在偏移缺陷;若该处方向偏移量大于第三阈值,则认为该处存在偏移缺陷;若该处中心位置偏移量小于第二阈值且方向偏移量小于第三阈值,则认为改处没有缺陷,以此判断该元器件设定位置处是否存在缺陷,并获得精确的中心位置偏移量和角度偏移量。
2.根据权利要求1所述的一种基于深度学习的电路板元器件缺陷检测方法,其特征在于:在步骤3)中,针对待检测图像,以Lmax/4为步长,从左到右、从上到下依次分割出多个边长为Lmax的正方形图像,即将一张待测图像分割为多个区域块,Lmax为所有元器件的外接框的最大边长,对于最左侧及最下侧,边长不足以切分出设定大小图像的情况,直接以最左侧及最下侧为边缘,从右向左、从下向上分割出Lmax大小的方形图像,但只分割一次,并将所有图像送入改进的SOLOv2网络进行预测。
3.根据权利要求1所述的一种基于深度学习的电路板元器件缺陷检测方法,其特征在于:在步骤4)中,由于目标在分割过程中可能被分割到多个区域块中,且各区域块中包含的目标都不完整,图像特征不全面,都无法预测各自缺失部分的轮廓,因此,将相邻区域块的掩膜预测结果进行融合:若相邻区域块出现轮廓重叠且类别相同的掩膜预测结果,则视其为一个目标,将对应的所有掩膜预测结果取并集作为该目标的掩膜预测结果,以此提高检测精度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110403802.7A CN113077453B (zh) | 2021-04-15 | 2021-04-15 | 一种基于深度学习的电路板元器件缺陷检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110403802.7A CN113077453B (zh) | 2021-04-15 | 2021-04-15 | 一种基于深度学习的电路板元器件缺陷检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113077453A CN113077453A (zh) | 2021-07-06 |
CN113077453B true CN113077453B (zh) | 2022-09-13 |
Family
ID=76617764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110403802.7A Active CN113077453B (zh) | 2021-04-15 | 2021-04-15 | 一种基于深度学习的电路板元器件缺陷检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113077453B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115082394A (zh) * | 2021-08-09 | 2022-09-20 | 深圳智检慧通科技有限公司 | 一种插件缺陷视觉检测识别方法、可读存储介质及设备 |
CN113533356A (zh) * | 2021-09-16 | 2021-10-22 | 武汉精创电子技术有限公司 | 晶粒阵列缺陷检测方法、装置、设备及可读存储介质 |
CN114047123B (zh) * | 2021-10-09 | 2024-04-09 | 无锡芯羿达微电子有限公司 | 一种用于集成板生产缺陷检测方法及检测系统 |
CN113870257B (zh) * | 2021-12-01 | 2022-03-18 | 武汉飞恩微电子有限公司 | 印刷电路板缺陷检测分类方法、装置及计算机储存介质 |
CN114638807B (zh) * | 2022-03-22 | 2023-10-20 | 无锡雪浪数制科技有限公司 | 一种基于深度学习的金属板材表面缺陷检测方法 |
CN114742791A (zh) * | 2022-04-02 | 2022-07-12 | 深圳市国电科技通信有限公司 | 印刷电路板组装的辅助缺陷检测方法、装置及计算机设备 |
CN115601543A (zh) * | 2022-10-13 | 2023-01-13 | 上海第二工业大学(Cn) | 基于改进的SOLOv2的蘑菇簇轮廓分割和重构方法 |
CN115984244A (zh) * | 2023-02-08 | 2023-04-18 | 成都数之联科技股份有限公司 | 面板缺陷标注方法、装置、存储介质、设备及程序产品 |
CN116433666B (zh) * | 2023-06-14 | 2023-08-15 | 江西萤火虫微电子科技有限公司 | 板卡线路缺陷在线识别方法、系统、电子设备及存储介质 |
CN116721098B (zh) * | 2023-08-09 | 2023-11-14 | 常州微亿智造科技有限公司 | 工业检测中的缺陷检测方法、缺陷检测装置 |
CN117670876B (zh) * | 2024-01-31 | 2024-05-03 | 成都数之联科技股份有限公司 | 一种面板缺陷严重程度判级方法、系统、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918523A (zh) * | 2019-02-14 | 2019-06-21 | 广东工业大学 | 一种基于yolo9000算法的电路板元器件检测方法 |
CN110136136A (zh) * | 2019-05-27 | 2019-08-16 | 北京达佳互联信息技术有限公司 | 场景分割方法、装置、计算机设备及存储介质 |
CN111899241A (zh) * | 2020-07-28 | 2020-11-06 | 华中科技大学 | 一种定量化的炉前pcb贴片缺陷在线检测方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8553984B2 (en) * | 2008-06-02 | 2013-10-08 | Massachusetts Institute Of Technology | Fast pattern classification based on a sparse transform |
WO2020068158A1 (en) * | 2018-09-24 | 2020-04-02 | Google Llc | Photo relighting using deep neural networks and confidence learning |
-
2021
- 2021-04-15 CN CN202110403802.7A patent/CN113077453B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109918523A (zh) * | 2019-02-14 | 2019-06-21 | 广东工业大学 | 一种基于yolo9000算法的电路板元器件检测方法 |
CN110136136A (zh) * | 2019-05-27 | 2019-08-16 | 北京达佳互联信息技术有限公司 | 场景分割方法、装置、计算机设备及存储介质 |
CN111899241A (zh) * | 2020-07-28 | 2020-11-06 | 华中科技大学 | 一种定量化的炉前pcb贴片缺陷在线检测方法及系统 |
Non-Patent Citations (1)
Title |
---|
基于YOLOv2的船舶目标检测分类算法;段敬雅 等;《计算机工程与设计》;20200630;第41卷(第6期);第1701-1707页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113077453A (zh) | 2021-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113077453B (zh) | 一种基于深度学习的电路板元器件缺陷检测方法 | |
CN111223088B (zh) | 一种基于深层卷积神经网络的铸件表面缺陷识别方法 | |
CN111474184B (zh) | 基于工业机器视觉的aoi字符缺陷检测方法和装置 | |
CN111178120B (zh) | 一种基于作物识别级联技术的害虫图像检测方法 | |
CN109886978B (zh) | 一种基于深度学习的端到端告警信息识别方法 | |
CN111768388A (zh) | 一种基于正样本参考的产品表面缺陷检测方法及系统 | |
CN110310305B (zh) | 一种基于bssd检测与卡尔曼滤波的目标跟踪方法与装置 | |
CN110598698B (zh) | 基于自适应区域建议网络的自然场景文本检测方法和系统 | |
CN109918523B (zh) | 一种基于yolo9000算法的电路板元器件检测方法 | |
CN112085024A (zh) | 一种罐表面字符识别方法 | |
CN112766136B (zh) | 一种基于深度学习的空间车位检测方法 | |
CN110544202B (zh) | 一种基于模板匹配与特征聚类的视差图像拼接方法及系统 | |
CN111967313A (zh) | 一种深度学习目标检测算法辅助的无人机图像标注方法 | |
CN114241469A (zh) | 一种面向电表轮换过程的信息识别方法和装置 | |
CN116740758A (zh) | 一种防止误判的鸟类图像识别方法及系统 | |
CN115861229A (zh) | 一种基于YOLOv5s元器件封装缺陷X射线检测方法 | |
CN110728269A (zh) | 一种高铁接触网支柱杆号牌识别方法 | |
CN111738310B (zh) | 物料分类方法、装置、电子设备和存储介质 | |
CN115880683B (zh) | 一种基于深度学习的城市内涝积水智能水位检测方法 | |
CN114078106A (zh) | 基于改进Faster R-CNN的疵点检测方法 | |
CN116310293B (zh) | 一种基于弱监督学习的生成高质量候选框目标检测方法 | |
CN116682101A (zh) | 车牌号码识别方法以及系统 | |
CN114332084B (zh) | 一种基于深度学习的pcb表面缺陷检测方法 | |
CN113591548B (zh) | 靶环识别方法及系统 | |
CN114927236A (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 |