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

基于计算机视觉的结构件焊缝检测方法与流程

2021-11-18 00:05:00 来源:中国专利 TAG:


1.本发明涉及计算机视觉技术领域,具体涉及一种基于计算机视觉的结构件焊缝检测方法。


背景技术:

2.除了对焊接技术和焊接工艺的要求以外,焊接质量检测也是焊接结构质量管理的重要一环。焊接质量检测是指对焊接成果的检测,目的是保证焊接结构的完整性、可靠性、安全性和使用性。
3.由于拼装结构件拼装制造的复杂程度和焊接环境等不确定因素,容易产生含有焊瘤、气孔和飞溅等缺陷的焊缝。焊接失效会导致拼装结构件的功能丧失,进而导致设备的瘫痪,引发工程性问题。在评估焊接质量时,对焊缝的检测不可避免。
4.在人工检测无法满足现代化焊接技术的情况下,如何对焊缝进行高效且准确的检测具有重要的实际意义。


技术实现要素:

5.为了解决上述技术问题,本发明的目的在于提供一种基于计算机视觉的结构件焊缝检测方法,所采用的技术方案具体如下:
6.本发明一个实施例提供了一种基于计算机视觉的结构件焊缝检测方法,该方法包括以下步骤:
7.采集拼装完成的结构件图像,利用神经网络识别出所述结构件图像中存在焊缝的目标图像;
8.根据所述目标图像对应的神经网络获取所述目标图像以焊缝区域为敏感区域的类激活图;对所述类激活图的灰度图像进行阈值分割,得到焊缝区域的最小外接矩形;
9.对所述最小外接矩形进行扩增,获取焊缝分割区域,在所述目标图像中裁剪出所述焊缝分割区域作为焊缝参考图,并根据所述最小外接矩形的区域和扩增的区域对所述焊缝参考图进行分区;
10.通过计算所述焊缝参考图中每两个像素点之间的颜色距离、空间距离和类激活差异获取每两个像素点之间的综合差异,依据所述综合差异和所述焊缝参考图分区的数量对所述焊缝参考图进行超像素分割,得到焊缝区域。
11.优选的,所述类激活图的获取方法为:
12.基于梯度的可解释性对所述目标图像对应的神经网络中最后一层卷积层进行再次计算,获取所述类激活图。
13.优选的,所述阈值分割的方法为:
14.将所述类激活图进行灰度转换,得到灰度图像,对所述灰度图像根据灰度值采用最大类间方差法进行自适应的阈值分割。
15.优选的,所述最小外接矩形的获取方法为:
16.通过所述阈值分割得到所述灰度图像的二值图像,对所述二值图像进行连通域提取,并去除噪点连通域,获取去除噪点后的连通域的最小外接矩形作为所述最小外接矩形。
17.优选的,所述焊缝分割区域的获取方法为:
18.将所述最小外接矩形的角点坐标沿短边向两端分别扩增,得到新的角点坐标,以新的角点坐标形成的区域作为所述焊缝分割区域。
19.优选的,所述颜色距离的获取方法为:
20.将所述焊缝参考图转换为lab颜色空间图像,根据所述lab颜色空间图像中每两个像素之间的要素值的差值计算所述颜色距离。
21.优选的,所述类激活差异的获取方法为:
22.根据所述灰度图像中每两个像素之间的类激活灰度值的差值计算所述类激活差异。
23.优选的,所述焊缝区域的获取方法为:
24.以所述焊缝参考图分区的数量作为超像素分割的超像素数量,根据所述综合差异对所述焊缝参考图中的每个像素进行聚类,并不断迭代优化,得到所述焊缝区域。
25.本发明实施例至少具有如下有益效果:
26.通过神经网络对结构件图像进行焊缝识别,并获得存在焊缝的目标图像的类激活图,获取焊缝的最小外接矩形并扩增,得到焊缝参考图,对其进行超像素分割,得到焊缝区域。本发明实施例能够提高超像素分割的准确性,避免了超像素分割分区过多导致焊缝区域检测不全的现象。
附图说明
27.为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
28.图1为本发明一个实施例提供的一种基于计算机视觉的结构件焊缝检测方法的步骤流程图。
具体实施方式
29.为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种基于计算机视觉的结构件焊缝检测方法,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构、或特点可由任何合适形式组合。
30.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
31.下面结合附图具体的说明本发明所提供的一种基于计算机视觉的结构件焊缝检测方法的具体方案。
32.请参阅图1,其示出了本发明一个实施例提供的一种基于计算机视觉的结构件焊
缝检测方法的步骤流程图,该方法包括以下步骤:
33.步骤s001,采集拼装完成的结构件图像,利用神经网络识别出结构件图像中存在焊缝的目标图像。
34.在拼装制造流水线中部署相机,用以拍摄拼装制造后的结构件图像,该结构件图像为rgb图像,即可见光图像。该图像应当将结构件焊缝表面覆盖完全,且采集图像的相机分辨率越大越好。
35.利用神经网络判断所拍摄的结构件是否存在焊缝,神经网络的训练过程为:
36.训练网络需要采集大量包含焊缝和不包含焊缝的结构件图像,以便于网络学到焊缝的特征;先将结构件可见光图像采用归一化进行预处理,即将图片矩阵变为[0,1]之间的浮点数,以便模型更好地收敛;然后将处理后的图像数据与进行one

hot编码的标签数据送到网络中进行训练,以判断是否存在焊缝。标签数据通过人为标注,不存在焊缝用数字0表示,存在焊缝用数字1表示。
[0037]
作为一个示例,本发明实施例中神经网络采用resnet18网络结构的卷积神经网络,网络的结构由编码器、全连接组成。在其他实施例中也可以采用senet等能够实现相同功能的网络结构的卷积神经网络。
[0038]
编码器先对结构件可见光图像进行特征提取,输入为归一化的结构件可见光图像数据,输出为特征图;全连接起到将特征映射到样本标记空间的作用,输入为编码器产生的特征图进行展平(flatten)操作得到的一维向量,分类函数采用softmax函数,最终输出该图像是否存在焊缝的概率。损失函数采用交叉熵损失函数。取概率最大的索引,得出该图像是否包含焊缝。
[0039]
步骤s002,根据目标图像对应的神经网络获取目标图像以焊缝区域为敏感区域的类激活图;对类激活图的灰度图像进行阈值分割,得到焊缝区域的最小外接矩形。
[0040]
具体的步骤包括:
[0041]
1.基于梯度的可解释性对目标图像对应的神经网络中最后一层卷积层进行再次计算,获取类激活图。
[0042]
作为一个示例,本发明实施例采用gradcam 方法,基于梯度的可解释性,输入图像后,在步骤s001中检测焊缝的神经网络中的最后一层卷积层进行再次计算,最终输出类激活热力图。
[0043]
该热力图中,越敏感的地方,即焊缝区域,温度越高,颜色越红;越不敏感的地方,温度越低。
[0044]
2.将类激活图进行灰度转换,得到灰度图像,对灰度图像根据灰度值采用最大类间方差法进行自适应的阈值分割。
[0045]
将类激活热力图进行灰度转换,得到灰度图像,该灰度图像中灰度值越大表示该处越为敏感位置,即焊缝位置。
[0046]
对灰度图像采用最大类间方差法进行阈值化,具体的步骤包括:
[0047]
首先设初始阈值为t0,将图像分为前景区域c1和目标区域c2;分别计算前景区域c1内像素的平均灰度值w1和目标区域c2内像素的平均灰度值w2,前景区域c1占整幅图像的比例u1和目标区域c2占整幅图像的比例u2,以及整幅图像的总平均灰度值w。
[0048]
根据下列公式计算两个区域的类间方差:
[0049]
σ2=u1(w1‑
w)2 u2(w2‑
w)2[0050]
循环上述步骤,直到求得类间方差达到最大值时,得到对应的最佳阈值t。
[0051]
根据获取的最佳阈值t对灰度图像进行分割处理,将图像中灰度值大于t的区域内的所有灰度值置为255,反之置为0,得到类激活二值图像。
[0052]
最大类间方差法(ostu)是一种经典的自适应阈值分割的图像处理方法。它的基本思想是根据图像的灰度直方图将图像分为目标区域和背景区域,计算这两个区域的类间方差,当类间方差取得最大值时,则两个区域的差别达到最大,从而确定此时的阈值为最佳,用其进行图像分割。ostu能够自动获得最佳的分割阈值,算法稳定,操作简单,不受图像亮度和对比度的影响。
[0053]
3.通过阈值分割得到灰度图像的二值图像,对二值图像进行连通域提取,并去除噪点连通域,获取去除噪点后的连通域的最小外接矩形作为最小外接矩形。
[0054]
对类激活二值图像进行连通域提取,得到图像中的每个连通域,同时将连通域的面积小于面积阈值的噪点连通域过滤,以去除很小的连通域。其中连通区域的邻接方式为4邻接或者8邻接。
[0055]
作为一个示例,本发明实施例中通过基于行程的标记提取连通域,在其他实施例中还可以采用基于轮廓的标记方法等其他能够达到相同效果的提取连通域的方法。
[0056]
作为一个示例,本发明实施例中面积阈值的取值为50。
[0057]
本发明实施例以去除噪点后的连通域只有一个的情况为例,即代表图像中只有一条焊缝,当剩余的连通域为多个时,说明存在多条焊缝,此时获取每个连通域的最小外接矩形,并分别进行后续步骤得到每条焊缝的焊缝区域。
[0058]
作为一个示例,本发明实施例通过opencv获取最小外接矩形。
[0059]
步骤s003,对最小外接矩形进行扩增,获取焊缝分割区域,在目标图像中裁剪出焊缝分割区域作为焊缝参考图,并根据最小外接矩形的区域和扩增的区域对焊缝参考图进行分区。
[0060]
具体的步骤包括:
[0061]
1.将最小外接矩形的角点坐标沿短边向两端分别扩增,得到新的角点坐标,以新的角点坐标形成的区域作为焊缝分割区域。
[0062]
假设一个最小外接矩形区域的质心坐标为(100,100),该矩形宽为50,高为100,则其角点坐标为:左下角(75,50),右下角(125,50),左上角(75,150),右上角(125,150)。
[0063]
将原有最小外接矩形区域进行沿短边方向扩大2倍,即分别向短边两侧扩大短边的长度,扩增后,得到新的角点坐标为:左下角(25,50),右下角(175,50),左上角(25,150),右上角(175,150)。以新的角点坐标形成的区域作为焊缝分割区域。
[0064]
2.在目标图像中裁剪出焊缝分割区域作为焊缝参考图,其中,最小外接矩形所在区域为初步焊缝区域,两侧扩增的区域分别为第一缓冲区域和第二缓冲区域,完成对焊缝参考图的分区。
[0065]
步骤s004,通过计算焊缝参考图中每两个像素点之间的颜色距离、空间距离和类激活差异获取每两个像素点之间的综合差异,依据综合差异和焊缝参考图分区的数量对焊缝参考图进行超像素分割,得到焊缝区域。
[0066]
具体的步骤包括:
[0067]
1.将焊缝参考图转换为lab颜色空间图像,根据lab颜色空间图像中每两个像素之间的要素值的差值计算颜色距离。
[0068]
将结构件可见光图像从rgb空间转换为lab空间,lab颜色空间表现的颜色更全面,计算颜色距离
a

[0069][0070]
其中,l
j
表示lab颜色空间图像中第个像素的l值,l
i
表示lab颜色空间图像中第个像素的l值;a
j
表示lab颜色空间图像中第个像素的a值,a
i
表示lab颜色空间图像中第个像素的值;b
j
表示lab颜色空间图像中第个像素的b值,b
i
表示lab颜色空间图像中第个像素的b值。
[0071]
2.计算焊缝参考图中每两个像素点之间的空间距离d
b

[0072][0073]
其中,(x
j
,y
j
)表示第个像素的坐标,(x
i
,y
i
)表示第个像素的坐标。
[0074]
3.根据灰度图像中每两个像素之间的类激活灰度值的差值计算类激活差异d
c

[0075][0076]
其中,gcatl表示类激活的灰度图像,gcatl
j
表示灰度图像中第个像素的类激活灰度值,gcatl
i
表示灰度图像中第个像素的类激活灰度值。
[0077]
4.获取每两个像素点之间的综合差异d:
[0078][0079]
其中,通过参数a、b、c来协调三种距离的比例分配。
[0080]
作为一个示例,本发明实施例中a的取值为4,b的取值为3,c的取值为5。
[0081]
综合差异考虑到lab空间的颜色差异,空间坐标的邻近性及类激活灰度值的大小,综合考虑三方面因素,来评估像素间的相似度。d的值越小,表示两个像素的相似度越大。
[0082]
5.以焊缝参考图分区的数量作为超像素分割的超像素数量,根据综合差异对焊缝参考图中的每个像素进行聚类,并不断迭代优化,得到焊缝区域。
[0083]
根据步骤s003可知将焊缝参考图分为了3个区域,因此,超像素数量为3,超像素分割的步骤包括:
[0084]
(1)初始化种子点,即聚类中心:在每个区域随机分配一个种子点。
[0085]
(2)在种子点的n*n邻域内重新选择种子点。
[0086]
计算该邻域内所有像素点的梯度值,将种子点移到该邻域内梯度最小的地方。避免种子点落在梯度较大的轮廓边界上,以免影响后续聚类效果。
[0087]
作为一个示例,本发明实施例中n的取值为5。
[0088]
(3)在每个种子点周围的邻域内通过判断每个像素点归属于哪个聚类中心为其分配类标签。
[0089]
具体的,基于距离模型d来获取种子点与像素点的相似度,由于每个像素点都会被
多个种子点搜索到,所以每个像素点都会有一个与周围种子点的距离,取最小值对应的种子点作为该像素点的聚类中心。
[0090]
超像素分割的搜索范围限制为三个区域的并集,加速算法收敛。
[0091]
(4)通过不断重复上述步骤(1)

(3),对聚类结果进行迭代优化直到误差收敛,即每个像素点聚类中心不再发生变化为止,划分出结构件中比较相似的区域,最终得到3个区域,对于每一个区域内的像素点都是像素点距离d比较接近的。
[0092]
需要说明的是,迭代次数需要进行调试,本发明实施例中迭代次数经验值为50次。
[0093]
经过超像素分割后,初步焊缝区域所在的区域即为焊缝区域。
[0094]
超像素通常定义为位置相邻且颜色、亮度、纹理等特征相似的形状不规则,又有一定视觉意义的像素块。使用超像素分割能够利用较少数量的像素块替换大量像素来表达图像特征,极大地减少后续图像处理的计算成本。同时,能够为输入图像提供一种更自然的、具有感知意义的表示,为后续算法处理提供了一种模拟动物视觉处理的可能。
[0095]
综上所述,本发明实施例采集拼装完成的结构件图像,利用神经网络识别出结构件图像中存在焊缝的目标图像;根据目标图像对应的神经网络获取目标图像以焊缝为敏感区域的类激活图;对类激活图的灰度图像进行阈值分割,得到焊缝的最小外接矩形;对最小外接矩形进行扩增,获取焊缝分割区域,并在目标图像中裁剪出焊缝分割区域作为焊缝参考图,并根据最小外接矩形的区域和扩增的区域对焊缝参考图进行分区;通过计算焊缝参考图中每两个像素点之间的颜色距离、空间距离和类激活差异获取每两个像素点之间的综合差异,依据综合差异和焊缝参考图分区的数量对焊缝参考图进行超像素分割,得到焊缝区域。本发明实施例能够提高超像素分割的准确性,避免了过多的超像素分割分区导致检测不全的现象,并减少了多余的计算。
[0096]
需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0097]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
[0098]
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

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

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

相关文献