1.一种基于一阶段目标检测算法的钢材表面缺陷检测方法,其特征在于包括如下步骤:S1、对钢铁表面缺陷图片进行数据预处理,预处理后的图片划分为训练集、验证集、测试集;
S2、进行目标检测模型主干特征提取网络的搭建;
S3、进行目标检测模型特征融合网络的搭建;
S4、进行目标检测模型检测头的搭建;
S5、将主干特征提取网络、特征融合网络、检测头进行连接组成目标检测模型,采用训练集训练连接后的目标检测模型,并采用验证集进行验证,测试集进行测试;
S6、训练结束后选择超过设定阈值模型进行封装部署,对钢材表面缺陷图片进行检测。
2.根据权利要求1所述基于一阶段目标检测算法的钢材表面缺陷检测方法,其特征在于,步骤S1中,将钢铁表面缺陷图片数据与XML格式标签数据一一对应,并将XML格式标签数据转换为TXT格式标签数据,其中TXT标签数据中包含钢铁表面缺陷的目标位置以及缺陷种类,处理好数据集格式后将图片数据调整为640 ×640并进行伽马变换,公式如下:其中 代表增强后的图片数据, 代表增强前的原始图片数据,为固定值, ,在标签处理完成以及图片处理完成后,按照6:2:2的比例分别划分训练集、验证集、测试集。
3.根据权利要求2所述基于一阶段目标检测算法的钢材表面缺陷检测方法,其特征在于,步骤S2中,目标检测模型的主干特征提取网络包括单卷积模块、卷积特征提取模块和自注意力特征提取模块级联,其中,单卷积模块为一个卷积核大小为3的卷积,卷积特征提取模块包含单卷积模块、4个瓶颈特征提取模块、卷积注意力模块,自注意力特征提取模块包含分割模块、多层感知机、批标准化模块和2个自注意力模块。
4.根据权利要求3所述基于一阶段目标检测算法的钢材表面缺陷检测方法,其特征在于,瓶颈特征提取模块包含两个卷积核大小为1的卷积模块和一个卷积核大小为3的卷积模块;卷积注意力模块包含三个卷积核大小为1的卷积模块、残差边、softmax函数以及批正则化、Relu激活函数,在卷积注意力模块中通过一个卷积核大小为1的卷积模块和softmax函数进行权重生成后与原始特征图对应相乘,公式如下:其中,M表示生成的注意力特征矩阵, 表示输入的原始特征,MLP由两层卷积构成,表示按位相乘, 表示沿通道方相叠加, 为输出的特征图。
5.根据权利要求3所述基于一阶段目标检测算法的钢材表面缺陷检测方法,其特征在于,分割模块按照16×16的大小将图片分为多个图像块,自注意力特征提取模块中自注意力模块的个数为4,在自注意力特征提取模块中,首先进行一个随机矩阵的生成,将生成的一个随机矩阵M1分别与分割模块分割出的图像块mask1进行相乘,依次生成查询向量q;其次对分割后的图片块分别进行2×2的全局平均池化,并随机生成两个矩阵M2、M3分别与全局平均池化后的图像块进行相乘,分别生成查询键向量k和特征表达向量v;最后,以四个相邻的图像块为基准,在四个相邻的图像块中抽选出与原k、v向量相同数量的q向量进行相乘,自注意力模块的公式如下所示:其中,random代表随机抽取q向量的过程, 代表q向量,
代表k向量, 代表v向量。
6.根据权利要求3所述基于一阶段目标检测算法的钢材表面缺陷检测方法,其特征在于,步骤S3中,特征融合网络为三层,第一层包括5个特征融合节点,每个特征融合节点分别融合特征提取网络的相邻两层输出特征,其中在融合特征提取网络的相邻两层输出特征融合过程中,高分辨率的低层特征进行一个3×3的卷积下采样两倍后与低分辨率的特征进行融合,第二层由4个特征融合节点组成,每个特征融合节点的下采样倍数为2,其中高层的特征融合节点在融合时会将第一层的相邻两层的输出特征与低层的下采样特征进行融合,第三层由3个特征融合节点组成,每个特征融合节点分别融合第二层的相邻两层的输出特征,最低层的特征会与特征融合网络的最低层特征的平均池化后的特征融合。
7.根据权利要求3所述基于一阶段目标检测算法的钢材表面缺陷检测方法,其特征在于,步骤S4中,检测头包括通道注意力模块、特征融合节点、检测器级联,检测器包括一个卷积核大小为11的卷积模块和sigmoid函数,在特征融合节点中,首先将特征融合网络中第三层所有的特征融合节点输出的特征图调整为同一纬度后进行融合,其次进行通道注意力模块,在通道注意力模块中,融合后的特征图首先经过一个全局平均池化将融合后的特征图调整至C×1×1的维度,随后沿通道的维度进行softmax函数生成注意力矩阵并与原图进行相乘,随后相乘后的特征图与原特征图相加经过一个卷积核大小为1的卷积模块后输出,总体注意力公式如下:其中, 为通道注意力的特征图, 代表平均池化,代表融合后的特征图。
8.根据权利要求7所述基于一阶段目标检测算法的钢材表面缺陷检测方法,其特征在于,步骤S5中,将搭建好的主干特征提取网络、特征融合网络、检测头进行依次连接,将预处理的数据集的训练集输入到连接好的目标检测模型300回合,在训练的每个回合结束后使用验证集对训练的模型进行验证得到模型的精度,其中,在训练过程中使用QFocal Loss作为本文模型分类以及置信度的损失函数,使用CIoU作为回归定位损失并在CIoU前,增加平衡函数以平衡不同尺度的损失差异,公式如下:其中, 表示最大的物体真实框的面积, 表示最小的物体真实框的面积,为目标物体的面积,A为常数,A的变化用于调节平衡函数的曲率,从而控制大小物体的分界,总损失函数为如下:其中, , 为可学习的权重。
9.根据权利要求8所述基于一阶段目标检测算法的钢材表面缺陷检测方法,其特征在于,在训练过程中使用QFocal Loss作为本文模型分类以及置信度的损失函数,公式如下,其中y是平滑标签,值为[0,1], 是预测结果,用于平衡正负样本, 用于强调难以检测的样本,
训练过程中的定位损失采用CIoU,CIoU回归定位损失考虑了三种几何参数:重叠面积、中心点距离、长宽比,CIoULoss公式如下,其中 是预测框 和目标框 的惩罚项,在CIoU中,边界框之间的中心点欧氏距离和惩罚项为,其中, 分别代表了 的中心点, 代表了欧式距离,代表两个边框
组成的最小包围框的对角线距离, 是一个平衡参数, 分别代表预测框的宽高。
10.根据权利要求8所述基于一阶段目标检测算法的钢材表面缺陷检测方法,其特征在于,训练结束时,选择验证时超过设定阈值精度的模型进行测试,测试时将预处理的图片数据集的测试集输入到模型中进行测试,选择测试结果准确的模型进行TensorRT加速后封装为DLL文件。