本发明涉及图像处理领域,具体涉及一种缺陷样本图像生成方法。
背景技术:
1、在工业现场中出现瑕疵等缺陷概率较低,经过相机采集到的缺陷图像数量少,在进行缺陷识别与分析时,由于缺陷样本数量太少,难以较好的识别和分析缺陷,例如,利用深度学习模型进行缺陷检测时,需要获取大量的缺陷样本图像形成训练数据,才能训练出准确率高的缺陷识别模型。为此,为了获取足够数量的缺陷样本图像,需要通过图像生成方法,人为生成含有缺陷的样本图像,同时,为了提升缺陷样本图像的有效性,人为生成的缺陷样本图像需要与真实的、可能出现的缺陷相关度和相似性较高。
2、目前,常用的缺陷样本图像生成方式包括:数据增强和生成对抗模型(gan),其中,数据增强会增加图像样本噪声、导致数据真实分布偏离;而gan训练难度高、容易忽视图像样本多样性、导致生成图像样本质量较低。专利文献cn202110978527.1提供了一种含缺陷的训练图像生成方法及装置,获取缺陷图像的掩膜图像,根据掩膜图像在无缺陷的图像中选取缺陷图像的可注入区域,然后在选定的区域内融合缺陷图像,从而生成含有缺陷的训练图像,但是生成的缺陷与原本缺陷有较高的相似性,并且缺陷位置有局限,不利于样本多样性。专利文献cn202311628239.9提出一种图像生成方法、模型训练方法、装置及存储介质,通过少量的真实缺陷图像和标注缺陷图像生成大量转换后的缺陷图像,用以缓解缺陷检测中缺陷数据不足和缺陷种类难以覆盖全部缺陷场景的问题,但是此种方式消耗资源量大,成本高,难以实际应用。
3、由此可见,生成高质量的缺陷样本图像数据难度高、准确率低,亟需一种高效且准确率高的缺陷图像生成方法。
技术实现思路
1、为了解决上述技术问题,本发明提供一种缺陷样本图像生成方法;本方法旨在提升生成缺陷样本图像的准确性、多样性,生成缺陷样本图像中,缺陷的位置、严重程度可以任意设计;解决了生成缺陷样本图像形式单一,重复性高的问题。
2、技术方案如下:
3、一种缺陷样本图像生成方法,利用训练好深度学习模型生成缺陷样本图像,所述深度学习模型包括神经网络a、神经网络b、神经网络c、神经网络d和神经网络e;
4、神经网络a、神经网络c和神经网络d输出层的维度相同;
5、神经网络b和神经网络c输出层的通道数相同;
6、神经网络b和神经网络e输出层的维度相同;
7、其中,所述深度学习模型的训练步骤如下:
8、1)收集同一检测场景中的多张待测物图像,其中包括各类缺陷图像以及正常图像;
9、将不同缺陷类别的缺陷图像分别存储、形成n个缺陷图像集合;n表示缺陷类别的数量;
10、为每张缺陷图像分别标注标签,所述标签包括缺陷的位置坐标、尺寸信息、类型以及严重等级;
11、对于每个标签,在类型一致的缺陷图像集合中,查找与标签中严重等级一致和/或近似的缺陷图像,标记为关联图像;
12、将单张正常图像、单个标签以及与该标签对应的关联图像记为一组训练样本;将不同的标签、不同正常图像随机组合,形成多组训练样本;
13、2)将一组训练样本输入到深度学习模型中,进行以下处理:
14、①所述正常图像输入到神经网络a,所述神经网络a用于提取正常图像特征,输出正常图像对应的特征矩阵fa;
15、所述标签输入到神经网络b,所述神经网络b用于提取标签特征,输出标签对应的特征矩阵fb;
16、所述缺陷图像输入到神经网络c,所述神经网络c用于提取缺陷图像特征,输出缺陷图像对应的特征矩阵fc;
17、将特征矩阵fb作用于的特征矩阵fc,得到特征矩阵fc';
18、将所述特征矩阵fc'与特征矩阵fa横向拼接并将横向拼接后的矩阵输入到神经网络d中,所述神经网络d用于提取矩阵的特征,输出特征矩阵fd;
19、所述特征矩阵fd再经过最大池化层获取的权重矩阵,所述权重矩阵与特征矩阵fb大小一致;将该权重矩阵作用到特征矩阵fd,得到特征矩阵fd';
20、将特征矩阵fd'中各元素的值记为像素点的灰度值,生成缺陷样本图像;
21、②将特征矩阵fd输入到神经网络e中,所述神经网络e用于提取特征矩阵fd的特征、进行识别,输出与标签的维度相同的缺陷信息矩阵;
22、利用生成的缺陷样本图像和正常图像之间的相似度、缺陷信息矩阵与标签之间的相似度计算loss值;
23、3)判断loss值是否达到稳定:
24、若否,则切换下一组训练样本,继续进行步骤2),迭代模型参数;
25、若是,则所述深度学习模型训练完成,保存模型参数。
26、进一步,利用训练好的深度学习模型生成缺陷样本图像的方式为:
27、设置标签i,其包括:待生成的缺陷的位置坐标、尺寸信息、类型以及严重程度;
28、在与标签i中缺陷类型一致的缺陷图像集合中,查找与标签中严重等级一致和/或近似的一幅或者多幅缺陷图像;
29、将任一张正常图像、标签i以及查找到的一幅或者多幅缺陷图像,输入到训练好的深度学习模型中,进行步骤①的处理过程,生成缺陷样本图像;
30、生成的缺陷样本图像符合标签i中设置的信息。
31、优选,标签i中,缺陷的严重等级可设置的范围为:n类缺陷分别对应的缺陷等级中的最小等级~最大等级。
32、优选,步骤1)中,缺陷的严重等级,评估方式如下:
33、对每个缺陷图像集合分别进行以下处理,得到n类缺陷分别对应的缺陷等级:
34、①计算当前缺陷图像集合单张缺陷图像中缺陷区域的灰度均值g';
35、在m张正常图像中分别查找与该缺陷区域相对于的图像区域并计算查找到的图像区域的灰度均值gi,i=1,2……m;取m个gi的中位数或者均值记为g'';
36、计算g''与g'之间的差值;
37、②对缺陷图像集合中的每张缺陷图像均进行步骤①,得到多个差值;
38、③根据差值的大小设置缺陷的严重等级。
39、进一步,步骤③中,根据差值的大小设置缺陷的严重等级,方式包括以下两种:
40、方式一:将多个差值从小到大进行排序,每s个差值划分一个等级;
41、方式二:将多个差值进行k近邻聚类,获得k个聚类结果,并依据聚类结果划分k个严重等级。
42、优选,当神经网络c中输入的缺陷图像有多张时,预先为每张缺陷图像设定权重值;
43、每张缺陷图像均对应一个特征矩阵,将多个特征矩阵中的对应元素加权相加,得到特征矩阵fc。
44、优选,权重的设计方式:
45、与标签中的严重等级一致的缺陷图像的权重大于与标签中的严重等级近似的缺陷图像的权重。
46、优选,神经网络a、神经网络b、神经网络c、神经网络d和神经网络e所选用的网络模型不完全相同。
47、优选,神经网络a选用卷积层大于13层的卷积神经网络;
48、神经网络b选用卷积层大于3层的卷积神经网络;
49、神经网络c选用卷积层大于13层的卷积神经网络;
50、神经网络d选用卷积层大于5层的卷积神经网络;
51、神经网络e选用卷积层大于13层的卷积神经网络。
52、本方法具有以下特点:
53、本方法通过多个网络分别识别正常图像、标签矩阵、缺陷图像对应的特征矩形,再通过矩形融合重塑特征,解析生成符合标签信息的缺陷样本图像,生成的图像中缺陷区域融合进背景区域中,边缘处无断层,更接近真实缺陷特征;能够有效提升生成缺陷样本图像的准确性,并且,本方法生成缺陷样本图像中,缺陷的位置、严重程度可以任意设计;解决了生成缺陷样本图像形式单一,重复性高的问题。