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

一种物体表面缺陷检测方法及系统

文献发布时间:2023-06-19 18:29:06


一种物体表面缺陷检测方法及系统

技术领域

本发明属于机器视觉中的工业视觉异常检测领域,具体涉及一种实时和准确的物体表面缺陷检测方法及系统。

背景技术

工业生产过程中的自动化视觉缺陷检测具有广泛和迫切的应用需求,可以提升企业的生产效率,节省成本,具有很大的社会经济效益。表面缺陷检测是工业缺陷检测的一个重要类别,目的是检测工件表面的缺陷(异常)区域。一般的视觉缺陷检测部署在生产线上,所以有较高的精度和实时性要求。目前大部分工厂依然依靠人工进行检测,人工检测耗费时间、成本较高。传统的视觉缺陷检测方法一般基于纹理分析,比如梯度算子、Canny边缘检测算子等。然而传统方法对不同的任务不具有通用性,对特定的应用场景需要重新设计特征提取的方法。

近年来,随着深度学习在多种计算机视觉任务上都取得了优异的性能,一些工作将基于卷积神经网络(Convolutional Neural Networks,CNN)的方法应用到不同的工业场景中,例如钢带磁瓦、火车轨道、电线绝缘子、道路裂缝、PCB板的表面缺陷检测等。这些方法对不同物体的表面区域具有较好的鲁棒性,并针对小目标缺陷、缺陷和背景低对比度等具体问题提出了相应的功能模块。这些方法大部分是基于目标检测(Object Detection)框架,无法实现像素级别的检测,这对于高精度的应用存在劣势。目前像素级别标注的表面缺陷检测数据集很缺乏,只有东北大学提出的热轧钢表面缺陷数据集NEU-Seg和中科院提出的磁瓦表面缺陷数据集Magnetic-tile-defect-datasets。这两个数据集的规模较小,只包含大约1000张图片。

发明内容

本发明的目的是提出一种准确和实时的表面缺陷像素级别的检测方法及系统。本发明改进了实时的图像分割网络Fast-SCNN,并根据表面缺陷检测的任务特点提出了全局上下文模块和边界和语义辅助监督任务,以实现准确和快速的检测。

为实现上述目的,本发明采用以下技术方案:

本发明一方面提出一种物体表面缺陷检测方法,包括以下步骤:

构建物体表面缺陷检测网络,该网络包括编码器和解码器;该编码器包括卷积模块、细节分支和语义分支;该解码器包括金字塔池模块PPM和全局上下文上采样模块GCU;

对物体表面缺陷检测网络进行训练,训练步骤包括:

将包含不同缺陷类型图像的训练集输入到物体表面缺陷检测网络中,编码器的卷积模块提取训练集图像的低层特征图,并输入到解码器的PPM模块;

编码器的细节分支和语义分支执行两个辅助任务,其中,编码器的细节分支执行边界检测任务,提取训练集图像中的缺陷边界特征;编码器的语义分支执行多标签分类任务,预测图像中包含的缺陷类型,生成真值标签并对所述边界特征进行监督;将所述边界特征作为高层特征图,输入到解码器中;

解码器的GCU模块将所述高层特征图与所述低层特征图进行信息融合,并将融合后的特征图通过双线性插值上采样和argmax得到缺陷类型检测结果;

所述辅助任务采用二元交叉熵损失函数,基于该损失函数优化网络参数,完成训练;

利用训练好的物体表面缺陷检测网络进行物体表面缺陷的检测,采集物体表面缺陷图像并进行处理,识别物体表面缺陷类型。

本发明另一方面提出一种物体表面缺陷检测系统,包括一种物体表面缺陷检测网络,该编码器包括卷积模块、细节分支和语义分支;该解码器包括金字塔池模块PPM和全局上下文上采样模块GCU;该物体表面缺陷检测网络训练完成后用来对物体表面缺陷进行检测,采集物体表面缺陷图像并进行处理,识别物体表面缺陷类型;

其中,该物体表面缺陷检测网络的训练步骤包括:

将包含不同缺陷类型图像的训练集输入到物体表面缺陷检测网络中,编码器的卷积模块提取训练集图像的低层特征图,并输入到解码器的PPM模块;

编码器的细节分支和语义分支执行两个辅助任务,其中,编码器的细节分支执行边界检测任务,提取训练集图像中的缺陷边界特征;编码器的语义分支执行多标签分类任务,预测图像中包含的缺陷类型,生成真值标签并对所述边界特征进行监督;将所述边界特征作为高层特征图,输入到解码器中;

解码器的GCU模块将所述高层特征图与所述低层特征图进行信息融合,并将融合后的特征图通过双线性插值上采样和argmax得到缺陷类型检测结果;

所述辅助任务采用二元交叉熵损失函数,基于该损失函数优化网络参数,完成训练。

对于上述方法和系统,本发明还提出了以下优选的技术手段:

优选地,所述缺陷类型包括油污、划痕、斑点三类。

优选地,所述编码器的卷积模块为6个MobileNetV3模块。

优选地,所述编码器提取图像的1/8和1/16分辨率的高层特征图,通过矩阵元素相乘和相加的跳跃连接将所述高层特征图输入到所述解码器中;在训练阶段,1/8分辨率的高层特征图含有细节分支检测的缺陷边界特征。

优选地,所述GCU模块包括两个全局上下文模块GC、两个上采样模块Upsample和两个分组卷积模块GroupConv,顺序为GC+Upsample+GroupConv+Upsample+GroupConv+GC,其中前一个Upsample通过元素相加融合1/16分辨率的高层特征图,后一个Upsample通过元素相乘融合1/8分辨率的高层特征图。

优选地,所述细节分支是由卷积、批标准化、ReLU函数、卷积、双线性插值上采样网络组成。

优选地,所述语义分支是由卷积、批标准化、ReLU函数、卷积、全局平均池化和线性层网络组成。

优选地,所述真值标签的计算方法为:采用拉普拉斯算子计算图像的二阶梯度,使用3个不同步长的拉普拉斯卷积计算得到不同尺度的3个边界细节特征图;然后上采样该3个细节特征图到输入图像的原始尺寸,然后拼接该3个边界细节特征并经过二维卷积动态调整权重,得到边界的真值标签。

优选地,所述拉普拉斯算子采用8领域的算子模板进行离散计算。

本发明的技术效果:

本发明针对缺陷检测任务提出的全局上下文模块和辅助任务有效地提升了检测的性能和速度。本发明实现了表示表面缺陷的有效检测,在速度和准确性上达到了很好的权衡。本发明的方法在手机屏幕表面缺陷数据集MSD上达到了最优的性能和最快的检测速度,在磁瓦数据集Magnetic-tile-defect-datasets上是效果最好的实时方法,在热轧钢数据集上也达到了有竞争力的性能。

附图说明

图1是本发明实施例中的物体表面缺陷检测网络的整体框架图;

图2是本发明实施例中制作的数据集部分样例;

图3是本发明实施例中提出的全局上下文上采样模块;

图4是本发明实施例中的辅助任务分支的头部结构;

图5是本发明实施例中的边界检测辅助任务真值生成过程;

图6是本发明实施例中的多标签分类辅助任务真值生成过程;

图7是本发明实施例中的部分实验结果样例。

具体实施方式

为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图作详细说明如下。

1.制作和提出了手机表面缺陷数据集

为了弥补缺陷检测数据集的缺乏,本实施例提出了像素级标注的手机表面缺陷数据集Mobile phone screen Surface Defect(MSD)。采集设备使用工业相机。缺陷是人工制造的,模拟真实工业环境中产生的常见缺陷,如图2所示,缺陷类型包括油污、划痕、斑点三类,每类400张图片,数据集总共包括1200张图片。图像分辨率为1920*1080;数据集划分为训练集、验证集和测试集,三者的图片数量比为6:2:2。数据集采用通用的PASCAL VOC格式。

2.基于Fast-SCNN改进的物体表面缺陷检测网络框架

本实施例采用本发明提出的物体表面缺陷检测方法及系统,所基于的物体表面缺陷检测网络的整体网络框架如图1所示。给定一张包括缺陷的图片作为输入,经过网络的编码器和解码器,得到和图片原尺寸大小的缺陷分割图像。编码器是一系列的卷积操作(见图2的1个Conv2D+2个DSConv+6个MobileNetV3 block),用来下采样图片,得到图片中缺陷的高层(语义)特征图。解码器用来恢复图像到原尺寸大小,包括常用的金字塔池化模块(pyramid pooling module,PPM)和本实施例提出的全局上下文上采样模块GCU,最后将特征图通过双线性插值上采样8倍并使用argmax得到最后结果。

3.全局上下文上采样GCU模块

GCU模块的结构如图2和图3所示,本实施例利用编码器1/8和1/16分辨率的高层特征图,通过跳跃连接来保持更多的空间细节特征。跳跃连接用来将编码器的高层特征图输入到解码器部分,以维持图片的空间细节特征,得到更准确的分割结果。高层特征图逐渐地上采样(即图中的⊕和⊙),并与低层特征图的细节信息融合。如图7所示,输入油污、划痕、斑点三类缺陷的图像,基线方法Fast-SCNN(参照"Fast-SCNN:Fast semanticsegmentation network",Poudel R P K,Liwicki S,Cipolla R.in Proc.BMVC 2019)给出的预测结果不连续,缺乏建立长距离上下文的能力。因此,本实施例采用全局上下文模块(Global Context,GC)(参照"Gcnet:Non-local networks meet squeeze-excitationnetworks and beyond"Cao Y,Xu J,Lin S,et al.in Proc.ICCVW 2019),并将其插入到GCU模块的开头和结尾,以从多尺度特征中捕获长距离依赖关系(long-range relations),获取图片中大范围的物体的像素间的语义相关性。GC模块是一个简化的、轻量级的自注意力(非局部)模块。由于不同查询位置的注意力图具有高度的相似性,GC模块为所有查询位置计算一个全局的注意力图。它可以解决类间的相似性和类内的差异性问题,从而使预测的缺陷区域更加完整。GCU模块包含的模块顺序为:GC模块+上采样模块Upsample+分组卷积模块GroupCovn+Upsample+GroupCovn+GC模块。本发明取得的效果如图7所示,可以看出本发明的缺陷检测效果优于基线方法。

本实施例的使用的全局上下文模块(GC)的计算过程。给定一个CNN的特征图

本实施例提出的全局上下文上采样模块计算过程形式化表示如下

其中Conv表示分组卷积后接BN和ReLU,Up表示双线性插值,GC表示GC模块。

4.边界和语义辅助监督

本实施例设计了细节分支的边界检测任务和语义分支的多标签分类任务这两个辅助任务,由图4的网络完成,以监督它们完成特定任务。辅助任务在训练阶段使用,是为了提升检测结果的准确性,不影响运行时的推理速度。表面缺陷大多具有明显的边界,对缺陷边界(边缘)特征敏感。本实施例采用了边界检测任务进行细节预测。这个二值分割任务捕获缺陷边界的有效特征,它可以锐化和细化预测。本实施例将边界检测头插入1/8分辨率特征图后,生成包含空间细节的特征图。该特征图由生成的真值标签进行监督。然后利用矩阵逐元素相乘将学习到的细节特征融合到解码器包含上下文的特征图中。

不同表面缺陷的局部特征有一定的相似性。因此,本实施例采用多标签分类任务来逐步引导缺陷分类,这样可以为后面的层提供更多的语义信息。该任务对应的模块被插入到金字塔池模块(PPM)之前,以预测图像中包含的缺陷类型。当图像中只有一种类型的缺陷时,可以将该任务视为图像分类,并且可以被很好地完成。在图像中存在多种缺陷的情况下,该任务仍然可以提供支持信息。辅助任务的细节分支头部和语义分支头部如图4所示。细节分支头部由连续的3×3卷积、批标准化、ReLU函数、1×1卷积、8倍双线性插值上采样组成;语义分支头部由连续的3×3卷积、批标准化、ReLU函数、3×3卷积、全局平均池化和线性层组成。如图5所示,本实施例从语义分割的标签中生成辅助任务的真值标签(Ground-Truth,又称监督标签)。对于二元边界检测任务的真值,利用拉普拉斯算子求缺陷边界。如图6所示,对语义分割标签图像的唯一值进行计数,得到用于多标签分类的类向量标签,即对一张图片中去掉所有的重复数字(例如用np.unique函数去重),将剩下的数字的位置标记1,将图片中不存在的数字的位置标记0,得到一个分类的标签。在训练阶段,辅助任务采用二元交叉熵损失。本实施例提出的方法利用辅助任务作为多任务学习问题。

G

其中Unique统计图片中不重复的数值,采用numpy.unique实现。

本实施例的监督边界检测任务的真值标签的生成采用拉普拉斯算子。拉普拉斯算子计算图像的二阶梯度,其公式如下:

其中,对于图像的离散计算,本实施例采用8领域的算子模板:

本实施例使用三个不同步长(1、2、4)的拉普拉斯卷积以得到多尺度的边界细节信息。本实施例上采样3个细节特征图到输入图像的原始尺寸,然后拼接3个特征并经过1×1的2维卷积来动态调整权重,得到更优的边界标签。以上过程可以形式化地表示为:

G

其中[,]表示逐通道拼接,Conv表示1×1卷积。采用3种步长的拉普拉斯卷积可以得到不同尺度的物体边界,这对于图片中包含多种尺度变化的物体有更好效果。将三个特征图拼接后在经过可学习的二维卷积得到最终的边界真值标签。在人工标注的过程中,经常存在物体边界标注不精确的情况,拉普拉斯卷积得到的物体边界就会存在误差。1×1的2维卷积操作可以自适应地学习到真值标签,动态调整边界的标签,以获得更好的检测结果。

在训练阶段,辅助任务采用二元交叉熵损失。网络输出三种预测,损失函数由三部分组成:

其中L

5.模型加速

对于表面缺陷检测任务,一般缺陷图像相对简单,提取高层特征所需的卷积块较少。Fast-SCNN采用9个瓶颈残差块(bottleneck residual)进行高层特征提取。本实施例用6个MobileNetV3引入的模块替换它们。该模块使用通道注意力,可以提升缺陷和背景之间的对比度。TensorRT也用于加速本实施例的模型,以满足工业应用的实时需求。

实验证明本发明方法的优点

为了验证本发明提示的方法的有效性,本发明在表面异常检测公开数据集NEU-Seg、MTD和自建手机屏幕异常数据集MSD上进行了实验。

NEU-Seg数据集参见H.Dong,K.Song,Y.He,J.Xu,Y.Yan,and Q.Meng,“PGANet:Pyramid feature fusion and global context attention network for automatedsurface defect detection,”IEEE Transactions on Industrial Informatics,vol.16,no.12,pp.7448–7458,2019.

MTD数据集参见Y.Huang,C.Qiu,and K.Yuan,“Surface defect saliency ofmagnetic tile,”The Visual Computer,vol.36,no.1,pp.85–96,2020.

(1)实验设置实验基于Pytorch 1.9深度学习框架实现。所有输入图片被缩放(0.5-2.0)后裁剪为450×450大小。训练中,每个批量大小为16,训练150轮。使用Adam优化算法对网络进行优化,初始学习率和权重衰减系数设置为10

(2)实验结果

下表展示了本实验的方法在三个数据集上与其他先进方法(常规语义分割网络和实时语义分割网络)的比较,本实验列出了每个方法的参数量,平均交并比(mIoU)和运行速度(FPS)。

表1本文方法与其他先进方法在三个数据集上的对比

在MSD数据集上,本发明提出的方法的性能和速度超过了所有的方法,达到了90.2%mIoU和135.0FPS。在MTD数据集上,本发明提出的方法达到了最快的运行速度,同时性能超过了所有实时的语义分割方法,在常规语义分割网络中也具有竞争力。在NEU-Seg数据集达到了最快的运行速度,性能超过基线方法1.1%mIoU。通过现阶段实验结果可以看出,本发明提出的方法在三个数据集上都取得了较优的性能,验证了本课题所提方法的有效性。

虽然本发明已以实施例公开如上,然其并非用以限定本发明,本领域的普通技术人员对本发明的技术方案进行的适当修改或者等同替换,均应涵盖于本发明的保护范围内,本发明的保护范围以权利要求所限定者为准。

相关技术
  • 线阵图像传感器像素阵列及物体表面缺陷检测方法
  • 一种产品表面缺陷的检测系统及方法
  • 一种玻璃表面缺陷检测系统及方法
  • 物体表面缺陷检测系统及检测方法
  • 一种域自适应的物体表面缺陷检测方法、系统、存储介质
技术分类

06120115586102