掌桥专利:专业的专利平台
掌桥专利
首页

一种缺陷检测方法、装置、电子设备和存储介质

文献发布时间:2024-04-18 19:58:30


一种缺陷检测方法、装置、电子设备和存储介质

技术领域

本申请涉及计算机视觉技术领域,特别是涉及一种缺陷检测方法、装置、电子设备和存储介质。

背景技术

工业生产中,在工件进行质量检测时,通常需要对工件的表面缺陷进行检测。例如,在对焊缝进行质量检测时,通常需要对焊缝的表面缺陷进行检测;在对胶圈进行质量检测时,通常需要对胶圈的表面缺陷进行检测,等等。

相关技术中,主要依靠人眼观察和简单测量来在对工件的表面缺陷进行检测。例如,通过人眼观察检测焊缝表面是否存在气孔、焊瘤等缺陷;通过采用测量器具(焊缝尺寸测量尺)对焊缝的宽度、高度等进行测量,来判断焊缝是否满足质量要求,等等。

然而,在上述相关技术中,通过人工方式进行工件表面缺陷检测的效率较低,且准确度容易受到检验人员主观因素的影响。

发明内容

本申请实施例的目的在于提供一种缺陷检测方法、装置、电子设备和存储介质,以实现工件表面缺陷的自动检测,提高工件表面缺陷检测的效率和准确度。具体技术方案如下:

第一方面,本申请实施例提供了一种缺陷检测方法,所述方法包括:

获取待检测工件的深度图;

利用所述待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定所述深度图中属于所述待检测对象的各个初始定位点;

针对每个初始定位点,基于所述待检测对象的尺寸,在所述深度图中确定关于该初始定位点的待定位区域,并根据所述待定位区域中的各个像素点的深度值,进行所述预设轮廓形状拟合,得到该初始定位点对应的拟合轮廓;

计算每个初始定位点所对应的实际轮廓与拟合轮廓的拟合差分结果,并确定所述拟合差分结果满足预设差分条件的各个目标像素点;

基于各个目标像素点,确定所述深度图中的各个待检测区域,并对各个待检测区域进行图像特征检测,确定各个待检测区域中的缺陷区域,作为所述待检测对象的缺陷检测结果。

可选的,一种具体实现方式中,在所述基于各个目标像素点,确定所述深度图中的各个待检测区域之前,所述方法还包括:

按照预设曲线形状,对所述各个初始定位点进行曲线拟合,得到各个拟合曲线;

针对每个拟合曲线,确定用于拟合该拟合曲线的各个初始定位点中,距离该拟合曲线的距离大于指定距离的初始定位点,作为离群点;

所述基于各个目标像素点,确定所述深度图中的各个待检测区域,包括:

基于各个目标像素点和各个离群点,确定所述深度图中的各个待检测区域。

可选的,一种具体实现方式中,在所述基于各个目标像素点和各个离群点,确定所述深度图中的各个待检测区域之前,所述方法还包括:

计算每个拟合轮廓的平均拟合误差,并确定所述平均拟合误差大于指定误差的拟合轮廓,作为误差轮廓;

所述基于各个目标像素点和各个离群点,确定所述深度图中的各个待检测区域,包括:

基于各个目标像素点、各个离群点和各个误差轮廓,确定所述深度图中的各个待检测区域。

可选的,一种具体实现方式中,所述基于各个目标像素点,确定所述深度图中的各个待检测区域,并对各个待检测区域进行图像特征检测,确定各个待检测区域中的缺陷区域,包括:

在所述深度图中标记各个目标像素点的差分值、关于各个离群点的第一检测结果和关于各个误差轮廓的第二检测结果,得到目标残差图;

对所述目标残差图进行Blob分析,得到所述深度图中的缺陷区域。

可选的,一种具体实现方式中,所述获取待检测工件的深度图,包括:

获取激光轮廓扫描仪对待检测工件进行扫描所生成的所述待检测工件的深度图;其中,所述激光轮廓扫描仪扫描所述待检测工件的方向垂直于所述待检测对象符合所述预设轮廓形状的各个截面;

所述利用所述待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定所述深度图中属于所述待检测对象的各个初始定位点,包括:

针对所述深度图中的每行像素,利用所述待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定该行像素中属于所述待检测对象的初始定位点。

可选的,一种具体实现方式中,

若所述待检测对象为焊缝,则所述待检测对象的预设轮廓形状为抛物线形状;

若所述待检测对象为胶圈,则所述待检测对象的预设轮廓形状为圆形。

可选的,一种具体实现方式中,所述图像特征包括:面积、长轴长度、短轴长度和体积中的至少一个。

第二方面,本申请实施例提供了一种缺陷检测装置,所述装置包括:

图像获取模块,用于获取待检测工件的深度图;

定位点确定模块,用于利用所述待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定所述深度图中属于所述待检测对象的各个初始定位点;

轮廓拟合模块,用于针对每个初始定位点,基于所述待检测对象的尺寸,在所述深度图中确定关于该初始定位点的待定位区域,并根据所述待定位区域中的各个像素点的深度值,进行所述预设轮廓形状拟合,得到该初始定位点对应的拟合轮廓;

拟合差分模块,用于计算每个初始定位点所对应的实际轮廓与拟合轮廓的拟合差分结果,并确定所述拟合差分结果满足预设差分条件的各个目标像素点;

区域确定模块,用于基于各个目标像素点,确定所述深度图中的各个待检测区域,并对各个待检测区域进行图像特征检测,确定各个待检测区域中的缺陷区域,作为所述待检测对象的缺陷检测结果。

可选的,一种具体实现方式中,所述装置还包括:

曲线拟合模块,用于对所述各个初始定位点进行曲线拟合,得到各个拟合曲线;

离群点确定模块,用于针对每个拟合曲线,确定用于拟合该拟合曲线的各个初始定位点中,距离该拟合曲线的距离大于指定距离的初始定位点,作为离群点;

所述区域确定模块具体用于:

基于各个目标像素点和各个离群点,确定所述深度图中的各个待检测区域。

可选的,一种具体实现方式中,所述装置还包括:

误差计算模块,用于计算每个拟合轮廓的平均拟合误差,并确定所述平均拟合误差大于指定误差的拟合轮廓,作为误差轮廓;

所述区域确定模块具体用于:

基于各个目标像素点、各个离群点和各个误差轮廓,确定所述深度图中的各个待检测区域。

可选的,一种具体实现方式中,所述区域确定模块具体用于:

在所述深度图中标记各个目标像素点的差分值、关于各个离群点的第一检测结果和关于各个误差轮廓的第二检测结果,得到目标残差图;

对所述目标残差图进行Blob分析,得到所述深度图中的缺陷区域。

可选的,一种具体实现方式中,所述图像获取模块具体用于:

获取激光轮廓扫描仪对待检测工件进行扫描所生成的所述待检测工件的深度图;其中,所述激光轮廓扫描仪扫描所述待检测工件的方向垂直于所述待检测对象符合所述预设轮廓形状的各个截面;

所述定位点确定模块具体用于:

针对所述深度图中的每行像素,利用所述待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定该行像素中属于所述待检测对象的初始定位点。

可选的,一种具体实现方式中,

若所述待检测对象为焊缝,则所述待检测对象的预设轮廓形状为抛物线形状;

若所述待检测对象为胶圈,则所述待检测对象的预设轮廓形状为圆形。

可选的,一种具体实现方式中,所述图像特征包括:面积、长轴长度、短轴长度和体积中的至少一个。

第三方面,本申请实施例提供了一种电子设备,包括:

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述任一所述的缺陷检测方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的缺陷检测方法。

本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的缺陷检测方法。

本申请实施例有益效果:

以上可见,应用本申请实施例提供的方案,由于待检测工件中的待检测对象的轮廓可以具有一定的形状特征,例如,当待检测对象为焊缝时,焊缝的各个截面的轮廓可以近似于抛物线形状,因此,可以根据待检测工件中的待检测对象的轮廓的形状特征,确定待检测对象的预设轮廓形状。进而,在对待检测工件进行缺陷检测时,便可以先获取关于待检测工件的深度图,然后利用待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定深度图中属于待检测对象的各个初始定位点;进而,针对每个初始定位点,基于待检测对象的尺寸,在深度图中确定关于该初始定位点的待定位区域,并根据待定位区域中的各个像素点的深度值,进行预设轮廓形状拟合,便可以得到该初始定位点对应的拟合轮廓;然后,通过计算每个初始定位点所对应的实际轮廓与拟合轮廓的拟合差分结果,可以确定拟合差分结果满足预设差分条件的各个目标像素点;进而,基于各个目标像素点,确定深度图中的各个待检测区域,并对各个待检测区域进行图像特征检测,可以确定各个待检测区域中的缺陷区域,从而得到关于待检测对象的缺陷检测结果。

基于此,可以根据待检测工件的深度图确定待检测工件中的待检测对象的缺陷检测结果,从而实现工件表面缺陷的自动检测,提高工件表面缺陷检测的效率和准确度。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。

图1为本申请实施例提供的缺陷检测方法的一种流程示意图;

图2(a)为本申请实施例提供的一种拟合差分结果示意图;

图2(b)为本申请实施例提供的另一种拟合差分结果示意图;

图2(c)为本申请实施例提供的一种拟合差分方法示意图;

图3(a)为本申请实施例提供的一张关于焊缝的深度图;

图3(b)为图3(a)所示的深度图对应的目标残差图;

图4为本申请实施例提供的缺陷检测方法的另一种流程示意图;

图5(a)为本申请实施例提供的一种关于焊缝的深度图;

图5(b)为本申请实施例提供的一种关于胶圈的深度图;

图6为本申请实施例提供的关于图5(b)所示的关于胶圈的深度图的定位结果;

图7为本申请实施例提供的一种缺陷检测装置的结构示意图;

图8为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本申请保护的范围。

相关技术中,主要依靠人眼观察和简单测量来在对工件的表面缺陷进行检测。例如,通过人眼观察检测焊缝表面是否存在气孔、焊瘤等缺陷;通过采用测量器具(焊缝尺寸测量尺)对焊缝的宽度、高度等进行测量,来判断焊缝是否满足质量要求,等等。

然而,在上述相关技术中,通过人工方式进行工件表面缺陷检测的效率较低,且准确度容易受到检验人员主观因素的影响。

为了解决上述问题,本申请实施例提供了一种缺陷检测方法。

其中,该方法适用于各种对工件的表面缺陷进行检测的场景,例如,对工件中的焊缝的表面缺陷进行检测的场景,对胶圈的表面缺陷进行检测的场景,等等。对于本申请实施例的应用场景,本申请实施例不进行具体限定。

并且,该方法的执行主体可以是各种可以获取深度图像数据,并对数据进行处理的电子设备。该电子设备可以是具有数据处理功能的深度图像采集设备,还可以是与深度图像采集设备存在通信连接的各种可以对数据进行处理的设备,例如,手机、笔记本电脑、台式电脑等。并且,该电子设备可以是独立的电子设备,也可以是由多台电子设备构成的设备集群。对此,本申请实施例不做具体限定,以下简称电子设备。

本申请实施例提供的一种缺陷检测方法,可以包括如下步骤:

获取待检测工件的深度图;

利用所述待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定所述深度图中属于所述待检测对象的各个初始定位点;

针对每个初始定位点,基于所述待检测对象的尺寸,在所述深度图中确定关于该初始定位点的待定位区域,并根据所述待定位区域中的各个像素点的深度值,进行所述预设轮廓形状拟合,得到该初始定位点对应的拟合轮廓;

计算每个初始定位点所对应的实际轮廓与拟合轮廓的拟合差分结果,并确定所述拟合差分结果满足预设差分条件的各个目标像素点;

基于各个目标像素点,确定所述深度图中的各个待检测区域,并对各个待检测区域进行图像特征检测,确定各个待检测区域中的缺陷区域,作为所述待检测对象的缺陷检测结果。

以上可见,应用本申请实施例提供的方案,由于待检测工件中的待检测对象的轮廓可以具有一定的形状特征,例如,当待检测对象为焊缝时,焊缝的各个截面的轮廓可以近似于抛物线形状,因此,可以根据待检测工件中的待检测对象的轮廓的形状特征,确定待检测对象的预设轮廓形状。进而,在对待检测工件进行缺陷检测时,便可以先获取关于待检测工件的深度图,然后利用待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定深度图中属于待检测对象的各个初始定位点;进而,针对每个初始定位点,基于待检测对象的尺寸,在深度图中确定关于该初始定位点的待定位区域,并根据待定位区域中的各个像素点的深度值,进行预设轮廓形状拟合,便可以得到该初始定位点对应的拟合轮廓;然后,通过计算每个初始定位点所对应的实际轮廓与拟合轮廓的拟合差分结果,可以确定拟合差分结果满足预设差分条件的各个目标像素点;进而,基于各个目标像素点,确定深度图中的各个待检测区域,并对各个待检测区域进行图像特征检测,可以确定各个待检测区域中的缺陷区域,从而得到关于待检测对象的缺陷检测结果。

基于此,可以根据待检测工件的深度图确定待检测工件中的待检测对象的缺陷检测结果,从而实现工件表面缺陷的自动检测,提高工件表面缺陷检测的效率和准确度。

下面,结合附图,对本申请实施例提供的一种缺陷检测方法进行具体说明。

图1为本申请实施例提供的缺陷检测方法的一种流程示意图,如图1所示,该方法可以包括如下步骤S101-S105。

S101:获取待检测工件的深度图。

深度图像采集设备可以采集关于待检测工件的深度图,并且基于关于某个物体的深度图可以确定该物体表面的各个点的空间位置关系。进而,在对待检测工件进行表面缺陷检测时,可以先获取深度图像采集设备所采集的待检测工件的深度图。

其中,上述深度图像采集设备可以是激光轮廓扫描仪、深度相机等各种设备,本申请实施例不进行具体限定。

S102:利用待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定深度图中属于待检测对象的各个初始定位点。

由于待检测工件中的待检测对象的轮廓可以具有一定的形状特征,例如,当待检测对象为焊缝时,焊缝的各个截面的轮廓可以近似于抛物线形状,当待检测对象为胶圈时,胶圈的各个截面的轮廓可以近似于圆形。因此,可以根据待检测工件中的待检测对象的轮廓的形状特征,确定待检测对象的预设轮廓形状。进而,在对待检测工件进行缺陷检测时,便可以先获取关于待检测工件的深度图,然后利用待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定深度图中属于待检测对象的各个初始定位点。

示例性的,上述待检测工件中的待检测对象可以是焊缝,焊缝的预设轮廓形状可以是抛物线,进而,便可以利用抛物线拟合,按照预设的宽度区间,遍历深度图中的各行像素,将每行像素中拟合误差最小的位置确定为该行像素中属于焊缝的初始定位点,从而得到深度图中属于焊缝的各个初始定位点。

S103:针对每个初始定位点,基于待检测对象的尺寸,在深度图中确定关于该初始定位点的待定位区域,并根据待定位区域中的各个像素点的深度值,进行预设轮廓形状拟合,得到该初始定位点对应的拟合轮廓。

在确定了各个初始定位点后,针对每个初始定位点,可以基于待检测对象的尺寸,在深度图中确定关于该初始定位点的待定位区域,并根据待定位区域中的各个像素点的深度值,进行预设轮廓形状拟合,得到该初始定位点对应的拟合轮廓。

示例性的,当待检测对象为胶圈时,在确定了各个初始定位点后,针对每个初始定位点,可以基于胶圈的截面的直径,在深度图中确定关于该初始定位点的待定位区域,并根据待定位区域中的各个像素点的深度值,进行预设轮廓形状拟合,得到该初始定位点对应的拟合轮廓。

可选的,由于缺陷区域的轮廓形状可能不符合预设轮廓形状,因此,缺陷区域的初始定位点的拟合误差可能较大,定位可能不够准确。进而,在确定了各个初始定位点后,针对每个初始定位点,还可以确定各个初始定位点的拟合误差,然后针对拟合误差大于指定误差的每个初始定位点,利用该初始定点附近的拟合误差小于指定误差的初始定位点,对该定位点进行插值处理。

可选的,还可以对各个初始定位点进行均值滤波或中值滤波等滤波处理,从而进一步提升各个初始定位点的准确性。

S104:计算每个初始定位点所对应的实际轮廓与拟合轮廓的拟合差分结果,并确定拟合差分结果满足预设差分条件的各个目标像素点。

对于每个初始定位点,还可以基于关于该初始定位点的待定位区域中的各个像素点的深度值确定该初始定位点所对应的实际轮廓。由于对于待检测对象来说,其缺陷区域处的实际轮廓通常不符合预设轮廓形状,因此,待检测对象的缺陷区域处的实际轮廓与拟合轮廓通常存在较大的差异。进而,对于每个初始定位点,在确定了该初始定位点所对应的拟合轮廓后,可以计算每个初始定位点所对应的实际轮廓与拟合轮廓的拟合差分结果。对于深度图中的每个像素点,如果该像素点的拟合差分结果满足预设条件,则该像素点所在的区域可能为待检测对象的缺陷所在的区域,因此,在计算了每个初始定位点所对应的实际轮廓与拟合轮廓的拟合差分结果后,可以确定拟合差分结果满足预设差分条件的各个目标像素点。

示例性的,缺陷区域的实际轮廓和拟合轮廓的拟合差分结果可以如图2(a)所示,正常区域的实际轮廓和拟合轮廓的拟合差分结果可以如图2(b)所示,可见,缺陷区域与正常区域的拟合差分结果存在较大差距,因此,可以根据拟合差分结果确定待检测对象存在缺陷的区域。

其中,对于实际轮廓上的每个像素点,该点的拟合差分结果可以是该点的深度值与该点在拟合轮廓上所对应的拟合点的深度值的差值,也可以是该差值在该拟合轮廓在该拟合点处的法线的方向上的投影值,对此,本申请实施例不进行具体限定,本领域技术人员可以根据实际应用情况确定拟合差分结果的计算方式。

示例性的,如图2(c)所示,对于实际轮廓上的像素点A,该点的拟合差分结果可以是该点的深度值与该点在拟合轮廓上所对应的拟合点B的深度值的差值M,也可以是该差值M在该拟合轮廓在该拟合点处的法线的方向上的投影值N。

S105:基于各个目标像素点,确定深度图中的各个待检测区域,并对各个待检测区域进行图像特征检测,确定各个待检测区域中的缺陷区域,作为待检测对象的缺陷检测结果。

满足预设差分条件的各个目标像素点所在的区域可能为待检测对象的缺陷所在的区域,因此,可以基于各个目标像素点,确定深度图中可能存在缺陷的各个待检测区域,并通过对各个待检测区域进行图像特征检测,确定各个待检测区域中的缺陷区域,作为待检测对象的缺陷检测结果。

其中,可选的,上述图像特征可以包括:面积、长轴长度、短轴长度和体积中的至少一个。

示例性的,上述图像特征可以包括面积,进而,通过对各个待检测区域进行图像特征检测,可以将面积大于指定面积的待检测区域确定为缺陷区域,从而得到待检测对象的缺陷检测结果。

基于此,可以根据待检测工件的深度图确定待检测工件中的待检测对象的缺陷检测结果,从而实现工件表面缺陷的自动检测,提高工件表面缺陷检测的效率和准确度。

在对待检测工件进行缺陷检测时,待检测工件中的待检测对象可能存在部分区域为缺陷区域,但由于该部分区域的实际轮廓形状与预设轮廓形状接近(例如,焊缝的虚焊区域的轮廓形状可能依旧为抛物线形状),该部分区域中的初始定位点所对应的实际轮廓与拟合轮廓的拟合差分结果不满足预设差分条件,从而导致该部分区域中的像素点无法被确定为目标像素点,该部分区域无法被确定为缺陷区域的情况。因此,为了进一步提高缺陷检测的准确率,可选的,一种具体实现方式中,在上述基于各个目标像素点,确定深度图中的各个待检测区域之前,本申请实施例提供的一种缺陷检测方法还可以包括如下步骤11-12。

步骤11:按照预设曲线形状,对各个初始定位点进行曲线拟合,得到各个拟合曲线。

在基于各个目标像素点,确定深度图中的各个待检测区域之前,可以先按照预设曲线形状,对各个初始定位点进行曲线拟合,得到各个拟合曲线。

其中,上述预设曲线形状可以为直线、抛物线、圆和正弦曲线等任何形状,本领域技术人员可以根据实际应用情况设置上述预设曲线形状。

示例性的,上述待检测对象可以是待检测工件上的焊缝,且在该焊缝上不存在缺陷区域的情况下,该焊缝上的各个初始定位点近似于按照直线分布。进而,在对关于上述焊缝的各个初始定位点进行曲线拟合时,上述预设曲线形状便可以为直线。

步骤12:针对每个拟合曲线,确定用于拟合该拟合曲线的各个初始定位点中,距离该拟合曲线的距离大于指定距离的初始定位点,作为离群点。

由于相较于其他初始定位点,位于缺陷区域处的初始定位点通常距离上述拟合曲线更远,因此,针对每个拟合曲线,可以确定用于拟合该拟合曲线的各个初始定位点中,距离该拟合曲线的距离大于指定距离的初始定位点,作为离群点。

进而,上述基于各个目标像素点,确定深度图中的各个待检测区域,可以包括如下步骤13。

步骤13:基于各个目标像素点和各个离群点,确定深度图中的各个待检测区域。

在确定了初始定位点中的离群点后,可以基于各个目标像素点和各个离群点,确定深度图中的各个待检测区域。

可选的,可以将每个离群点所在的位置周围的指定范围内的像素点以及各个目标像素点所构成的各个连通区域确定为各个待检测区域。

在对待检测工件进行缺陷检测时,待检测工件中的待检测对象可能存在部分区域为缺陷区域,但该部分区域中存在部分像素点所对应的拟合差分结果不满足预设差分条件,从而导致该部分像素点无法被确定为目标像素点,该部分区域可能无法被确定为缺陷区域,从而影响缺陷检测结果的情况。因此,为了进一步提高缺陷检测的准确率,可选的,一种具体实现方式中,为了更进一步的提升缺陷检测的准确性,在上述基于各个目标像素点和各个离群点,确定深度图中的各个待检测区域之前,本申请实施例提供的一种缺陷检测方法还可以包括如下步骤21。

步骤21:计算每个拟合轮廓的平均拟合误差,并确定平均拟合误差大于指定误差的拟合轮廓,作为误差轮廓。

进而,上述基于各个目标像素点和各个离群点,确定深度图中的各个待检测区域,可以包括如下步骤22。

步骤22:基于各个目标像素点、各个离群点和各个误差轮廓,确定深度图中的各个待检测区域。

也就是说,在基于各个目标像素点和各个离群点,确定深度图中的各个待检测区域之前,还可以先计算每个拟合轮廓的平均拟合误差,并将平均拟合误差大于指定误差的拟合轮廓确定为误差轮廓。进而,在确定深度图中的各个待检测区域时,便可以基于各个目标像素点、各个离群点和各个误差轮廓,确定深度图中的各个待检测区域。

可选的,可以将每个离群点所在的位置周围的指定范围内的像素点、各个目标像素点以及各个误差轮廓所对应的各个像素点所构成的各个连通区域确定为各个待检测区域。

可选的,一种具体实现方式中,上述步骤S105中,基于各个目标像素点,确定深度图中的各个待检测区域,可以包括如下步骤31-32。

步骤31:在深度图中标记各个目标像素点的差分值、关于各个离群点的第一检测结果和关于各个误差轮廓的第二检测结果,得到目标残差图。

步骤32:对目标残差图进行Blob分析,得到深度图中的缺陷区域。

在得到各个目标像素点、各个离群点和各个误差轮廓后,可以在深度图中标记各个目标像素点的差分值、关于各个离群点的第一检测结果和关于各个误差轮廓的第二检测结果,从而得到上述深度图所对应的目标残差图。通过Blob分析(BlobAnalysis)可以对图像中相同像素的连通域进行分析(该连通域称为Blob),因此,通过对目标残差图进行Blob分析,便可以得到深度图中的缺陷区域。

示例性的,图3(a)为一张关于焊缝的深度图,该深度图对应的目标残差图可以如图3(b)所示。

可选的,上述在深度图中标记关于各个离群点的第一检测结果可以是:针对每个离群点,将该离群点所在的位置周围的指定范围内的各个像素点的差分值标记为第一数值;上述在深度图中标记关于各个误差轮廓的第二检测结果可以是:将各个误差轮廓所对应的各个像素点的差分值标记为第二数值。

可选的,一种具体实现方式中,如图4所示,上述步骤S101:获取待检测工件的深度图,可以包括如下步骤S401。

S401:获取激光轮廓扫描仪对待检测工件进行扫描所生成的待检测工件的深度图。

其中,上述激光轮廓扫描仪扫描待检测工件的方向垂直于待检测对象具有预设轮廓形状的各个截面。

待检测对象在某个方向上的各个截面的轮廓形状可以具有相同的形状特征,例如,焊缝在某个方向上的各个截面的轮廓形状可以近似于抛物线。因此,在利用激光轮廓仪对待检测工件进行扫描时,可以使激光轮廓扫描仪扫描待检测工件的方向垂直于待检测对象具有预设轮廓形状的各个截面,进而,在激光轮廓扫描仪对待检测工件进行扫描所生成的待检测工件的深度图中,基于每行像素所确定的轮廓便可以具有相似的形状。

示例性的,激光轮廓扫描仪对待检测工件上的焊缝进行扫描所生成的深度图可以如图5(a)所示;激光轮廓扫描仪对待检测工件上的胶圈进行扫描所生成的深度图可以如图5(b)所示。可见,在图5(a)中,关于焊缝的每行像素可以具有相似的深度特征;在图5(b)中,关于胶圈的每行像素也可以具有相似的深度特征。

上述步骤S102:利用待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定深度图中属于待检测对象的各个初始定位点,可以包括如下步骤S402。

S402:针对深度图中的每行像素,利用待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定该行像素中属于待检测对象的初始定位点。

针对深度图中的每行像素,利用待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,便可以确定该行像素中属于待检测对象的初始定位点。

示例性的,针对如图5(b)所示的深度图中的每行像素,利用胶圈的预设轮廓形状(圆弧),通过形状拟合,便可以确定该行像素中对应圆弧顶点的初始定位点,从而得到如图6所示的定位结果。

在确定了各行像素中属于待检测对象的初始定位点后,便可以根据待检测对象的宽度,在深度图中的每个初始定位点的两侧选取一定宽度的区间作为关于该初始定位点的待定位区域。

进而,对于每个初始定位点,根据该初始定位点所对应的待定位区域中的各个像素点的深度值以及待检测对象的预设轮廓形状,进行预设轮廓形状拟合,便可以得到该初始定位点对应的拟合轮廓。

相应于上述本申请实施例提供的一种缺陷检测方法,本申请实施例还提供了一种缺陷检测装置。

图7为本申请实施例提供的一种缺陷检测装置的结构示意图,如图7所示,该缺陷检测装置可以包括如下模块:

图像获取模块701,用于获取待检测工件的深度图;

定位点确定模块702,用于利用所述待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定所述深度图中属于所述待检测对象的各个初始定位点;

轮廓拟合模块703,用于针对每个初始定位点,基于所述待检测工件的尺寸,在所述深度图中确定关于该初始定位点的待定位区域,并根据所述待定位区域中的各个像素点的深度值,进行所述预设轮廓形状拟合,得到该初始定位点对应的拟合轮廓;

拟合差分模块704,用于计算每个初始定位点所对应的实际轮廓与拟合轮廓的拟合差分结果,并确定所述拟合差分结果满足预设差分条件的各个目标像素点;

区域确定模块705,用于基于各个目标像素点,确定所述深度图中的各个待检测区域,并对各个待检测区域进行图像特征检测,确定各个待检测区域中的缺陷区域,作为所述待检测对象的缺陷检测结果。

基于此,可以根据待检测工件的深度图确定待检测工件中的待检测对象的缺陷检测结果,从而实现工件表面缺陷的自动检测,提高工件表面缺陷检测的效率和准确度。

可选的,一种具体实现方式中,所述装置还包括:

曲线拟合模块,用于按照预设曲线形状,对所述各个初始定位点进行曲线拟合,得到各个拟合曲线;

离群点确定模块,用于针对每个拟合曲线,确定用于拟合该拟合曲线的各个初始定位点中,距离该拟合曲线的距离大于指定距离的初始定位点,作为离群点;

所述区域确定模块具体用于:

基于各个目标像素点和各个离群点,确定所述深度图中的各个待检测区域。

可选的,一种具体实现方式中,所述装置还包括:

误差计算模块,用于计算每个拟合轮廓的平均拟合误差,并确定所述平均拟合误差大于指定误差的拟合轮廓,作为误差轮廓;

所述区域确定模块具体用于:

基于各个目标像素点、各个离群点和各个误差轮廓,确定所述深度图中的各个待检测区域。

可选的,一种具体实现方式中,所述区域确定模块具体用于:

在所述深度图中标记各个目标像素点的差分值、关于各个离群点的第一检测结果和关于各个误差轮廓的第二检测结果,得到目标残差图;

对所述目标残差图进行Blob分析,得到所述深度图中的缺陷区域。

可选的,一种具体实现方式中,所述图像获取模块具体用于:

获取激光轮廓扫描仪对待检测工件进行扫描所生成的所述待检测工件的深度图;其中,所述激光轮廓扫描仪扫描所述目标工件的方向垂直于所述目标工件具有所述轮廓形状特征的各个截面;

所述定位点确定模块具体用于:

针对所述深度图中的每行像素,利用所述待检测工件中的待检测对象的预设轮廓形状,通过形状拟合,确定该行像素中属于所述待检测对象的初始定位点。

可选的,一种具体实现方式中,

若所述待检测对象为焊缝,则所述待检测对象的预设轮廓形状为抛物线形状;

若所述待检测对象为胶圈,则所述待检测对象的预设轮廓形状为圆形。

可选的,一种具体实现方式中,所述图像特征包括:面积、长轴长度、短轴长度和体积中的至少一个。

本申请实施例还提供了一种电子设备,如图8所示,包括:

存储器801,用于存放计算机程序;

处理器802,用于执行存储器801上所存放的程序时,实现上述任一所述的缺陷检测方法

并且上述电子设备还可以包括通信总线和/或通信接口,处理器802、通信接口、存储器801通过通信总线完成相互间的通信。

上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一缺陷检测方法的步骤。

在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一缺陷检测方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、电子设备实施例、计算机可读存储介质实施例以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的较佳实施例,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

技术分类

06120116501343