一种基于多模型融合卷积神经网络的PCB缺陷图像识别方法转让专利

申请号 : CN202110552810.8

文献号 : CN113344041B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张健滔瞿栋汪鹏宇黄允徐海达

申请人 : 上海大学

摘要 :

本发明公开一种基于改进卷积神经网络的PCB缺陷图像识别方法。针对现有ResNet50深度卷积神经网络模型的不足,引入名为Res2Net的新型CNN模块,并更改残差连接结构和激活函数,来提高网络多层的非线性扩展能力。基于改进ResNet50模型,融入DenseNet169卷积神经网络,基于多模型提取的图像特征进行融合,并对融合特征输出网络结构进行改进,建立了一种多模型融合的PCB缺陷图像识别的卷积神经网络框架。本发明方法可对不同类型的PCB缺陷图像进行识别,较单一模型具有识别准确率、敏感性高的特点,并且能够实现PCB缺陷类别的自动化和智能化识别。

权利要求 :

1.一种基于多模型融合卷积神经网络的PCB缺陷图像识别方法,其特征在于:操作步骤如下:(1)建立图像数据集:

获取多种类PCB缺陷图像,建立PCB图像数据集,并按各缺陷种类分好类;

(2)ResNet50模型改进:

建立适合PCB缺陷图像识别的卷积神经网络框架;

采用ResNet50网络结构共由四个大的BottleNeck组成,每个block中分别对应有3、4、

6、3个小的残差块组成,每个小的残差块都是由1×1、3×3、1×1三个卷积层串联组成;

另外在网络的最前端和最后端分别是由1个7×7的卷积层,maxpool层以及平均池化层组成;优化改进后的ResNet50模型引入了一种名为Res2Net的新型CNN模块,将原本ResNet50中含有1×1、3×3、1×1卷积层的残差块替换为更多分层式的残差连接结构,并分别将第二个和第三个大的BottleNeck中的多个小block替换成Res2Net模块,然后将剩下的

2个大BottleNeck按原本顺序进行连接;在每一个大的BottleNeck后面采用ReLU作为激活函数,提高网络多层的非线性扩展能力;

(3)特征融合:

对PCB缺陷分类识别,采用多模型融合的PCB缺陷识别方法,基于多模型提取的图像特征进行融合,并对融合特征输出网络结构进行改进;进行特征融合:基于多模型提取的图像特征进行融合,并对融合特征输出网络结构进行改进;利用改进后的ResNet50和DenseNet169模型特征提取器对输入图片进行特征提取,其中改进后的ResNet50特征提取器提取到2048幅7×7大小的特征图,DenseNet169特征提取器提取到

1664幅7×7大小的特征图;

压缩模型参数数量,提高计算速度,分别在两个特征提取器后接一个全局平均池化层,得到2048幅1×1大小的特征图和1664幅1×1大小的特征图,之后再将两个全局平均池化层的输出进行拼接,得到新的分类网络的输出;经过模型融合后,最终得到的特征图大小为1×1×3712;根据最终需要将PCB图像分为NG和OK两种类别的目标,将1×1×3712大小的特征图转变为1×1×2大小的特征图;改进后的多模型融合网络在融合特征输出后增加了多个1×1卷积层,个数分别为2048、1024、512,逐步降低了特征图的数量,使特征图的通道数平缓过渡;

(4)通过模型训练实现PCB缺陷识别:

将PCB图片集划分为训练集、验证集测试集,利用在所述步骤(3)中进行改进后的融合模型进行训练、测试,对PCB缺陷类别进行自动化和智能化识别。

2.根据权利要求1所述基于多模型融合卷积神经网络的PCB缺陷图像识别方法,其特征在于:所述步骤(1)包括如下步骤:(1.1)对PCB缺陷图像进行缺陷分类,对包括残渣、异物在内的PCB缺陷图像以及无缺陷PCB图像进行细致分类整理;

(1.2) 在步骤(1.1)整理好的PCB图像数据集基础上进行包括镜像、旋转在内的数据增强方式以扩充数据集样本。

说明书 :

一种基于多模型融合卷积神经网络的PCB缺陷图像识别方法

技术领域

[0001] 本发明涉及缺陷检测领域,具体涉及一种基于多模型融合卷积神经网络的PCB缺陷图像识别方法。

背景技术

[0002] 印刷电路板(Printed Circuit Board,PCB)作为电子信息产业发展的基础支柱被广泛应用在工业控制、通讯、医疗、航空等领域。随着我国科学技术以及产业升级的推进,PCB缺陷检测技术已经成为经济生产环节中至关重要的一环。然而基于自动光学检查系统的外观检查机在PCB缺陷检测方面的误报率很高,导致后续验证和修复系统站的人工视觉检查的成本较高,而且工作效率低。因此利用深度学习技术进行PCB缺陷识别显得尤为重要。
[0003] 近年来,利用人工智能方法对缺陷检测方面取得了显著进展,这些缺陷检测系统将人工智能、模式识别理论以及PCB生产知识与经验集于一体。目前,已有针对PCB缺陷图像分类任务的相关研究,但用于PCB生产研究较少,该研究可以减少后序验证和修复系统站上人工视觉检查成本,提高生产效率。

发明内容

[0004] 本发明的目的在于针对已有技术的不足,提供一种基于多模型融合卷积神经网络的PCB缺陷图像识别方法,作用于多种类的PCB缺陷图像,克服传统人工PCB缺陷检测劳动强度大、工作效率低等问题,可减少后序验证和修复系统站上人工视觉检查成本,提高生产效率,实现PCB缺陷类别的自动化和智能化识别。
[0005] 为实现以上目的,本发明采用下述技术方案:
[0006] 一种基于多模型融合卷积神经网络的PCB缺陷图像识别方法,该方法包括以下操作步骤:
[0007] (1)建立图像数据集:获取多种类PCB缺陷图像和无缺陷图像,建立PCB图像数据集,并按各缺陷种类分好类;
[0008] (2)ResNet50模型改进;针对现有深度卷积神经网络模型的不足进行改进,建立适合PCB缺陷图像识别的卷积神经网络框架;
[0009] (3)特征融合:为了进一步提高PCB缺陷分类识别效果,提出一种多模型融合的PCB缺陷识别方法;基于多模型提取的图像特征进行融合,并对融合特征输出网络结构进行改进;
[0010] (4)模型训练,实现PCB缺陷识别:将PCB图片集划分为训练集、验证集和测试集,利用改进后的融合模型进行训练、测试,实现PCB缺陷类别的自动化和智能化识别。
[0011] 优选地,所述的步骤(1)具体包括:
[0012] (1.1)对PCB缺陷图像进行缺陷分类,由经验丰富的工作人员对残渣、异物等PCB缺陷图像以及无缺陷PCB图像进行细致分类整理;
[0013] (1.2)在步骤(1.1)整理好的PCB图像数据集基础上进行镜像、旋转等数据增强方式以扩充数据集样本,为提高图像识别精度打下基础。
[0014] 优选地,所述的步骤(2)具体包括:
[0015] (2.1)针对现有的ResNet50深度卷积神经网络模型的不足进行改进,建立适合PCB缺陷图像识别的卷积神经网络框架。
[0016] ResNet50网络结构共由四个大的BottleNeck组成,每个block中分别对应有3、4、6、3个小的残差块组成,每个小的残差块都是由1×1、3×3、1×1三个卷积层串联组成。另外在网络的最前端和最后端分别是由1个7×7的卷积层、maxpool层以及平均池化层组成。模型提取的特征的能力越强,分类得到正确结果的能力越强。因此本发明对ResNet50的网络结构进行了改善。
[0017] 优化改进后的ResNet50模型引入了一种名为Res2Net的新型CNN模块,Res2Net模块不同于之前的网络结构,其利用不同分辨率的特征来提高多尺度能力。该模块在单个残差块内构造具有等级制度的类似残差连接,在更细粒度级别上表示多尺度特征,用一组更小的滤波器组替换了n个通道的3×3卷积核,同时以分层的类残差方式来连接不同的过滤器组;在原本残差块第一个1×1卷积后,将输入划分到s个子集,定义为:
[0018] xi,i∈{1,2,3...,s}
[0019] 每个特征都有相同的尺寸大小,但通道是输入特征的1/s。除了x1,其他的子特征都有相应的3×3卷积核,将其定义为ki(),其输出为yi。为了在增加子集个数s同时减小模型中参数数量,省略了x1的3×3卷积核。因此,输出yi可以写作:
[0020]
[0021] 每一个3×3的卷积操作都可以潜在地接受上一层所有输出的特征信息,每一个输出都能增大感受野,所以每一个Res2Net都能获取不同数量和不同感受野大小的特征组合。
[0022] 因此,将本发明原本ResNet50中含有1×1、3×3、1×1卷积层的残差块替换为更多分层式的残差连接结构,并分别将第二个和第三个大的BottleNeck中的多个小block替换成Res2Net模块,然后将剩下的2个大BottleNeck按原本顺序进行连接。另外,在每一个大的BottleNeck后面采用ReLU作为激活函数提高网络多层的非线性扩展能力。
[0023] 优选地,所述的步骤(3)具体包括:
[0024] (3.1)针对改进后的ResNet50深度卷积神经网络模型,引入DenseNet169模型网络,利用两个模型网络特征提取器提取输入图片的特征,并进行特征融合,在其基础上对融合后模型结果进行优化改进。
[0025] (3.2)在预处理时,将所有输入图片都归一化为224×224的大小。利用改进后的ResNet50和DenseNet169模型特征提取器对输入图片进行特征提取,其中改进后的ResNet50特征提取器提取到2048幅7×7大小的特征图,DenseNet169特征提取器提取到1664幅7×7大小的特征图。为了压缩模型参数数量,提高计算速度,分别在两个特征提取器后接一个全局平均池化层,得到2048幅1×1大小的特征图和1664幅1×1大小的特征图,之后再将两个全局平均池化层的输出进行拼接(Concatenate),得到新的分类网络的输出。经过模型融合后,最终得到的特征图大小为1×1×3712。由于最终需要将PCB图像分为NG和OK两种类别,因此需要将1×1×3712大小的特征图转变为1×1×2大小的特征图。考虑到这样特征图的数量过渡上稍显剧烈,可能会引起模型在收敛时由于变化过于剧烈而导致了训练结果不好或是训练效果有限。改进后的多模型融合网络结构在融合特征输出前与原多模型融合网络结构一致,区别在于改进后的多模型融合网络在融合特征输出后增加了多个1×1卷积层,个数分别为2048、1024、512,逐步降低了特征图的数量,使特征图的通道数平缓过渡。与全连接层相比,卷积层不改变图像空间结构,拥有权重共享和稀疏连接两大特性,使得网络的计算参数大大减少,提高了网络的性能。
[0026] 优选地,所述的步骤4具体包括:
[0027] 将PCB图像集划分为训练集、验证集和测试集,利用改进后的多模型融合的PCB缺陷识别模型进行训练、测试,根据各项分类指标对模型性能进行评判,实现PCB缺陷类别的自动化和智能化识别。
[0028] 与现有技术相比,本发明具有如下显而易见的突出实质性特点和显著的技术进步:
[0029] 1.本发明多模型融合卷积神经网络结构,用于PCB缺陷图像识别;该卷积神经网络在更细粒度级别上表示多尺度特征,避免了卷积特征图的数量过渡变化剧烈、训练结果不好或是训练效果有限的问题;
[0030] 2.本发明利用改进后的模型对PCB缺陷图像进行分类识别,结果表明改进后的模型具有较好的分类识别性能,在阈值为0.5的条件下,其对PCB图像平均识别准确率达到99.3%,验证了该模型对PCB图像识别分类的有效性。

附图说明

[0031] 图1是本发明的PCB缺陷图像识别方法的流程示意图。
[0032] 图2是残渣缺陷、异物缺陷以及无缺陷图片。
[0033] 图3是ResNet50模型中的残差块与Res2Net Module。
[0034] 图4是改进后ResNet50模型结构图。
[0035] 图5是多模型融合后的网络结构图。
[0036] 图6是PCB缺陷分类识别实验中改进的多模型融合网络在不同阈值下敏感性和特异性的变化曲线图。

具体实施方式

[0037] 下面通过附图和优选实施例对本发明做进一步说明。
[0038] 实施例一:
[0039] 参见体1~图6,一种基于多模型融合卷积神经网络的PCB缺陷图像识别方法,操作步骤如下:
[0040] (1)建立图像数据集:获取多种类PCB缺陷图像,建立PCB图像数据集,并按各缺陷种类分好类;
[0041] (2)ResNet50模型改进;
[0042] 针对现有深度卷积神经网络模型的不足进行改进,建立适合PCB缺陷图像识别的卷积神经网络框架;
[0043] (3)特征融合:
[0044] 为了进一步提高PCB缺陷分类识别效果,提出一种多模型融合的PCB缺陷识别方法;基于多模型提取的图像特征进行融合,并对融合特征输出网络结构进行改进;
[0045] (4)模型训练,实现PCB缺陷识别:
[0046] 将PCB图片集划分为训练集、验证集测试集,利用改进后的融合模型进行训练、测试,实现PCB缺陷类别的自动化和智能化识别。
[0047] 本实施例基于多模型融合卷积神经网络的PCB缺陷图像识别方法,作用于多种类的PCB缺陷图像,克服传统人工PCB缺陷检测劳动强度大、工作效率低等问题,可减少后序验证和修复系统站上人工视觉检查成本,提高生产效率,实现PCB缺陷类别的自动化和智能化识别。
[0048] 实施例二:
[0049] 本实施例与实施例一基本相同,特别之处如下:
[0050] 所述步骤(2)针对现有深度卷积神经网络模型的不足进行改进,建立适合PCB缺陷图像识别的卷积神经网络框架。ResNet50网络结构共由四个大的BottleNeck组成,每个block中分别对应有3、4、6、3个小的残差块组成,每个小的残差块都是由1×1、3×3、1×1三个卷积层串联组成;另外在网络的最前端和最后端分别是由1个7×7的卷积层,maxpool层以及平均池化层组成。优化改进后的ResNet50模型引入了一种名为Res2Net的新型CNN模块,将原本ResNet50中含有1×1、3×3、1×1卷积层的残差块替换为更多分层式的残差连接结构,并分别将第二个和第三个大的BottleNeck中的多个小block替换成Res2Net模块,然后将剩下的2个大BottleNeck按原本顺序进行连接;在每一个大的BottleNeck后面采用ReLU作为激活函数提高网络多层的非线性扩展能力。
[0051] 所述步骤(3)特征融合:基于多模型提取的图像特征进行融合,并对融合特征输出网络结构进行改进;利用改进后的ResNet50和DenseNet169模型特征提取器对输入图片进行特征提取,其中改进后的ResNet50特征提取器提取到2048幅7×7大小的特征图,DenseNet169特征提取器提取到1664幅7×7大小的特征图。为了压缩模型参数数量,提高计算速度,分别在两个特征提取器后接一个全局平均池化层,得到2048幅1×1大小的特征图和1664幅1×1大小的特征图,之后再将两个全局平均池化层的输出进行拼接,得到新的分类网络的输出;经过模型融合后,最终得到的特征图大小为1×1×3712;由于最终需要将PCB图像分为NG和OK两种类别,因此需要将1×1×3712大小的特征图转变为1×1×2大小的特征图;改进后的多模型融合网络在融合特征输出后增加了多个1×1卷积层,个数分别为2048,1024,512,逐步降低了特征图的数量使特征图的通道数平缓过渡,以提高网络的性能。
[0052] 本实施例多模型融合卷积神经网络结构,用于PCB缺陷图像识别;该卷积神经网络在更细粒度级别上表示多尺度特征,避免了卷积特征图的数量过渡变化剧烈、训练结果不好或是训练效果有限的问题;本实施例利用改进后的模型对PCB缺陷图像进行分类识别,结果表明改进后的模型具有较好的分类识别性能,在阈值为0.5的条件下,其对PCB图像平均识别准确率达到99.3%,验证了该模型对PCB图像识别分类的有效性。
[0053] 实施例三:
[0054] 参见图1,一种基于多模型融合卷积神经网络的PCB缺陷图像识别方法,其包括以下操作步骤:
[0055] 获取多种类PCB缺陷图像和无缺陷图像,利用多种数据增强方式扩充图片集并建立PCB图像数据集,并按各缺陷种类分好类。本发明选取了残渣和异物两种缺陷,经数据增强后训练集中每种缺陷各3900张,无缺陷PCB图像7800张。测试集共5200张,其中残渣和异物缺陷各1300张,无缺陷图片共2600张。图2是残渣和异物两种缺陷图片以及无缺陷图片,由资深的工作人员整理所得。
[0056] 针对现有深度卷积神经网络模型的不足进行改进,建立适合PCB缺陷图像识别的ResNet50卷积神经网络框架。ResNet50网络结构共由四个大的BottleNeck组成,每个block中分别对应有3、4、6、3个小的残差块组成,每个小的残差块都是由1×1、3×3、1×1三个卷积层串联组成。另外在网络的最前端和最后端分别是由1个7×7的卷积层、maxpool层以及平均池化层组成。模型提取的特征的能力越强,分类得到正确结果的能力越强。因此本发明对ResNet50的网络结构进行了改善。
[0057] 优化改进后的ResNet50模型引入了一种名为Res2Net的新型CNN模块,如图3所示。Res2Net模块不同于之前的网络结构,其利用不同分辨率的特征来提高多尺度能力,该模块在单个残差块内构造具有等级制度的类似残差连接,可以在在更细粒度级别上表示多尺度特征,并增加每个网络的感受野,用一组更小的滤波器组替换了n个通道的3×3卷积核,同时以分层的类残差方式来连接不同的过滤器组。在原本残差块的第一个1×1卷积后,将输入划分到s个子集,定义为:
[0058] xi,i∈{1,2,3...,s}
[0059] 每个特征都有相同的尺寸大小,但通道是输入特征的1/s。除了x1,其他的子特征都有相应的3×3卷积核,将其定义为ki(),其输出为yi。为了在增加子集个数s同时减小了模型中参数数量,省略了x1的3×3卷积核。因此,输出yi可以写作:
[0060]
[0061] 每一个3×3的卷积操作都可以潜在地接受上一层所有的特征信息,每一个输出都能增大感受野,所以每一个Res2Net都能获取不同数量和不同感受野大小的特征组合。
[0062] 因此,将原本ResNet50中含有1×1、3×3、1×1卷积层的残差块替换为更多分层式的残差连接结构,并分别将第二个和第三个大的BottleNeck中的多个小block替换成Res2Net模块,然后将剩下的2个大BottleNeck按原本顺序进行连接。另外,在每一个大的BottleNeck后面采用ReLU作为激活函数提高网络多层的非线性扩展能力,改进后ResNet50模型结构如图4所示。
[0063] 为了进一步提高PCB缺陷分类识别效果,基于改进ResNet50模型基础上,提出一种多模型融合的PCB缺陷分类方法。基于多模型提取的图像特征进行融合,并对融合特征输出网络结构进行改进。针对改进后的ResNet50深度卷积神经网络模型,引入DenseNet169模型网络,利用两个模型网络特征提取器提取输入图片的特征,并进行特征融合,在其基础上对融合后模型结果进行优化改进。在预处理时,将所有输入图片都归一化为224×224大小。利用改进后的ResNet50和DenseNet169模型特征提取器对输入图片进行特征提取,其中改进后的ResNet50特征提取器提取到2048幅7×7大小的特征图,DenseNet169特征提取器提取到1664幅7×7大小的特征图。为了压缩模型参数数量,提高计算速度,分别在两个特征提取器后接一个全局平均池化层,得到2048幅1×1大小的特征图和1664幅1×1大小的特征图,之后再将两个全局平均池化层的输出进行拼接(Concatenate),得到新的分类网络的输出。经过模型融合后,最终得到的特征图大小为1×1×3712。由于最终需要将PCB图像分为NG和OK两种类别,因此需要将1×1×3712大小的特征图转变为1×1×2大小的特征图。考虑到这样特征图的数量过渡上稍显剧烈,可能会引起模型在收敛时由于变化过于剧烈而导致了训练结果不好或是训练效果有限。改进后的多模型融合网络结构在融合特征输出前与原多模型融合网络结构一致,区别在于改进后的多模型融合网络在融合特征输出后增加了多个1×1卷积层,个数分别为2048、1024、512,逐步降低了特征图的数量使特征图的通道数平缓过渡。与全连接层相比,卷积层不改变图像空间结构,拥有权重共享和稀疏连接两大特性,使得网络的计算参数大大减少,提高了网络的性能,多模型融合网络结构图如图5所示。
[0064] 将PCB图片集划分为训练集、验证集和测试集,利用改进后的融合模型进行训练、测试。对于PCB缺陷图像分类识别,主要利用准确率(Accuracy)、精确率(Precision)、特异性(Specificity)、敏感性(Sensitivity)以及F1 Score这四项标准来衡量模型的性能。以上指标是基于机器学习中的混淆矩阵来进行计算的,混淆矩阵如表1所示。
[0065] 表1混淆矩阵
[0066]
[0067] 其中混淆矩阵各项解释为:
[0068] (1)True Positive(真正,TP):将正类预测为正类数;
[0069] (2)True Negative(真负,TN):将负类预测为负类数;
[0070] (3)False Positive(假正,FP):将负类预测为正类数→误报;
[0071] (4)False Negative(假负,FN):将正类预测为负类数→漏报;
[0072] 准确率公式为:
[0073]
[0074] 精确率在本文中指被预测为NG类型的图片中实际为NG的比例,计算公式为:
[0075]
[0076] 特异性在本文中指被预测为OK类型的图片数量占所有OK图片数量的比例,衡量了分类器对负例的识别能力。计算公式为:
[0077]
[0078] 敏感性(与召回率相同)在本文中指NG图片被预测正确的数量占所有NG图片数量的比例,衡量了分类器对正例的识别能力。计算公式为:
[0079]
[0080] F1 Score综合考虑了精确率和敏感性,该指标可以衡量模型的分类效果。计算公式为:
[0081]
[0082] 使用改进后的多模型融合网络对收集的图像数据集训练后进行测试。各指标结果如表2所示。从表1可以看出,多模型融合网络在PCB缺陷图像上的平均识别准确率可以达到99.3%,精度可以达到99.7%,敏感性可以达到99.0%,特异性可以达到99.7%,F1 Score可以达到99.3%。图6为改进后的多模型融合网络在不同阈值下的敏感性与特异性的变化曲线,从图6中可以看出,随着阈值的增加,敏感性在不断降低,特异性在不断上升,说明Mix‑Fusion模型在较低阈值下对NG类型的PCB图片的识别准确率较高,在0.1阈值下敏感性可以达到99.4%,且特异性下降幅度并不是大,基本可以符合工业生产中的PCB缺陷检测要求。
[0083] 表2改进后模型对应的各指标结果
[0084]
[0085] 本发明上述实施例基于改进卷积神经网络的PCB缺陷图像识别方法。针对现有ResNet50深度卷积神经网络模型的不足,引入名为Res2Net的新型CNN模块,并更改残差连接结构和激活函数,来提高网络多层的非线性扩展能力。基于改进ResNet50模型,融入DenseNet169卷积神经网络,基于多模型提取的图像特征进行融合,并对融合特征输出网络结构进行改进,建立了一种多模型融合的PCB缺陷图像识别的卷积神经网络框架。上述实施例方法可对不同类型的PCB缺陷图像进行识别,较单一模型具有识别准确率、敏感性高的特点,并且能够实现PCB缺陷类别的自动化和智能化识别。
[0086] 上面对本发明实施例结合附图进行了说明,但本发明不限于上述实施例,还可以根据本发明的发明创造的目的做出多种变化,凡依据本发明技术方案的精神实质和原理下做的改变、修饰、替代、组合或简化,均应为等效的置换方式,只要符合本发明的发明目的,只要不背离本发明的技术原理和发明构思,都属于本发明的保护范围。