一种基于改进YOLO模型的带钢表面缺陷检测方法

文档序号:37179603发布日期:2024-03-01 12:36阅读:44来源:国知局
一种基于改进YOLO模型的带钢表面缺陷检测方法

本发明涉及计算机视觉,尤其是一种基于改进yolo模型的带钢表面缺陷检测方法。


背景技术:

1、随着数字图像处理技术的飞速发展,金属表面缺陷检测逐渐从传统的人眼观察转向计算机视觉领域,基于图像处理的算法能够更快速、准确地检测表面缺陷。近年来,深度学习技术在金属表面缺陷检测中取得了显著的进展。卷积神经网络(cnn)等深度学习模型可以学习到图像中的特征,使得缺陷检测更加精准。通过大量标注好的训练数据,深度学习模型能够自动学习和识别各种类型的表面缺陷。

2、目标检测算法按照算法类型分类包括一阶段算法两阶段算法。在两阶段模型中,代表性的算法是faster-rcnn。它通过引入regionproposal network(rpn)实现快速准确的目标定位。它在卷积神经网络基础上结合了两个阶段的训练,首先生成候选区域,然后分类和精细回归。但是缺点是算法计算量大,计算冗余;与两阶段算法相比,以yolo系列为代表的单阶段算法使用回归技术将分类和定位任务结合在一起,直接计算多个目标的分类结果和坐标位置,算法的复杂度低,检测时间快,更加适用于于工业应用。

3、近年来关于带钢表面缺陷检测算法的研究在不同程度上提高了深度学习模型的检测精度和检测速度,取得了良好的检测结果。然而,在带钢表面缺陷检测中,不同缺陷表面的复杂性、尺寸、形状和纹理特征仍然是一个常见问题,使得准确检测缺陷变得困难,而不规则的缺陷分布增加了检测的难度。此外,缺陷与背景之间的低对比度导致带钢表面成像后产生大量噪音,严重干扰了算法对缺陷的检测,并容易导致漏检。因此,亟需一种能够快速且准确检测带钢表面缺陷的方法。


技术实现思路

1、本发明提出一种基于改进yolo模型的带钢表面缺陷检测方法,能够快速且准确检测带钢表面缺陷。

2、本发明采用以下技术方案。

3、一种基于改进yolo模型的带钢表面缺陷检测方法,所述方法通过获取带钢表面缺陷图像来构建结构重参数化模块;并将结构重参数化模块运用于yolov8s的主干网络以及颈部网络,并进一步将bifpn融入yolov8s的颈部网络;将yolov8s损失函数更换为定位更加准确的wise-iou;最后将所述带钢表面缺陷图像输入至所述改进后的网络,获得带钢表面缺陷检测结果。

4、所述方法包括以下步骤:

5、步骤s1:构建带有标注的带钢表面缺陷的数据集;

6、步骤s2:构建结构重参数化模块qarepvgg;

7、步骤s3:将yolov8s主干网络与颈部网络的conv模块替换为qarepvgg模块,将c2f模块替换为qarep模块,调整qarep模块的重复次数;

8、步骤s4:将yolov8s的颈部结构替换为bifpn颈部结构;

9、步骤s5:将yolov8s定位损失更换为wise-iou;

10、步骤s6:利用修改后的带钢表面缺陷检测模型对待检测带钢表面图像进行检测。

11、所述步骤s1的具体步骤如下:

12、步骤s11、获取钢材表面缺陷数据集;

13、步骤s12、使用labelme制作缺陷标签;

14、步骤s13、将制作完的缺陷标签使用mosaic方法进行数据增强,扩充整体数据量以防止模型过拟合。将像素值为200*200的图片每四张拼成一组,并对空白部分进行平均灰度填充;经mosaic数据增强为640*640的带标签图像。

15、所述步骤s11中,将数据集进行标注,分成图片数据集文件和图片对应标签文件;

16、步骤s12中,将标注好的数据集进行分类,包括裂纹类别、杂质类别、斑点类别、表面麻点类别、滚轧鳞片类别和划痕类别;

17、步骤s13中,对处理好的数据集进行预处理,按照7:1:2的比例划分为训练集、验证集和测试集;采用mosaic数据增强方案,随机选取四张图片进行组合,通过对训练数据引入变换,提高深度学习模型的鲁棒性和泛化能力,防止过拟合,增加训练样本数量,从而有效提升模型性能。

18、所述步骤s2具体步骤为:

19、步骤s21、构建qarepvgg模块a:由三层分支构成,分别是由conv模块与batchborm2d模块所构成的第一层分支;由conv模块所构成的第二层分支;由残差分支所构成的第三层分支。

20、步骤s22、构建qarepvgg模块b:由两层分支构成,分别是由conv模块与batchborm2d模块所构成的第一层分支;由conv模块所构成的第二层分支。

21、步骤s23、将qarepvgg模块a与b进行结构重参数化,等比转换为3*3的卷积分支。

22、步骤s2中,qarepvgg模块训练完成后,通过模型的重参数化等效地转变为单分支部署模型,以提高推理速度;

23、步骤s2中,从参数的角度,当通道数和卷积操作前后的特征图长度和宽度相等时,qarepvgg模块的转换过程以公式描述为以下形式

24、mout=bn(bn(minput*w(3),μ(3),γ(3),β(3))+minput*w(1)+minput*w(0));

25、其中,bn是推理时的批归一化函数;表示具有c1输入通道和c2输出通道的k×k大小的卷积核;μ(k),σ(k),γ(k),β(k)(k∈{0.1,3})分别表示每个分支的bn层的累积均值、标准差、缩放因子和偏差。

26、步骤s3具体为:将yolov8s的主干网络和颈部网络所用的conv模块更换为qarepvgg模块,将c2f模块替换为qarep模块,调整qarep模块的重复次数;

27、qarep模块是由若干qarepvgg模块串联而成;不同尺寸的特征图包含不同深度的信息,将640*640的输入尺寸进行下采样,得到80*80,40*40和20*20的三个尺寸的特征图。

28、步骤s4具体为:将bifpn融入yolov8s原有颈部结构中,建立双向的信息流动,即上采样从低层级到高层级传递信息,下采样从高层级到低层级传递信息;信息流动和同层级特征的迭代融合以更好地捕获不同尺度、不同深度的特征信息,提高目标检测的准确性和稳定性。

29、步骤s5具体为:使用wise-iou损失函数作为边界框回归损失,当预测框与目标框高度重合时,损失函数通过减弱几何因素的惩罚,使模型在更少的训练干预下获得更好的泛化能力;

30、步骤s5针对带钢表面缺陷图像噪声多、对比度低而导致模型定位困难的问题,使用带有两层注意力机制和动态非单调fm机制的wise-iou来改善对于低质量数据集的缺陷检测;以公式表述为:

31、

32、

33、其中,β表示预测框的异常程度,较小的异常程度意味着锚框的质量较高;使用β构建非单调聚焦数为具有大离群值的预测框分配较小的梯度增益,以有效减少低质量训练样本的有害梯度;α和δ是超参数;x和y表示预测框的坐标值,而xgt和ygt表示groundtruth的坐标值;相应的h和w值分别表示两个框的宽度和高度。

34、步骤s6的具体步骤如下:

35、在训练过程中配置环境变量,设置epoch为400,设置batch size为32,设置imagesize为640*640;

36、使用改进后的yolov8s模型进行训练;所涉及的评估指标为map@0.5:0.95。其中,map为平均精度均值,其表达公式为

37、

38、map@0.5:0.95是通过计算模型在不同iou阈值(从0.5到0.95)下的平均精度;其中,

39、p表示精确度,r表示召回率,tp表示实际为正类预测也为正类的数量,fp表示实际为负类预测为正类的数量,fn表示实际为正类预测为负类的数量。

40、与现有技术相比,本发明具有如下有益的技术效果:

41、(1)针对带钢表面缺陷纹理复杂而导致特征较难提取的问题,本发明引入qarep模块所构成的主干网络与颈部网络,通过多分支网络更好的提取特征,同时在推理时通过模块的结构重参数化有效提高推理速度。

42、(2)针对带钢表面缺陷多尺度而导致难以检测的问题,这本发明引入bifpn颈部网络,通过建立双向的信息流动和同层级特征的迭代融合,更好地捕获不同尺度和不同深度的特征信息,有效提高检测精度。

43、(3)针对带钢表面缺陷图像噪声多、对比度低而导致模型定位困难的问题,本发明引入wise-iou损失函数,通过结合动态非单调的关注机制,有效提高模型在低质量数据集中对缺陷的定位能力。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1