掌桥专利:专业的专利平台
掌桥专利
首页

一种基于注意力机制网络的PCB缺陷检测方法

文献发布时间:2023-06-19 11:49:09


一种基于注意力机制网络的PCB缺陷检测方法

技术领域

本发明属于检测小尺度目标技术领域,尤其涉及一种基于注意力机制网络的PCB缺陷检测方法。

背景技术

随着智能硬件、柔性制造时代的到来,科学技术的不断创新和进步,琳琅满目的电子产品广泛服务于各个邻域,小到耳机、手环、手机等电子设备;大到空调、电视机、航天器无不在快速的更新换代,作为它们的重要组件印刷电路板(Printed Circuit Board,PCB)也得到了迅猛的发展。由此可见PCB产业有着强大的生命力,是现在乃至未来电子产业的支柱力量。而中国作为PCB的产销大国,PCB生产行业一直在稳步前进,据中国报告网的统计,在2020年进一步扩大,有望占全球总产值的51%。而在PCB制造中,其生产效率及质量的好坏与PCB的缺陷检测密切相关,因此良好的PCB缺陷检测是PCB制造行业迫切需求。

传统的人工检测方法存在着速度慢、时间长和易漏检等等问题,完全无法适应技术和工艺的快速发展,怎样实现精准、高效的PCB自动缺陷检测,一直是电子工业领域非常重视的一个问题。同时,个人和中小企业对检PCB缺陷的需求越来越高,能否达到低成本、高精度是首要考虑的问题。因此,研究如何通过低成本的图像处理技术提高PCB板缺陷检测的精度具有重要的研究意义。

机器视觉简单解释就是通过相机、光源、电脑、伺服系统等硬件及图像处理与识别的软件形成一套系统代替人眼、人脑来对物体进行测量和判断。它研发之初便是为电子制造行业的检测所用。其主要流程为:通过图像摄取装置获取实物图像,在经由计算机对图像处理分析,从而判断出产品是否存在缺陷。与传统人工目检相比,基于机器视觉的PCB缺陷检测有如下优势:生产效率高、出错率低,从长远角度考虑其检测成本也低,可以说它是所有电子产品生产企业的利器。

发明内容

本发明的目的是克服现有技术中的不足,提供一种基于注意力机制网络的PCB缺陷检测方法。

这种基于注意力机制网络的PCB缺陷检测方法,包括以下步骤:

步骤1、输入图片,捕获图像并提取图像数据,对图像数据进行数据预处理;

步骤2、构建视觉增益网络模型;

步骤2.1、卷积层采用可变形卷积核;以微缺陷图像作为卷积核的输入,对上层的特征图进行卷积,生成特征图;可变形卷积核在卷积计算的过程中计算每个点的偏移,从偏移最小的点取特征进行卷积,具体公式如下:

上式中,f(·)为非线性激活函数;

步骤2.2、池化层的特征映射为:

上式中,down(·)是池化层的函数;

使用Focal Loss作为交叉熵:

FL(p

上式中,p

用VGG16模型提取图像特征,将第四层和第五层卷积层块分别表示为net-cony4和net-conu5,net_conv5是VGG16中最后一层卷积块的特征,net_conv4是倒数第二层卷积块的特征:

上式中,

步骤2.3、对于视觉增益网中的副中央凹P(x),通过卷积运算将net_conv5由H×W×C变换为H×W×C·4,其中H和W分别表示特征映射的高度和宽度,C表示特征映射的通道;然后通过深度对H、W运算得到副中央凹P(x)的输出:

P(x)=D2HW(net_conv5′)

上式中,D2HW操作为周期洗牌算子,D2HW将H×W×C·4张量的元素重新排列为形状为H×W×C的张量:

D2HW(T)

上式中,x为高分辨率空间的输出像素横坐标,y为高分辨率空间的输出像素纵坐标;下标c用于区分池化层参数和卷积层参数,有c表示是卷积层;mod(y,2)和mod(x,2)为用于获取视觉增益网中央凹除法的元素级余数的函数;net_conv4上的sigmoid函数为:

F(x)=sigmoid(net_conv4)

上式中,sigmoid(·)是非线性激活函数;

步骤2.4、完成对中央凹和副中央凹操作后,将视觉增益网的输出表示为:

O(x)=P(x)(1+F(x))

上式中,P(x)表示深度卷积网络产生的特征,F(x)为net_con4上的sigmoid函数;

将视觉增益网络模型中反向传播的梯度表示为:

上式中,P′(x)和F′(x)分别是P(x)和F(x)的偏导数;

上式中,

步骤3、训练视觉增益网络模型:从训练集中随机抽取图像进行训练,并使用测试集来评估视觉增益网络的性能。

作为优选,步骤1具体包括以下步骤:

步骤1.1、缺陷分割:对原始图像的局部图像块进行分割;

步骤1.2、缺陷图像的多样化:将缺陷图像进行平移和旋转;

步骤1.3、采用高斯滤波处理图片噪声。

作为优选,步骤3具体包括以下步骤:

步骤3.1、使用随机梯度下降算法,设置迭代次数、权重衰减和学习速率;对从训练集随机抽取的图像进行训练;

步骤3.2、当迭代次数达到设定值时,降低学习速率;设置训练尺度和测试尺度,继续进行训练;其中训练尺度和测试尺度均为图像最短边的像素大小;

步骤3.3、将所有新的层随机初始化为零均值高斯分布,设置标准偏差为固定值的权重,将所有其他层都使用ImageNet上预先训练的参数进行初始化;

步骤3.4、用测试集来评估训练好的增益网络的性能。

作为优选,步骤1.1中进行缺陷分割时,将捕获的图像大小调整为1280*1024像素;缺陷分割后的局部图像块只包含一种PCB缺陷类型,每个局部图像块的面积为227*227像素。

作为优选,步骤1.2中的平移范围为0像素~50像素,旋转范围为5度~25度。

作为优选,步骤1.3中采用高斯滤波处理图片噪声时对整幅图像进行加权平均,每一个像素点的值都由像素点本身和邻域内的其他像素值经过加权平均后得到。

作为优选,步骤2.3中进行卷积运算的卷积核是3×3×1024。

作为优选,步骤3中在视觉增益网络模型中使用dropout和批处理归一化技术。

本发明的有益效果是:本发明通过分析注意机制和视觉增益机制之间的关系,将相关机制进一步融入到Faster RCNN模型中,构建视觉增益网络模型(VG-RCNN模型);本发明使用Focal Loss代替原来的交叉熵,通过减少易分类样本的权重,从而使得VG-RCNN模型在训练时更专注于难分类的样本。通过低成本的图像处理技术提高了PCB板缺陷检测的精度;实验结果表明本发明具较高精确率,相比其他方法更加快速鲁棒。

附图说明

图1为本发明基于注意力机制网络的PCB缺陷检测方法的流程图;

图2为本发明的数据预处理流程图;

图3为本发明的视觉增益网络模型(VG-RCNN模型)流程图;

图4为本发明的实验流程图。

具体实施方式

下面结合实施例对本发明做进一步描述。下述实施例的说明只是用于帮助理解本发明。应当指出,对于本技术领域的普通人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

尽管较快的RCNN已经应用于图像检测领域,RCNN的一个突出缺陷是对缺陷区域小、分辨率低的缺陷的检测精度低。根据视觉增益机制表明,在人的纹外皮层控制注意关系增益有助于提高副中央凹产生的知觉的灵敏度。本发明提出VG-RCNN模型,VG-RCNN模型采用视觉注意和视觉增益机制来处理纺织品微缺陷图像的检测。图1展示了基于注意力机制网络的PCB缺陷检测方法的流程,具体的实施方案如下:

作为一种实施例,基于注意力机制网络的PCB缺陷检测方法的流程图如图1所示,包括以下步骤:

步骤1、输入图片,捕获图像并提取图像数据,对图像数据进行如图2所示的数据预处理;通常情况下,相机捕获的原始图像中含有不规则纹理、染色等干扰,这些干扰可能是由工业监视器或PCB设备引起的;如果将原始缺陷图像直接输入到VG-RCNN模型中,分类和检测的性能会显著地受到异常干扰和噪声的影响;因此对PCB缺陷数据的预处理分为缺陷分割和缺陷图片多样化两个步骤;

高斯滤波是一种线性平滑滤波,适用于消除高斯噪声;

步骤1.1、缺陷分割:对原始图像的局部图像块进行分割;进行缺陷分割时,将捕获的图像大小调整为1280*1024像素,此时在同一幅图像上存在多种类型的PCB板的缺陷;缺陷分割后的局部图像块只包含一种PCB缺陷类型,每个局部图像块的面积为227*227像素;

步骤1.2、缺陷图像的多样化:将缺陷图像进行平移和旋转,这样VG-RCNN模型可以学习更多的不变特征;平移范围为0像素~50像素,旋转范围为5度~25度;

步骤1.3、采用高斯滤波处理图片噪声;采用高斯滤波处理图片噪声时对整幅图像进行加权平均,每一个像素点的值都由像素点本身和邻域内的其他像素值经过加权平均后得到;

步骤2、构建处理流程如图3所示的视觉增益网络模型(VG-RCNN模型);

步骤2.1、卷积层采用可变形卷积核(Deformable Convolution);以微缺陷图像作为卷积核的输入,对上层的特征图进行卷积,生成特征图;可变形卷积核在卷积计算的过程中自动地计算每个点的偏移,从偏移最小的点取特征进行卷积,具体公式如下:

上式中,f(·)为非线性激活函数;

步骤2.2、池化层的特征映射为:

上式中,down(·)是池化层的函数;

使用Focal Loss作为交叉熵,通过减少易分类样本的权重,从而使得模型在训练时更专注于难分类的样本;当一个样本被分错的时候,p

FL(p

上式中,p

上式中,

步骤2.3、对于视觉增益网中的副中央凹P(x),通过卷积运算net_conv5由H×W×C变换为H×W×C·4,其中H和W分别表示特征映射的高度和宽度,C表示特征映射的通道;然后通过深度对H、W运算得到副中央凹P(x)的输出:

P(x)=D2HW(net_conv5′)

上式中,D2HW操作为周期洗牌算子,D2HW将H×W×C·4张量的元素重新排列为形状为H×W×C的张量:

D2HW(T)

上式中,x为高分辨率空间的输出像素横坐标,y为高分辨率空间的输出像素纵坐标;下标c用于区分池化层参数和卷积层参数,有c表示是卷积层;mod(y,2)和mod(x,2)为用于获取视觉增益网中央凹除法的元素级余数的函数;上的sigmoid函数的执行依据为:第一,中央凹的输出不对后续融合产生太大的干扰和差异;第二,这个行动是为了掩盖一些不重要的信息;net_conv4上的sigmoid函数为:

F(x)=sigmoid(net_conv4)

上式中,sigmoid(·)是非线性激活函数;进行卷积运算的卷积核是3×3×1024;

步骤2.4、完成对中央凹和副中央凹操作后,将视觉增益网的输出表示为:

O(x)=P(x)(1+F(x))

上式中,P(x)表示深度卷积网络产生的特征,F(x)为net_con4上的sigmoid函数;获得网膜中央凹视觉的关键操作是F(x),这是功能选择器来提高良好的特性和抑制噪音,P(x)的重要特征信息是加强,信息的重要特性是抑制;这意味着视觉增益网可以提高本文方法利用视觉增益网的特征表达能力;

将视觉增益网络模型(VG-RCNN模型)中反向传播的梯度表示为:

上式中,P′(x)和F′(x)分别是P(x)和F(x)的偏导数,与VGG16中最后一层卷积块(无视觉增益网络)的特征

上式中,

步骤3、训练视觉增益网络模型:从训练集中随机抽取一定数量的图像进行训练,并使用测试集来评估视觉增益网络的性能;视觉增益网络包含了大量的参数,这些参数是从数千个训练像素中学习来的;为了避免视觉增益网络中参数过拟合,在视觉增益网络模型中使用dropout和批处理归一化技术。

步骤3.1、为了学习所提出的网络,使用了随机梯度下降算法,迭代次数为40,000次,权重衰减为0.0001。学习速率最初设置为0.001;

步骤3.2、迭代30000次后,学习率降低到0.0001。训练尺度和测试尺度都设为600,即图像最短边的像素大小;

步骤3.3、表示压缩特征映射比例的特征步幅设置为8,所有新的层随机初始化从一个零均值高斯分布与标准偏差0.01的权重,所有其他层(即VGG16网络)都使用ImageNet上预先训练的参数进行初始化;

步骤3.4、用测试集来评估训练好的增益网络的性能。本实施例是基于深度学习库Tensorflow 1.2.0和相关的第三方库完成的;在一台拥有128GB RAM和4个Nvidia GeForceGTX 1080gpu的个人计算机上进行如图4所示的实验;

考虑到可能的结果变化和随机的实验误差,重复这个实验10次,并报告10次实验的平均测试结果。在训练过程中,训练速度较快的PFRCNN所需的时间为617.52秒,量化每种检测方法在PCB板缺陷数据集上的平均图像级性能。从整体上看,基于全局最优Gabor滤波器(GOGF)的方法往往比基于局部图像补丁(NLSR)和FAWS的方法具有更高的检测精度,RCNN在这五个方面都优于其他三种现有的方法。此外,与其他方法相比,本实施例提出的视觉增益网络模型具有最好的综合性能。采用f-measure来表示同时考虑了精度和召回的性能。本实施例的快速PFRCNN方法的F-measure可以达到95.1%,比快速RCNN方法提高了4.7%。本实验进一步证明了视觉增益网络模型(VG-RCNN模型)的优越性。

相关技术
  • 一种基于注意力机制网络的PCB缺陷检测方法
  • 基于生成式对抗网络的FPCB板缺陷检测方法及装置
技术分类

06120113065423