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

基于机器视觉的目标检测方法、装置、电子设备以及介质

文献发布时间:2023-06-19 19:28:50


基于机器视觉的目标检测方法、装置、电子设备以及介质

技术领域

本发明涉及图像识别技术领域,尤其涉及一种基于机器视觉的目标检测方法、装置、电子设备以及介质。

背景技术

在目标检测领域,在图像中进行缺陷检测的要求越来越高,不仅要检出明显、尺寸很大的缺陷,而且对于微小、不明显的缺陷也要检测出来。

相关方案中,对于明显、尺寸很大的缺陷不必采用高分辨率图像就可以检出,而对于微小、不明显的缺陷而言,缺陷在图像中占用的像素非常低,通常采用视野和精度较高的相机得到高分辨率图像进行检测,比如达到8192x15000甚至更高分辨率的图像进行缺陷检测。

但是,采用高分辨率图像进行缺陷检测时存在以下问题,一方面会占用较大的显存空间,对于普通的GPU显存来说,处理高分辨率图像经常会出现显存溢出的问题,无法很好应用;另一方面是微小缺陷在图像中占比很小,其在整幅图像中占比很低信息特征会丢失甚至消失,导致无法检出。

发明内容

本发明提供了一种基于机器视觉的目标检测方法、装置、电子设备以及介质,以解决对高清图像中缺陷检测存在的检出率低和高计算量的问题。

根据本发明的一方面,提供了一种基于机器视觉的目标检测方法,所述方法包括:

确定待检测目标的待检测图像;

确定所述待检测图像采用的至少两个目标滑动窗口,采用所述目标滑动窗口对待检测图像进行切分得到对应的待检测切分子图像,所述至少两个目标滑动窗口包括至少两个不同预设尺寸的滑动窗口;

依据所述至少两个目标滑动窗口切分的待检测切分子图像,对所述待检测目标进行缺陷检测。

根据本发明的另一方面,提供了一种基于机器视觉的目标检测装置,所述装置包括:

图像确定模块,用于确定待检测目标的待检测图像;

图像切分模块,用于确定所述待检测图像采用的至少两个目标滑动窗口,采用所述目标滑动窗口对待检测图像进行切分得到对应的待检测切分子图像,所述至少两个目标滑动窗口包括至少两个不同预设尺寸的滑动窗口;

缺陷检测模块,用于依据所述至少两个目标滑动窗口切分的待检测切分子图像,对所述待检测目标进行缺陷检测。

根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的基于机器视觉的目标检测方法。

根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的基于机器视觉的目标检测方法。

本发明实施例的技术方案,通过配置至少两个不同预设尺寸的滑动窗口作为目标滑动窗口,然后分别利用不同的目标滑动窗口对同一个待检测图像进行切分得到在不同滑动窗口下切分的待检测切分子图像,能够将图像中不同尺寸的缺陷均能囊括在滑动窗口中,实现适应图像中不同尺寸的缺陷进行切分,能尽可能避免因为图像中部分缺陷尺寸较小而无法被检出以及因为图像中部分缺陷尺寸太大而丢失,同时避免高分辨率图像在缺陷识别过程中占用过大的显存空间,造成出现显存溢出的问题。

应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例提供的一种基于机器视觉的目标检测方法的流程图;

图2是根据本发明实施例所适用的采用不同尺寸滑动窗口的图像切分原理图;

图3是根据本发明实施例提供的另一种基于机器视觉的目标检测方法的流程图;

图4是根据本发明实施例所适用的通过滑动窗口对待检测图像进行图像切分的切分示意图;

图5是根据本发明实施例提供的又一种基于机器视觉的目标检测方法的流程图;

图6是根据本发明实施例所适用的训练过程中采用不同尺寸滑动窗口的图像切分原理图;

图7是根据本发明实施例所适用的训练过程中对采用不同尺寸滑动窗口切分的切分子图进行缺陷检测后的缺陷合并示意图;

图8是根据本发明实施例提供的一种基于机器视觉的目标检测装置的结构示意图;

图9是实现本发明实施例的基于机器视觉的目标检测方法的电子设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

图1为本发明实施例提供了一种基于机器视觉的目标检测方法的流程图,本实施例可适用于对待检测目标中缺陷进行检测识别的情况,尤其是应用于大广角或者大视野的卫星、监控、工业高精度领域需要进行缺陷检测的情形,该方法可以由基于机器视觉的目标检测装置来执行,该基于机器视觉的目标检测装置可以采用硬件和/或软件的形式实现,该基于机器视觉的目标检测装置可配置于任何具有网络通信功能的电子设备中,例如可以包括但不限于终端、服务器等。

如图1所示,该基于机器视觉的目标检测方法可以包括但不限以下S110-S130的过程:

S110、确定待检测目标的待检测图像。

在大广角或者大视野的卫星、监控、工业高精度领域,需要对待检测目标进行缺陷检测,待检测目标可以包括但不限于包括有缺陷设备,比如待检测目标可以终端设备外壳,例如手机外壳等。

同时,由于缺陷检测的要求越来越高,为了实现对待检测目标中明显与尺寸很大的缺陷以及微小与不明显的缺陷进行准确检测,可以选择视野与精度越来越高的相机对待检测目标进行图像拍摄得到高分辨率的待检测图像。待检测图像的分辨率大于预设图像分辨率,预设图像分辨率可以为8192x15000的分辨率。

作为一种可选但非限定的实现方式,确定待检测目标的待检测图像可以包括以下具体过程:

控制目标采集设备朝向待检测目标进行图像拍摄,得到待检测目标的待检测图像,待检测图像的图像分辨率大于预设图像分辨率。

在一个示例中,在通过移动拍摄相机将待检测目标移动到拍摄相机的拍摄视野内的情况下,在拍摄相机上呈现拍摄提示;响应于对待检测目标的拍摄操作,对进入拍摄相机视野的待检测目标进行图像拍摄,得到包括有待检测目标的待检测图像。

在另一个示例中,响应于对待检测目标的拍摄操作,检测待检测目标是否进入拍摄相机的拍摄视野内;在待检测目标进入拍摄相机的拍摄视野的情况下对进入拍摄相机视野的待检测目标进行图像拍摄,得到包括有待检测目标的待检测图像;在待检测目标未进入拍摄相机的拍摄视野的情况下提示对拍摄相机进行移动以使待检测目标进入拍摄相机视野。

在至少一个实施例,待检测目标在拍摄相机视野中占据区域大小与拍摄相机视野区域大小之间的比值大于预设比值,待检测目标在拍摄相机视野中占据区域可以通过待检测目标的外接矩形框进行标定。

S120、确定待检测图像采用的至少两个目标滑动窗口,采用目标滑动窗口对待检测图像进行切分得到对应的待检测切分子图像,至少两个目标滑动窗口包括至少两个不同预设尺寸的滑动窗口。

对于包括缺陷的待检测目标的待检测图像,待检测目标的缺陷在待检测图像中可能占据较小的区域也可能占据较大区域,即在待检测图像显示的缺陷像素区域大小不一。参见图2,为了适应图像中不同大小的缺陷进行检测,可以预先配置不同预设尺寸的滑动窗口,使用不同尺寸的滑动窗口在待检测图像上进行图像切分,这样就可以实现任何大小的缺陷尽可能处于滑动窗口内,且保证缺陷在滑动窗口中的占比不会太小,避免因为缺陷很小在检测中被丢失,同时也避免缺陷太大被切分到不同子图导致无法有效使用整体缺陷的特征进行检测。

对于上述至少两个目标滑动窗口中的任一目标滑动窗口,采用目标滑动窗口对待检测图像进行图像切分,经过多次滑动可以从待检测图像中切分出多个子图,并作为待检测图像对应的待检测切分子图像。经过不同尺寸的目标滑动窗口对同一个待检测图像进行图像切分,可以得到经过不同目标滑动窗口切分的待检测图像对应的待检测切分子图像。

在一个可选示例中,参见图2,至少两个目标滑动窗口包括按照金字塔结构从低向上进行逐层调整尺寸得到的滑动窗口集合。按照金字塔结构,每一层对应配置一个预设尺寸的滑动窗口,各层对应的滑动窗口的尺寸逐级调整实现不同层对应配置不同尺寸的滑动窗口。至少两个目标滑动窗口中滑动窗口的尺寸越多,采用滑动窗口进行切分时滑动窗口与图像中不同尺寸的缺陷的适配度越好,即缺陷与滑动窗口之间重合度越高。

S130、依据至少两个目标滑动窗口切分的待检测切分子图像,对待检测目标进行缺陷检测。

由于采用了不同尺寸的滑动窗口,因此在对待检测图像进行切分时能保证不同尺寸的缺陷大部分能切分到一个滑动窗口中,即向不同尺寸的缺陷分配尺寸大小相同或相似的滑动窗口进行切分,不管是明显、尺寸很大的缺陷,还是微小、不明显的缺陷均能被合适的滑动窗口切分出来。

由于不管是明显、尺寸很大的缺陷,还是微小、不明显的缺陷均位于对应滑动窗口切分的子图中,因此能实现将不同尺寸的缺陷进行全面检测避免原图中位于视线远处的较小缺陷容易在原图识别中被丢失而导致小缺陷将无法在图片切分中被检测出,同时由于不需要因为处理高分辨率图片经常会出现显存溢出的问题。

本发明实施例的技术方案,通过配置至少两个不同预设尺寸的滑动窗口作为目标滑动窗口,然后分别利用不同的目标滑动窗口对同一个待检测图像进行切分得到在不同滑动窗口下切分的待检测切分子图像,能够将图像中不同尺寸的缺陷均能囊括在滑动窗口中,实现适应图像中不同尺寸的缺陷进行切分,能尽可能避免因为图像中部分缺陷尺寸较小而无法被检出以及因为图像中部分缺陷尺寸太大而丢失,同时避免高分辨率图像在缺陷识别过程中占用过大的显存空间,造成出现显存溢出的问题;并且本方案不需要将原图统一调整到一个固定尺寸进行检测缺陷,避免因为微小缺陷像素被压缩,其在整幅图片中占比很低导致丢失甚至消失。

图3为本发明实施例提供了另一种基于机器视觉的目标检测方法流程示意图,本实施例的技术方案在上述实施例的基础上对前述实施例中采用所述目标滑动窗口对待检测图像进行切分得到对应的待检测切分子图像的过程进一步优化,本实施例可与上述一个或多个实施例中各个可选方案结合。如图3所示,本实施例的目标检测方法可包括但不限于以下S310-S350的过程:

S310、确定待检测目标的待检测图像。

S320、确定待检测图像采用的至少两个目标滑动窗口,至少两个目标滑动窗口包括至少两个不同预设尺寸的滑动窗口。

S330、采用目标滑动窗口按照预设步长在待检测图像执行目标滑动操作,且使目标滑动窗口在相邻的两个滑动操作位置处存在部分重合。

参见图4,针对待检测图像,采用目标滑动窗口在待检测图像上按照预设步长进行滑窗,执行滑动操作时配置目标滑动窗口在相邻的两个滑动操作位置存在部分重合,实现在相邻的两个滑动操作位置采用滑动窗口从待检测图像上切分出的图像存在部分重合。在一个可选示例中,可以控制目标滑动窗口按照预设步长在待检测图像进行纵向滑动与横向滑动。

S340、依据目标滑动窗口的目标滑动操作确定待检测图像对应的待检测切分子图像,待检测切分子图像为位于目标滑动窗口内的图像。

以宽度是W和高度H的待检测图像为例,对于待检测图像进行金字塔结构设置的不同尺寸的滑动窗口进行切分,比如选择一个尺寸的滑动窗口对待检测图像进行M行N列的图像切分,如图4所示,选定的滑动窗口能切分的图像宽度是w像素、高度是h像素,每个滑动窗口在按照预设步长进行滑动后时滑动窗口在当前滑动位置时的占据的区域与在当前滑动位置的左右上下对应的滑动位置的占据区域都有一定的重合,其中左右重合度是overlap_w、上下重合度是overlap_h。其中,对于待检测图像而言通过滑动窗口滑动从待检测图像中切分出的待检测切分子图的左右移动步长step_w=overlap_w*w,上下移动步长step_h=overlap_h*h。

作为一种可选但非限定的实现方式,依据目标滑动窗口的目标滑动操作确定待检测图像对应的待检测切分子图像,可以包括以下具体过程:

步骤A1、检测目标滑动窗口的参考区域大小,参考区域为目标滑动窗口按照预设步长执行目标滑动操作后与待检测图像的重合区域。

参见图4,在控制目标滑动窗口按照预设步长在待检测图像上进行滑动切分时,可能存在滑动窗口超出待检测图像进行切分的情况,此时位于滑动窗口中的除了待检测图像中的部分图像以外还包括位于待检测图像以外的无效图像内容,而这部份无效图像内容对于缺陷检测是没有任何价值意义的。为此,在目标滑动窗口进行滑动切分过程中需要实时检测待检测图像以外的无效图像内容是否进入滑动窗口内被误切分。

示例性地,以目标滑动窗口从左向右,从上向下进行滑动切分,那么滑动窗口滑动到待检测图像的右边界和下边界滑时可能出现滑动窗口按预设步长滑动时滑出待检测图像的右边界与下边界,为了避免滑动窗口误切分到待检测图像以外的无效图像内容,可以以待检测图像的右边界为滑动窗口的右边界或者以待检测图像的下边界为滑动窗口的下边界,当滑动窗口按照预设步长滑动到待检测图像的右边界或下边界时,不再越界切分。

步骤A2、若检测到参考区域大小与目标滑动窗口大小相同,则直接将执行目标滑动操作后位于目标滑动窗口内的图像确定为待检测图像对应的待检测切分子图像。

参考区域为目标滑动窗口按照预设步长执行目标滑动操作后与待检测图像的重合区域。当目标滑动窗口位于待检测图像而未越出边界时,参考区域的全部区域会与待检测图像产生交集,此时参考区域的大小应该与目标滑动窗口大小是一致的;而,当目标滑动窗口越出待检测图像的边界时,参考区域的局部会与待检测图像产生交集,此时参考区域的大小应该小于目标滑动窗口大小。

若检测到参考区域大小与目标滑动窗口大小相同,则表明目标滑动窗口当前还未滑出待检测图像的边界,此时位于滑动窗口内的图像全部是待检测图像的图像内容,可以直接将目标滑动窗口每次滑动时位于滑动窗口内的图像,确定为对待检测图像进行切分得到对应的待检测切分子图像。

步骤A3、若检测到参考区域大小与目标滑动窗口大小不相同,则将执行目标滑动操作后的目标滑动窗口沿着执行目标滑动操作的相反方向进行滑动后退,并将滑动后退结束时位于目标滑动窗口内的图像确定为待检测图像对应的待检测切分子图像,参考区域大小与目标滑动窗口大小由不相同变为相同时滑动后退结束。

若检测到参考区域大小与目标滑动窗口大小不相同,则表明目标滑动窗口当前已经滑出待检测图像的边界,此时位于滑动窗口内的图像部分是待检测图像的图像内容而另一部分是待检测图像以外的无效图像内容,可以目标滑动窗口沿着执行目标滑动操作的相反方向进行滑动后退,直至参考区域大小与目标滑动窗口大小由不相同变为相同时滑动后退结束。进而可以将滑动后退结束时位于目标滑动窗口内的图像确定为待检测图像对应的待检测切分子图像。

S350、依据至少两个目标滑动窗口切分的待检测切分子图像,对待检测目标进行缺陷检测。

记录每个滑动窗口从待检测图像中切分的待检测切分子图在待检测图像中的位置,比如待检测切分子图的左上角在待检测图像中的左上角坐标(point_x,point_y)。将采用不同目标滑动窗口切分得到的待检测切分子图像进行缺陷检测,基于待检测切分子图在待检测图像中的位置将缺陷检测结果进行合并处理。

本发明实施例的技术方案,通过配置至少两个不同预设尺寸的滑动窗口作为目标滑动窗口,然后分别利用不同的目标滑动窗口对同一个待检测图像进行切分得到在不同滑动窗口下切分的待检测切分子图像,能够将图像中不同尺寸的缺陷均能囊括在滑动窗口中,实现适应图像中不同尺寸的缺陷进行切分,能尽可能避免因为图像中部分缺陷尺寸较小而无法被检出以及因为图像中部分缺陷尺寸太大而丢失,同时避免高分辨率图像在缺陷识别过程中占用过大的显存空间,造成出现显存溢出的问题;并且本方案不需要将原图统一调整到一个固定尺寸进行检测缺陷,避免因为微小缺陷像素被压缩,其在整幅图片中占比很低导致丢失甚至消失。

图5为本发明实施例提供了又一种基于机器视觉的目标检测方法流程示意图,本实施例的技术方案在上述实施例的基础上对前述实施例中依据至少两个目标滑动窗口切分的待检测切分子图像对待检测目标进行缺陷检测的过程进一步优化,本实施例可与上述一个或多个实施例中各个可选方案结合。如图5所示,本实施例的基于机器视觉的目标检测方法包括但不限于以下S510-S540的过程:

S510、确定待检测目标的待检测图像。

S520、确定待检测图像采用的至少两个目标滑动窗口,采用目标滑动窗口对待检测图像进行切分得到对应的待检测切分子图像,至少两个目标滑动窗口包括至少两个不同预设尺寸的滑动窗口。

S530、将至少两个目标滑动窗口切分的待检测切分子图像依次输入到目标检测模型进行缺陷检测。

其中,目标检测模型依据训练样本图像训练得到,训练样本图像采用不同目标滑动窗口对预标注有参考缺陷的参考图像进行切分得到,参考缺陷为参考图像中参考目标对应的缺陷,参考图像与待检测图像的尺寸相同。

作为一种可选但非限定的实现方式,本实施例中的目标检测模型可采用以下方式进行构建得到:

步骤B1、采用目标滑动窗口对参考图像进行切分得到参考切分子图像,参考图像中参考缺陷采用第一缺陷位置框预先进行标记,在相邻的两个滑动操作位置处切分的参考切分子图像存在部分重合。

参见图6,对于模型训练使用的参考图像,参考图像中对应包含各类型的缺陷像素,并采用第一缺陷位置框对参考图像中缺陷预先进行标记。采用目标滑动窗口对参考图像进行切分得到参考切分子图像,执行滑动操作时配置目标滑动窗口在相邻的两个滑动操作位置存在部分重合,实现在相邻的两个滑动操作位置采用滑动窗口从参考图像上切分出的图像存在部分重合。其中,参考切分子图像中包括有第一缺陷位置框对参考图像中标记的缺陷的至少部分,即第一缺陷位置框标记的缺陷可以完全切分到一个参考切分子图像,也可以拆分成多个分别切分到不同参考切分子图像中。

步骤B2、若检测到参考切分子图像的第二缺陷位置框与第一缺陷位置框的交并比值大于或等于预设比值,则对参考切分子图像中第二缺陷位置框标记的缺陷进行保留。

其中,第二缺陷位置框为在参考图像中参考缺陷的局部被切分到参考切分子图像后用于对参考切分子图像中的局部缺陷进行标记的位置框。

参见图6,当第一缺陷位置框标记的同一个缺陷拆分成多个分别切分到不同参考切分子图像中时,在各个参考切分子图像中的占比不相同,有的占比大,有的占比小,如果缺陷在参考切分子图像中的占比很小,其包含的特征信息就比较少,对于后续缺陷检测起到作用比较小;如果缺陷在参考切分子图像中的占比很大,其包含的特征信息就比较多,对于后续缺陷检测起到作用比较大。

参考切分子图像中包含缺陷区域(采用第二缺陷位置框的位置进行标定)和参考图像中参考切分子图像中缺陷所属的完整缺陷区域(采用第二缺陷位置框的位置进行标定)之间的重合度阈值。在设置一个指定尺寸大小的滑动窗口,对参考图像进行滑动切分后,由于切分可能导致参考图像中完整缺陷被分割,因此可设置重叠率overlap使相邻参考切分子图像之间具有重叠部分,可以较好解决完整缺陷被分割的情况。

基于上述设定后,仍可能隐式存在参考切分子图像中缺陷不完整的情况,设置指定交并比值,当参考切分子图像的第二缺陷位置框与第一缺陷位置框的交并比值大于或等于预设比值,认为此时参考切分子图像中缺陷占比是比较大的,才进行保存参考切分子图像中第二缺陷位置框标定的缺陷标签以便后续进行训练。

步骤B3、若检测到参考切分子图像的第二缺陷位置框与第一缺陷位置框的交并比值小于预设比值,则对参考切分子图像中第二缺陷位置框标记的局部缺陷进行剔除。

当参考切分子图像的第二缺陷位置框与第一缺陷位置框的交并比值小于预设比值时,认为此时参考切分子图像中缺陷占比是比较小的,即参考切分子图像上第二缺陷位置框标定的缺陷标签不参与进行训练,此时可以对参考切分子图像中第二缺陷位置框标记的局部缺陷进行剔除。

步骤B4、基于参考切分子图像的第二缺陷位置框标记的局部缺陷以及对应的参考切分子图像生成训练样本图像进行目标检测模型的训练与生成。

作为一种可选但非限定的实现方式,采用目标滑动窗口对参考图像进行切分得到参考切分子图像,可以包括以下具体过程:

步骤C1、从参考图像中参考缺陷中随机确定至少一个目标缺陷;

步骤C2、将目标缺陷采用的第一缺陷位置框的中心点与目标滑动窗口的中心点进行对齐,采用中心点对齐的目标滑动窗口从参考图像上切分得到参考切分子图像。

参见图6,针对参考图像上采用第一缺陷位置框标记的参考缺陷,按照一定的分辨率以每个参考缺陷的中心点为子图中心进行裁剪一次,但由于都以参考缺陷中心为子图中心可能使得模型过拟合于中心点位置,这是不可取的,因此加上随机偏差进行裁剪。从参考图像中参考缺陷中随机确定至少一个目标缺陷,第一缺陷位置框的中心点与目标滑动窗口的中心点进行对齐后进行切分,此方式可以提升模型对大小缺陷学习能力,通过扩充数据多样性增加模型的鲁棒性,

在一个可选示例中,使用YOLOv5作为目标检测模型框架,对基于参考切分子图像的第二缺陷位置框标记的局部缺陷以及对应的参考切分子图像生成训练样本图像进行训练得到满足使用的目标检测模型。

S540、依据对待检测切分子图像的缺陷检测结果,对待检测目标进行缺陷检测。

作为一种可选但非限定的实现方式,依据对待检测切分子图像的缺陷检测结果,对待检测目标进行缺陷检测,可以包括以下具体过程:

步骤D1、依据对待检测切分子图像的缺陷检测结果,确定待检测切分子图像对应缺陷类别以及缺陷位置。

参见图7,对于使用金字塔层状结构的不同尺寸滑动窗口切出的每张待检测切分子图像送入训练好的目标检测模型进行缺陷检测推理,对单个待检测切分子图像的检测结果进行非极大值一致处理。对待检测切分子图像的检测结果包括待检测切分子图对应缺陷类别以及缺陷位置。

步骤D2、若检测到两个待检测切分子图像对应的缺陷类别相同,且缺陷位置之差小于预设位置差,则将两个待检测切分子图像对应的缺陷进行合并。

步骤D3、若检测到两个待检测切分子图像对应的缺陷类别不相同和/或缺陷位置之差不小于预设位置差,则将两个待检测切分子图像对应的缺陷分别保留。

参见图7,因为使用金字塔层状结构的不同尺寸滑动窗口进行图像切分,相同位置和重叠区域的缺陷可能被模型重复检出,所以需要对检出的缺陷在待检测图像中的位置进行两两比较,判断相同缺陷类别是否有相交或者距离是否过小,若有相交或者两者之间距离设定阈值,将两者区域合并成一个大的缺陷矩形区域,若两者不相交且两者之间距离大于设定阈值,则同时保留识别的两个缺陷区域,最后得到最终的识别结果。

本发明实施例的技术方案,通过配置至少两个不同预设尺寸的滑动窗口作为目标滑动窗口,然后分别利用不同的目标滑动窗口对同一个待检测图像进行切分得到在不同滑动窗口下切分的待检测切分子图像,能够将图像中不同尺寸的缺陷均能囊括在滑动窗口中,实现适应图像中不同尺寸的缺陷进行切分,能尽可能避免因为图像中部分缺陷尺寸较小而无法被检出以及因为图像中部分缺陷尺寸太大而丢失,同时避免高分辨率图像在缺陷识别过程中占用过大的显存空间,造成出现显存溢出的问题;并且本方案不需要将原图统一调整到一个固定尺寸进行检测缺陷,避免因为微小缺陷像素被压缩,其在整幅图片中占比很低导致丢失甚至消失。

图8为本发明实施例提供了一种基于机器视觉的目标检测装置的结构示意图,本实施例可适用于对待检测目标中缺陷进行检测识别的情况,尤其是应用于大广角或者大视野的卫星、监控、工业高精度领域需要进行缺陷检测的情形,该基于机器视觉的目标检测装置可以采用硬件和/或软件的形式实现,该基于机器视觉的目标检测装置可配置于任何具有网络通信功能的电子设备中,例如可以包括但不限于终端、服务器等。如图8所示,该基于机器视觉的目标检测装置可包括:图像确定模块810、图像切分模块820和缺陷检测模块830。其中:

图像确定模块810,用于确定待检测目标的待检测图像;

图像切分模块820,用于确定所述待检测图像采用的至少两个目标滑动窗口,采用所述目标滑动窗口对待检测图像进行切分得到对应的待检测切分子图像,所述至少两个目标滑动窗口包括至少两个不同预设尺寸的滑动窗口;

缺陷检测模块830,用于依据所述至少两个目标滑动窗口切分的待检测切分子图像,对所述待检测目标进行缺陷检测。

在上述实施例的基础上,可选地,确定待检测目标的待检测图像包括:

控制目标采集设备朝向所述待检测目标进行图像拍摄,得到所述待检测目标的待检测图像,所述待检测图像的图像分辨率大于预设图像分辨率。

在上述实施例的基础上,可选地,所述至少两个目标滑动窗口包括按照金字塔结构从低向上进行逐层调整尺寸得到的滑动窗口集合。

在上述实施例的基础上,可选地,采用所述目标滑动窗口对待检测图像进行切分得到对应的待检测切分子图像,包括:

采用目标滑动窗口按照预设步长在待检测图像执行目标滑动操作,且使目标滑动窗口在相邻的两个滑动操作位置处存在部分重合;

依据所述目标滑动窗口的目标滑动操作确定所述待检测图像对应的待检测切分子图像,所述待检测切分子图像为位于目标滑动窗口内的图像。

在上述实施例的基础上,可选地,依据所述目标滑动窗口的目标滑动操作确定所述待检测图像对应的待检测切分子图像,包括:

检测所述目标滑动窗口的参考区域大小,所述参考区域为所述目标滑动窗口按照预设步长执行目标滑动操作后与所述待检测图像的重合区域;

若检测到所述参考区域大小与所述目标滑动窗口大小相同,则直接将执行目标滑动操作后位于目标滑动窗口内的图像确定为所述待检测图像对应的待检测切分子图像;

若检测到所述参考区域大小与所述目标滑动窗口大小不相同,则将执行目标滑动操作后的所述目标滑动窗口沿着执行所述目标滑动操作的相反方向进行滑动后退,并将滑动后退结束时位于目标滑动窗口内的图像确定为待检测图像对应的待检测切分子图像,所述参考区域大小与所述目标滑动窗口大小由不相同变为相同时所述滑动后退结束。

在上述实施例的基础上,可选地,依据所述至少两个目标滑动窗口切分的待检测切分子图像,对所述待检测目标进行缺陷检测,包括:

将所述至少两个目标滑动窗口切分的待检测切分子图像依次输入到目标检测模型进行缺陷检测,所述目标检测模型依据训练样本图像训练得到,所述训练样本图像采用不同目标滑动窗口对预标注有参考缺陷的参考图像进行切分得到,所述参考缺陷为所述参考图像中参考目标对应的缺陷,所述参考图像与待检测图像的尺寸相同;

依据对所述待检测切分子图像的缺陷检测结果,对所述待检测目标进行缺陷检测。

在上述实施例的基础上,可选地,所述目标检测模型采用以下方式进行构建得到:

采用所述目标滑动窗口对参考图像进行切分得到参考切分子图像,所述参考图像中参考缺陷采用第一缺陷位置框预先进行标记,在相邻的两个滑动操作位置处切分的参考切分子图像存在部分重合;

若检测到所述参考切分子图像的第二缺陷位置框与所述第一缺陷位置框的交并比值大于或等于预设比值,则对所述参考切分子图像中第二缺陷位置框标记的缺陷进行保留,所述第二缺陷位置框为在所述参考图像中参考缺陷的局部被切分到参考切分子图像后用于对所述参考切分子图像中的局部缺陷进行标记的位置框;

若检测到所述参考切分子图像的第二缺陷位置框与所述第一缺陷位置框的交并比值小于预设比值,则对所述参考切分子图像中第二缺陷位置框标记的局部缺陷进行剔除;

基于所述参考切分子图像的第二缺陷位置框标记的局部缺陷以及对应的参考切分子图像生成训练样本图像进行目标检测模型的训练与生成。

在上述实施例的基础上,可选地,采用所述目标滑动窗口对参考图像进行切分得到参考切分子图像,包括:

从所述参考图像中参考缺陷中随机确定至少一个目标缺陷;

将所述目标缺陷采用的第一缺陷位置框的中心点与所述目标滑动窗口的中心点进行对齐,采用中心点对齐的目标滑动窗口从参考图像上切分得到参考切分子图像。

在上述实施例的基础上,可选地,依据对所述待检测切分子图像的缺陷检测结果,对所述待检测目标进行缺陷检测,包括:

依据对所述待检测切分子图像的缺陷检测结果,确定所述待检测切分子图像对应缺陷类别以及缺陷位置;

若检测到两个待检测切分子图像对应的缺陷类别相同,且缺陷位置之差小于预设位置差,则将两个待检测切分子图像对应的缺陷进行合并;

若检测到两个待检测切分子图像对应的缺陷类别不相同和/或缺陷位置之差不小于预设位置差,则将两个待检测切分子图像对应的缺陷分别保留。

本发明实施例中所提供的基于机器视觉的目标检测装置可执行上述本发明任意实施例中所提供的基于机器视觉的目标检测方法,具备执行该基于机器视觉的目标检测方法相应的功能和有益效果,详细过程参见前述实施例中基于机器视觉的目标检测方法的相关操作。

图9示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。

如图9所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。

电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如基于机器视觉的目标检测方法。

在一些实施例中,基于机器视觉的目标检测方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的基于机器视觉的目标检测方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于机器视觉的目标检测方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。

计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

相关技术
  • 目标检测方法和装置、电子设备、存储介质、程序产品
  • 提高动目标检测精度的方法、装置、电子设备及存储介质
  • 一种动目标检测方法、装置、电子设备及存储介质
  • 基于集群计算的数据批处理方法、装置、电子设备及介质
  • 基于大数据的标签数据更新方法、装置、介质及电子设备
  • 图像处理方法、目标检测装置、机器视觉设备和存储介质
  • 基于机器视觉的导航方法、装置、电子设备及存储介质
技术分类

06120115928823