基于计算机视觉的车轮焊缝表面缺陷检测方法

文档序号:9315 发布日期:2021-09-17 浏览:106次 英文

基于计算机视觉的车轮焊缝表面缺陷检测方法

技术领域

本发明涉及车轮焊缝检测

技术领域

,具体涉及基于计算机视觉的车轮焊缝表面缺陷检测方法。

背景技术

目前基于计算机视觉对焊缝缺陷的检测,往往针对的是焊缝表面的缝隙、气孔、夹渣等缺陷,例如银色焊缝上存在黑色的圆孔或裂缝,这种缺陷对应的图像空域特征比较明显且明确,容易检测。

而对于咬边缺陷,其所处背景母料的颜色多变,很难给出合适的分割阈值界限来提取咬边缺陷;且咬合缺陷也没有对应的比较明确的特征,不容易检测。

发明内容

为了实现对咬合缺陷的准确检测,本发明提供了一种基于计算机视觉的车轮焊缝表面缺陷检测方法的技术方案,包括以下步骤:

获取车轮焊缝图像,对车轮焊缝图像进行语义分割处理,识别出车轮焊缝图像中的焊缝连通域;

根据所述焊缝连通域,得到粗糙焊缝边缘,对粗糙焊缝边缘进行边缘细化处理,得到精细焊缝边缘;

根据精细焊缝边缘至延伸边缘之间各像素的灰度值,计算精细焊缝边缘至延伸边缘之间各像素对应的凹坑率;

根据所述凹坑率计算焊缝连通域中线上各像素点对应的咬边率;

根据所述咬边率对焊缝上的咬边缺陷区域进行标记。

上述检测方法的有益效果是:本发明基于车轮焊缝图像得到了精细焊缝边缘,根据精细焊缝边缘至延伸边缘之间各像素对应的凹坑率计算了焊缝连通域中线上各像素点对应的咬边率,实现了对焊缝上的咬边缺陷区域的准确识别。本发明提供了一种车轮焊缝表面缺陷自动检测方法,解决了现有方法无法准确检测焊缝咬边缺陷的问题。

进一步地,所述对粗糙焊缝边缘进行边缘细化处理,得到精细焊缝边缘的方法包括:

将粗糙焊缝边缘对应的各边缘像素点沿着垂直于焊缝连通域中线的方向向左延伸设定个数的像素点,得到粗糙焊缝边缘对应的各边缘像素点对应的左侧延伸像素点;

将粗糙焊缝边缘对应的各边缘像素点沿着垂直于焊缝连通域中线的方向向右延伸设定个数的像素点,得到粗糙焊缝边缘对应的各边缘像素点对应的右侧延伸像素点;

将垂直于焊缝连通域中线的方向作为判断方向,构建以焊缝连通域中线上像素点为起点且以延伸像素点为终点的像素点灰度值序列;

构建像素点灰度值序列对应的像素点灰度变化曲线,根据所述像素点灰度变化曲线对粗糙焊缝边缘对应的各边缘像素点进行修正,得到精细焊缝边缘。

进一步地,所述计算精细焊缝边缘至延伸边缘之间各像素对应的凹坑率的方法包括:

将垂直连通域中线的方向作为判断方向,以边缘像素点外侧的第一个像素点为起点且以延伸像素点为终点构建灰度序列;

根据灰度序列中各像素点的灰度值计算各像素对应的凹坑率,所述凹坑率与所述灰度值成负相关关系。

进一步地,根据所述凹坑率计算焊缝连通域中线上各像素点对应的咬边率的方法包括:

根据精细焊缝边缘至延伸边缘之间各像素对应的凹坑率,计算焊缝连通域中线上各像素点对应的间断咬边率和连续咬边率;

判断所述间断咬边率和连续咬边率的大小,将间断咬边率和连续咬边率中的较大值作为焊缝连通域中线上各像素点对应的咬边率。

进一步地,计算焊缝连通域中线上各像素点对应的间断咬边率的方法包括:

统计焊缝连通域中线上各像素点对应的灰度序列中凹坑率最大的像素点,计算所述凹坑率最大的像素点与对应的焊缝连通域中线上像素点的距离;

对焊缝连通域中线上各像素点依次进行编号,以编号为横轴,以所述距离为纵轴,建立中线-距离曲线;

识别中线-距离曲线上的波峰、波谷点,对中线-距离曲线进行单峰区域划分,每个单峰区域对应一个波谷-波峰-波谷区域;

对每个单峰区域进行高斯拟合,得到拟合曲线,根据拟合曲线计算焊缝连通域中线上各像素点对应的间断咬边率。

进一步地,计算焊缝连通域中线上各像素点对应的连续咬边率的方法包括:

统计焊缝连通域中线上各像素点对应的灰度序列中凹坑率最大的像素点,得到所述凹坑率最大的像素点在对应灰度序列中的序列编号;

对焊缝连通域中线上各像素点依次进行编号,以焊缝连通域中线上各像素点对应的编号为横轴,以所述序列编号为纵轴,建立边缘-距离曲线;

计算边缘-距离曲线上各像素点与左右两侧其它像素点的距离差的平均值,根据所述距离差的平均值计算焊缝连通域中线上各像素点对应的连续咬边率。

附图说明

图1是本发明的焊缝咬边缺陷示意图;

图2是本发明的基于计算机视觉的车轮焊缝表面缺陷检测方法流程图;

图3是本发明的粗糙焊缝延伸示意图;

图4是本发明的粗糙焊缝无需调整示意图;

图5是本发明的粗糙焊缝需要调整示意图;

图6是本发明的灰度曲线示意图;

图7是本发明的边缘-距离曲线示意图;

图8是本发明的焊缝咬合区域标注示意图;

附图标记说明:1为焊缝咬边,2为连通域中线,3为连通域左侧边缘,4为连通域右侧边缘,5为边缘带A延伸边缘,6为边缘带B延伸边缘。

具体实施方式

为使本发明实施例的目的、技术方案和优点更清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行介绍。

基于计算机视觉的车轮焊缝表面缺陷检测方法实施例:

焊缝咬边1,即是在焊接过程中由于参数不对或操作不当对母材部位产生的沟槽或凹陷,如图1所示。咬边缺陷将减少母材的有效截面积,在咬边处可能引起应力集中的问题,特别是对于低合金高强钢的焊接,咬边的边缘组织被淬硬,容易引起裂纹。

为了实现对咬合缺陷的准确检测,如图2所示,本实施例的基于计算机视觉的车轮焊缝表面缺陷检测方法包括以下步骤:

(1)获取车轮焊缝图像,对车轮焊缝图像进行语义分割处理,识别出车轮焊缝图像中的焊缝连通域;

本实施例通过相机采集车轮焊缝图像,对于获取的车轮焊缝图像,本实施例的处理过程如下:

对车轮焊缝图像进行透视畸变校正处理,以消除在拍摄焊缝图像时弧形车轮的透视畸变影响,该透视畸变校正过程为现有技术,此处不再对透视畸变校正过程进行赘述。

对于进行了透视畸变校正处理后的车轮焊缝图像,由于相机拍摄视角问题,图像中除了包括焊缝之外,还包括背景部分。为了避免其他噪声对焊缝表面缺陷检测的影响,本实施例先采用DNN网络来识别图像中的焊缝区域,具体过程为:将车轮焊缝图像输入到训练好的DNN网络中,利用训练好的DNN网络对车轮焊缝图像进行推理,得到车轮焊缝图像中的焊缝连通域。

本实施例中DNN网络采用语义分割的方式来识别图像中的焊缝, DNN网络的任务是进行分类,本实施例DNN网络需要分割的像素共分为两类,对训练集对应标签标注过程为:采用单通道的语义标签,对应位置像素属于背景类的标注为0,属于焊缝类的标注为1。本实施例使用的loss函数为交叉熵损失函数。

(2)根据所述焊缝连通域,得到粗糙焊缝边缘,对粗糙焊缝边缘进行边缘细化处理,得到精细焊缝边缘;

虽然本实施例已经获得了焊缝连通域区域,可以直接得到焊缝边缘,但是咬边缺陷是存在于焊缝边缘旁的,本实施例后续的计算都是依赖焊缝外侧的像素点,所以有必要保证焊缝边缘的准确性。然而,上述对焊缝的语义分割是通过DNN来实现的,但是DNN是具有不确定性的,即其精度、准确率有限,难以完成精度较高的边缘提取,因此,上述利用DNN网络得到的焊缝区域边缘只是粗糙的焊缝边缘,为了得到更精细的焊缝边缘,本实施例还对上述语义分割得到的粗糙边缘进行了细化处理,具体细化过程如下:

根据上述焊缝连通域得到焊缝的边缘带,记为粗糙边缘带,将粗糙边缘带中各边缘像素点沿着垂直于焊缝连通域中线2的方向向左延伸K/2个像素点,得到粗糙边缘带中各边缘像素点对应的左侧延伸像素点,如图3所示,K为粗糙边缘带中各边缘像素点对应位置处的焊缝连通域的宽度,将焊缝连通域中线到左侧延伸像素点之间的范围记为边缘带A的范围,由此,可得到连通域左侧边缘3延伸后对应的边缘带A延伸边缘5;将粗糙边缘带中各边缘像素点沿着垂直于焊缝连通域中线的方向向右延伸K/2个像素点,得到粗糙边缘带中各边缘像素点对应的右侧延伸像素点,将焊缝连通域中线到右侧延伸像素点之间的范围记为边缘带B的范围,由此,可得到连通域右侧边缘4延伸后对应的边缘带B延伸边缘6。

根据边缘带A和边缘带B沿垂直于焊缝连通域中线的方向的灰度变化对粗糙边缘带进行修正,具体过程为:

将垂直连通域中线的方向作为判断方向,即图3中的虚线箭头方向,获得以该中线上像素点为起点,以延伸像素点为终点的像素点灰度值序列G。

其中,为中线上像素点的灰度值,为粗糙边缘上像素点的灰度值,为延伸像素点的灰度值。

绘制像素点灰度变化曲线,以像素点角标序号为横轴,以该像素点和下一相邻像素点灰度值的差值为纵轴,绘制散点后拟合曲线,得到曲线上的各极大值点,极大值点对应的像素点为焊缝的精细边缘像素点。

若K/2处为极大值点,如图4所示,说明利用DNN网络得到的边缘不存在偏差,无需对粗糙边缘上的像素点进行调整,即新边缘点

若K/2处非极大值点,如图5所示,说明利用DNN网络得到的边缘存在偏差,需要对粗糙边缘上的像素点进行调整,需要更新距离K/2最近的极大值点为新边缘点

通过上述过程,可以得到所有的新边缘点,将所有的新边缘点进行拟合连接,就可以得到精细的焊缝边缘。本实施例利用DNN网络先得到粗糙焊缝边缘,又对粗糙焊缝边缘进行精细化处理,相对于直接利用灰度差异识别焊缝边缘的方法,在保证识别精度的前提下提高了识别速度。

本实施例向外延伸了K/2个像素,作为其它实施方式,也可以延伸其它个数的像素。

(3)根据精细焊缝边缘至延伸边缘之间各像素的灰度值,计算精细焊缝边缘至延伸边缘之间各像素对应的凹坑率;

咬边缺陷空间上表示为焊缝边的凹坑,但二维图像上咬边缺陷是平面上的凹坑,会带有光影的变化,因此咬边缺陷在二维图像上表现为有灰度变化的区域。

本实施例计算焊缝边缘至延伸边缘之间各像素对应的凹坑率的过程为:

将垂直连通域中线的方向作为判断方向,以边缘像素点外侧的第一个像素点为起点,以延伸像素点为终点构建灰度序列FG:

其中,为新的边缘点外侧的第一个像素点的灰度值,F为延伸边缘像素点的灰度值,为延伸边缘像素点的灰度值。上述公式中将进一步转换为的目的是将下标从1开始重新编号。

对灰度序列FG进行散点绘制,以转换后的序列号为横轴,灰度值FG为纵轴,并拟合曲线,得到灰度曲线如图6所示,图中实线和虚线所示为两种不同灰度序列对应的灰度变化情况。

灰度序列中相邻像素点的灰度值的突变程度越大,越趋近于黑色,越可能为凹坑点;灰度图中越偏向于白色,其灰度值越趋于255;越偏于黑色,其灰度值越趋于0。所以,灰度曲线中的点值越低,且与其它类别像素点差异越大,其凹坑率越大。本实施例根据以下公式计算焊缝边缘至延伸边缘之间的各像素对应的凹坑率,凹坑率也即凹坑存在的概率:

其中,表示第i个像素点的凹坑率,表示第i个像素点的灰度值,分别表示当前灰度序列中最大灰度值和最小灰度值,QT为与其它类别的其他像素点的平均灰度值。表示第i个像素点的灰度值越低,凹坑率越大;表示第i个像素点与其它类像素点差异越大,凹坑率越大。

本实施例QT的确定过程为:首先利用Kmeans均值算法对序列中的灰度值进行聚类,设定聚类的类型数量k为2,即无论序列中像素为何种取值,都可以被强制分为两个类别;求得每个类别对应像素的平均灰度值。当像素被强制分为两类时,若两类对应的灰度值差异大,则判定两类分别对应为凹坑和非凹坑,此时也表明当前序列中存在凹坑;若两类对应的灰度值差异不大,则说明两类均是整体偏黑或偏白,而不是二者兼有,那么当前序列中存在凹坑的可能性就很小。当为A类时,QT取,当为B类时,QT取

至此,可得到焊缝边缘至延伸边缘之间的各像素对应的凹坑率

(4)根据所述凹坑率计算焊缝连通域中线上各像素点对应的咬边率;

咬边缺陷可分为间断咬边和连续咬边,其外在表现并不相同:间断咬边是短暂性的烧熔母料,所以外在形式表现为带有弧边的凹坑;而连续咬边缺陷,其咬边的凹坑边缘是近似于平行焊缝边缘的。为了准确的判断咬边缺陷,本实施例针对两种情况分别进行计算,而后综合得到咬边缺陷的可能性概率,也即咬边缺陷率。

本实施例计算焊缝连通域中线上各像素点对应的间断咬边率的过程如下:

每个垂直于焊缝中线方向的灰度序列中都存在一个凹坑率最大的像素点,获得各判断方向上凹坑率最大的像素点到所对应中线像素点的像素距离D。

对焊缝中线的各像素进行编号,从上到下,从左到右,依次编号,以其编号为横轴,以其对应的距离D为纵轴,得到中线-距离曲线。先识别出曲线上的波峰、波谷点,对曲线进行单峰区域划分,得到S个单峰区域;每个单峰区域对应一个波谷-波峰-波谷。

对每个单峰区域进行高斯拟合,得到拟合曲线,进而计算焊缝连通域中线上各像素点对应的间断咬边率yu:

其中,s是中线上第j个像素对应的单峰区域的序号,表示第s个单峰区域高斯拟合后曲线对应的单峰幅值,表示第s个单峰区域对应的高斯拟合前后曲线的平均差异,其中为中线上第j个像素点对应的高斯拟合前的值,为中线上第j个像素点对应的高斯拟合后的值,为中心线上第j个像素对应的高斯拟合前后的差异值,为中线上第j个像素点对应的间断咬边率。

本实施例计算焊缝连通域中线上各像素点对应的连续咬边率的过程如下:

首先依次获得灰度序列上凹坑率最大的点所在的序列号,获取灰度序列FG上凹坑率最大点对应的序列编号值。同样的,对焊缝中线的各像素进行编号,从上到下,从左到右,依次编号,以其编号为横轴,以对应的灰度序列FG上凹坑率最大点对应的序列编号值为纵轴,可得到边缘-距离曲线。该曲线即是表示各判断方向上最大凹坑率像素点到对应边缘的距离R。

以焊缝宽为基数得到对应的判断窗口尺寸,以此判断长度进行各位置的水平程度判断。其中a为调整系数,可根据实际需要进行调节,本实施例中a=0.5。

其中,表示第i个像素和第j个像素对应的距离差异,表示第j个像素左右两侧共K*a个像素与第j个像素的距离差的平均值,越大,说明第j个像素与其左右的像素越不是在一个平行线上的,如图7所示:

设定判定阈值ks,当值小于ks时,则该第i个像素点处对应的曲线近似水平。根据ks可得到对应的连续咬边率,该连续咬边率的范围为[0,1]:

在得到了间断咬边缺陷率和连续咬边缺陷率之后,根据间断咬边缺陷率和连续咬边缺陷率得到中线上第j个像素点的咬边缺陷率,即:

本实施例分别判断了中线上第j个像素点对应的间断咬边缺陷率和连续咬边缺陷率,当中线上第j个像素点对应的边缘上存在间断咬边缺陷时,计算得到的间断咬边缺陷率会较大;当中线上第j个像素点对应的边缘上存在连续咬边缺陷时,计算得到的连续咬边缺陷率会较大,因此本实施例将间断咬边缺陷率和连续咬边缺陷率中的较大值作为中线上第j个像素点的咬边缺陷率。由此,可以得到中线上各像素点对应的咬边缺陷率。

(5)根据所述咬边率对焊缝上的咬边缺陷区域进行标记。

若是中线上各像素点对应的咬边缺陷率大于设定的检测精度,则认为该处为咬边缺陷,需进行缺陷的标注,以便于后续人工的检测。本实施例中,作为其它实施方式,也可以根据需要进行修改。

以焊缝中线为横轴,以咬边缺陷判断结果为纵轴,若为咬边则标记为1,若不是咬边,则标记为0,得到对应的序列,形式如下:

[000111110000000000000000000000110000000111111000]

若出现连续2个以上的1,则认为出现了咬边缺陷,将对应的区域判定为咬边区域。

根据咬边区域下的中心像素点个数确定确定包围框的尺寸C,其对应的距离最大的凹坑点确定尺寸H,得到包围框的尺寸(C,H),进而得缺陷框,实现缺陷的标注,如图8所示,以便后续人工进行检验。

本实施例基于车轮焊缝图像得到了精细焊缝边缘,根据精细焊缝边缘至延伸边缘之间各像素对应的凹坑率计算了焊缝连通域中线上各像素点对应的咬边率,实现了对焊缝上的咬边缺陷区域的准确识别。本实施例提供了一种车轮焊缝表面缺陷自动检测方法,解决了现有方法无法准确检测焊缝咬边缺陷的问题。

需要说明的是,尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

完整详细技术资料下载
上一篇:石墨接头机器人自动装卡簧、装栓机
下一篇:高空钢结构腐蚀的无人机视觉检测与评价方法及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!