1.一种基于多任务学习的表面缺陷检测方法,其特征在于,包括以下步骤:
获取具有标注信息的输入图像并将输入图像分为训练集图像和测试集图像;
对训练集图像进行剪切,得到缺陷实例并对缺陷实例进行增强,得到增强图像;
构建表面缺陷检测网络并将测试集图像和增强图像输入表面缺陷检测网络,得到表面缺陷数据。
2.根据权利要求1所述一种基于多任务学习的表面缺陷检测方法,其特征在于,所述对训练集图像进行剪切,得到缺陷实例并对缺陷实例进行增强,得到增强图像这一步骤,其具体还包括:
根据标注信息对训练集图像进行剪切得到缺陷实例,并修复剪切后的训练集图像,得到修复图像;
根据标注信息得到缺陷实例的蒙版标注并对其执行膨胀操作,得到缺陷实例的多个相邻区域;
计算缺陷实例被放置在修复图像不同位置时的相邻区域和原始位置相邻区域之间的相似度,得到缺陷实例在修复图像上的环境相似性热力图;
将环境相似性热力图标准化得到位置选择概率图,并根据位置选择概率图选定缺陷实例粘贴的目标位置;
将缺陷实例随机缩放并旋转后平移粘贴到目标位置,得到合成图像;
对合成图像进行整体增强,得到增强图像。
3.根据权利要求2所述一种基于多任务学习的表面缺陷检测方法,其特征在于,所述对合成图像进行整体增强包括颜色扰动、随机翻转和随机裁切。
4.根据权利要求3所述一种基于多任务学习的表面缺陷检测方法,其特征在于,所述标注信息为边界框标注,所述根据标注信息得到缺陷实例的蒙版标注具体为:
判断到像素位于一个边界框内,将该边界框的类别信息分配给该像素;
判断到像素位于多个边界框内,将面积最小的边界框的类别信息分配给该像素;
判断到像素没有位于任一边界框内,将背景的类别信息分配给该像素;
根据像素中的类别信息得到蒙版标注。
5.根据权利要求4所述一种基于多任务学习的表面缺陷检测方法,其特征在于,所述修复剪切后的训练集图像具体采用高斯白噪声填充来修复剪切后的训练集图像,所述环境相似性热力图具体采用以下公式计算:
其中,d(x′,y′)为环境相似性热力图,ri(x,y)和ri′(x′,y′)分别为缺陷实例在原始位置(x,y)和目标位置(x′,y′)的第i个相邻区域ci(x,y)和c′i(x′,y′)上的像素的rgb值,g(·)为相似性的度量函数,n为距离缺陷实例不同远近程度的相邻区域的个数,ωi为对应第i个相邻区域的加权因子。
6.根据权利要求5所述一种基于多任务学习的表面缺陷检测方法,其特征在于,所述加权因子ω以下式设置:
其中,ω1对应距离缺陷实例最近的第1个相邻区域,所述ωn对应距离缺陷实例最远的第n个相邻区域。
7.根据权利要求6所述一种基于多任务学习的表面缺陷检测方法,其特征在于,所述位置选择概率图通过下式计算获得:
其中,i表示用于计算环境相似性热力图的图像,(x′,y′)为图像上任意一个可能的目标位置,γ为任一合适的正实数。
8.根据权利要求1所述一种基于多任务学习的表面缺陷检测方法,其特征在于,所述构建表面缺陷检测网络并将测试集图像和增强图像输入表面缺陷检测网络,得到表面缺陷数据这一步骤,其具体包括:
构建特征金字塔、语义特征提取模块和缺陷检测头模块,生成表面缺陷检测网络;
将测试集图像和增强图像输入表面缺陷检测网络,得到表面缺陷数据。
9.根据权利要求8所述一种基于多任务学习的表面缺陷检测方法,其特征在于,所述构建特征金字塔、语义特征提取模块和缺陷检测头模块,生成表面缺陷检测网络这一步骤,其具体包括:
采用resnet50深层卷积网络和fpn结构构建特征金字塔;
采用retinanet构建缺陷检测头模块;
采用deeplabv3构建语义特征提取模块;
生成表面缺陷检测网络。
10.根据权利要求9所述一种基于多任务学习的表面缺陷检测方法,其特征在于,所述将测试集图像和增强图像输入表面缺陷检测网络,得到表面缺陷数据这一步骤,其具体还包括:
通过特征金字塔提取输入图像的层次特征并将层次特征分别发送到缺陷检测头模块和语义特征提取模块;
语义特征提取模块根据接收到的层次特征,生成一系列的蒙版分量;
缺陷头检测模块根据接收到的层次特征生成缺陷实例的坐标和类型,得到表面缺陷数据。