表面缺陷检测方法、装置、终端及计算机可读存储介质与流程

文档序号:33625142发布日期:2023-03-25 17:36阅读:82来源:国知局
表面缺陷检测方法、装置、终端及计算机可读存储介质与流程

1.本发明涉及图像处理技术领域,特别是涉及一种表面缺陷检测方法、装置、终端及计算机可读存储介质。


背景技术:

2.我国作为制造业大国,在工厂流水线上每天都在生产大量的产品,产品需要经过检验后,才能出厂,其中一项就是表面缺陷检测。不同的对象会产生不同的缺陷种类,即使相同的对象因为生产工艺不同也会产生不同情况的缺陷。目前的表面缺陷检测方法仅能针对单一的表面进行检测,如针对金属表面,甚至针对钢材表面。且表面缺陷检测方法较为复杂,泛化性能低。


技术实现要素:

3.本发明主要解决的技术问题是提供一种表面缺陷检测方法、装置、终端及计算机可读存储介质,解决现有技术中表面检测方法的泛化性能比较低的问题。
4.为解决上述技术问题,本发明采用的第一个技术方案是:提供一种表面缺陷检测方法,表面缺陷检测方法包括:获取待检测图像,待检测图像为包含待检测目标的表面图像;基于参考图像中各参考子图对待检测图像进行分块处理,得到待检测图像对应的多个待检测子图;参考图像为表面无缺陷的参考目标的图像;对待检测子图进行分析,得到待检测子图的表面特征信息;响应于待检测子图的表面特征信息与参考子图的表面预设信息之间的差异不符合对应的预设要求,则确定待检测目标的表面存在缺陷。
5.其中,获取待检测图像,待检测图像包含待检测目标的步骤之后,基于参考图像中各参考子图对待检测图像进行分块处理,得到待检测图像对应的多个待检测子图的步骤之前,还包括:对获取的待检测图像进行分割处理,得到待检测图像的掩码图像;从待检测图像的掩码图像中提取待检测目标的轮廓,确定待检测目标的轮廓在待检测图像的掩码图像中的位置信息;响应于待检测目标的轮廓的位置信息与参考目标的轮廓在参考图像的掩码图像中的位置信息不一致,则根据参考目标的轮廓的位置信息校正待检测目标的轮廓的位置信息;参考目标的尺寸与待检测目标的尺寸相同。
6.其中,获取待检测图像,之前还包括:获取参考图像;参考图像包含参考目标;响应于参考图像中存在轮廓特征,则基于各轮廓特征划分参考图像得到多个参考子图;响应于参考图像中不存在轮廓特征,则基于各像素点的位置和灰度值划分参考图像得到多个参考子图。
7.其中,参考子图具有第一标识符;表面特征信息包括检测灰度信息;对待检测子图进行分析,得到待检测子图的表面特征信息,包括:响应于待检测子图对应的参考子图具有第一标识符,则对待检测子图进行灰度分析,得到待检测子图的检测灰度信息。
8.其中,参考子图具有第二标识符;表面特征信息包括检测轮廓信息;对待检测子图进行分析,得到待检测子图的表面特征信息,包括:响应于待检测子图对应的参考子图具有
第二标识符,则对待检测子图进行轮廓分析,得到待检测子图的检测轮廓信息。
9.其中,响应于待检测子图的表面特征信息与参考子图的表面预设信息之间的差异不符合对应的预设要求,则确定待检测目标的表面存在缺陷,包括:响应于待检测子图的表面特征信息与参考子图的表面预设信息之间的差异不符合对应的预设要求,则确定待检测子图为缺陷子图;响应于待检测图像中包含至少一个缺陷子图,则确定待检测目标的表面存在缺陷。
10.其中,表面缺陷检测方法,还包括:对待检测图像中的缺陷子图进行缺陷类型识别,得到待检测目标的缺陷类别。
11.其中,对待检测图像中的缺陷子图进行缺陷类型识别,得到待检测目标的缺陷类别,包括:基于缺陷子图的表面特征信息与对应位置的参考子图的表面预设信息之间的差值,确定缺陷子图的缺陷等级;基于缺陷子图的缺陷等级以及尺寸,确定是否需要将缺陷子图与其他邻近的缺陷子图进行合并再进行缺陷类型识别得到缺陷子图对应的缺陷类别。
12.其中,表面特征信息包括检测灰度信息和检测轮廓信息;基于缺陷子图的表面特征信息与对应位置的参考子图的表面预设信息之间的差值,确定缺陷子图的缺陷等级,包括:基于缺陷子图的检测灰度信息与对应位置的参考子图的预设灰度信息之间的第一差值,确定缺陷子图的第一缺陷等级;基于缺陷子图的检测轮廓信息与对应位置的参考子图的预设轮廓信息之间的第二差值,确定缺陷子图的第二缺陷等级;基于缺陷子图对应的第一缺陷等级和第二缺陷等级的加权和,确定缺陷子图的缺陷等级。
13.其中,基于缺陷子图的缺陷等级以及尺寸,确定是否需要将缺陷子图与其他邻近的缺陷子图进行合并再进行缺陷类型识别得到缺陷子图对应的缺陷类别,包括:响应于缺陷子图的缺陷等级未超过预设等级且缺陷子图的尺寸超过预设尺寸,则对缺陷子图直接进行缺陷类型识别得到缺陷子图对应的缺陷类别。
14.其中,基于缺陷子图的缺陷等级以及尺寸,确定是否需要将缺陷子图与其他邻近的缺陷子图进行合并再进行缺陷类型识别得到缺陷子图对应的缺陷类别,包括:响应于缺陷子图的缺陷等级超过预设等级且缺陷子图的尺寸未超过预设尺寸,则将缺陷子图与邻近的缺陷子图进行合并得到缺陷合并子图;对缺陷合并子图进行缺陷类型识别得到缺陷子图对应的缺陷类别。
15.其中,基于缺陷子图的缺陷等级以及尺寸,确定是否需要将缺陷子图与其他邻近的缺陷子图进行合并再进行缺陷类型识别得到缺陷子图对应的缺陷类别,包括:响应于缺陷子图的缺陷等级超过预设等级且缺陷子图的尺寸超过预设尺寸,或,缺陷子图的缺陷等级未超过预设等级且缺陷子图的尺寸未超过预设尺寸,则将缺陷子图与位置邻近且缺陷等级邻近的缺陷子图进行合并得到缺陷合并子图;对缺陷合并子图进行缺陷类型识别得到缺陷子图对应的缺陷类别。
16.为解决上述技术问题,本发明采用的第二个技术方案是:提供一种表面缺陷检测装置,表面缺陷检测装置包括:获取模块,用于获取待检测图像,待检测图像为待检测目标的表面图像;分割模块,用于基于参考图像中各参考子图对待检测图像进行分块处理,得到待检测图像对应的多个待检测子图;参考图像为表面无缺陷的参考目标的图像;分析模块,用于对待检测子图进行分析,得到待检测子图的表面特征信息;确定模块,用于响应于待检测子图的表面特征信息与参考子图的表面预设信息之间的差异不符合对应的预设要求,则
确定待检测目标的表面存在缺陷。
17.为解决上述技术问题,本发明采用的第三个技术方案是:提供一种终端,该终端包括存储器、处理器以及存储于存储器中并在处理器上运行的计算机程序,处理器用于执行程序数据以实现上述表面缺陷检测方法中的步骤。
18.为解决上述技术问题,本发明采用的第四个技术方案是:提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述表面缺陷检测方法中的步骤。
19.本发明的有益效果是:区别于现有技术的情况,提供的一种表面缺陷检测方法、装置、终端及计算机可读存储介质,表面缺陷检测方法包括:获取待检测图像,待检测图像为包含待检测目标的表面图像;基于参考图像中各参考子图对待检测图像进行分块处理,得到待检测图像对应的多个待检测子图;参考图像为表面无缺陷的参考目标的图像;对待检测子图进行分析,得到待检测子图的表面特征信息;响应于待检测子图的表面特征信息与参考子图的表面预设信息之间的差异不符合对应的预设要求,则确定待检测目标的表面存在缺陷。本技术根据参考图像中的各参考子图对待检测图像进行分块处理得到待检测子图,对待检测子图进行表面特征分析,确定待检测子图的表面特征信息,根据待检测子图与对应的参考子图之间表面特征差异,确定待检测目标的表面是否存在缺陷,该方法不局限待检测目标的类型,进而提高了表面缺陷检测方法的泛化性能。
附图说明
20.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
21.图1是本发明提供的表面缺陷检测方法的流程示意图;
22.图2是本发明提供的表面缺陷检测方法一具体实施例的流程示意图;
23.图3是图2提供的表面缺陷检测方法中步骤s210一具体实施例的流程示意图;
24.图4是本发明提供的表面缺陷检测装置一实施例的框架示意图;
25.图5是本发明提供的表面缺陷检测装置另一实施例的框架示意图;
26.图6是本技术提供的终端一实施例的框架示意图;
27.图7为本技术提供的计算机可读存储介质一实施例的框架示意图。
具体实施方式
28.下面结合说明书附图,对本技术实施例的方案进行详细说明。
29.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本技术。
30.本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
31.为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明所提供的一种表面缺陷检测方法做进一步详细描述。
32.随着机器视觉、机器学习和深度学习等技术的发展,目前已经有很多的方法已经被应用到了表面缺陷检测这个领域,但目前的方法都比较具有针对性,如针对金属表面的,甚至直接针对钢材表面的,方法较为复杂,无法一个方法用于较多对象。
33.请参阅图1,图1是本发明提供的表面缺陷检测方法的流程示意图。本实施例中提供一种表面缺陷检测方法,该表面缺陷检测方法包括如下步骤。
34.s11:获取待检测图像。
35.具体地,待检测图像包含待检测目标。
36.在一实施例中,获取参考图像;参考图像包含参考目标;响应于参考图像中存在轮廓特征,则基于各轮廓特征划分参考图像得到参考子图;响应于参考图像中不存在轮廓特征,则基于各像素点的位置和灰度值划分参考图像得到参考子图。其中,参考子图具有第一标识符和第二标识符。
37.s12:基于参考图像中各参考子图对待检测图像进行分块处理,得到待检测图像对应的多个待检测子图。
38.对获取的待检测图像进行分割处理,得到待检测图像的掩码图像;从待检测图像的掩码图像中提取待检测目标的轮廓,确定待检测目标的轮廓在待检测图像的掩码图像中的位置信息;响应于待检测目标的轮廓的位置信息与参考目标的轮廓在参考图像的掩码图像中的位置信息不一致,则根据参考目标的轮廓的位置信息校正待检测目标的轮廓的位置信息;参考目标的尺寸与待检测目标的尺寸相同。
39.响应于参考图像的尺寸与待检测目标的尺寸相同,且待检测目标在待检测图像的位置信息与参考目标在参考图像中的位置信息一致,则基于参考图像中各参考子图对待检测图像进行分块处理。其中,待检测目标与参考目标相同。其中,参考图像为表面无缺陷的参考目标的图像。
40.s13:对待检测子图进行分析,得到待检测子图的表面特征信息。
41.具体地,表面特征信息包括检测灰度信息、检测轮廓信息中的至少一个。
42.在一实施例中,响应于待检测子图对应的参考子图具有第一标识符,则对待检测子图进行灰度分析,得到待检测子图的检测灰度信息;检测灰度信息包括最大灰度值、最小灰度值、灰度平均值、灰度方差值、灰度直方图中的至少一种。
43.在一实施例中,响应于待检测子图对应的参考子图具有第二标识符,则对待检测子图进行轮廓分析,得到待检测子图的检测轮廓信息;检测轮廓信息包括轮廓形状、轮廓面积、轮廓数量、轮廓位置、轮廓周长中的至少一种。
44.s14:响应于待检测子图的表面特征信息与参考子图的表面预设信息之间的差异不符合对应的预设要求,则确定待检测目标的表面存在缺陷。
45.具体地,响应于待检测子图的检测灰度信息与参考子图的预设灰度信息之间的灰度差异或待检测子图的检测轮廓信息与参考子图的预设轮廓信息之间的轮廓差异不符合对应的预设要求,则确定待检测目标的表面存在缺陷。
46.具体地,响应于待检测子图的表面特征信息与参考子图的表面预设信息之间的差异不符合对应的预设要求,则确定待检测子图为缺陷子图;响应于待检测图像中包含至少
一个缺陷子图,则确定待检测目标的表面存在缺陷。
47.在一实施例中,对待检测图像中的缺陷子图进行缺陷类型识别,得到待检测目标的缺陷类别。
48.基于缺陷子图的表面特征信息与对应位置的参考子图的表面预设信息之间的差值,确定缺陷子图的缺陷等级;基于缺陷子图的缺陷等级以及尺寸,确定是否需要将缺陷子图与其他邻近的缺陷子图进行合并再进行缺陷类型识别得到缺陷子图对应的缺陷类别。
49.在一实施例中,基于缺陷子图的检测灰度信息与对应位置的参考子图的预设灰度信息之间的第一差值和/或缺陷子图的检测轮廓信息与对应位置的参考子图的预设轮廓信息之间的第二差值,确定缺陷子图的缺陷等级;基于缺陷子图的缺陷等级以及尺寸,确定是否需要将缺陷子图与其他邻近的缺陷子图进行合并再进行缺陷类型识别得到缺陷子图对应的缺陷类别。
50.在一实施例中,基于缺陷子图的检测灰度信息与对应位置的参考子图的预设灰度信息之间的第一差值,确定缺陷子图的第一缺陷等级;基于缺陷子图的检测轮廓信息与对应位置的参考子图的预设轮廓信息之间的第二差值,确定缺陷子图的第二缺陷等级;基于缺陷子图对应的第一缺陷等级和第二缺陷等级的加权和,确定缺陷子图的缺陷等级。
51.在一实施例中,响应于缺陷子图的缺陷等级未超过预设等级且缺陷子图的尺寸超过预设尺寸,则对缺陷子图直接进行缺陷类型识别得到缺陷子图对应的缺陷类别。
52.在一具体实施例中,响应于缺陷子图的缺陷等级超过预设等级且缺陷子图的尺寸未超过预设尺寸,则将缺陷子图与邻近的缺陷子图进行合并得到缺陷合并子图;对缺陷合并子图进行缺陷类型识别得到缺陷子图对应的缺陷类别。
53.在一具体实施例中,响应于缺陷子图的缺陷等级超过预设等级且缺陷子图的尺寸超过预设尺寸,或,缺陷子图的缺陷等级未超过预设等级且缺陷子图的尺寸未超过预设尺寸,则将缺陷子图与位置邻近且缺陷等级邻近的缺陷子图进行合并得到缺陷合并子图;对缺陷合并子图进行缺陷类型识别得到缺陷子图对应的缺陷类别。
54.本技术提供的表面缺陷检测方法通过获取待检测图像,待检测图像包含待检测目标;基于参考图像中各参考子图对待检测图像进行分块处理,得到待检测图像对应的多个待检测子图;参考图像为表面无缺陷的参考目标的图像;对待检测子图进行分析,得到待检测子图的检测灰度信息和/或检测轮廓信息;响应于待检测子图的检测灰度信息与参考子图的预设灰度信息之间的灰度差异或待检测子图的检测轮廓信息与参考子图的预设轮廓信息之间的轮廓差异不符合对应的预设要求,则确定待检测目标的表面存在缺陷。本技术根据参考图像中的各参考子图对待检测图像进行分块处理得到待检测子图,对待检测子图进行灰度分析和/或轮廓分析,确定待检测子图的检测灰度信息、检测轮廓信息,根据待检测子图与对应的参考子图之间灰度差异、轮廓差异,确定待检测目标的表面是否存在缺陷,该方法不局限待检测目标的类型,进而提高了表面缺陷检测方法的泛化性能。
55.请参阅图2,图2是本发明提供的表面缺陷检测方法一具体实施例的流程示意图。本实施例中提供一种表面缺陷检测方法,该方法适用于待检测目标具有符合标准的参照目标,且符合标准的参照目标可以作为待检测目标的参照物。表面缺陷检测方法包括如下步骤。
56.s201:获取参考图像。
57.具体地,参考图像包含参考目标。参考图像仅为表面无缺陷的参考目标的表面图像。
58.在流水线上安装图像采集设备,调节图像采集设备的视场角、位置和参数等,使图像采集设备的镜头可以采集到需要识别的待检测目标的所在区域。具体地,通过调节光源的数量、位置和光源的种类等,方便采集的图像在后续处理中可以将前景区域和背景区域很好的区分。通过调节摄像头的曝光时间,使图像采集设备采集流水线上的运动目标的图像不模糊。其中,相邻两张图像可以具有重叠。
59.在一实施例中,通过图像采集设备采集符合标准的目标的表面图像,符合标准的目标为表面无缺陷的参照目标。将采集的表面无缺陷的标准图像作为参考图像。其中,参考图像不包含背景图像。
60.在一具体实施例中,对采集表面无缺陷的标准目标的表面图像进行二值化处理,得到表面图像的掩码图像,基于掩码图像中前景区域的位置和前景区域的轮廓从表面图像中提取区域图像,作为参考图像。在其他实施例中,也可以通过其他方式将前景图像和背景图像区分,以得到前景图像,作为参考图像。
61.s202:响应于参考图像中存在轮廓特征,则基于各轮廓特征划分参考图像得到参考子图。
62.具体地,通过判断参考图像对应的掩码图像中是否存在轮廓特征。其中,轮廓特征包括圆孔、凸起、凹陷等具有明显区别于平整表面的特征。
63.如果参考图像中存在轮廓特征,则根据各个轮廓特征将参考图像划分为参考图像,得到多个参考子图。具体地,将一个圆孔所在区域划分到一个参考子图,将一个凸起或一个凹陷所在区域划分到一个参考子图。
64.s203:响应于参考图像中不存在轮廓特征,则基于各像素点的位置和灰度值划分参考图像得到参考子图。
65.具体地,如果参考图像中不存在轮廓特征,则可以根据参考图像中各像素点的位置和灰度值对参考图像进行划分。由于具有同一特征的表面对应的像素点的灰度值是相近的,可以基于相近的灰度值将参考图像划分为多个参考子图。
66.具体地,计算位置相邻的两个像素点分别对应的灰度值之间的差值。响应于差值超过阈值,则从两个像素点之间划分参考图像。遍历参考图像中的所有位置相邻的像素点,确定参考图像中的划分界限。基于划分界限将参考图像划分为多个参考子图。
67.在另一实施例中,也可以根据实际情况自行对参考图像进行分块,得到参考图像对应的多个参考子图。其中,多个参考子图的尺寸可以均不相同,也可以部分相同或完全相同。例如,参考子图的尺寸可以为16*16、32*32、4*80等。
68.在一实施例中,由于参考子图中包含的特征各异,可以对参考子图仅进行灰度分析或轮廓分析,以减少计算量、加快运算速率,同时还能识别缺陷。进而根据参考子图中是否存在明显轮廓特征,确定对参考子图进行关联标识符。具体地,参考子图关联有第一标识符和/或第二标识符。
69.当参考子图仅关联有第一标识符,则只对参考子图进行灰度分析。具体地,根据各参考子图中包含的所有像素点的灰度值,确定各参考子图对应的预设灰度信息。其中,参考子图的预设灰度信息包括最大灰度值、最小灰度值、平均灰度值、灰度方差值和灰度直方
图。
70.当参考子图仅关联有第二标识符,则只对参考子图进行轮廓分析。具体地,对各参考子图进行二值化处理,得到各参考子图的掩码图像。对参考子图的掩码图像进行轮廓提取,得到各参考子图的预设轮廓信息。其中,参考子图的预设轮廓信息包括轮廓形状、轮廓面积、轮廓数量、轮廓位置、轮廓周长。
71.当参考子图既关联有第一标识符和第二标识符,则需要对参考子图进行灰度分析和轮廓分析。
72.s204:获取待检测图像。
73.具体地,待检测图像包含待检测目标。
74.在一实施例中,对获取的待检测图像进行二值化处理,得到待检测图像的掩码图像。从待检测图像的掩码图像中提取待检测目标的轮廓,确定待检测目标的轮廓在待检测图像的掩码图像中的位置信息。
75.响应于待检测目标的轮廓的位置信息与参考目标的轮廓在参考图像的掩码图像中的位置信息不一致,则根据参考目标的轮廓的位置信息校正待检测目标的轮廓的位置信息;参考目标的尺寸与待检测目标的尺寸相同。其中,待检测图像为待检测目标的待检测表面的图像。
76.在一具体实施例中,可以初步将待检测目标的轮廓与参考目标的轮廓进行比对。响应于待检测目标的轮廓与参考目标的轮廓的尺寸和形状均一致,则更进一步对待检测目标进行轮廓分析和/或灰度分析。响应于待检测目标的轮廓与参考目标的轮廓的尺寸或形状不一致,则为了减少计算量,直接确定待检测目标的表面存在缺陷,不需要对待检测目标进行轮廓分析和/或灰度分析。
77.s205:基于参考图像中各参考子图对待检测图像进行分块处理,得到待检测图像对应的多个待检测子图。
78.具体地,将划分参考图像的划分界限的位置映射到待检测图像中,对待检测图像进行分块处理得到多个待检测子图。其中,待检测图像中的各待检测子图的尺寸大小与参考图像中对应位置的参考子图的尺寸的形状一致。待检测图像中的待检测子图与参考图像中的参考子图一一对应。
79.s206:响应于待检测子图对应的参考子图具有第一标识符,则对待检测子图进行灰度分析,得到待检测子图的检测灰度信息。
80.具体地,响应于待检测子图对应的参考子图具有第一标识符,则对参考子图对应的待检测子图进行灰度分析,得到待检测子图的检测灰度信息。其中,检测灰度信息包括最大灰度值、最小灰度值、灰度平均值、灰度方差值、灰度直方图中的至少一种。
81.s207:响应于待检测子图对应的参考子图具有第二标识符,则对待检测子图进行轮廓分析,得到待检测子图的检测轮廓信息。
82.具体地,响应于待检测子图对应的参考子图具有第二标识符,则对参考子图对应的待检测子图进行轮廓分析,得到待检测子图的检测轮廓信息。其中,检测轮廓信息包括轮廓形状、轮廓面积、轮廓数量、轮廓位置、轮廓周长中的至少一种。
83.s208:响应于待检测子图的检测灰度信息与参考子图的预设灰度信息之间的灰度差异或待检测子图的检测轮廓信息与参考子图的预设轮廓信息之间的轮廓差异不符合对
应的预设要求,则确定待检测子图为缺陷子图。
84.具体地,响应于待检测子图对应的参考子图具有第一标识符,计算位置对应的待检测子图的检测灰度信息与参考子图的预设灰度信息之间的灰度差异,基于待检测子图和参考子图之间的灰度差异是否符合预设要求,确定待检测子图是否为缺陷子图。
85.在一实施例中,判断待检测子图的最大灰度值与参考子图的最大灰度值之间的差值是否大于阈值。如果待检测子图的最大灰度值与参考子图的最大灰度值之间的差值大于阈值,则确定待检测子图为缺陷子图。如果待检测子图的最大灰度值与参考子图的最大灰度值之间的差值不大于阈值,则确定待检测子图为无缺陷子图。遍历待检测图像包含的所有待检测子图,确定所有的待检测子图是缺陷子图还是无缺陷子图。
86.在一具体实施例中,响应于待检测子图的灰度平均值与参考子图的灰度平均值之间的差值大于阈值,则直接确定待检测子图为缺陷子图。
87.在另一具体实施例中,响应于待检测子图的最大灰度值与参考子图的最大灰度值之间的差值大于阈值,且待检测子图的最小灰度值与参考子图的最小灰度值之间的差值大于阈值,才可确定待检测子图为缺陷子图。
88.响应于待检测子图对应的参考子图具有第二标识符,计算位置对应的待检测子图的检测轮廓信息与参考子图的预设轮廓信息之间的轮廓差异,基于待检测子图和参考子图之间的轮廓差异是否符合预设要求,确定待检测子图是否为缺陷子图。
89.在一实施例中,判断待检测子图的轮廓形状与参考子图的轮廓形状之间的相似度是否大于阈值。如果待检测子图的轮廓形状与参考子图的轮廓形状之间的相似度大于阈值,则确定待检测子图为无缺陷子图。如果待检测子图的轮廓形状与参考子图的轮廓形状之间的相似度不大于阈值,则确定待检测子图为缺陷子图。遍历待检测图像包含的所有待检测子图,确定所有的待检测子图是缺陷子图还是无缺陷子图。
90.在一实施例中,判断待检测子图的轮廓位置/轮廓周长/轮廓数量与参考子图的轮廓位置/轮廓周长/轮廓数量之间的差值是否大于阈值。如果待检测子图的轮廓位置/轮廓周长/轮廓数量与参考子图的轮廓位置/轮廓周长/轮廓数量之间的差值大于阈值,则确定待检测子图为缺陷子图。如果待检测子图的轮廓位置/轮廓周长/轮廓数量与参考子图的轮廓位置/轮廓周长/轮廓数量之间的差值不大于阈值,则确定待检测子图为无缺陷子图。
91.s209:响应于待检测图像中包含至少一个缺陷子图,则确定待检测目标的表面存在缺陷。
92.具体地,如果待检测图像中存在一个缺陷子图,则直接确定待检测图像存在缺陷,待检测图像中的待检测目标存在缺陷。
93.s210:对待检测图像中的缺陷子图进行缺陷类型识别,得到待检测目标的缺陷类别。
94.具体地,对待检测图像中的缺陷类别进行识别的具体步骤如下。
95.请参阅图3,图3是图2提供的表面缺陷检测方法中步骤s210一具体实施例的流程示意图。
96.s2101:基于缺陷子图的检测灰度信息与对应位置的参考子图的预设灰度信息之间的第一差值和/或缺陷子图的检测轮廓信息与对应位置的参考子图的预设轮廓信息之间的第二差值,确定缺陷子图的缺陷等级。
97.具体地,基于缺陷子图的检测灰度信息与对应位置的参考子图的预设灰度信息之间的第一差值,确定缺陷子图的第一缺陷等级;基于缺陷子图的检测轮廓信息与对应位置的参考子图的预设轮廓信息之间的第二差值,确定缺陷子图的第二缺陷等级;基于缺陷子图对应的第一缺陷等级和第二缺陷等级的加权和,确定缺陷子图的缺陷等级。其中,第一缺陷等级的加权系数和第二缺陷等级的加权系数可以根据经验自行设置。
98.在一具体实施例中,基于如下公式1计算灰度缺陷值tmp_level_gray_i。
99.tmp_level_gray_i=k_min_i*diff_min_i+k_max_i*diff_max_i+k_mean_i*diff_mean_i+k_var_i*diff_var_i
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(公式1)
100.公式1中:tmp_level_gray_i表示缺陷子图的灰度缺陷值,k_min_i、k_max_i、k_mean_i和k_var_i表示加权系数,且k_min_i+k_max_i+k_mean_i+k_var_i=1,diff_min_i表示最小灰度值的偏差值,diff_max_i表示最大灰度值的偏差值,diff_mean_i表示灰度平均值的偏差值,diff_var_i表示灰度方差值的偏差值。
101.其中,最小灰度值的偏差值通过缺陷子图的最小灰度值与参考子图的最小灰度值之差的绝对值与阈值进行作差确定。最大灰度值的偏差值通过缺陷子图的最大灰度值与参考子图的最大灰度值之差的绝对值与阈值进行作差确定。灰度平均值的偏差值通过缺陷子图的灰度平均值与参考子图的灰度平均值之差的绝对值与阈值进行作差确定。灰度方差值的偏差值通过缺陷子图的灰度方差值与参考子图的灰度方差值之差的绝对值与阈值进行作差确定。
102.响应于缺陷子图的最小灰度值与参考子图的最小灰度值之差的绝对值不大于阈值,则确定最小灰度值的偏差值为0。响应于缺陷子图的最大灰度值与参考子图的最大灰度值之差的绝对值不大于阈值,则确定最大灰度值的偏差值为0。响应于缺陷子图的灰度平均值与参考子图的灰度平均值之差的绝对值不大于阈值,则确定灰度平均值的偏差值为0。响应于缺陷子图的灰度方差值与参考子图的灰度方差值之差的绝对值不大于阈值,则确定灰度方差值的偏差值为0。
103.根据缺陷子图的灰度缺陷值确定缺陷子图的灰度缺陷等级,灰度缺陷等级作为第一缺陷等级。具体地,预先设置有多个预设灰度缺陷范围,例如,预设灰度缺陷范围为五个缺陷范围,五个缺陷范围分别为0、(0,10]、(10,40]、(40,100),100。五个缺陷范围分别对应五个缺陷等级,0对应0级,(0,10]对应1级,(10,40]对应2级,(40,100)对应3级,100对应4级。其中,预设灰度缺陷范围以及对应的缺陷等级根据实际情况自行设定。
104.在一具体实施例中,基于如下公式2计算轮廓缺陷值tmp_level_contours_i。
105.tmp_level_contours_i=k_circumference_i*diff_circumference_i+k_position_i*diff_position_i
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(公式2)
106.公式2中:tmp_level_contours_i表示缺陷子图的轮廓缺陷值,k_circumference_i、k_position_i表示加权系数,且k_circumference_i+k_position_i=1,diff_circumference_i表示轮廓周长的偏差值,diff_position_i表示轮廓中心点的偏差值。
107.其中,轮廓周长的偏差值通过缺陷子图的轮廓周长与参考子图的轮廓周长之差的绝对值与阈值进行作差确定。轮廓中心点的偏差值通过缺陷子图的轮廓中心点与参考子图的轮廓中心点之差的绝对值与阈值进行作差确定。
108.响应于缺陷子图的轮廓周长与参考子图的轮廓周长之差的绝对值不大于阈值,则
确定轮廓周长的偏差值为0。响应于缺陷子图的轮廓中心点与参考子图的轮廓中心点之差的绝对值不大于阈值,则确定轮廓中心点的偏差值为0。
109.根据缺陷子图的轮廓缺陷值确定缺陷子图的轮廓缺陷等级,轮廓缺陷等级作为第二缺陷等级。具体地,预先设置有多个预设轮廓缺陷范围,例如,预设轮廓缺陷范围为五个缺陷范围,五个缺陷范围分别为0、(0,1]、(1,4]、(4,10),10。五个缺陷范围分别对应五个缺陷等级,0对应0级,(0,1]对应1级,(1,4]对应2级,(4,10)对应3级,10对应4级。其中,预设轮廓缺陷范围以及对应的缺陷等级根据实际情况自行设定。
110.s2102:基于缺陷子图的缺陷等级以及尺寸,确定是否需要将缺陷子图与其他邻近的缺陷子图进行合并再进行缺陷类型识别得到缺陷子图对应的缺陷类别。
111.具体地,响应于缺陷子图的缺陷等级未超过预设等级且缺陷子图的尺寸超过预设尺寸,则对缺陷子图直接进行缺陷类型识别得到缺陷子图对应的缺陷类别。
112.在一具体实施例中,响应于缺陷子图的缺陷等级超过预设等级且缺陷子图的尺寸未超过预设尺寸,则将缺陷子图与邻近的缺陷子图进行合并得到缺陷合并子图;对缺陷合并子图进行缺陷类型识别得到缺陷子图对应的缺陷类别。
113.在另一具体实施例中,响应于缺陷子图的缺陷等级超过预设等级且缺陷子图的尺寸超过预设尺寸,或,缺陷子图的缺陷等级未超过预设等级且缺陷子图的尺寸未超过预设尺寸,则将缺陷子图与位置邻近且缺陷等级邻近的缺陷子图进行合并得到缺陷合并子图;对缺陷合并子图进行缺陷类型识别得到缺陷子图对应的缺陷类别。
114.在其他实施例中,也可以根据深度学习网络或分类识别模块对缺陷子图中的缺陷类别进行识别。
115.本技术提供的表面缺陷检测方法包括:获取待检测图像,待检测图像包含待检测目标;基于参考图像中各参考子图对待检测图像进行分块处理,得到待检测图像对应的多个待检测子图;参考图像为表面无缺陷的参考目标的图像;对待检测子图进行分析,得到待检测子图的检测灰度信息和/或检测轮廓信息;响应于待检测子图的检测灰度信息与参考子图的预设灰度信息之间的灰度差异或待检测子图的检测轮廓信息与参考子图的预设轮廓信息之间的轮廓差异不符合对应的预设要求,则确定待检测目标的表面存在缺陷。本技术根据参考图像中的各参考子图对待检测图像进行分块处理得到待检测子图,对待检测子图进行灰度分析和/或轮廓分析,确定待检测子图的检测灰度信息、检测轮廓信息,根据待检测子图与对应的参考子图之间灰度差异、轮廓差异,确定待检测目标的表面是否存在缺陷,该方法不局限待检测目标的类型,进而提高了表面缺陷检测方法的泛化性能。
116.参阅图4,图4是本发明提供的表面缺陷检测装置一实施例的框架示意图。本实施例提供一种表面缺陷检测装置60,表面缺陷检测装置60包括获取模块61、分割模块62、分析模块63和确定模块64。
117.获取模块61用于获取待检测图像,待检测图像包含待检测目标。
118.分割模块62用于基于参考图像中各参考子图对待检测图像进行分块处理,得到待检测图像对应的多个待检测子图;参考图像为表面无缺陷的参考目标的图像。
119.分析模块63用于对待检测子图进行分析,得到待检测子图的表面特征信息。表面特征信息包括检测灰度信息和检测轮廓信息中的至少一个。
120.确定模块64用于响应于待检测子图的表面特征信息与参考子图的表面预设信息
之间的差异不符合对应的预设要求,则确定待检测目标的表面存在缺陷。
121.获取模块61还用于对获取的待检测图像进行分割处理,得到待检测图像的掩码图像;从待检测图像的掩码图像中提取待检测目标的轮廓,确定待检测目标的轮廓在待检测图像的掩码图像中的位置信息;响应于待检测目标的轮廓的位置信息与参考目标的轮廓在参考图像的掩码图像中的位置信息不一致,则根据参考目标的轮廓的位置信息校正待检测目标的轮廓的位置信息;参考目标的尺寸与待检测目标的尺寸相同。
122.获取模块61还用于获取参考图像;参考图像包含参考目标;响应于参考图像中存在轮廓特征,则基于各轮廓特征划分参考图像得到多个参考子图;响应于参考图像中不存在轮廓特征,则基于各像素点的位置和灰度值划分参考图像得到多个参考子图。
123.分析模块63用于响应于待检测子图对应的参考子图具有第一标识符,则对待检测子图进行灰度分析,得到待检测子图的检测灰度信息;检测灰度信息包括最大灰度值、最小灰度值、灰度平均值、灰度方差值、灰度直方图中的至少一种。
124.分析模块63还用于响应于待检测子图对应的参考子图具有第二标识符,则对待检测子图进行轮廓分析,得到待检测子图的检测轮廓信息;检测轮廓信息包括轮廓形状、轮廓面积、轮廓数量、轮廓位置、轮廓周长中的至少一种。
125.确定模块64用于响应于待检测子图的表面特征信息与参考子图的表面预设信息之间的差异不符合对应的预设要求,则确定待检测子图为缺陷子图;响应于待检测图像中包含至少一个缺陷子图,则确定待检测目标的表面存在缺陷。
126.请参阅图5,图5是本发明提供的表面缺陷检测装置另一实施例的框架示意图。
127.在一实施例中,表面缺陷检测装置60还包括缺陷类别识别模块65。缺陷类别识别模块65用于对待检测图像中的缺陷子图进行缺陷类型识别,得到待检测目标的缺陷类别。
128.缺陷类别识别模块65还用于基于缺陷子图的表面特征信息与对应位置的参考子图的表面预设信息之间的差值,确定缺陷子图的缺陷等级;基于缺陷子图的缺陷等级以及尺寸,确定是否需要将缺陷子图与其他邻近的缺陷子图进行合并再进行缺陷类型识别得到缺陷子图对应的缺陷类别。
129.具体地,缺陷类别识别模块65还用于基于缺陷子图的检测灰度信息与对应位置的参考子图的预设灰度信息之间的第一差值和/或缺陷子图的检测轮廓信息与对应位置的参考子图的预设轮廓信息之间的第二差值,确定缺陷子图的缺陷等级;基于缺陷子图的缺陷等级以及尺寸,确定是否需要将缺陷子图与其他邻近的缺陷子图进行合并再进行缺陷类型识别得到缺陷子图对应的缺陷类别。
130.缺陷类别识别模块65还用于基于缺陷子图的检测灰度信息与对应位置的参考子图的预设灰度信息之间的第一差值,确定缺陷子图的第一缺陷等级;基于缺陷子图的检测轮廓信息与对应位置的参考子图的预设轮廓信息之间的第二差值,确定缺陷子图的第二缺陷等级;基于缺陷子图对应的第一缺陷等级和第二缺陷等级的加权和,确定缺陷子图的缺陷等级。
131.缺陷类别识别模块65还用于响应于缺陷子图的缺陷等级未超过预设等级且缺陷子图的尺寸超过预设尺寸,则对缺陷子图直接进行缺陷类型识别得到缺陷子图对应的缺陷类别。
132.缺陷类别识别模块65还用于响应于缺陷子图的缺陷等级超过预设等级且缺陷子
图的尺寸未超过预设尺寸,则将缺陷子图与邻近的缺陷子图进行合并得到缺陷合并子图;对缺陷合并子图进行缺陷类型识别得到缺陷子图对应的缺陷类别。
133.缺陷类别识别模块65还用于响应于缺陷子图的缺陷等级超过预设等级且缺陷子图的尺寸超过预设尺寸,或,缺陷子图的缺陷等级未超过预设等级且缺陷子图的尺寸未超过预设尺寸,则将缺陷子图与位置邻近且缺陷等级邻近的缺陷子图进行合并得到缺陷合并子图;对缺陷合并子图进行缺陷类型识别得到缺陷子图对应的缺陷类别。
134.本实施例提供的表面缺陷检测装置,根据参考图像中的各参考子图对待检测图像进行分块处理得到待检测子图,对待检测子图进行灰度分析和/或轮廓分析,确定待检测子图的检测灰度信息、检测轮廓信息,根据待检测子图与对应的参考子图之间灰度差异、轮廓差异,确定待检测目标的表面是否存在缺陷,该方法不局限待检测目标的类型,进而提高了表面缺陷检测方法的泛化性能。
135.请参阅图6,图6是本技术提供的终端一实施例的框架示意图。终端80包括相互耦接的存储器81和处理器82,处理器82用于执行存储器81中存储的程序指令,以实现上述任一表面缺陷检测方法实施例的步骤。在一个具体的实施场景中,终端80可以包括但不限于:微型计算机、服务器,此外,终端80还可以包括笔记本电脑、平板电脑等移动设备,在此不做限定。
136.具体而言,处理器82用于控制其自身以及存储器81以实现上述任一表面缺陷检测方法实施例的步骤。处理器82还可以称为cpu(central processing unit,中央处理单元)。处理器82可能是一种集成电路芯片,具有信号的处理能力。处理器82还可以是通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器82可以由集成电路芯片共同实现。
137.请参阅图7,图7为本技术提供的计算机可读存储介质一实施例的框架示意图。计算机可读存储介质90存储有能够被处理器运行的程序指令901,程序指令901用于实现上述任一表面缺陷检测方法实施例的步骤。
138.在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
139.上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
140.在本技术所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
141.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以
是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
142.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
143.若本技术技术方案涉及个人信息,应用本技术技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本技术技术方案涉及敏感个人信息,应用本技术技术方案的产品在处理敏感个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。
144.以上仅为本发明的实施方式,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1