一种X射线焊缝边界识别方法、装置、设备及存储介质转让专利

申请号 : CN202211150267.X

文献号 : CN115511819B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 宋燕利章诚李玮灏张舒磊

申请人 : 武汉理工大学

摘要 :

本发明涉及一种X射线焊缝边界识别方法、装置、设备及存储介质,该方法包括:将X射线检测图片进行灰度化处理得到灰度值,并将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片;根据所述灰度值确定行平均灰度值,根据所述行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界;根据所述焊缝初始边界对预处理后的X射线检测图片进行裁剪得到初始焊缝图片;获取所述初始焊缝图片的列灰度值,根据所述列灰度值确定列灰度值曲线,根据所述列灰度值曲线确定焊缝识别边界。本发明提供的一种X射线焊缝边界识别方法、装置、设备及存储介质,可以识别任意焊缝且识别精度高。

权利要求 :

1.一种X射线焊缝边界识别方法,其特征在于,包括:将X射线检测图片进行灰度化处理得到灰度值,并将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片;

根据所述灰度值确定行平均灰度值,根据所述行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界;

根据所述焊缝初始边界对预处理后的X射线检测图片进行裁剪得到初始焊缝图片;

获取所述初始焊缝图片的列灰度值,根据所述列灰度值确定列灰度值曲线,根据所述列灰度值曲线确定焊缝识别边界;

其中,所述根据所述灰度值确定行平均灰度值,包括:根据所述预处理后的X射线检测图片的像素点建立第一像素矩阵;

逐行计算所述第一像素矩阵的行平均灰度值得到所述第一像素矩阵的行平均灰度值数组;

其中,所述根据所述行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界,包括:根据所述行平均灰度值数组确定最大行平均灰度值所在的行数;

从最大行平均灰度值所在的行数向上遍历所述行平均灰度值数组,直至所述行平均灰度值低于第一预设阈值时,确定焊缝初始上边界;

从最大行平均灰度值所在的行数向下遍历所述行平均灰度值数组,直至所述行平均灰度值低于第一预设阈值时,确定焊缝初始下边界;

其中,所述获取所述初始焊缝图片的列灰度值,根据所述列灰度值确定列灰度值曲线,包括:扫描所述初始焊缝图片得到第二像素矩阵;

根据所述第二像素矩阵确定每一列离散灰度值;

将所述每一列离散灰度值进行拟合处理得到每一列灰度值拟合曲线;

对所述每一列灰度值拟合曲线求导得到每一列灰度值梯度曲线,对所述每一列灰度值梯度曲线求导得到每一列灰度值梯度变化曲线;

其中,所述根据所述列灰度值曲线确定焊缝识别边界,包括:根据所述列灰度值梯度曲线确定列灰度值拟合曲线的所有极大值点,记为极大值第一数组;

剔除所述极大值第一数组中小于第二预设阈值的极大值点得到极大值第二数组;

根据所述极大值第二数组、所述列灰度值梯度曲线以及所述列灰度值梯度变化曲线确定起始区间和终止区间;

确定所述列灰度值梯度变化曲线在所述起始区间和所述终止区间的最大值点;

重复上述步骤直至确定所有所述列灰度值梯度变化曲线在所述起始区间和所述终止区间的最大值点;所有所述最大值点构成所述焊缝识别边界。

2.根据权利要求1所述的X射线焊缝边界识别方法,其特征在于,所述将X射线检测图片进行灰度化处理得到灰度值,包括:获取所述X射线检测图片中所有像素点的R、G、B三种颜色通道值;

根据加权平均算法和所述R、G、B三种颜色通道值计算每个像素点的灰度值。

3.根据权利要求2所述的X射线焊缝边界识别方法,其特征在于,所述将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片,包括:通过预设去噪方法将所述灰度化处理后的X射线检测图片进行去噪处理得到去噪后的X射线检测图片;

根据预设增强方法将所述去噪后的X射线检测图片进行增强处理得到增强后的X射线检测图片。

4.一种X射线焊缝边界识别装置,其特征在于,包括:预处理模块,用于将X射线检测图片进行灰度化处理得到灰度值,并将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片;

第一识别模块,用于根据所述灰度值确定行平均灰度值,根据所述行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界;

裁减模块,用于根据所述焊缝初始边界对预处理后的X射线检测图片进行裁剪得到初始焊缝图片;

第二识别模块,用于获取所述初始焊缝图片的列灰度值,根据所述列灰度值确定列灰度值曲线,根据所述列灰度值曲线确定焊缝识别边界;

其中,所述根据所述灰度值确定行平均灰度值,包括:根据所述预处理后的X射线检测图片的像素点建立第一像素矩阵;

逐行计算所述第一像素矩阵的行平均灰度值得到所述第一像素矩阵的行平均灰度值数组;

其中,所述根据所述行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界,包括:根据所述行平均灰度值数组确定最大行平均灰度值所在的行数;

从最大行平均灰度值所在的行数向上遍历所述行平均灰度值数组,直至所述行平均灰度值低于第一预设阈值时,确定焊缝初始上边界;

从最大行平均灰度值所在的行数向下遍历所述行平均灰度值数组,直至所述行平均灰度值低于第一预设阈值时,确定焊缝初始下边界;

其中,所述获取所述初始焊缝图片的列灰度值,根据所述列灰度值确定列灰度值曲线,包括:扫描所述初始焊缝图片得到第二像素矩阵;

根据所述第二像素矩阵确定每一列离散灰度值;

将所述每一列离散灰度值进行拟合处理得到每一列灰度值拟合曲线;

对所述每一列灰度值拟合曲线求导得到每一列灰度值梯度曲线,对所述每一列灰度值梯度曲线求导得到每一列灰度值梯度变化曲线;

其中,所述根据所述列灰度值曲线确定焊缝识别边界,包括:根据所述列灰度值梯度曲线确定列灰度值拟合曲线的所有极大值点,记为极大值第一数组;

剔除所述极大值第一数组中小于第二预设阈值的极大值点得到极大值第二数组;

根据所述极大值第二数组、所述列灰度值梯度曲线以及所述列灰度值梯度变化曲线确定起始区间和终止区间;

确定所述列灰度值梯度变化曲线在所述起始区间和所述终止区间的最大值点;

重复上述步骤直至确定所有所述列灰度值梯度变化曲线在所述起始区间和所述终止区间的最大值点;所有所述最大值点构成所述焊缝识别边界。

5.一种电子设备,其特征在于,包括存储器和处理器,其中,所述存储器,用于存储程序;

所述处理器,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以实现上述权利要求1至3中任一项所述X射线焊缝边界识别方法中的步骤。

6.一种计算机可读存储介质,其特征在于,用于存储计算机可读取的程序或指令,所述程序或指令被处理器执行时,能够实现上述权利要求1至3中任一项所述X射线焊缝边界识别方法中的步骤。

说明书 :

一种X射线焊缝边界识别方法、装置、设备及存储介质

技术领域

[0001] 本发明涉及焊缝识别技术领域,尤其涉及一种X射线焊缝边界识别方法、装置、设备及存储介质。

背景技术

[0002] 射线探伤在工业上有着非常广泛的应用,它既用于金属检查,也用于非金属检查,射线探伤的基本原理是:当强度均匀的射线束透照射物体时,如果物体局部区域存在缺陷或结构存在差异,它将改变物体对射线的衰减,使得不同部位透射射线强度不同,这样,采用一定的检测器检测透射射线强度,就可以判断物体内部的缺陷和物质分布等。作为工业中常用的无损检测方法之一,X射线被广泛用于航空航天、车辆制造和压力容器等先进工业制造领域的焊接接头质量检测当中。
[0003] 中国专利《一种基于X射线成像的钢管螺旋弧焊缝区域识别方法》(CN107610103A)提出霍夫变换检测焊缝两侧直线的像素点集合,并进行拟合得到钢管螺旋弧焊缝边界,但该种方法只能适用于边缘趋于直线型的焊缝边界提取过程中。
[0004] 中国专利《数字X射线图片焊缝分割和缺陷检测方法》(CN102175700A)采用基于焊接图片中焊缝水平宽度和竖直连续性的分割方法对焊缝区域边界进行提取,该方法在提取过程中需要不断试错以确定其最佳分割阈值,导致其焊缝边界提取精度和适用性较低。
[0005] 中国专利《基于天牛须算法和数学形态学的射线图片焊缝识别方法》(CN108596930B)提出利用天牛须优化算法和数学形态学提取射线图片中的焊缝边界,虽然该方法能够提取到的焊缝边界相对更为准确,但是其核心思想仍是利用天牛须优化算法与聚类思想寻找得到射线图片中焊缝区域和背景区域的最佳区分阈值,导致存在精度上的损失。

发明内容

[0006] 有鉴于此,有必要提供一种X射线焊缝边界识别方法、装置、设备及存储介质,用以解决现有技术中的焊缝边界识别方法只适用于识别直线型焊缝的边界以及焊缝边界识别精度低的问题。
[0007] 为达到上述技术目的,本发明采取了以下技术方案:
[0008] 第一方面,本发明提供了一种X射线焊缝边界识别方法,包括:
[0009] 将X射线检测图片进行灰度化处理得到灰度值,并将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片;
[0010] 根据灰度值确定行平均灰度值,根据行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界;
[0011] 根据焊缝初始边界对预处理后的X射线检测图片进行裁剪得到初始焊缝图片;
[0012] 获取初始焊缝图片的列灰度值,根据列灰度值确定列灰度值曲线,根据列灰度值曲线确定焊缝识别边界。
[0013] 优选的,将X射线检测图片进行灰度化处理得到灰度值,包括:
[0014] 获取X射线检测图片中所有像素点的R、G、B三种颜色通道值;
[0015] 根据加权平均算法和R、G、B三种颜色通道值计算每个像素点的灰度值。
[0016] 优选的,将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片,包括:
[0017] 通过预设去噪方法将灰度化处理后的X射线检测图片进行去噪处理得到去噪后的X射线检测图片;
[0018] 根据预设增强方法将去噪后的X射线检测图片进行增强处理得到增强后的X射线检测图片。
[0019] 优选的,根据灰度值确定行平均灰度值,包括:
[0020] 根据预处理后的X射线检测图片的像素点建立第一像素矩阵;
[0021] 逐行计算第一像素矩阵的行平均灰度值得到第一像素矩阵的行平均灰度值数组。
[0022] 优选的,根据行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界,包括:
[0023] 根据行平均灰度值数组确定最大行平均灰度值所在的行数;
[0024] 从最大行平均灰度值所在的行数向上遍历行平均灰度值数组,直至行平均灰度值低于第一预设阈值时,确定焊缝初始上边界;
[0025] 从最大行平均灰度值所在的行数向下遍历行平均灰度值数组,直至行平均灰度值低于第一预设阈值时,确定焊缝初始下边界。
[0026] 优选的,获取初始焊缝图片的列灰度值,根据列灰度值确定列灰度值曲线,包括:
[0027] 扫描初始焊缝图片得到第二像素矩阵;
[0028] 根据第二像素矩阵确定每一列离散灰度值;
[0029] 将每一列离散灰度值进行拟合处理得到每一列灰度值拟合曲线;
[0030] 对每一列灰度值拟合曲线求导得到每一列灰度值梯度曲线,对每一列灰度值梯度曲线求导得到每一列灰度值梯度变化曲线。
[0031] 优选的,根据列灰度值曲线确定焊缝识别边界,包括:
[0032] 根据列灰度值梯度曲线确定列灰度值拟合曲线的所有极大值点,记为极大值第一数组;
[0033] 剔除极大值第一数组中小于第二预设阈值的极大值点得到极大值第二数组;
[0034] 根据极大值第二数组、列灰度值梯度曲线以及列灰度值梯度变化曲线确定起始区间和终止区间;
[0035] 确定列灰度值梯度变化曲线在起始区间和终止区间的最大值点;
[0036] 重复上述步骤直至确定所有列灰度值梯度变化曲线在起始区间和终止区间的最大值点;所有最大值点构成焊缝识别边界。
[0037] 第二方面,本发明还提供了一种X射线焊缝边界识别装置,包括:
[0038] 预处理模块,用于将X射线检测图片进行灰度化处理得到灰度值,并将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片;
[0039] 第一识别模块,用于根据灰度值确定行平均灰度值,根据行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界;
[0040] 裁减模块,用于根据焊缝初始边界对预处理后的X射线检测图片进行裁剪得到初始焊缝图片;
[0041] 第二识别模块,用于获取初始焊缝图片的列灰度值,根据列灰度值确定列灰度值曲线,根据列灰度值曲线确定焊缝识别边界。
[0042] 第三方面,本发明还提供了一种电子设备,包括存储器和处理器,其中,[0043] 存储器,用于存储程序;
[0044] 处理器,与存储器耦合,用于执行存储器中存储的程序,以实现上述任一种实现方式中的X射线焊缝边界识别方法中的步骤。
[0045] 第四方面,本发明还提供了一种计算机可读存储介质,用于存储计算机可读取的程序或指令,程序或指令被处理器执行时,能够实现上述任一种实现方式中的X射线焊缝边界识别方法中的步骤。
[0046] 采用上述实施例的有益效果是:本发明提供的一种X射线焊缝边界识别方法、装置、设备及存储介质,将X射线检测图片进行灰度化处理,然后将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片,然后逐行确定行平均灰度值,通过行平均值确定预处理后的X射线检测图片的焊缝初始边界,对预处理后的X射线检测图片根据确定的焊缝初始边界进行裁剪得到初始焊缝图片,根据初始焊缝图片的列灰度值计算出初始焊缝图片的列灰度值曲线,通过列灰度值曲线确定焊缝识别边界。
[0047] 在原始焊缝X射线检测图片中,存在大量的文字编号和母材背景等无关信息,焊缝区域只占据焊缝图片中间的一部分,本发明先后对X射线检测图片进行灰度化处理和预处理,提升X射线检测图片的清晰度,降低了焊缝边界区域形貌的复杂度,有利于提高焊缝边界的识别精度;
[0048] 通过行灰度值确定焊缝的初步高度区间,然后裁剪出初始焊缝图片,通过计算初始焊缝图片的列灰度值曲线确定焊缝识别边界,逐步缩小焊缝边界的实际位置,进一步提高了焊缝边界的识别精度;
[0049] 本发明中的灰度值为各个像素点的灰度值,直接对像素点的灰度值进行处理,确定出焊缝边界的范围,因此对各种形态的焊缝都能进行识别,不局限于直线型的焊缝。

附图说明

[0050] 图1为本发明提供的X射线焊缝边界识别方法的一实施例的流程示意图;
[0051] 图2为本发明提供的原始焊缝X射线检测图片的一实施例的图片示意图;
[0052] 图3为本发明提供的预处理后的X射线检测图片的一实施例的图片示意图;
[0053] 图4为本发明提供的确定焊缝初始边界的一实施例的流程示意图;
[0054] 图5为本发明提供的确定焊缝初始边界的一实施例的图片示意图;
[0055] 图6为本发明提供的初始焊缝图片的一实施例的图片示意图;
[0056] 图7为本发明提供的确定列灰度值曲线的一实施例的流程示意图;
[0057] 图8为本发明提供的列灰度值曲线的一实施例的图像示意图;
[0058] 图9为本发明提供的确定焊缝识别边界的一实施例的流程示意图;
[0059] 图10为本发明提供的X射线焊缝边界识别装置的一实施例的结构示意图;
[0060] 图11为本发明实施例提供的电子设备的结构示意图。

具体实施方式

[0061] 下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理,并非用于限定本发明的范围。
[0062] 在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0063] 在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0064] 本发明提供了一种X射线焊缝边界识别方法、装置、设备及存储介质,以下分别进行说明。
[0065] 请参阅图1,图1为本发明提供的X射线焊缝边界识别方法的一实施例的流程示意图,本发明的一个具体实施例,公开了一种X射线焊缝边界识别方法,包括:
[0066] S101、将X射线检测图片进行灰度化处理得到灰度值,并将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片;
[0067] S102、根据灰度值确定行平均灰度值,根据行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界;
[0068] S103、根据焊缝初始边界对预处理后的X射线检测图片进行裁剪得到初始焊缝图片;
[0069] S104、获取初始焊缝图片的列灰度值,根据列灰度值确定列灰度值曲线,根据列灰度值曲线确定焊缝识别边界。
[0070] 在上述实施例中,焊缝处的灰度值和非焊缝区域的灰度值存在明显的差别,以灰度值为依据可以区分出焊缝区域和非焊缝区域,原始焊缝X射线检测图片为包含R、G、B三种颜色通道的彩色图片,采用加权平均值法对其进行灰度化操作得到原始焊缝X射线检测图片的灰度值。
[0071] 将预处理后的X射线检测图片的各个像素点分成多个行像素点,然后逐行计算每一个行像素点的行平均灰度值,根据得到的行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界,行平均灰度值可以在宽度上确定预处理后的X射线检测图片中焊缝的宽度范围。
[0072] 根据焊缝初始边界对预处理后的X射线检测图片进行裁剪,缩小了图片上需要识别的焊缝区域的范围,减小了工作量,也提高了对焊缝区域识别的精度。
[0073] 根据初始焊缝图片每一列的灰度值建立每一列灰度值曲线,再根据每一列灰度值曲线确定该列的焊缝区域,直至确定出每一列的焊缝区域,即得到了最终预测的焊缝识别边界,通过逐列确定每一列灰度值曲线,提高了焊缝的识别精度,且对于各种焊缝都可以进行识别,不局限于直线型焊缝。
[0074] 与现有技术相比,本实施例提供的一种X射线焊缝边界识别方法,将X射线检测图片进行灰度化处理,然后将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片,然后逐行确定行平均灰度值,通过行平均值确定预处理后的X射线检测图片的焊缝初始边界,对预处理后的X射线检测图片根据确定的焊缝初始边界进行裁剪得到初始焊缝图片,根据初始焊缝图片的列灰度值计算出初始焊缝图片的列灰度值曲线,通过列灰度值曲线确定焊缝识别边界。
[0075] 在原始焊缝X射线检测图片中,存在大量的文字编号和母材背景等无关信息,焊缝区域只占据焊缝图片中间的一部分,本发明先后对X射线检测图片进行灰度化处理和预处理,提升X射线检测图片的清晰度,降低了焊缝边界区域形貌的复杂度,有利于提高焊缝边界的识别精度;
[0076] 通过行灰度值确定焊缝的初步高度区间,然后裁剪出初始焊缝图片,通过计算初始焊缝图片的列灰度值曲线确定焊缝识别边界,逐步缩小焊缝边界的实际位置,进一步提高了焊缝边界的识别精度;
[0077] 本发明中的灰度值为各个像素点的灰度值,直接对像素点的灰度值进行处理,确定出焊缝边界的范围,因此对各种形态的焊缝都能进行识别,不局限于直线型的焊缝。
[0078] 在本发明的一些实施例中,将X射线检测图片进行灰度化处理得到灰度值,包括:
[0079] 获取X射线检测图片中所有像素点的R、G、B三种颜色通道值;
[0080] 根据加权平均算法和R、G、B三种颜色通道值计算每个像素点的灰度值。
[0081] 在上述实施例中,加权平均值法公式如下:
[0082] Gray=0.299*R+0.578*G+0.114*B;
[0083] 其中,R表示红色通道值,G表示绿色通道值,B表示蓝色通道值,Gray表示灰度值。
[0084] 对X射线检测图片中的每个像素点都进行计算,得到每个像素点的灰度值。需要说明的是,R、G、B的取值可以直接对图片进行扫描进行得到,而扫描获取R、G、B的取值有多种现有技术可以实现,且并非本发明要解决的技术问题,因此对获取R、G、B的取值的具体方法不做过多赘述。
[0085] 在本发明的一些实施例中,将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片,包括:
[0086] 通过预设去噪方法将灰度化处理后的X射线检测图片进行去噪处理得到去噪后的X射线检测图片;
[0087] 根据预设增强方法将去噪后的X射线检测图片进行增强处理得到增强后的X射线检测图片。
[0088] 在上述实施例中,预设去噪方法为使用高斯滤波图片进行去噪处理,其过程可描述为如下的函数:
[0089] v(m,n)×∑(k,l)∈W∑(k,l)∈Wa(k,l)y(m‑k,n‑l);
[0090] 其中,y(m,n)和v(m,n)分别代表输入和输出图片矩阵,W代表滑动窗口,a(k,l)代表权值符合高斯分布的高斯模板。
[0091] 去噪完成后使用直方图均衡化对图片进行增强处理,对于灰度分布区间在[a,b]内的图片,直方图均衡化可定义为:
[0092]
[0093] 其中,f(i,j)表示原图片函数,g(i,j)表示增强后的图片函数,T表示映射关系。
[0094] 请参阅图2,图2为本发明提供的原始焊缝X射线检测图片的一实施例的图片示意图,请参阅图3,图3为本发明提供的预处理后的X射线检测图片的一实施例的图片示意图。
[0095] 根据图2和图3可以看出,在焊缝X射线检测图片中焊缝区域是一条带状区域(白色虚线包含区域),且与背景区域相比,其整体亮度(即灰度值)是明显更高的。通过预处理后,X射线检测图片中的焊缝区域更加明显,有利于准确识别出焊缝区域,提高识别的准确性。
[0096] 在本发明的一些实施例中,根据灰度值确定行平均灰度值,包括:
[0097] 根据预处理后的X射线检测图片的像素点建立第一像素矩阵;
[0098] 逐行计算第一像素矩阵的行平均灰度值得到第一像素矩阵的行平均灰度值数组。
[0099] 在上述实施例中,经过预处理后的X射线检测图片的尺寸为M×N,M和N分别代表了预处理后的X射线检测图片中的像素点的行和列,也可以表示出预处理后的X射线检测图片的长和宽,第一像素矩阵为M×N矩阵。
[0100] 通过灰度化处理后得到的灰度值,计算逐行计算第一像素矩阵的行平均灰度值,用数组的形式记录平均灰度值得到第一像素矩阵的行平均灰度值数组G={G1,G2,G3,…,GM},GM表示第一像素矩阵中第M行的平均灰度值。
[0101] 需要说明的是,第一像素矩阵的行标号为从上到下还是从下到上并不做具体限制。
[0102] 请参阅图4,图4为本发明提供的确定焊缝初始边界的一实施例的流程示意图,在本发明的一些实施例中,根据行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界,包括:
[0103] S401、根据行平均灰度值数组确定最大行平均灰度值所在的行数;
[0104] S402、从最大行平均灰度值所在的行数向上遍历行平均灰度值数组,直至行平均灰度值低于第一预设阈值时,确定焊缝初始上边界;
[0105] S403、从最大行平均灰度值所在的行数向下遍历行平均灰度值数组,直至行平均灰度值低于第一预设阈值时,确定焊缝初始下边界。
[0106] 在上述实施例中,请参阅图5,图5为本发明提供的确定焊缝初始边界的一实施例的图片示意图,记平均灰度值最大的那一行的行数为Rmax(如图5中标记Rmax的行)。
[0107] 从Rmax行开始,向上逐行遍历行平均灰度值数组G,当某一行的平均灰度值低于第一预设阈值Ga时,则停止移动,将该行作为焊缝区域的初步上边界b1(如图5中标记b1的行)。
[0108] 与确定初步上边界b1相似,从Rmax行开始,向下逐行遍历行平均灰度值数组G,当某一行的平均灰度值低于第一预设阈值Ga时,则停止移动,将该行作为焊缝区域的初步下边界b2(如图5中标记b2的行)。作为优选的实施例,第一预设阈值Ga设置为90,此时的识别效果最佳,需要说明的是,第一预设阈值Ga也可以根据实际情况进行调整,本发明对此不做进一步限制。
[0109] 需要说明的是,为确保能把焊缝区域完全包含进去,需要将b1、b2扩大原始焊缝X射线检测图片宽度N的5%~10%左右,即确定焊缝初始上边界B1=b1+(5%~10%)×M,焊缝初始下边界B2=b2+(5%~10%)×M(如图5中标记B1和B2的行)。
[0110] 根据所得初步焊缝区域上、下边界对原始M×N焊缝X射线检测图片进行裁剪,以方便后续进行的焊缝边界精确提取操作,裁减后的X射线检测图片的尺寸为m×N。请参阅图6,图6为本发明提供的初始焊缝图片的一实施例的图片示意图。
[0111] 请参阅图7,图7为本发明提供的确定列灰度值曲线的一实施例的流程示意图,在本发明的一些实施例中,获取初始焊缝图片的列灰度值,根据列灰度值确定列灰度值曲线,包括:
[0112] S701、扫描初始焊缝图片得到第二像素矩阵;
[0113] S702、根据第二像素矩阵确定每一列离散灰度值;
[0114] S703、将每一列离散灰度值进行拟合处理得到每一列灰度值拟合曲线;
[0115] S704、对每一列灰度值拟合曲线求导得到每一列灰度值梯度曲线,对每一列灰度值梯度曲线求导得到每一列灰度值梯度变化曲线。
[0116] 在上述实施例中,对初始焊缝图片从左至右逐列进行灰度值扫描(也可以从右至左),得到第二像素矩阵m×N。需要说明的是,灰度值扫描的方法具有多中现有技术可以实现,本发明对此不做进一步限制。
[0117] 请参阅图8,图8为本发明提供的列灰度值曲线的一实施例的图像示意图,将扫描得到的离散灰度值向量输入Matlab中的Curve Fitting工具箱中进行光滑样条拟合处理,得到列灰度值拟合曲线(如图8中标记为a的曲线),然后对该列灰度值拟合曲线依次求导得到其列灰度值梯度曲线(图8中标记为b的曲线)和列灰度值梯度变化曲线(图8中标记为c的曲线)。
[0118] 需要说明的是,需要对N列都进行扫描、拟合、求导操作,最终得到N列灰度值拟合曲线、N列灰度值梯度曲线、N列灰度值梯度变化曲线。
[0119] 请参阅图9,图9为本发明提供的确定焊缝识别边界的一实施例的流程示意图,在本发明的一些实施例中,根据列灰度值曲线确定焊缝识别边界,包括:
[0120] S901、根据列灰度值梯度曲线确定列灰度值拟合曲线的所有极大值点,记为极大值第一数组;
[0121] S902、剔除极大值第一数组中小于第二预设阈值的极大值点得到极大值第二数组;
[0122] S903、根据极大值第二数组、列灰度值梯度曲线以及列灰度值梯度变化曲线确定起始区间和终止区间;
[0123] S904、确定列灰度值梯度变化曲线在起始区间和终止区间的最大值点;
[0124] S905、重复上述步骤直至确定所有列灰度值梯度变化曲线在起始区间和终止区间的最大值点;所有最大值点构成焊缝识别边界。
[0125] 在上述实施例中,选取N列中的任意一列进行研究,针对该列的列灰度值拟合曲线,通过分析其列灰度值梯度曲线得到该列的列灰度值拟合曲线所有的极大值点,将其放*入极大值第一数组Q中。
[0126] 遍历极大值第一数组Q*中的所有极大值点,如果该极大值点的灰度值小于第二预*设阈值q(考虑到某些焊缝X射线检测图像其背景区域存在亮度起伏),则在Q 中删去此点(去除焊缝背景处的极值点),由此可得到图像各列灰度值曲线在焊缝区域内的极大值第二数组Q。
[0127] 作为优选的实施例,将第二预设阈值q设置为50,需要说明的是,本发明中的第二预设阈值q还可以根据实际情况进行调整,本发明对此不做进一步限制。
[0128] 根据极大值第二数组Q,选取其第一个元素Q1和最后一个元素Qend(如图8中曲线a上标记为Q1和Qend的点),然后在[1,Q1]和[Qend,N]两个区间内寻找得到该列的列灰度值梯度曲线的局部极大值点Pu和极小值点Pd(如图8中曲线b上标记为Pu和Pd的点),此时可确定焊缝识别上边界和下边界点位于[1,Pu]和[Pd,m]区间内。[1,Pu]和[Pd,m]即为起始区间和终止区间。
[0129] 在[1,Pu]和[Pd,m]区间内确定该列的列灰度值梯度变化曲线的最大值点Ui和Di(如图8中曲线c上标记为Ui和Di的点),即为该列所寻找的焊缝识别边界上边界点和焊缝识别边界下边界点。
[0130] 对初始焊缝图片的每一列都进行上述操作,直至确定所有的列的焊缝识别边界上边界点和焊缝识别边界下边界点,也即得到了焊缝识别边界。
[0131] 为了更好实施本发明实施例中的X射线焊缝边界识别方法,在X射线焊缝边界识别方法基础之上,对应的,请参阅图10,图10为本发明提供的X射线焊缝边界识别装置的一实施例的结构示意图,本发明实施例提供了一种X射线焊缝边界识别装置1000,包括:
[0132] 预处理模块1010,用于将X射线检测图片进行灰度化处理得到灰度值,并将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片;
[0133] 第一识别模块1020,用于根据灰度值确定行平均灰度值,根据行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界;
[0134] 裁减模块1030,用于根据焊缝初始边界对预处理后的X射线检测图片进行裁剪得到初始焊缝图片;
[0135] 第二识别模块1040,用于获取初始焊缝图片的列灰度值,根据列灰度值确定列灰度值曲线,根据列灰度值曲线确定焊缝识别边界。
[0136] 这里需要说明的是:上述实施例提供的装置1000可实现上述各方法实施例中描述的技术方案,上述各模块或单元具体实现的原理可参见上述方法实施例中的相应内容,此处不再赘述。
[0137] 请参阅图11,图11为本发明实施例提供的电子设备的结构示意图。基于上述X射线焊缝边界识别方法,本发明还相应提供了一种X射线焊缝边界识别设备,X射线焊缝边界识别设备可以是移动终端、桌上型计算机、笔记本、掌上电脑及服务器等计算设备。该X射线焊缝边界识别设备包括处理器1110、存储器1120及显示器1130。图11仅示出了电子设备的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
[0138] 存储器1120在一些实施例中可以是X射线焊缝边界识别设备的内部存储单元,例如X射线焊缝边界识别设备的硬盘或内存。存储器1120在另一些实施例中也可以是X射线焊缝边界识别设备的外部存储设备,例如X射线焊缝边界识别设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器1120还可以既包括X射线焊缝边界识别设备的内部存储单元也包括外部存储设备。存储器1120用于存储安装于X射线焊缝边界识别设备的应用软件及各类数据,例如安装X射线焊缝边界识别设备的程序代码等。存储器1120还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器1120上存储有X射线焊缝边界识别程序1140,该X射线焊缝边界识别程序1140可被处理器1110所执行,从而实现本申请各实施例的X射线焊缝边界识别方法。
[0139] 处理器1110在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片,用于运行存储器1120中存储的程序代码或处理数据,例如执行X射线焊缝边界识别方法等。
[0140] 显示器1130在一些实施例中可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light‑Emitting Diode,有机发光二极管)触摸器等。显示器1130用于显示在X射线焊缝边界识别设备的信息以及用于显示可视化的用户界面。X射线焊缝边界识别设备的部件1110‑1130通过系统总线相互通信。
[0141] 在一实施例中,当处理器1110执行存储器1120中X射线焊缝边界识别程序1140时实现如上的X射线焊缝边界识别方法中的步骤。
[0142] 本实施例还提供了一种计算机可读存储介质,其上存储有X射线焊缝边界识别程序,该X射线焊缝边界识别程序被处理器执行时实现以下步骤:
[0143] 将X射线检测图片进行灰度化处理得到灰度值,并将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片;
[0144] 根据灰度值确定行平均灰度值,根据行平均灰度值确定预处理后的X射线检测图片的焊缝初始边界;
[0145] 根据焊缝初始边界对预处理后的X射线检测图片进行裁剪得到初始焊缝图片;
[0146] 获取初始焊缝图片的列灰度值,根据列灰度值确定列灰度值曲线,根据列灰度值曲线确定焊缝识别边界。
[0147] 综上,本实施例提供的一种X射线焊缝边界识别方法、装置、设备及存储介质,将X射线检测图片进行灰度化处理,然后将灰度化处理后的X射线检测图片进行预处理得到预处理后的X射线检测图片,然后逐行确定行平均灰度值,通过行平均值确定预处理后的X射线检测图片的焊缝初始边界,对预处理后的X射线检测图片根据确定的焊缝初始边界进行裁剪得到初始焊缝图片,根据初始焊缝图片的列灰度值计算出初始焊缝图片的列灰度值曲线,通过列灰度值曲线确定焊缝识别边界。
[0148] 在原始焊缝X射线检测图片中,存在大量的文字编号和母材背景等无关信息,焊缝区域只占据焊缝图片中间的一部分,本发明先后对X射线检测图片进行灰度化处理和预处理,提升X射线检测图片的清晰度,降低了焊缝边界区域形貌的复杂度,有利于提高焊缝边界的识别精度;
[0149] 通过行灰度值确定焊缝的初步高度区间,然后裁剪出初始焊缝图片,通过计算初始焊缝图片的列灰度值曲线确定焊缝识别边界,逐步缩小焊缝边界的实际位置,进一步提高了焊缝边界的识别精度;
[0150] 本发明中的灰度值为各个像素点的灰度值,直接对像素点的灰度值进行处理,确定出焊缝边界的范围,因此对各种形态的焊缝都能进行识别,不局限于直线型的焊缝。
[0151] 以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。