1.一种基于特征预融合与掩膜引导的表面缺陷检测方法,其特征在于包括以下步骤:(1)获取数据集与检测标签:
获取表面缺陷数据集及对应的检测标签;
(2)构建缺陷检测模型:该模型由主干网络BoneNet、特征预融合模块FPF、多阶段融合模块MSF、检测头Header构成,具体构建过程包括以下步骤:(2‑a)构建主干网络BoneNet:以DarkNet53‑CSP作为主干网络,输入图像经过主干网络处理,得到三个不同尺度的特征图f1、f2和f3,其中f1表示尺度最小的特征图,f3表示尺度最大的特征图;
(2‑b)构建特征预融合模块FPF:该模块由三个感受野模块RFB和三个信息扩散模块ID构成;将步骤(2‑a)获取的特征图f1、f2、和f3分别作为三个感受野模块RFB的输入,得到处理结果 与 将 与特征图组 一起输入到第一个信息扩散模块ID1,得到输出结果 将 经过上采样处理后与特征图组 一起输入到第二个信息扩散模块ID2,得到输出结果 将 经过上采样处理后与特征图组一起输入到第三个信息扩散模块ID3,得到输出结果所述信息扩散模块ID构建如下:
信息扩散模块的输入包括一个基准特征图 与一个特征图组 其中与 分别表示三个不同尺度的特征图; 与 经过采样层处理后,分别得到与基准特征图尺度相同的特征图 与 与 分别与基准特征图逐像素相乘后,得到加权特征图 与 与 在通道维度进行拼接,拼接结果经过第mid mid一个语义交互模块CCBM1处理后,得到中间特征f ;f 与加权特征图 在通道维度进行拼id接,拼接结果经过第二个语义交互模块CCBM2处理后,得到信息扩散模块ID的输出结果f ;
在第一个信息扩散模块ID1中,以 作为输入的基准特征图;在第二个信息扩散模块ID2中,以 的上采样结果作为输入的基准特征图;在第三个信息扩散模块ID3中,以 的上采样结果作为输入的基准特征图;三个信息扩散模块都以 作为其输入的特征图组
(2‑c)构建多阶段融合模块MSF:将步骤(2‑b)中特征预融合模块FPF生成的特征图和 分别在通道维度按照比例1:N进行分割,生成两组特征图和 第一组特征图 经过第一个双向特征金字塔模块
FPNPAN1处理后,生成初融合多尺度特征图组 将其中具有最大尺度的初融合特征图 经过卷积模块处理后得到掩膜预测结果;初融合多尺度特征图组中的三个特征图与第二组特征图 中的三个特征图依据不同尺度分别在通道维度进行拼接,得到 和 将 和 一起输入到第二个双向特征金字塔模块FPNPAN2后,得到多阶段融合模块MSF的最终融合结果和
(2‑d)构建检测头Header:检测头由三个卷积模块构成,将步骤(2‑c)中多阶段融合模块MSF生成的最终融合结果 和 分别经过三个卷积模块处理,处理结果合并后得到最终检测结果;
(3)构建损失函数:
构建如下混合损失函数Lmix:
Lmix=Lmask+LOD
其中Lmask为掩膜预测结果与掩膜标签之间的损失,LOD为目标检测结果与目标检测标签之间的损失,Lmask的构建如下:Lmask=LBCE_mask+Liou_mask
其中LBCE_mask为掩膜预测结果与掩膜标签之间的二元交叉熵损失,Liou_mask为掩膜预测结果与掩膜标签之间的交并比损失,分别定义为:其中P表示掩膜预测图,Gt表示掩膜标签图,二者尺寸相同,H表示图的高,W表示图的宽,Pi,j和Gti,j分别表示P和Gt中(i,j)点的像素值,Pi,j为实数且Pi,j∈(0,1),Gti,j为整数且Gti,j∈[0,1],log(·)表示求自然对数, 表示逐像素相加操作, 表示逐像素相乘操作,|·|表示求取图像中所有像素的和;
该步骤中LOD构建如下:
LOD=Liou_box+LBCE_obj+LCE_cls其中Liou_box为预测框与真实框之间的IOU损失,LBCE_obj为预测框的置信度损失,LBCE_cls为预测框的类别损失,分别定义如下:LBCE_obj=‑(ylog(conf)+(1‑y)log(1‑conf))box1表示预测框,box2表示真实框,area_inter(·)表示求取交集面积,area_union(·)表示求取并集面积,y表示置信度标签,conf表示置信度预测值,pk表示缺陷的类别标签,clsk表示缺陷的类别预测值;n为正整数,表示缺陷类别的个数,log(·)表示求自然对数;
(4)训练缺陷检测模型:
利用步骤(1)得到的数据集训练步骤(2)构建的缺陷检测模型;使用步骤(3)构建的混合损失函数Lmix计算模型输出的预测结果与标签之间的误差;训练过程中使用Adam算法更新模型参数,并使用L‑2正则化作为约束,经过E个epoch的训练后,得到训练好的表面缺陷检测模型;
(5)推理并获得检测结果:
将测试图像经过归一化处理后,输入至训练好的缺陷检测模型,模型输出结果经过非极大值抑制后得到最终的缺陷检测结果。
2.如权利要求1所述的一种基于特征预融合与掩膜引导的表面缺陷检测方法,其特征在于,所述步骤(2‑b)中的语义交互模块CCBM,该模块的输入依次经过通道注意力模块、卷积层、归一化层与Mish激活函数处理后,得到输出结果。
3.如权利要求1所述的一种基于特征预融合与掩膜引导的表面缺陷检测方法,其特征在于,所述步骤(2‑c)中的N为正整数,且N∈[1,2048]。
4.如权利要求1所述的一种基于特征预融合与掩膜引导的表面缺陷检测方法,其特征在于,所述步骤(2‑c)中的卷积模块由一个卷积层与一个Relu激活函数构成。
5.如权利要求1所述的一种基于特征预融合与掩膜引导的表面缺陷检测方法,其特征在于,所述步骤(2‑d)中的三个卷积模块拥有相同的结构,每个卷积模块由一个卷积层与一个Relu激活函数构成。
6.如权利要求1所述的一种基于特征预融合与掩膜引导的表面缺陷检测方法,其特征在于,所述步骤(4)中的E为正整数,且E∈[1,10000]。