一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种利用无缺陷图像的少样本缺陷检测方法与流程

2022-03-05 05:52:45 来源:中国专利 TAG:


1.本发明涉及一种少样本缺陷检测方法,旨在利用生产过程中较易获得的无缺陷图像来提升少样本缺陷检测的效果。


背景技术:

2.在工业制造领域,如何在生产过程中准确检测出产品的表面缺陷对于产品的质量控制有着重大意义。只有不断地提高产品质量,才能获得用户的青睐,才能提高市场占有率。近几年,深度学习技术在智能制造领域崭露头角,其利用大量数据可以训练出用于缺陷检测的模型,大大提高了缺陷检测的准确率。在实际的生产过程中,产品出现缺陷的比率其实非常低,上百万张图像中仅能挑选出几千张缺陷图像。对于一些较为罕见的缺陷,往往只能收集到几十张缺陷图像。然而,在训练深度模型的时候,若要取得较好的检测性能,一般需要足够数量的样本且各类样本数量均衡。如果只用很少的缺陷样本参与训练,模型就会过拟合,对这类缺陷的检测性能也会急剧下降。少样本学习便是基于这种问题而提出的一种解决方案。少样本学习基于先验知识并利用从少量样本中学习的新知识来对模型微调,从而实现对于新样本的缺陷检测。近几年,少样本检测作为计算机视觉领域的一个新兴分支,逐渐引起了广泛关注。2019年,kang等人基于单阶段检测模型提出了一个基于少样本学习的目标检测模型,将少量的样本通过一个重新加权模块来得到多个类别相关的特征向量,并与特征图逐通道相乘,之后进行分类和回归计算。yan等人基于双阶段检测模型,并用骨干网络生成的特征向量与感兴趣区域特征图相乘并输入到检测器中,取得了不错的检测性能。但是,这些少样本检测模型针对的是日常生活的场景,并不适合直接应用到工业场景中。因此,有必要提出一种针对工业生产场景的基于少样本学习的缺陷检测模型以及一种少样本缺陷检测的训练策略。


技术实现要素:

3.本发明的目的在于针对工业生产中罕见缺陷的数据不足且难以训练的情况,提供一种利用无缺陷图像的少样本缺陷检测方法,提出了缺陷增强模块,该模块可以利用工业生产中大量存在的无缺陷图像来增强缺陷区域的特征,仅利用少量样本即可达到良好的缺陷检测效果。本发明还提出了一种少样本缺陷检测的训练策略,将训练过程分为两个阶段,第一个阶段基于大量数据训练,得到一个预训练模型;第二个阶段仅用无缺陷样本和少量缺陷样本训练,对预训练模型进行微调,提升对新缺陷的检测效果。
4.为达到上述发明创造目的,本发明采用如下技术方案:
5.一种利用无缺陷图像的少样本缺陷检测方法,具体步骤如下:
6.(1)数据的预处理:
7.把公开数据集中的neu钢铁数据集和mt磁瓦数据集用作少样本缺陷检测的数据集;其中,neu数据集的5类缺陷数量充足且多样,适合作为训练集中的基础类,mt数据集的5类缺陷数量较少,适合作为训练集中的新类;
8.(2)构建利用无缺陷图像的少样本缺陷检测模型:
9.该模型主要包括一个基础类缺陷检测网络和一个新类缺陷检测网络,这两个网络共享特征提取网络和候选框提取网络的参数;以基础类缺陷、新类缺陷和无缺陷图像作为输入,经过特征提取、候选框提取、预测头重构网络、缺陷增强子网络以及特征融合操作,得到缺陷的类别信息和位置信息,作为整个网络的输出;
10.(3)利用步骤(1)中处理好的训练集,采用少样本缺陷检测的训练策略进行训练:
11.所述少样本缺陷检测模型的训练分为两个阶段:
12.第一个阶段用大量基础类缺陷图像来训练,获得一个预训练模型;
13.第二个阶段用无缺陷图像和少量新类缺陷图像来对预训练模型进行微调,提升模型对新类缺陷的检测性能;
14.其中,第一阶段的训练用的是neu钢铁数据集,用其中的5类缺陷作为训练集;第二阶段的训练基于mt磁瓦数据集,用其中的5类缺陷以及无缺陷图像作为训练集;从训练集中随机选择10张无缺陷图像和每类k张缺陷图像即k-shot,k=1,5,10,来微调模型,得到最终的缺陷检测模型;
15.(4)利用无缺陷图像的少样本缺陷检测:
16.测试的时候使用的是步骤(1)中处理好的数据集,需要将图像及其对应的标注文件输入步骤(3)中训练好的缺陷检测模型后,通过具体的缺陷特征提取和融合过程来进行缺陷检测;无论是基础类缺陷还是新类缺陷,都选择直接把缺陷图像输入到模型中,模型会导入训练好的模型参数,通过多重卷积运算获得缺陷检测结果。
17.优选地,所述步骤(4)中的缺陷特征提取和融合过程,具体步骤如下:
18.(4-1)特征提取网络:
19.特征提取网络基于resnet-101,由卷积层、池化层、全连接层和relu激活层组成;输入图像经过多层卷积计算后输出后续操作所需的多通道特征图;
20.(4-2)候选框提取网络:
21.以步骤(4-1)中输出的特征图作为候选框提取网络的输入,之后在这些特征图上通过滑动窗口和锚框机制来生成可能的缺陷区域;对于这些候选区域,需要应用非极大值抑制算法nms,去除多余的候选区域;最后输出各个类别的感兴趣区域相关的特征图类别总数为n;
22.(4-3)预测头重构网络:
23.基础类的预测头重构网络只需要输入缺陷图像,通过多重卷积运算获得各个类别的类别注意力特征向量这些特征向量包含了输入图像的缺陷特征信息,用于生成类别相关的特征图;这个过程可用如下的公式表示:
[0024][0025]
其中,表示特征向量与特征图的逐通道相乘;
[0026]
新类的预测头重构网络需要同时输入无缺陷图像和少量缺陷图像;缺陷图像通过重构网络获得类别相关的特征向量无缺陷图像通过重构网络获得无缺陷的特征向量v
df
;通过这两种特征向量的相减操作,获得缺陷区域特征增强的特征向量这
个计算过程用公式表示为:
[0027][0028]
其中,λ是的比例系数;参数λ的主要作用是减少无缺陷图像中的噪声对计算结果的干扰;之后,利用增强后的特征向量与感兴趣区域相关的特征图逐通道相乘可以获得缺陷区域特征增强的特征图,计算过程如下所示:
[0029][0030]
(4-4)特征融合:
[0031]
将(4-3)中输出的类别相关的特征图和缺陷区域特征增强的特征图进行连接操作,实现特征的融合,经过全连接层之后,降低特征图的通道数,输出最终的特征图fn;这个过程用如下的公式表示:
[0032][0033]
其中,fc表示全连接操作,

表示特征图的连接操作;
[0034]
(4-5)分类和边框回归计算:
[0035]
针对(4-4)中输出的特征图,用两个不同的分支分别做分类计算和边框回归计算;其中,分类计算的损失函数采用的是交叉熵损失函数,边框回归计算的损失函数采用的是平滑l1损失函数;利用这两个分支,获得目标缺陷的类别和位置信息并作为结果输出。
[0036]
本发明利用步骤(3)中训练好的检测模型进行测试:无论是基础类缺陷还是新类缺陷,都可以选择直接把缺陷图像输入到模型中,模型会导入训练好的模型参数,通过多重卷积运算获得缺陷检测结果。
[0037]
本发明与现有技术相比较,具有如下显而易见的突出实质性特点和显著优点:
[0038]
1.本发明方法针对工业生产中罕见缺陷难以收集且检测效果差的困境,提出利用容易收集的无缺陷图像来获取更多的缺陷区域的特征;这样做就可以只用少量的缺陷图像,借助少样本学习,实现对罕见缺陷的缺陷检测,为工业生产中的实际问题提出了解决方案;
[0039]
2.本发明提出了缺陷增强模块,该模块可以利用工业生产中大量存在的无缺陷图像来增强缺陷区域的特征,仅利用少量样本即可达到良好的缺陷检测效果。
附图说明
[0040]
图1是本发明的程序框图。
[0041]
图2是本发明步骤(1)中处理好的输入图像及其对应的标签。
[0042]
图3是本发明的用于基础类缺陷检测的网络流程图。
[0043]
图4是本发明的用于新类缺陷检测的网络流程图。
[0044]
图5是本发明的缺陷增强子网络的流程图。
[0045]
图6是本发明在缺陷检测领域的公开数据集上取得的检测效果以及与其它方法的对比。
具体实施方式
[0046]
下面结合附图对本发明的优选实施例作进一步详细说明。
[0047]
实施例一:
[0048]
参见图1,本实施例利用无缺陷图像的少样本缺陷检测方法,其特征在于,具体步骤如下:
[0049]
(1)数据的预处理:
[0050]
把公开数据集中的neu钢铁数据集和mt磁瓦数据集用作少样本缺陷检测的数据集。其中,neu数据集的5类缺陷数量充足且多样,适合作为训练集中的基础类,mt数据集的5类缺陷数量较少,适合作为训练集中的新类。
[0051]
(2)构建利用无缺陷图像的少样本缺陷检测模型:
[0052]
该模型主要包括一个基础类缺陷检测网络和一个新类缺陷检测网络,这两个网络共享特征提取网络和候选框提取网络的参数;以基础类缺陷、新类缺陷和无缺陷图像作为输入,经过特征提取、候选框提取、预测头重构网络、缺陷增强子网络以及特征融合操作,得到缺陷的类别信息和位置信息,作为整个网络的输出。
[0053]
(3)利用步骤(1)中处理好的训练集,采用少样本缺陷检测的训练策略进行训练:
[0054]
本少样本缺陷检测模型的训练分为两个阶段,第一个阶段用大量基础类缺陷图像来训练,获得一个预训练模型,第二个阶段用无缺陷图像和少量新类缺陷图像来对预训练模型进行微调,提升模型对新类缺陷的检测性能;其中,第一阶段的训练用的是neu钢铁数据集,用其中的5类缺陷作为训练集;第二阶段的训练基于mt磁瓦数据集,用其中的5类缺陷以及无缺陷图像作为训练集;从训练集中随机选择10张无缺陷图像和每类k张缺陷图像即k-shot,k=1,5,10,来微调模型,得到最终的缺陷检测模型;
[0055]
(4)利用无缺陷图像的少样本缺陷检测:
[0056]
测试的时候使用的是步骤(1)中处理好的数据集,需要将图像及其对应的标注文件输入步骤(3)中训练好的缺陷检测模型后,通过具体的缺陷特征提取和融合过程来进行缺陷检测。无论是基础类缺陷还是新类缺陷,都选择直接把缺陷图像输入到模型中,模型会导入训练好的模型参数,通过多重卷积运算获得缺陷检测结果。
[0057]
本发明实施例方法针对工业生产中罕见缺陷难以收集且检测效果差的困境,提出利用容易收集的无缺陷图像来获取更多的缺陷区域的特征;这样做就可以只用少量的缺陷图像,借助少样本学习,实现对罕见缺陷的缺陷检测,为工业生产中的实际问题提出了解决方案
[0058]
实施例二:
[0059]
本实施例与实施例一基本相同,特别之处如下:
[0060]
所述步骤(4)中的缺陷特征提取和融合过程,具体步骤如下:
[0061]
(4-1)特征提取网络。
[0062]
特征提取网络基于resnet-101,由卷积层、池化层、全连接层和relu激活层组成;输入图像经过多层卷积计算后输出后续操作所需的多通道特征图;
[0063]
(4-2)候选框提取网络。
[0064]
以步骤(4-1)中输出的特征图作为候选框提取网络的输入,之后在这些特征图上通过滑动窗口和锚框机制来生成可能的缺陷区域;对于这些候选区域,需要应用非极大值
抑制算法nms,去除多余的候选区域;最后输出各个类别的感兴趣区域相关的特征图类别总数为n;
[0065]
(4-3)预测头重构网络。
[0066]
基础类的预测头重构网络只需要输入缺陷图像,通过多重卷积运算获得各个类别的类别注意力特征向量这些特征向量包含了输入图像的缺陷特征信息,用于生成类别相关的特征图;这个过程可用如下的公式表示:
[0067][0068]
其中,表示特征向量与特征图的逐通道相乘;
[0069]
新类的预测头重构网络需要同时输入无缺陷图像和少量缺陷图像;缺陷图像通过重构网络获得类别相关的特征向量无缺陷图像通过重构网络获得无缺陷的特征向量v
df
;通过这两种特征向量的相减操作,获得缺陷区域特征增强的特征向量这个计算过程用公式表示为:
[0070][0071]
其中,λ是的比例系数;参数λ的主要作用是减少无缺陷图像中的噪声对计算结果的干扰;之后,利用增强后的特征向量与感兴趣区域相关的特征图逐通道相乘可以获得缺陷区域特征增强的特征图,计算过程如下所示:
[0072][0073]
(4-4)特征融合。
[0074]
将(4-3)中输出的类别相关的特征图和缺陷区域特征增强的特征图进行连接操作,实现特征的融合,经过全连接层之后,降低特征图的通道数,输出最终的特征图fn;这个过程用如下的公式表示:
[0075][0076]
其中,fc表示全连接操作,

表示特征图的连接操作;
[0077]
(4-5)分类和边框回归计算。
[0078]
针对(4-4)中输出的特征图,用两个不同的分支分别做分类计算和边框回归计算;其中,分类计算的损失函数采用的是交叉熵损失函数,边框回归计算的损失函数采用的是平滑l1损失函数;利用这两个分支,获得目标缺陷的类别和位置信息并作为结果输出。
[0079]
本实施例利用训练好的模型对测试数据进行实验,基础类的测试实验只需要输入缺陷图像,即可得到该缺陷的类别和位置信息,而新类的测试实验需要同时输入少量缺陷图像和无缺陷图像,得到该缺陷的类别和位置信息。本实施例利用工业生产中大量存在的无缺陷图像来增强缺陷区域的特征,仅利用少量样本即可达到良好的缺陷检测效果。
[0080]
实施例三:
[0081]
本实施例进行的实验是在gpu型号为titanxp,显存为12g的电脑测试平台上,基于pytorch框架编程实现。
[0082]
本实施例利用无缺陷图像的少样本缺陷检测方法,其具体步骤如下所述:
[0083]
(1)首先将mt磁瓦数据集中的二值图转换为缺陷检测中需要的xml标注文件,之后把neu钢铁数据集(5类,共1500张)和mt磁瓦数据集(5类,共587张,其中包含200张无缺陷图像)用作少样本缺陷检测的数据集进行处理。处理好后的数据集如图2所示。其中,neu数据集由于其5类缺陷各有300张图像,适合作为基础类,用于第一阶段的训练,可获得预训练模型。而mt数据集由于其5类缺陷的数量较少,适合作为新类,用于第二阶段的训练,只利用无缺陷图像和少量缺陷图像来训练模型就可实现对新类缺陷的良好的检测效果。第二阶段训练过程中无缺陷图像的引入可以提高模型对新类缺陷的检测性能。
[0084]
(2)构建一个利用无缺陷图像的少样本缺陷检测模型:
[0085]
(2-1)该模型主要包括一个基础类缺陷检测网络和一个新类缺陷检测网络,这两个网络共享特征提取网络和候选框提取网络(即rpn)的参数,利用这两个网络可以同时实现对基础类缺陷和新类缺陷的检测。
[0086]
(2-2)基础类缺陷检测网络:
[0087]
如图3所示,该网络将基础类的缺陷图像作为输入,经过特征提取后,使用候选框提取网络来获取输入图像中的潜在缺陷区域,并利用预测头重构网络(prn)得到每个基础类对应的类别注意力向量。之后将基础类的特征向量与特征图逐通道相乘,获得新的特征图,而后经过分类和边框回归计算,得到缺陷的类别信息和位置信息,作为整个网络的输出。
[0088]
(2-3)新类缺陷检测网络:
[0089]
如图4所示,该网络以无缺陷图像和新类的缺陷图像作为输入,经过特征提取、候选框提取、预测头重构网络和特征融合之后,获得特征图输出。与基础类缺陷检测网络不同的是,新类缺陷检测网络添加了一个缺陷增强子网络(如图5所示)。这个子网络可以同时利用无缺陷图像和少量的缺陷图像,通过预测头重构网络、特征向量相减操作以及将新类的特征向量与特征图逐通道相乘后,使得图像中缺陷区域的特征得到增强。之后将原来的特征图与经过缺陷增强子网络的特征图进行连接以实现特征融合,最后利用分类和边框回归计算来得到最终的检测结果并输出。
[0090]
(3)利用步骤(1)中处理好的训练集,采用少样本缺陷检测的训练策略进行训练:
[0091]
本发明的少样本缺陷检测模型的训练分为两个阶段,第一个阶段用大量基础类缺陷图像来训练(2-2)中的基础类缺陷检测网络,获得一个预训练模型,第二个阶段用无缺陷图像和少量新类缺陷图像来训练(2-3)中的新类缺陷检测网络,对预训练模型进行微调,提升模型对新类缺陷的检测性能。其中,第一阶段的训练用的是neu钢铁数据集,用其中的5类缺陷(每类300张,共1500张)作为训练集,梯度下降算法为随机梯度下降,批尺寸(batch size)设为8,学习率设为0.008,训练20epoch。直接将缺陷图像作为输入,将对应的xml标注文件作为标签,端到端的训练检测模型,使其自动学习到基础类缺陷的特征。第二阶段的训练基于mt磁瓦数据集,用其中的5类缺陷以及无缺陷图像作为训练集,批尺寸改为4,学习率不变。(其中缺陷图像共387张,无缺陷图像共200张)从训练集中随机选择10张无缺陷图像和每类k张缺陷图像(即k-shot,k=1,5,10)来微调模型,最终得到一个收敛的缺陷检测模型。
[0092]
(4)最后,利用步骤(3)中训练好的检测模型进行测试:
[0093]
无论是基础类缺陷还是新类缺陷,都可以选择直接把缺陷图像输入到模型中,通
过端到端的检测,模型会直接输出缺陷的类别和位置信息。图6展示的是不同的方法使用少样本训练策略之后,在同一个测试集上的部分测试结果。其中,图6的第一行是测试集的原始标注信息,最后一行是本发明的方法在该测试集上的表现。从图中可以看出,本发明的方法相比于别的方法准确率更高,几乎不会出现缺陷的漏检、误检的情况,且缺陷的类别信息和位置信息更加准确。
[0094]
上述实施例利用无缺陷图像来增强缺陷区域特征的少样本缺陷检测方法,对缺陷图像数据集进行处理,将所有类别的缺陷划分为基础类与新类,按照随机选取的原则为新类选定少量样本;构建少样本缺陷检测的深度学习网络,输入的缺陷图像及无缺陷图像经过多层卷积特征提取以及特征融合后,得到输入图像的缺陷区域特征增强的特征图,之后对其进行分类和边框回归计算即可得到缺陷的类别及位置;将处理好的训练数据输入构建的深度学习网络训练,遵循少样本缺陷检测模型的训练策略,网络收敛后可得到一个训练好的少样本缺陷检测模型;利用训练好的模型对测试数据进行实验,基础类的测试实验只需要输入缺陷图像,即可得到该缺陷的类别和位置信息,而新类的测试实验需要同时输入少量缺陷图像和无缺陷图像,得到该缺陷的类别和位置信息。
[0095]
上面对本发明实施例结合附图进行了说明,但本发明不限于上述实施例,还可以根据本发明的发明创造的目的做出多种变化,凡依据本发明技术方案的精神实质和原理下做的改变、修饰、替代、组合或简化,均应为等效的置换方式,只要符合本发明的发明目的,只要不背离本发明的技术原理和发明构思,都属于本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献