一种基于Faster RCNN的深度学习塑化材料缺陷检测方法转让专利

申请号 : CN202010701679.2

文献号 : CN111798447A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 任密蜂方茜茜杨勇齐慧月马建飞

申请人 : 太原理工大学

摘要 :

本发明提出了一种基于深度学习的塑化材料缺陷检测方法,针对塑化材料在生产过程中可能产生的缺陷进行检测。主要是利用FasterRCNN对塑化材料所存在的缺陷进行检测和分类,首先对缺陷数据进行数据扩充和预处理,并对处理好的数据进行特征提取,然后用区域生成网络对缺陷数据在特征空间逐像素按不同比例和尺寸进行矩形框定,筛选框定区域并判断该框定区域是否具有缺陷,若有缺陷,则获取缺陷的位置信息并判别其缺陷类型,反之则判定无缺陷。本发明的分析过程具有准确率高、处理速度快、可靠性好等优点,实现了塑化材料的缺陷检测及分析,极大地节省了劳动力和资源浪费。

权利要求 :

1.一种基于Faster RCNN的深度学习塑化材料缺陷检测方法,其特征在于先建立缺陷检测模型,利用建立好的缺陷检测模型检测缺陷,缺陷检测模型包括RPN模块和fast RCNN模块;

该方法包括以下步骤:

步骤一:采集缺陷图像;

步骤二:在fast RCNN模块中选取VGG Net模型对缺陷图像进行特征提取和降维处理,得到降维后的特征矩阵;

步骤三:在RPN模块中对特征矩阵中的缺陷区域进行选定框标定并获取其位置信息;

步骤四:在fast RCNN模块中对标定区域进行固定尺寸处理,然后连接全连接层输出,并对输出特征进行缺陷分类和边框回归;

步骤五:RPN模块和fast RCNN模块中选取损失函数判别这两个模块的分类和边框回归效果;

步骤六:根据损失函数结果分别对RPN模块和fast RCNN模块做反向梯度传播以训练VGG Net模型中的参数,不断的重复步骤一到步骤六,直到损失函数达到最小,RPN模块和fast RCNN模块训练完成,即可利用训练好的RPN模块和fast RCNN模块识别缺陷。

2.根据权利要求1所述的一种基于深度学习的塑化材料缺陷检测方法,其特征在于通过裁剪、翻转、以及将缺陷区域放在不同位置来扩充步骤一中采集的缺陷图像。

3.根据权利要求2所述的一种基于深度学习的塑化材料缺陷检测方法,其特征在于将缺陷图像作为VGG Net模型的输入X,通过卷积层和池化层对其进行非线性特征提取和降维处理,提取特征和降维过程如下所示:

1)卷积核进行卷积运算即提取特征的计算公式如下式所示:Xl=Xl-1*Kl+blI,其中bl是l层结点的偏置,是一个标量,Kl是可学习的卷积核矩阵,矩阵中的元素就是权值,Xl和Xl-1分别为第l层和第l-1层的特征矩阵,l是元素全是1的矩阵,“*”是卷积运算符;

2)降维过程如下公式所示,设池化层输出值为Xout,则有:

其中 表示采样层的第i个输入特征矩阵。

4.根据权利要求3所述的一种基于深度学习的塑化材料缺陷检测方法,其特征在于遍历特征矩阵中的每一个特征点,为每个特征点选定多个边框作为初始的检测框,并得到检测框的位置信息(x,y,h,w),(x,y)为特征点的位置坐标,h和w是检测框的高和宽,然后通过softmax函数判断检测框中是否有缺陷,如果有则作为选定框,如果没有则舍弃;最后将目标太小或者超出边界的选定框剔除,剩余的选定框标定了缺陷区域并获取其位置信息。

5.根据权利要求4所述的一种基于深度学习的塑化材料缺陷检测方法,其特征在于对标定了缺陷区域的选定框利用交并比进行缺陷信息重叠率筛选,将多余的重叠选定框剔除,交并比是两个选定框的交集与两个矩形并集的比值,对重叠率筛选后的选定框与标注图像进行交并比,删除与标注图像的交并比低于阈值的选定框,确定更好的覆盖缺陷区域选定框,更好的覆盖缺陷区域选定框再在步骤四fast RCNN模块进行固定尺寸处理。

6.根据权利要求5所述的一种基于深度学习的塑化材料缺陷检测方法,其特征在于对上述更好的覆盖缺陷区域选定框进行微调,使得更好的覆盖缺陷区域选定框A经过映射得到一个跟真实边框G更接近的建议框G′,具体过程如下所示:先做平移:G′x=Aw×dx(A)+Ax,G′y=Ah×dy(A)+Ay;再做缩放:G′w=Aw×exp(dw(A)),G′h=Ah×exp(dh(A)),其中(x,y)为边框的位置信息,(h,w)为边框的高和宽,微调后的建议框G′再在步骤四fast RCNN模块进行固定尺寸处理。

7.根据权利要求6所述的一种基于深度学习的塑化材料缺陷检测方法,其特征在于步骤五中RPN模块的损失函数为:式中i表示生成初始的检测框的序号,Ncls表示初始的检测框的

个数,pi表示初始的检测框中存在缺陷的概率,pi*代表初始的检测框对应于标注图像的概率,即当第i个初始的检测框与标注图像间交并比IOU≥0.7,认为pi*=1;反之当第i个初始的检测框与标注图像间交并比IOU≤0.3时,认为pi*=0;当初始的检测框与标注图像间交并比满足0.3<IOU<0.7时,初始的检测框则不参与训练;Nreg为更好的覆盖缺陷区域选定框的尺寸,ti表示更好的覆盖缺陷区域选定框与标注图像的预测偏移量,ti*代表更好的覆盖缺陷区域选定框相对于标注框的偏移量,λ为平衡参数,标注图像为对缺陷进行标注后的图像;fast  RCNN模块的损失函数为:其中qi,j为预测第i个建议框为第j类缺陷的概率,N1,N2分别为建

议框的总数和尺寸,M为缺陷类别数,yi,j是一个二值指标,表示建议框i是否是类别j,若是则为1,反之为0,λ为平衡参数,zi表示建议框与标注图像的预测偏移量,zi*代表建议框相对于标注框的偏移量。

8.根据权利要求6或7所述的一种基于深度学习的塑化材料缺陷检测方法,其特征在于步骤四中边框回归即对分类后的缺陷选定框进行位置微调,使得分类后的缺陷选定框位置跟真实边框G位置更接近。

说明书 :

一种基于Faster RCNN的深度学习塑化材料缺陷检测方法

技术领域

[0001] 本发明涉及塑化材料在生产过程中的缺陷检测方法,具体是一种基于Faster RCNN的深度学习塑化材料缺陷检测方法。

背景技术

[0002] 塑化材料是由高分子合成树脂为主要成份,渗入各种辅助料或某些具有特定用途的添加剂,可被模塑成一定形状,且在一定条件下保持形状不变的材料。基于塑化材料的优质特性被广泛应用于各行各业,在竞争产品的功能几乎没有差异的市场中,质量成为购买的决定性标准,因此需要对其生产过程中产生的缺陷进行检测和识别。传统的检测依赖人工手动进行,不仅作业性质单调,员工容易疲劳,而且检测的效率和质量不能满足需求。因此,高效率和高质量的塑化材料检测系统的设计开发已经成为很多生产工厂的需求。
[0003] 目前的工业检测主要采用机器学习方法,如神经网络和支持向量机等,但这些方法都需要人工设计缺陷特征,其带来的突出问题就是人工设计的缺陷无法满足缺陷的多样性,无法应对缺陷类型较多、大小不定、数量繁多的情况等。近年来,随着图形处理器(Graphic Processing Unit,GPU)性能的不断提升,深度学习蓬勃发展。2006年,卷积神经网络被提出并运用到了图像数据的特征提取中。随着时间的推移,各种深度卷积神经网络(Convolutional Neural Networks,CNN)的提出,例如AlexNet,VGGnet等,使人们对CNN在视觉任务中的应用有了进一步认识。随后区域卷积神经网络(RCNN)模型被提出并应用于目标检测中,该模型利用选择性搜索方法选取候选区域,使用多个支持向量机对特征进行分类,从而完成目标检测。针对该网络训练比较耗时、存在过拟合等问题提出了Faster RCNN模型,在人脸识别、目标检测和语音识别等计算机视觉领域中均取得了巨大成果。本发明使用Faster RCNN的方法对塑化材料进行缺陷检测。

发明内容

[0004] 本发明针对塑化材料存在缺陷可能会造成资源浪费和劳动力消耗等问题,提出一种基于Faster RCNN的深度学习塑化材料缺陷检测方法。
[0005] 本发明是采用如下的技术方案实现的:一种基于Faster RCNN的深度学习塑化材料缺陷检测方法,其模型结构如图1所示,先建立缺陷检测模型Faster RCNN,利用建立好的缺陷检测模型检测缺陷,缺陷检测模型Faster  RCNN包括区域生成网络(regionproposalnetwork,RPN)模块和fast RCNN模块。
[0006] 该方法包括以下步骤:
[0007] 步骤一:采集缺陷图像;缺陷种类有三种,即破孔、白点和异物。
[0008] 步骤二:在fast RCNN模块中选取VGG Net模型对缺陷图像进行特征提取和降维处理,得到降维后的特征矩阵。
[0009] 步骤三:在RPN模块中对特征矩阵中的缺陷区域进行选定框标定并获取其位置信息;
[0010] 步骤四:在fast RCNN模块中对标定区域进行固定尺寸处理,然后连接全连接层输出,并对输出特征进行缺陷分类和边框回归;
[0011] 步骤五:RPN模块和fast RCNN模块中选取损失函数判别这两个模块的分类和边框回归效果;
[0012] 步骤六:根据损失函数结果分别对RPN模块和fast RCNN模块做反向梯度传播以训练VGG Net模型中的参数,不断的重复步骤一到步骤六,直到损失函数达到最小,RPN模块和fast RCNN模块训练完成,即可利用训练好的RPN模块和fast RCNN模块识别缺陷。
[0013] 上述的一种基于深度学习的塑化材料缺陷检测方法,通过裁剪、翻转、以及将缺陷区域放在不同位置来扩充步骤一中采集的缺陷图像。
[0014] 上述的一种基于深度学习的塑化材料缺陷检测方法,将缺陷图像作为VGG Net模型的输入X,通过卷积层和池化层对其进行非线性特征提取和降维处理,提取特征和降维过程如下所示:
[0015] 1)卷积核进行卷积运算即提取特征的计算公式如下式所示:Xl=Xl-1*Kl+blI,其中bl是l层结点的偏置,是一个标量,Kl是可学习的卷积核矩阵,矩阵中的元素就是权值,Xl和Xl-1分别为第l层和第l-1层的特征矩阵,I是元素全是1的矩阵,“*”是卷积运算符;
[0016] 2)降维过程如下公式所示,设池化层输出值为Xout,则有:其中 表示采样层的第i个输入特征,本发明采用最大
池化,fmax为取最大值函数。
[0017] 上述的一种基于深度学习的塑化材料缺陷检测方法,步骤三具体过程为:选定多个边框并遍历特征矩阵中的每一个特征点,每一个特征点都得到多个初始的检测框,并得到检测框的位置信息(x,y,h,w),(x,y)为特征点的位置坐标,h和w是检测框的高和宽,然后通过softmax函数判断检测框中是否有缺陷,如果有则作为选定框,如果没有则舍弃;最后将目标太小或者超出边界的选定框剔除,剩余的选定框标定了缺陷区域并获取其位置信息。
[0018] 上述的一种基于深度学习的塑化材料缺陷检测方法,对标定了缺陷区域的选定框利用交并比进行缺陷信息重叠率筛选,将多余的重叠选定框剔除,重叠率筛选后的选定框再在fast RCNN模块进行固定尺寸处理。交并比(Intersection-over-Union,IOU)具体计算过程为:两个矩形(A和B)的交集(C)与两个矩形并集的比值,即IOU=C/(A+B-C)。对重叠率筛选后的选定框与标注图像进行交并比,删除与标注图像的交并比低于阈值的选定框,确定更好的覆盖缺陷区域选定框,更好的覆盖缺陷区域选定框再在步骤四fast RCNN模块进行固定尺寸处理。
[0019] 上述的一种基于深度学习的塑化材料缺陷检测方法,对更好的覆盖缺陷区域选定框进行微调,使得更好的覆盖缺陷区域选定框A经过映射得到一个跟真实边框G更接近的建议框G′,具体过程如下所示:先做平移:G′x=Aw×dx(A)+Ax,G′y=Ah×dy(A)+Ay;再做缩放:G′w=Aw×exp(dw(A)),G′h=Ah×exp(dh(A)),其中(x,y)为边框的位置信息,(h,w)为边框的高和宽,建议框G′再在步骤四fast RCNN模块进行固定尺寸处理。
[0020] 上述的一种基于深度学习的塑化材料缺陷检测方法,步骤五中RPN模块和fast RCNN模块的损失函数为: 式中i表示生成初始的检测框的序号,Ncls表示初始的检测框的个数,pi表示初始的检测框中存在缺陷的概率,pi*代表初始的检测框对应于标注图像的概率,即当第i个初始的检测框与标注图像间交并比IOU≤0.7,认为pi*=1;反之当第i个初始的检测框与标注图像间交并比IOU≤0.3时,认为pi*=0;当初始的检测框与标注图像间交并比满足0.3
[0021] fast  RCNN模块的损失函数为:其中qi,j为预测第i个建议框为第j类缺陷的概率,N1,N2分别为建
议框的总数和尺寸,M为缺陷类别数,yi,j是一个二值指标,表示建议框i是否是类别j,若是则为1,反之为0,λ为平衡参数,zi表示建议框与标注图像的预测偏移量,zi*代表建议框相对于标注框的偏移量。
[0022] 上述的一种基于深度学习的塑化材料缺陷检测方法,步骤四中边框回归即对分类后的缺陷选定框进行位置微调,使得分类后的缺陷选定框位置跟真实边框位置更接近。微调过程和重叠率筛选后的选定框进行微调过程相同。
[0023] 本发明具有准确率高、处理速度快、可靠性好等优点,实现了塑化材料的缺陷检测及分析,极大地节省了劳动力和避免了资源浪费。

附图说明

[0024] 图1为缺陷检测的具体流程图。
[0025] 图2为缺陷标注的训练结果图。
[0026] 图3为损失函数的变化图。

具体实施方式

[0027] 接下来结合具体实例对本发明作进一步说明,实际数据为存在缺陷的塑化材料,缺陷包括三种,即破孔、异物和白点,但是缺陷图像较难获取,因此在进行缺陷检测前先对数据进行扩充,然后通过深度学习提高缺陷检测的效率,以便于减少资源损耗和劳动力浪费。
[0028] 一种基于Faster RCNN的深度学习塑化材料缺陷检测方法,该方法中Faster RCNN包括RPN模块和fast RCNN模块,RPN模块和fast RCNN模块的训练过程如下:
[0029] 步骤一:采集缺陷图像作为输入X,实验中收集了1545张缺陷图像,用labelImg工具对多种缺陷进行标注,得到真实边框G(也为标注图像),然后使用随机抽样方法将其分为训练集、验证集和测试集,其中训练集为387张,验证集为386张,测试集为772张。
[0030] 步骤二:将训练集中的缺陷图像输入VGG Net模型中进行特征提取和降维处理,该过程包含13个卷积层、4个池化层。卷积层中卷积核的大小为3*3,步长为1,填充为1,即对所有的卷积层都做了扩边处理,可以不改变输入和输出的大小,每一个卷积层后接RELU函数作为激活函数,可以减少过拟合,增加网络的表达能力;经过4个池化层将其变为原来的1/16,做到了降维处理。
[0031] 步骤三:以三种宽高比(width:height∈{1:1,1:2,2:1})和三种尺度(128*128,256*256,512*512)得到九个边框,为每一个特征点配备好九个边框后,九个边框遍历特征矩阵中的每一个特征点,每一个特征点都得到九个初始的检测框,选择其中包含缺陷信息的检测框对其进行选定,在选定框中将目标太小或者超出边界的剔除,删除重叠的选定框后,RPN网络会预测每个选定框为标注图像的概率,删除低于阈值的选定框,最后对剩下的选定框进行微调使其更好的选中目标。对其进行微调,目的是寻找一种关系,使得选定框A经过映射得到一个跟真实边框G更接近的建议框G′,具体过程如下所示:
[0032] 1.先做平移:
[0033] G′x=Aw×dx(A)+Ax
[0034] G′y=Ah×dy(A)+Ay
[0035] 2.再做缩放:
[0036] G′w=Aw×exp(dw(A))
[0037] G′h=Ah×exp(dh(A))
[0038] 其中(x,y)为边框的位置信息,(h,w)为边框的高和宽。
[0039] 步骤四:将上一步得到的建议框G′平均分为7*7的大小,然后对其做最大池化处理,得到固定大小的输出,然后连接全连接层输出,最后进行缺陷分类和边框回归,这里采用多分类交叉熵损失函数进行分类。
[0040] 步骤五:RPN模块和fast RCNN模块中选取损失函数判别这两个模块的分类和边框回归效果;
[0041] 步骤六:由于RPN模块和fast RCNN模块都会用到VGG Net模型提取的特征,因此将两个模块的损失函数相加,根据损失函数结果进行梯度反向传播,不断的重复步骤一到步骤六,从而对VGG Net模型中的的参数(k和b)进行训练改进,直到损失函数的和达到最小,RPN模块和fast RCNN模块训练完成,即可利用训练好的RPN模块和fast RCNN模块识别缺陷。
[0042] 在RPN模块中,对初始的检测框采用softmax函数进行二分类,即判断初始的检测框中是否包含缺陷信息,对其二分类结果利用损失函数进行判定;在fast RCNN模块中,对缺陷分类结果(多分类)利用损失函数进行判定。其中二分类判定过程如下所示:
[0043] Lcls(pi,pi*)=-log[pipi*+(1-pi)(1-pi*)]
[0044] 若存在缺陷信息,判断其位置信息(x,y)以及选定框的宽w和高h,然后对其进行微调,具体过程如下所示:
[0045] Lreg(ti,ti*)=R(ti-ti*)
[0046] 其中ti=(tx ,ty,tw,th), R是Smooth  L1函数,
[0047]
[0048] x,y,h,w为标定框G的位置信息,下标为a的x,y,h,w为更好的覆盖缺陷区域选定框A的位置信息,带*的为建议框G′的位置信息。
[0049] 目标检测一般采用平均精度(average precision,AP)作为评价指标,由于此缺陷在实际过程中并非一种缺陷,所以选用mAP作为评价指标,mAP=所有类别的AP之和/类别的总个数。
[0050] 表一、附图2和附图3展示了本实例在训练过程中的检测结果,在训练过程中考虑到了不同学习率和迭代次数对结果的影响。可以看出当学习率为0.001时,迭代次数从500到1000;1500到2000,mAP都上升,但迭代次数从1000到1500时,mAP出现了下降。考虑到可能是学习率过大导致,因此采用变学习率的方法训练,即当迭代次数≦1000时,学习率设为0.001,当迭代次数>1000时,学习率设为0.0001。在附图3中展示了训练过程中损失函数(两个损失函数之和)的变化情况,可以看出损失值在减小,最终在一个值附近波动。
[0051] 表一缺陷检测的测量结果
[0052]
[0053] 本发明的优点:对实际数据进行了扩充,利用RPN模块标出生产过程中实际数据所存在的缺陷,只需对缺陷部分进行特征提取,减小了计算量和人工成本,增加了检测的准确率,避免更多的缺陷材料流入市场,对建立良好的企业形象和提升消费者用户体验均有裨益。