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

基于多分辨率知识提取的精细产品图像异常检测方法

文献发布时间:2023-06-19 19:30:30


基于多分辨率知识提取的精细产品图像异常检测方法

技术领域

本发明涉及异常检测技术领域,尤其涉及一种基于多分辨率知识提取的精细产品图像异常检测方法及装置。

背景技术

工业产品的表面异常检测是近年来制造业中格外关注的一项技术问题。传统的目标检测算法很大一部分属于有监督学习的范畴,这类方法需要收集大量的目标样本并进行精确的标注。然而,在表面异常检测任务当中,实际收集到的图像大部分属于正常样本,仅有少部分属于异常样本,且需要检测的异常类型又十分多样,这就使得可供训练的异常样本的数量十分有限。在这种情况下,由于目标类别样本的缺乏,传统的目标检测和图像分割的方法已不再适用。

图像异常检测是计算机视觉领域的一个热门研究课题,一般是通过无监督或者半自监督学习的方式,在不使用真实异常样本的情况下,利用现有的正常样本构建模型以检测可能出现的各种异常图像,在工业外观异常检测领域有较高的研究意义和应用价值。这类方法中,收集正常图像的难度要远低于收集异常图像的难度,能显著减少检测算法在实际应用中的时间和人力成本。而且,由于异常检测模型是通过分析与正常样本之间的差异来检测异常样本,这使得异常检测算法对各种类型甚至是全新的异常样本都具有检测能力。

现有的图像异常检测方法可以分为基于传统的方法和基于深度学习的方法两大类别。基于传统方法的异常检测技术大致包含六个类别:基于模板匹配、基于统计模型、基于图像分解、基于频域分析、基于稀疏编码重构和基于分类面构建的异常检测方法。基于深度学习的方法大致包含四个类别:基于距离度量、基于分类面构建、基于图像重构和结合传统方法的异常检测方法。

因此,如何检测复杂产品的小缺陷,以更精准地实现异常定位,成为目前亟待解决的问题。

发明内容

本发明的目的在于提供一种基于多分辨率知识提取的精细产品图像异常检测方法及装置,用于实现工业产品表面的异常检测与定位,克服现有技术中存在的不足,解决复杂结构处的小缺陷难以检测的问题,更精准地实现异常定位。

本发明通过以下技术方案来实现上述目的:

一种基于多分辨率知识提取的精细产品图像异常检测方法,包括以下步骤:

步骤1、采集工业产品的表面图像数据,使用图像目标检测算法定位产品所在区域,提取目标图像;

步骤2、对目标图像执行对齐切分操作,将结构相似的小块归为一类;

步骤3、根据知识蒸馏的思想,采用多分辨率知识提取的方式,训练一个student网络,使得这个网络尽可能的和预训练的teacher网络,在正样本数据集上有着相同的表达能力;

步骤4、对于不同类别,分别训练合适的teacher-student模型,并对这些模型进行集成,得到最终的无监督异常检测模型;

步骤5、基于训练好的无监督异常检测模型,采用多层级特征融合机制,并引入局部邻域聚集操作,构造异常图,对待检产品图像进行异常的检测与定位。

进一步地,步骤1中产品图像数据采集的方法:使用工业相机对流水线上产品进行抓拍,采集正常的产品图像数据。

步骤1中图像目标检测算法,包括:基于候选区域的检测模型,如R-CNN、Fast R-CNN和Faster R-CNN;基于回归的检测模型,如YOLO及其扩展模型、SSD及其扩展模型;基于anchor-free的检测模型。

进一步地,步骤2中图像对齐的方法,包含四个步骤:利用合适的边缘算子提取边缘,拟合水平竖直两条直线;求解拟合直线交点;求解拟合直线与竖直水平方向直线的顺时针夹角;计算平均夹角并按夹角逆时针旋转图片实现对齐。

步骤2中所使用的边缘算子,包括:Sobel、Prewitt、Roberts、Canny、Marr-Hildreth。

步骤2中图像切分的方法:基于产品结构对产品图像进行切分,并将结构相似的区域归为一类。

进一步地,步骤3中采用的teacher网络,包括:VGG16在ImageNet上的预训练网络,ResNet18在ImageNet上的预训练网络,ResNet50在ImageNet上的预训练网络;采用的student网络,为teacher网络对应的简化版网络,其参数随机初始化。

步骤3中蒸馏特征的选择:采用多分辨率知识提取的方式,选用中间多个关键层进行知识蒸馏。

步骤3中计算损失函数的方法,包括:欧式距离损失、方向损失和图像结构相似度(Structural Similarity,SSIM)损失。

进一步地,步骤5中异常检测与定位的方法:测试图片分别输入到teacher网络和student网络中,提取所有关键层特征;然后采用多层级特征融合机制,并引入局部邻域聚集操作,基于损失函数的梯度来构造异常图(anomaly map);最后选取合适的阈值对anomaly map进行分割,从而实现异常的检测与定位。

进一步地,步骤5中的多层级特征融合机制:对于所有关键层的feature maps,逐层对应特征计算损失map,然后计算损失map的梯度,接着将各层损失map梯度上采样到原始图像大小,对应元素求乘积,得到最终的anomaly map。

步骤5中的局部邻域聚集操作:其实就是average pooling,采用AvgPool2d实现,在不损失空间分辨率的同时增大感受野。

步骤5中减小噪声影响的方法,包括:高斯滤波,形态学处理等。

本发明另一方面还提供了一种基于多分辨率知识提取的精细产品图像异常检测装置,包括数据采集模块和异常检测模块;

所述数据采集模块,将相机固定在产品生产线上,用于采集工业产品的表面图像数据;

所述异常检测模块,包括计算机可读存储介质和处理器,通过数据线与所述相机连接;

计算机可读存储介质用于存储计算机程序,计算机程序通过处理器执行所述基于嵌入特征向量的产品图像异常检测方法中的步骤,对工业生产线上的产品做实时的表面异常检测。

本发明的有益效果在于:

基于正常图像样本训练的无监督模型可以直接用于异常检测;

采用多分辨率知识提取的方式,针对中间多个层进行蒸馏,能够更全面地将预训练teacher网络的知识迁移到student网络;

使用预训练模型的简化版,将知识提炼进更紧凑的网络有助于区分正常与异常的特征;

通过计算输入差异损失的梯度,采用多层级特征融合机制结合局部邻域聚集的操作,可以更精确地对异常定位;

对于结构精细复杂的工业产品而言,对齐操作之后算法性能有较大的提升;

针对产品的不同结构部位分别训练模型再集成,复杂结构处的小缺陷也能很好的检测出来;

该方法计算成本低且训练过程稳定,能够更精准地实现异常定位,应用前景广泛。

附图说明

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

图1为本发明中的基于多分辨率知识提取的精细产品图像异常检测方法的流程图;

图2为本发明中的基于多分辨率知识提取的精细产品图像异常检测网络结构图;

图3为本发明中的基于多分辨率知识提取的精细产品图像异常检测装置结构图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。

在任一实施例中,图1和图2分别示出了本发明中基于多分辨率知识提取的精细产品图像异常检测方法的流程图和网络结构,包括以下步骤:

步骤A、采集工业产品的表面图像数据,使用图像目标检测算法定位产品所在区域,提取目标图像;

具体的,使用工业相机对流水线上产品进行抓拍,采集正常的产品图像数据,使用图像目标检测算法定位产品所在区域,去除背景,提取目标图像。

具体的,图像目标检测算法,包括:基于候选区域的检测模型,如R-CNN、Fast R-CNN和Faster R-CNN;基于回归的检测模型,如YOLO及其扩展模型、SSD及其扩展模型;基于anchor-free的检测模型。

步骤B、对目标图像执行对齐切分操作,将结构相似的小块归为一类;

具体的,缺陷检测的图像源自工业相机对流水线上产品的抓拍,受技术环境等因素影响,抓拍图像中的产品呈现出轻微的倾斜(一般小于1°),会有几到十几个像素的偏移,当产品结构较为精细时,十几个像素的偏移也会对图像切分以及后续检测产生较大影响,所以需要对图像进行对齐以提升算法的效果。图像对齐的前提是图像中存在明显的对齐参照物,一般选取水平和竖直线。

具体的,图像对齐的方法,包含四个步骤:利用合适的边缘算子提取边缘,拟合水平竖直两条直线;求解拟合直线交点;求解拟合直线与竖直水平方向直线的顺时针夹角;计算平均夹角并按夹角逆时针旋转图片实现对齐。

具体的,所使用的边缘算子,包括:Sobel、Prewitt、Roberts、Canny、Marr-Hildreth。

具体的,使用超高清摄像头采集的精细产品图像尺寸很大,而异常区域相对于整个产品图像有很小,如果采用简单的插值方法缩小图片会模糊异常区域,因此基于产品结构对产品图像进行切分,并将结构相似的区域归为一类。

步骤C、根据知识蒸馏的思想,采用多分辨率知识提取的方式,训练一个student网络,使得这个网络尽可能的和预训练的teacher网络,在正样本数据集上有着相同的表达能力;

具体的,采用的teacher网络,包括:VGG16在ImageNet上的预训练网络,ResNet18在ImageNet上的预训练网络,ResNet50在ImageNet上的预训练网络;采用的student网络,为teacher网络对应的简化版网络,其参数随机初始化。

具体的,蒸馏特征的选择:考虑到网络中每一层提取特征都不太一样,浅层更加关注边缘、纹理等细节,深层更加关注语义等信息,只使用模型最后一层的输出会损失很多中间信息,因此,采用多分辨率知识提取的方式,选用中间多个关键层进行知识蒸馏。基于大量的实验对比,得出效果最好的选择方案:对于VGG16预训练模型,选择最后4个卷积块的feature maps进行蒸馏;对于ResNet18和ResNet50预训练模型,选择第2、3、4个卷积块的feature maps进行蒸馏。

具体的,损失函数采用欧式距离损失L

Loss=L

/>

其中,N为网络中被使用的关键层总数,i为被使用的第i个关键层,Mi为第i个关键层输出特征图的像素个数,j为特征图的第j个像素,

步骤D、对于不同类别,分别训练合适的teacher-student模型,并对这些模型进行集成,得到最终的无监督异常检测模型;

具体的,对产品图像进行切分和分类之后,不同类别所对应产品的结构部位不同,有的类别可能是结构较为简单的背景板,而有的类别可能是非常复杂的结构,比如电子元器件的金属插针;对于这种情况,只统一训练一个模型,对复杂部位的检测效果会很差。因此,基于实际效果考虑,不同类别分别训练合适的teacher-student模型,并对这些模型进行集成,得到最终的无监督异常检测模型。

步骤E、基于训练好的无监督异常检测模型,采用多层级特征融合机制,并引入局部邻域聚集操作,构造异常图,对待检产品图像进行异常的检测与定位;

具体的,对产品图像进行异常检测时,在正常样本上,student网络具有和teacher网络同等提取特征的能力,因此特征图相差不会太大,而在异常样本上,student网络没有参与训练,那么进行特征提取的效果相对于teacher网络会存在比较大的差异,利用这种feature maps上的差异就可以实现异常检测。

具体的,测试图片分别输入到teacher网络和student网络中,提取所有关键层特征;然后采用多层级特征融合机制,并引入局部邻域聚集操作,基于损失函数的梯度来构造异常图(anomaly map);最后选取合适的阈值对anomaly map进行分割,从而实现异常的检测与定位。

具体的,多层级特征融合机制:对于所有关键层的feature maps,逐层对应特征计算损失map,然后计算损失map的梯度,接着将各层损失map梯度上采样到原始图像大小,对应元素求乘积,得到最终的anomaly map。如下所示:

具体的,在上采样之前,引入局部邻域聚集操作,其实就是average pooling,例如采用一个窗口大小为3,步长为1,padding为1的AvgPool2d实现,在不损失空间分辨率的同时增大感受野,AvgPool2d的参数可根据实际情况调整。实验证明,引入局部邻域聚集操作后,异常检测的准确性有明显提升。

具体的,根据Loss的梯度变化进行异常的检测与定位,异常区域就是Loss的梯度变化比较大的地方。实验证明,使用Loss的梯度变化来检测异常区域,比直接将Loss作为异常得分图效果更好。这也很好解释,如果输入的是异常数据,那么teacher网络和student网络提取到的特征就不一样,Loss如果进行反向传播,异常位置梯度变化会更大。

具体的,为了减小背景噪声的影响,还可对异常得分图做平滑处理,如高斯滤波,形态学处理。

本实施例提供的基于多分辨率知识提取的精细产品图像异常检测方法的有益效果是:仅需要少量正常图像样本就可以训练无监督模型;采用多分辨率知识提取的方式,针对中间多个层进行蒸馏,能够更全面地将预训练teacher网络的知识迁移到student网络;使用预训练模型的简化版,将知识提炼进更紧凑的网络有助于区分正常与异常的特征;通过计算输入差异损失的梯度,采用多层级特征融合机制结合局部邻域聚集的操作,可以更精确地对异常定位;对于复杂的工业产品而言,对齐操作之后算法性能有较大的提升;针对产品的不同结构部位分别训练模型再集成,复杂结构处的小缺陷也能很好的检测出来;最后,与其他工作比,该方法计算成本低且训练过程稳定。

在一个具体实施例中,图3示出了本发明中基于多分辨率知识提取的精细产品图像异常检测装置,包括数据采集模块和异常检测模块。

所述数据采集模块,将相机固定在产品生产线上,用于采集工业产品的表面图像数据;所述异常检测模块,包括计算机可读存储介质和处理器,通过数据线与所述相机连接。

计算机可读存储介质用于存储计算机程序,计算机程序通过处理器执行所述基于嵌入特征向量的产品图像异常检测方法中的步骤,对工业生产线上的产品做实时的表面异常检测。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。

相关技术
  • 基于多分辨率集成的航天器遥测异常检测方法
  • 一种基于多分辨率网格划分的异常检测方法和系统
技术分类

06120115934278