CN113409250A - 一种基于卷积神经网络的焊点检测方法 - Google Patents
一种基于卷积神经网络的焊点检测方法 Download PDFInfo
- Publication number
- CN113409250A CN113409250A CN202110579200.7A CN202110579200A CN113409250A CN 113409250 A CN113409250 A CN 113409250A CN 202110579200 A CN202110579200 A CN 202110579200A CN 113409250 A CN113409250 A CN 113409250A
- Authority
- CN
- China
- Prior art keywords
- target
- loss
- neural network
- data
- convolutional neural
- 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
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 51
- 238000001514 detection method Methods 0.000 title claims abstract description 47
- 229910000679 solder Inorganic materials 0.000 title description 6
- 238000003466 welding Methods 0.000 claims abstract description 59
- 238000000034 method Methods 0.000 claims abstract description 44
- 238000012549 training Methods 0.000 claims abstract description 33
- 238000012360 testing method Methods 0.000 claims abstract description 20
- 238000002372 labelling Methods 0.000 claims abstract description 18
- 238000007781 pre-processing Methods 0.000 claims abstract description 7
- 238000003062 neural network model Methods 0.000 claims abstract description 5
- 230000008569 process Effects 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 6
- 230000003287 optical effect Effects 0.000 claims description 5
- 206010037180 Psychiatric symptoms Diseases 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 claims description 3
- 238000013500 data storage Methods 0.000 claims description 3
- 238000011156 evaluation Methods 0.000 claims description 3
- 230000003993 interaction Effects 0.000 claims description 3
- 238000003064 k means clustering Methods 0.000 claims description 3
- 230000001629 suppression Effects 0.000 claims description 3
- 238000007689 inspection Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 abstract description 24
- 238000004519 manufacturing process Methods 0.000 abstract description 11
- 230000000694 effects Effects 0.000 abstract description 4
- 238000011897 real-time detection Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 6
- 238000002474 experimental method Methods 0.000 description 5
- 230000006872 improvement Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000005476 soldering Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- 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
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- 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)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于卷积神经网络模型的焊点检测方法,首先采集PCB焊点数据集并对数据进行预处理,然后对数据进行标注、保存;然后基于计算机视觉,建立神经网络模型;最后利用焊点数据训练集对建立的神经网络模型进行训练,并使用焊点数据测试集对建立的模型进行测试。本发明方法改进了YOLOv3网络结构,通过5个不同尺度的特征检测层来检测焊点目标,提高了目标检测网络对小尺度目标的检测效果;卷积神经网络的损失函数由四部分组成,通过使用多损失函数进行约束可以在不同方面对结果进行优化,保证模型具有很高的精度;改进后的卷积神经网络模型在保证准确率的同时,能够达到实时检测,满足工厂实际生产需求。
Description
技术领域
本发明涉及计算机视觉领域,具体涉及一种基于卷积神经网络的焊点检测方法。
背景技术
近年来,人们对网络的需求快速增长,互联网流量快速增长,从而也大大拉动了电子制造产业需求的增长,让电子制造产业成为当今世界最重要的战略性产业之一。在互联网时代,电子产品不仅应用于计算器、移动电话以及电脑等产品,在人工智能设备、大型工业设备、汽车以及航空设备等产品上也应用广泛。电子制造业是体现一个国家的生产力水平的重要要素,也是区分发展中国家和发达国家的重要因素。我国的电子制造业规模在近年来一直呈平稳增长的态势,电子制造业已然成为了国民经济的重要支柱产业。
表面组装技术(Surface Mounted Technology,SMT)是电子制造组装行业里最流行的一种技术和工艺。SMT技术可以实现对一些印刷电路板(Printed Circuit Board,PCB)“自动化、高科技”加工。在近十年来,SMT技术在中国已经浸透到各个行业,各个领域,发展神速,应用范围十分广泛。虽然SMT技术有其自身的特点和优势,但是在电子制造组装业中除了有标准的元器件外,还有很多的非标准元器件,由于它们的结构外型特殊,导致很难实现全自动焊接。
尽管目前现代化企业已经普遍使用自动插装、自动焊接的生产工艺,但对一些非标元器件目前还采用手工焊接的方法,所以目前还没有任何一种焊接方法可以完全取代手工焊接。手工焊接这种传统的基于人工焊接的方式,不仅生产效率低,劳动强度大,而且对工人经验要求高,易受情绪影响等,因此人工焊接无法保证产品交付时间以及产品质量。
当PCB板焊接完成后,需要对其进行故障检测,而进行故障检测的重要前提就是对于待检测焊点的精确识别。传统方法主要是目测法,但其易受主观因素影响、不稳定、速度慢以及效率低下,容易影响产品的市场竞争力。为了助力实现自动焊接,可以使用计算机视觉等技术自动识别焊点位置。
发明内容
本发明为了精准识别PCB上的焊点并定位其位置,提出了一种基于卷积神经网络的焊点检测方法。
为了实现这一目的,本发明的技术方案,包括以下步骤:
步骤1、采集PCB焊点数据集并对数据进行预处理,然后对数据进行标注、保存。
步骤2、基于计算机视觉,建立卷积神经网络模型。
步骤3、利用焊点数据训练集对建立的卷积神经网络模型进行训练,并使用焊点数据测试集对建立的模型进行测试。
上述步骤1中,采集焊点数据集并对数据进行预处理、标注以及保存,具体实施步骤如下:
1-1.数据采集,首先,利用AOI自动光学检测设备对PCB印制电路板进行原始图像采集。对每一块PCB电路板,相机拍摄多个局部视场,再通过图像拼接的方法拼接成一张完整的图像。
1-2.数据预处理,由于原始图像尺寸太大,而焊点太小,所以为了保证能够精确检测定位到焊点位置,将图像统一分割成416×416大小。
1-3.数据标注,由于训练卷积神经网络模型训练需要大量图片数据,将预处理后的图像使用标注工具LabelImg进行人工标注,使用其矩形框标注出图像焊点目标。
1-4.数据保存。在使用LabelImg标注工具标注后,将生成一个.xml文件,其中保存的关键信息有目标名name,目标框的坐标xmin,xmax,ymin,ymax。标注完的数据格式按照VOC数据格式存储,一张图像对应一个标签文件,图像保存格式为.jpg,标签文件保存格式为.xml。
所述步骤2中基于计算机视觉,建立卷积神经网络模型,具体实现如下:
使用卷积神经网络模型作为焊点检测模型进行焊点的检测和定位。针对焊点检测这种小尺度目标检测,该模型在现有YOLOv3的基础上进行了多尺度检测的改进,并使用了基于残差神经网络改进的Darknet53网络作为特征提取器,使得改进后的卷积神经网络模型能够更好的检测小目标。
所述的步骤3利用焊点数据集对所述的卷积神经网络模型进行训练的过程包括如下步骤:
3-1.划分数据集。将采集到的数据集按照7:3的比例划分成训练集和测试集。
3-2.网络输入和数据增强。由于在卷积神经网络模型中有5次下采样过程,即25=32,因此网络输入图像应该是32的倍数。将训练集每幅图像分割为13×13个单元格。因为13×32=416,因此最后要求输入图像尺寸为416×416。
对有限的训练集进行数据增强,所述的数据增强包括对训练集图片进行水平翻转、垂直翻转、随机旋转、色彩抖动。
3-3.网络结构。所述的卷积神经网络模型的骨干网络(backbone)采用了Darknet53的网络结构,将整个卷积神经网络模型的特征层分为5个尺度,这5个尺度生产的特征图像尺寸分别为13×13、26×26、52×52、104×104、208×208。所述的卷积神经网络模型使用这5个不同尺度的特征图像能够更好的与小尺度目标进行局部特征交互。
3-4.网络输出。训练集上使用了K-means聚类方法获取了15个锚框(anchorboxes),输出时将选取一个与真值(ground truth)的IOU最大的锚框作为预测框。针对一个输入图像,所述的卷积神经网络模型会将其映射到5个不同尺度的输出张量,代表图像各个位置存在目标的概率。对于一个416×416的输入图像,每一个预测是一个4+1+1=6维向量,这个6维向量分别包含一个预测边界框坐标(cx,cy,pw,ph)、边框置信度以及目标类别的概率,其中cx,cy是预测边界框在特征图像上的中心坐标,pw,ph是预测边界框在特征图上的宽和高。当边框置信度高于0.3则会被判定为一个疑似目标,当两个预测框的交并比大于设定阈值时,则认为两个预测框标注的是同一个目标,此时通过非极大值抑制(Non-MaximumSuppression,NMS)方法来选中置信度最高的预测框作为最后的结果,输出其坐标信息和类别信息。
3-5.损失函数。损失函数由四个部分组成,为lossall=lossxy+lossbox×losswh+lossconf+losscls。其中lossxy表示坐标x和坐标y的位置偏移产生的损失,losswh表示目标框的高和宽的误差损失,lossconf表示目标框置信度的损失,losscls表示分类类别损失,最后引入了lossbox,其作用是在计算目标框高和宽的过程中放大小尺度目标框的回归损失,使小目标的高宽损失在总损失函数中占比更大,更利于小目标的检测。
损失函数具体计算如下所示:
其中,参数定义如下:
S2:总共有S×S个网络单元
B:每个网络单元中都有B个预测框
x,y:预测边界框的中心位置
w,h:预测边界框的宽和高
c:表示置信度得分,用来表示存在一个目标的概率大小
λcoord:坐标预测权重,一个可调权重参数,用于调节各部分损失函数在总损失函数中占的比重
λnoobj:置信度预测权重,用于平衡存在目标的置信度损失和不存在目标的置信度损失
λ:一个可调节权重系数,用于调节lossbox在总损失函数中占的比重
pi(c):预测的目标类别
3-6.测试模型。使用测试集对训练好的模型进行测试。使用多个评估参数,包括精确率(Precision)、召回率(Recall)、F1值以及交并比(IOU)。另外,还使用帧率(fps)来检测模型的检测速度。
计算上述五个参数的公式如下所示:
精确率:Precision=TP/(TP+FP)
召回率:Recall=TP/(TP+FN)
F1值:F1=2*Precision*Recall/(Precision+Recall)
其中,TP是真正例,表示预测为1且真实值也为1的样本数,FP是假正例,表示预测为1但真实值为0的样本数,FN是假负例,即预测为0但真实值为1的样本数。交并比IOU就是模型输出的预测框DR(Detection Result)与原有的真实标注框GT(Ground Truth)的交叠率,最理想的情况是二者完全重叠,此时IOU为1。最后本文使用了帧率fps来评价本算法处理图像的速度,n是处理图像总数,T为处理所需时间,其单位是帧每秒(f/s)。
本发明相对于现有技术具有如下的优点及效果:
1.改进了YOLOv3网络结构,通过5个不同尺度的特征检测层来检测焊点目标,提高了目标检测网络对小尺度目标的检测效果。
2.改进了损失函数。本发明所述的卷积神经网络的损失函数由四部分组成,通过使用多损失函数进行约束可以在不同方面对结果进行优化,保证模型具有很高的精度。
3.本发明所述的卷积神经网络在保证准确率的同时,能够达到实时检测,满足工厂实际生产需求。
附图说明
图1是基于计算机视觉的焊点检测方法流程图。
图2是AOI自动光学检测设备采集到的原始图像。
图3是分割成416×416的数据集图像。
图4是需要检测出的焊点目标。
图5是卷积神经网络模型结构图。
图6是模型在416×416图像中识别的结果。
图7是VEDAI数据集的原始图像及目标。
图8是卷积神经网络模型在1024×1024图像中识别的结果。
具体实施方法
以下结合附图与实施例对本发明方法进行进一步描述。
图5是卷积神经网络模型结构图;原有的YOLOv3模型,由于输入为416×416尺寸的图像,而其三层特征层产生的特征图像尺寸分别为13×13、26×26和52×52。可以看出三个特征图像的尺寸比输入图像分别缩小了32倍、16倍和8倍。其中8倍降采样的感受野最小,适合检测小目标,最小能检测的目标尺寸为8×8。为了更好的检测小目标,本发明改进了YOLOv3模型,添加了两层特征层,其产生的特征图像尺寸分别为104×104和208×208。新增的两个特征图像的尺寸只比输入图像缩小了4倍和2倍,这样最小能检测的目标尺寸就变成2×2,可以更好的获取小目标的特征,从而将其识别和定位。
本发明为了精准识别PCB上的焊点并定位其位置,提出了一种基于卷积神经网络模型的焊点检测方法。
如图1所示,为了实现这一目的,本发明的技术方案,包括以下步骤:
步骤1、采集PCB焊点数据集并对数据进行预处理,然后对数据进行标注、保存。
步骤2、基于计算机视觉,建立卷积神经网络模型。
步骤3、利用焊点数据训练集对建立的卷积神经网络模型进行训练,并使用焊点数据测试集对建立的模型进行测试。
上述步骤1中,采集焊点数据集并对数据进行预处理、标注以及保存,具体实施步骤如下:
1-1.数据采集,首先,利用AOI自动光学检测设备对PCB印制电路板进行原始图像采集。对每一块PCB电路板,相机拍摄多个局部视场,再通过图像拼接的方法拼接成一张完整的图像。采集后的图像如图2所示,尺寸大小为5182×2697。
1-2.数据预处理,由于原始图像尺寸太大,而焊点太小,所以为了保证能够精确检测定位到焊点位置,我们将图像统一分割成416×416大小,分割后的图像如图3所示。
1-3.数据标注,由于训练神经网络模型训练需要大量图片数据,将预处理后的图像使用标注工具LabelImg进行人工标注,使用其矩形框标注出图像焊点目标,如图4所示。
1-4.数据保存。在使用LabelImg标注工具标注后,将生成一个.xml文件,其中保存的关键信息有目标名name,目标框的坐标xmin,xmax,ymin,ymax。标注完的数据格式按照VOC数据格式存储,一张图像对应一个标签文件,图像保存格式为.jpg,标签文件保存格式为.xml。
所述步骤2中基于计算机视觉,建立卷积神经网络模型,具体实现如下:
使用卷积神经网络模型作为焊点检测模型进行焊点的检测和定位。针对焊点检测这种小尺度目标检测,该模型在现有YOLOv3的基础上进行了多尺度检测的改进,并使用了基于残差神经网络改进的Darknet53网络作为特征提取器,使得改进后的卷积神经网络能够更好的检测小目标。所述的卷积神经网络模型结构如图5所示。
所述的步骤3利用焊点数据集对所述的卷积神经网络模型进行训练的过程包括如下步骤:
3-1.划分数据集。将采集到的数据集按照7:3的比例划分成训练集和测试集。
3-2.网络输入和数据增强。由于在卷积神经网络模型中有5次下采样过程,即25=32,因此网络输入图像应该是32的倍数。这里将训练集每幅图像分割为13×13个单元格。因为13×32=416,因此最后要求输入图像尺寸为416×416。
为了保证训练出来的模型不过拟合,即有足够的泛化性,就需要有足够多的训练集来训练模型。本方法对有限的训练集进行数据增强,所述的数据增强包括对训练集图片进行水平翻转、垂直翻转、随机旋转、色彩抖动等。对有限训练集进行数据增强就能产生大量未采集到并符合实际的图片,提高模型泛化性。
3-3.网络结构。所述的卷积神经网络模型的骨干网络(backbone)采用了Darknet53的网络结构,Darknet-53一方面采用了全卷积,另一方面又引入了残差(residual)结构,这样在网络层数较深的情况下就能避免产生梯度消失和梯度爆炸等问题,可以更好的提取输入图像的特征。将整个卷积神经网络模型的特征层分为5个尺度,这5个尺度生产的特征图像尺寸分别为13×13、26×26、52×52、104×104、208×208。所述的卷积神经网络模型使用这5个不同尺度的特征图像能够更好的与小尺度目标进行局部特征交互。
3-4.网络输出。训练集上使用了K-means聚类方法获取了15个锚框(anchorboxes),输出时将选取一个与真值(ground truth)的IOU最大的锚框作为预测框。针对一个输入图像,所述的卷积神经网络模型会将其映射到5个不同尺度的输出张量,代表图像各个位置存在目标的概率。对于一个416×416的输入图像,每一个预测是一个4+1+1=6维向量,这个6维向量分别包含一个预测边界框坐标(cx,cy,pw,ph)、边框置信度以及目标类别的概率,其中cx,cy是预测边界框在特征图像上的中心坐标,pw,ph是预测边界框在特征图上的宽和高。当边框置信度高于0.3则会被判定为一个疑似目标,当两个预测框的交并比大于设定阈值时,则认为两个预测框标注的是同一个目标,此时通过非极大值抑制(Non-MaximumSuppression,NMS)方法来选中置信度最高的预测框作为最后的结果,输出其坐标信息和类别信息。
3-5.损失函数。由于相比较大尺度目标,小尺度目标检测的检测框的宽和高更加重要,性能提升也更加困难。同时由于在预测小尺度目标框时产生的偏差对于该小目标本身的精度影响很大,但在改进前的YOLOv3网络总损失函数中占比很低,导致网络训练过程中损失函数的收敛对于小目标不敏感。因此,在本方法中,为了改善这个问题,设计出一个新的损失函数。该损失函数由四个部分组成,为lossall=lossxy+lossbox×losswh+lossconf+losscls。其中lossxy表示坐标x和坐标y的位置偏移产生的损失,losswh表示目标框的高和宽的误差损失,lossconf表示目标框置信度的损失,losscls表示分类类别损失,最后本方法引入了lossbox,其作用是在计算目标框高和宽的过程中放大小尺度目标框的回归损失,使小目标的高宽损失在总损失函数中占比更大,更利于小目标的检测。通过定义该损失函数,可以从不同方面对结果进行优化,使结果更加精确。
损失函数具体计算如下所示:
其中,参数定义如下:
S2:总共有S×S个网络单元
B:每个网络单元中都有B个预测框
x,y:预测边界框的中心位置
w,h:预测边界框的宽和高
c:表示置信度得分,用来表示存在一个目标的概率大小
λcoord:坐标预测权重,一个可调权重参数,用于调节各部分损失函数在总损失函数中占的比重
λnoobj:置信度预测权重,用于平衡存在目标的置信度损失和不存在目标的置信度损失
λ:一个可调节权重系数,用于调节lossbox在总损失函数中占的比重
pi(c):预测的目标类别
训练完成后的网络模型识别的结果如图6所示。
3-6.测试模型。使用测试集对训练好的模型进行测试。为了衡量模型的好坏,本方法使用了多个评估参数,包括精确率(Precision)、召回率(Recall)、F1值以及交并比(IOU)。另外,还使用帧率(fps)来检测模型的检测速度。
计算上述五个参数的公式如下所示:
精确率:Precision=TP/(TP+FP)
召回率:Recall=TP/(TP+FN)
F1值:F1=2*Precision*Recall/(Precision+Recall)
其中,TP是真正例,表示预测为1且真实值也为1的样本数,FP是假正例,表示预测为1但真实值为0的样本数,FN是假负例,即预测为0但真实值为1的样本数。交并比IOU就是模型输出的预测框DR(Detection Result)与原有的真实标注框GT(Ground Truth)的交叠率,最理想的情况是二者完全重叠,此时IOU为1。最后本文使用了帧率fps来评价本算法处理图像的速度,n是处理图像总数,T为处理所需时间,其单位是帧每秒(f/s)。
基于计算机视觉的焊点检测方法,是通过运行照相机和计算机来检测在印制电路板PCB上是否有焊点以及精确定位焊点信息的技术。本发明基于计算机视觉的焊点检测方法流程图如图1所示。
本发明的模型具体效果通过以下实验进一步说明。
本发明的实验环境和条件如下:
CPU:Core i7 i7-9700K 3.60GHz
GPU:NVIDIA GeForce RTX 2080Ti×2
内存:32GB
操作系统:Ubuntu 18.04.4 LTS
实验所用数据集来自同一台AOI自动光学检测设备,每张图像尺寸统一为416×416,在训练后,可以从表1看出检测性能较好。使用模型检测的结果如图6所示。
表1
Size | 精确率(%) | 召回率(%) | F1值(%) | IOU(%) | 帧率(f/s) |
416×416 | 89 | 97.7 | 93.2 | 85.654 | 20.515 |
为了进一步证实本方法对小尺度目标检测性能的提升,使用一个公开的小目标数据集对模型进行性能测试。VEDAI数据集图像尺寸为1024×1024大小,是一个航拍数据集,数据集中目标非常小,原图及目标如图7所示。本实验在VEDAI数据集中选取大约1200张含车辆和飞机的航拍图作为数据集,以该数据集做实验以证明本发明方法改进后的卷积神经网络模对小尺度目标检测性能的提升。实验结果如表2所示。使用改进后的卷积神经网络模型检测结果如图8所示。从表2的实验结果中F1值的变化可以看出改进后的卷积神经网络对小尺度目标检测性能提升较为显著。
表2
Claims (4)
1.一种基于卷积神经网络的焊点检测方法,其特征在于,步骤如下:
步骤1、采集PCB焊点数据集并对数据进行预处理,然后对数据进行标注、保存;
步骤2、基于计算机视觉,建立卷积神经网络模型;
步骤3、利用焊点数据训练集对建立的卷积神经网络模型进行训练,并使用焊点数据测试集对建立的模型进行测试。
2.根据权利要求1所述的一种基于卷积神经网络的焊点检测方法,其特征在于,步骤1具体实施步骤如下:
1-1.数据采集,首先,利用AOI自动光学检测设备对PCB印制电路板进行原始图像采集;对每一块PCB电路板,相机拍摄多个局部视场,再通过图像拼接的方法拼接成一张完整的图像;
1-2.数据预处理,由于原始图像尺寸太大,而焊点太小,所以为了保证能够精确检测定位到焊点位置,将图像统一分割成416×416大小;
1-3.数据标注,由于训练卷积神经网络模型训练需要大量图片数据,将预处理后的图像使用标注工具LabelImg进行人工标注,使用其矩形框标注出图像焊点目标;
1-4.数据保存;在使用LabelImg标注工具标注后,将生成一个.xml文件,其中保存的关键信息有目标名name,目标框的坐标xmin,xmax,ymin,ymax;标注完的数据格式按照VOC数据格式存储,一张图像对应一个标签文件,图像保存格式为.jpg,标签文件保存格式为.xml。
3.根据权利要求2所述的一种基于卷积神经网络的焊点检测方法,其特征在于,所述步骤2具体实现如下:
使用卷积神经网络模型作为焊点检测模型进行焊点的检测和定位;针对焊点检测这种小尺度目标检测,该模型在现有YOLOv3的基础上进行了多尺度检测的改进,并使用了基于残差神经网络改进的Darknet53网络作为特征提取器,使得卷积神经网络模型能够更好的检测小目标。
4.根据权利要求3所述的一种基于卷积神经网络的焊点检测方法,其特征在于,所述的步骤3具体步骤如下:
3-1.划分数据集;将采集到的数据集按照7:3的比例划分成训练集和测试集;
3-2.网络输入和数据增强;由于在卷积神经网络模型中有5次下采样过程,即25=32,因此网络输入图像应该是32的倍数;将训练集每幅图像分割为13×13个单元格;因为13×32=416,因此最后要求输入图像尺寸为416×416;
对有限的训练集进行数据增强,所述的数据增强包括对训练集图片进行水平翻转、垂直翻转、随机旋转、色彩抖动;
3-3.网络结构;所述的卷积神经网络模型的骨干网络(backbone)采用了Darknet53的网络结构用来提取输入图像的特征;将整个卷积神经网络模型的特征层分为5个尺度,这5个尺度生产的特征图像尺寸分别为13×13、26×26、52×52、104×104、208×208;改进后的YOLOv3使用这5个不同尺度的特征图像能够更好的与小尺度目标进行局部特征交互;
3-4.网络输出;训练集上使用了K-means聚类方法获取了15个锚框,输出时将选取一个与真值的IOU最大的锚框作为预测框;针对一个输入图像,卷积神经网络模型会将其映射到5个不同尺度的输出张量,代表图像各个位置存在目标的概率;对于一个416×416的输入图像,每一个预测是一个4+1+1=6维向量,这个6维向量分别包含一个预测边界框坐标(cx,cy,pw,ph)、边框置信度以及目标类别的概率,其中cx,cy是预测边界框在特征图像上的中心坐标,pw,ph是预测边界框在特征图上的宽和高;当边框置信度高于0.3则会被判定为一个疑似目标,当两个预测框的交并比大于设定阈值时,则认为两个预测框标注的是同一个目标,此时通过非极大值抑制方法来选中置信度最高的预测框作为最后的结果,输出其坐标信息和类别信息;
3-5.损失函数;损失函数由四个部分组成,为lossall=lossxy+lossbox×losswh+lossconf+losscls;其中lossxy表示坐标x和坐标y的位置偏移产生的损失,losswh表示目标框的高和宽的误差损失,lossconf表示目标框置信度的损失,losscls表示分类类别损失,最后引入了lossbox,其作用是在计算目标框高和宽的过程中放大小尺度目标框的回归损失,使小目标的高宽损失在总损失函数中占比更大,更利于小目标的检测;
损失函数具体计算如下所示:
其中,参数定义如下:
S2:总共有S×S个网络单元;
B:每个网络单元中都有B个预测框;
x,y:预测边界框的中心位置;
w,h:预测边界框的宽和高;
c:表示置信度得分,用来表示存在一个目标的概率大小;
λcoord:坐标预测权重,一个可调权重参数,用于调节各部分损失函数在总损失函数中占的比重;
λnoobj:置信度预测权重,用于平衡存在目标的置信度损失和不存在目标的置信度损失;
λ:一个可调节权重系数,用于调节lossbox在总损失函数中占的比重;
pi(c):预测的目标类别;
3-6.测试模型;使用测试集对训练好的模型进行测试;使用多个评估参数,包括精确率Precision、召回率Recall、F1值以及交并比IOU;另外,还使用帧率fps来检测模型的检测速度;
计算上述五个参数的公式如下所示:
精确率:Precision=TP/(TP+FP);
召回率:Recall=TP/(TP+FN);
F1值:F1=2*Precision*Recall/(Precision+Recall);
其中,TP是真正例,表示预测为1且真实值也为1的样本数,FP是假正例,表示预测为1但真实值为0的样本数,FN是假负例,即预测为0但真实值为1的样本数;交并比IOU就是模型输出的预测框DR与原有的真实标注框GT的交叠率,最理想的情况是二者完全重叠,此时IOU为1;最后本文使用了帧率fps来评价本算法处理图像的速度,n是处理图像总数,T为处理所需时间,其单位是帧每秒(f/s)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110579200.7A CN113409250A (zh) | 2021-05-26 | 2021-05-26 | 一种基于卷积神经网络的焊点检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110579200.7A CN113409250A (zh) | 2021-05-26 | 2021-05-26 | 一种基于卷积神经网络的焊点检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113409250A true CN113409250A (zh) | 2021-09-17 |
Family
ID=77675372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110579200.7A Pending CN113409250A (zh) | 2021-05-26 | 2021-05-26 | 一种基于卷积神经网络的焊点检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113409250A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113870870A (zh) * | 2021-12-02 | 2021-12-31 | 自然资源部第一海洋研究所 | 一种基于卷积神经网络的海洋哺乳动物发声实时识别方法 |
CN114445410A (zh) * | 2022-04-11 | 2022-05-06 | 武汉飞恩微电子有限公司 | 基于图像识别的电路板检测方法、计算机及可读存储介质 |
CN114687012A (zh) * | 2022-02-25 | 2022-07-01 | 武汉智目智能技术合伙企业(有限合伙) | 一种针对高含杂量原棉的高效异纤清除装置以及清除方法 |
CN114742811A (zh) * | 2022-04-27 | 2022-07-12 | 桂林电子科技大学 | 一种基于改进Yolox的SMT产线焊点缺陷快速检测方法及系统 |
WO2023115409A1 (zh) * | 2021-12-22 | 2023-06-29 | 深圳技术大学 | 一种焊盘检测方法、装置、计算机设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109147254A (zh) * | 2018-07-18 | 2019-01-04 | 武汉大学 | 一种基于卷积神经网络的视频野外火灾烟雾实时检测方法 |
CN110636715A (zh) * | 2019-08-27 | 2019-12-31 | 杭州电子科技大学 | 一种基于自学习的自动焊接及缺陷检测方法 |
CN111310773A (zh) * | 2020-03-27 | 2020-06-19 | 西安电子科技大学 | 一种高效的卷积神经网络的车牌定位方法 |
CN111401148A (zh) * | 2020-02-27 | 2020-07-10 | 江苏大学 | 一种基于改进的多级YOLOv3的道路多目标检测方法 |
CN111429418A (zh) * | 2020-03-19 | 2020-07-17 | 天津理工大学 | 一种基于YOLO v3神经网络的工业零件检测方法 |
-
2021
- 2021-05-26 CN CN202110579200.7A patent/CN113409250A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109147254A (zh) * | 2018-07-18 | 2019-01-04 | 武汉大学 | 一种基于卷积神经网络的视频野外火灾烟雾实时检测方法 |
CN110636715A (zh) * | 2019-08-27 | 2019-12-31 | 杭州电子科技大学 | 一种基于自学习的自动焊接及缺陷检测方法 |
CN111401148A (zh) * | 2020-02-27 | 2020-07-10 | 江苏大学 | 一种基于改进的多级YOLOv3的道路多目标检测方法 |
CN111429418A (zh) * | 2020-03-19 | 2020-07-17 | 天津理工大学 | 一种基于YOLO v3神经网络的工业零件检测方法 |
CN111310773A (zh) * | 2020-03-27 | 2020-06-19 | 西安电子科技大学 | 一种高效的卷积神经网络的车牌定位方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113870870A (zh) * | 2021-12-02 | 2021-12-31 | 自然资源部第一海洋研究所 | 一种基于卷积神经网络的海洋哺乳动物发声实时识别方法 |
WO2023115409A1 (zh) * | 2021-12-22 | 2023-06-29 | 深圳技术大学 | 一种焊盘检测方法、装置、计算机设备及存储介质 |
CN114687012A (zh) * | 2022-02-25 | 2022-07-01 | 武汉智目智能技术合伙企业(有限合伙) | 一种针对高含杂量原棉的高效异纤清除装置以及清除方法 |
CN114445410A (zh) * | 2022-04-11 | 2022-05-06 | 武汉飞恩微电子有限公司 | 基于图像识别的电路板检测方法、计算机及可读存储介质 |
CN114742811A (zh) * | 2022-04-27 | 2022-07-12 | 桂林电子科技大学 | 一种基于改进Yolox的SMT产线焊点缺陷快速检测方法及系统 |
CN114742811B (zh) * | 2022-04-27 | 2024-03-29 | 桂林电子科技大学 | 一种基于改进Yolox的SMT产线焊点缺陷快速检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113409250A (zh) | 一种基于卷积神经网络的焊点检测方法 | |
CN110636715B (zh) | 一种基于自学习的自动焊接及缺陷检测方法 | |
CN111899241B (zh) | 一种定量化的炉前pcb贴片缺陷在线检测方法及系统 | |
CN110992349A (zh) | 一种基于深度学习的地下管道异常自动化定位与识别方法 | |
CN102938077A (zh) | 基于双阈值二值化的在线式aoi图像检索方法 | |
CN113538375A (zh) | 一种基于YOLOv5的PCB缺陷检测方法 | |
CN114723706A (zh) | 一种基于机器视觉的焊点检测定位方法 | |
CN115170550A (zh) | 一种基于深度学习的电池缺陷检测方法及系统 | |
CN111815576B (zh) | 金属部件腐蚀状况检测方法、装置、设备和存储介质 | |
CN112215203A (zh) | 一种基于深度学习的路面病害检测方法和装置 | |
CN116385958A (zh) | 一种用于电网巡检和监控的边缘智能检测方法 | |
CN111882547A (zh) | 一种基于神经网络的pcb漏件检测方法 | |
CN112819748A (zh) | 一种带钢表面缺陷识别模型的训练方法及装置 | |
CN116258682A (zh) | 基于PSPNet和改进YOLOv7的PCB锡膏缺陷检测方法 | |
CN111507249A (zh) | 基于目标检测的变电站鸟窝识别方法 | |
Chen et al. | A Comprehensive Review of Deep Learning-Based PCB Defect Detection | |
CN113705564A (zh) | 一种指针式仪表识别读数方法 | |
CN109726754A (zh) | 一种lcd屏缺陷识别方法及装置 | |
CN112907562A (zh) | 一种基于MobileNet的SMT缺陷分类算法 | |
CN112070811A (zh) | 一种基于连续域蚁群算法改进的图像配准方法 | |
Li et al. | PCB Defect Detection Based on Improved YOLOX Algorithm | |
CN114092448B (zh) | 一种基于深度学习的插件电解电容混合检测方法 | |
CN115330705A (zh) | 一种基于自适应加权模板ncc的蒙皮漆面缺陷检测方法 | |
CN115100098A (zh) | 一种基于深度学习算法的印制电路板aoi智能检测设备 | |
CN108846421B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210917 |