System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种改进的联合YOLOv5和知识蒸馏的汽车发动机缸孔内壁检测方法技术_技高网

一种改进的联合YOLOv5和知识蒸馏的汽车发动机缸孔内壁检测方法技术

技术编号:40493541 阅读:5 留言:0更新日期:2024-02-26 19:23
本发明专利技术提出一种改进的联合YOLOv5和知识蒸馏的汽车发动机缸孔内壁检测方法。所述方法包括:图像增强;使用YOLOv5模型构建并训练教师模型;基于教师模型在新增缺陷类别和样本上对YOLOv5学生模型进行改进知识蒸馏式的训练。本发明专利技术通过改进的联合YOLOv5目标检测算法以及知识蒸馏训练方式,从而提升了仅使用新增发动机缸孔内壁缺陷类别和新增发动机缸孔内壁缺陷样本对已有模型进行训练后在旧样本上的识别能力。

【技术实现步骤摘要】

本专利技术涉及发动机缸孔内壁图像缺陷检测,特别是涉及一种改进的联合yolov5和知识蒸馏的汽车发动机缸孔内壁检测方法。


技术介绍

1、发动机生产过程中,工件的质量极易受到现有技术、工作条件等因素影响。其中,表面缺陷是发动机产品质量受到影响的最直观表现。为了确保产品合格率,进行发动机缸孔内壁表面缺陷检测是必要的。缺陷检测指检测待测样品表面存在的划痕、异物遮挡、颜色污染、孔洞等缺陷,进而获得缺陷类别、位置等一系列相关信息。

2、传统的表面缺陷检测方法在一段时间内发挥了巨大的作用,主要分为基于纹理特征的方法、基于颜色特征的方法以及基于形状特征的方法。纹理特征可以通过像素和邻域的灰度分布来反映表面的排列特点,包括统计方法、信号处理方法等。基于颜色特征的方法相对来说计算量较小,具有较高的鲁棒性,不依赖于图像视角、方向等。基于轮廓的方法是基于形状方法中的主要代表,通过描述物体的外部边界特征来获得图像的形状参数,比如霍夫变换等。传统的解决方案重点是针对具体问题明确设计的功能,但在复杂的情况下,这些功能有时难以被准确描述。然而,深度学习采用数据学习的方式,把数据转为抽象的特征表示,让系统自行学习相应特征,克服了复杂特征对特定缺陷的要求。深度学习的缺陷检测方法大致分为监督方式、无监督方式、半监督方式。监督学习要求训练集的样本必须进行标注,用于训练时寻找内部规律,并在测试集上具有一定的泛化性。常见的监督学习的方法大致分为缺陷分类网络、缺陷检测网络和缺陷分割网络。无监督学习方法中输入的只是无标签的数据本身,通过网络获得数据的固有特征,并根据学习到的模型对新数据进行判断,常见的方法有自编码器和对抗生成网络等。而半监督方法结合了监督方法和无监督方法的特点,在特定情况下获得更佳的表现,避免了更高的标注成本。

3、基于深度学习的缺陷检测技术的快速发展使其在发动机缸孔内壁缺陷检测领域得到了广泛应用。但在实际场景中,新的样本甚至是新的缺陷类别会不断出现。由于光照、发动机缸孔批次不同等原因,新的类别和新的样本与旧样本之间存在一定的差异,而现有的发动机缺陷检测算法遇到这种情况时需要重新在新旧样本上训练整个模型,消耗大量时间;仅训练新增样本又会产生对旧样本的灾难性遗忘问题。本专利技术针对上述问题,提出一种改进的联合yolov5和知识蒸馏的汽车发动机内孔内壁检测方法,该方法在学习新类别和新样本的同时实现对旧样本检测能力的保留,降低现有算法对旧样本的灾难性遗忘现象,为缺陷检测任务提供一种新的方法选择。


技术实现思路

1、本专利技术目的是为了解决发动机缸孔内壁缺陷检测领域对新增类别和新增样本的重新训练时间消耗过大,仅训练新增类别和新增样本又会出现对旧样本灾难性遗忘的问题,提出了一种改进的联合yolov5和知识蒸馏的汽车发动机缸孔内壁检测方法。

2、本专利技术是通过以下技术方案实现的,本专利技术提出一种改进的联合yolov5和知识蒸馏的汽车发动机缸孔内壁检测方法,所述方法包括以下步骤:

3、s1:对发动机缸孔内壁图像数据集中图片进行数据增强,包括hsv增强、图像平移、图像缩放、左右水平翻转以及mosaic数据增强;

4、s2:以yolov5模型为框架,构建并训练教师模型;

5、s3:以yolov5模型为框架构建学生模型,基于已经训练好的教师模型,用新增缺陷类别和新增样本构成的发动机缸孔内壁图像数据集对学生模型进行知识蒸馏方式的训练;

6、s4:知识蒸馏训练得到的学生模型实现对新旧类别缺陷样本的检测。

7、进一步地,步骤s1具体为:

8、s11:hsv增强方式:对原图像在色度、饱和度和亮度三个方面进行随机调整,得到不同的子图像;

9、s12:图像平移、缩放和翻转:将原图像在水平或者竖直方向上进行移动,并进行放大或者缩小,与原图像相比把缺少的边界按照特征进行补充,把超出的区域裁剪,保证缩放之后的图像与原图像的比例保持一致;翻转即把原图像在水平和竖直方向进行翻转得到子图像;

10、s13:mosaic数据增强:从数据集中取出四张图片,对四张图片进行随机的翻转、缩放、裁剪操作,然后把操作后的四张图片合成一张图像,得到子图像。

11、进一步地,在步骤s2中,首先根据数据集的特征,进行自适应锚框计算,得到大、中、小三个尺度下的各自三个锚框比例,用于后续的训练,然后对样本图片进行自适应图片缩放,以适应不同尺寸目标的检测。

12、进一步地,所述教师模型采用yolov5_small结构,其主干网络包括切片结构focus、卷积模块conv、瓶颈层c3以及空间金字塔池化spp,输入图像经过主干网络的多次下采样提取了若干个不同尺度的特征,然后经过自上而下特征金字塔融合网络结构fpn,再经过自下而上的路径聚合网络结构pan,将不同尺度的特征信息融合起来,最后头部预测网络将80×80、40×40、20×20的特征图分别对小型目标、中型目标、大型目标进行预测。

13、进一步地,在步骤s2中,训练教师模型时使用yolov5的损失函数,由三个损失部分组成,包括矩形框损失lossbox、置信度损失lossobj和分类损失losscls,损失函数是三个部分的损失加权和,公式为:

14、loss=a×lossbox+b×lossobj+c×losscls (1)

15、其中,矩形框损失由ciou loss来计算得到,公式为:

16、

17、

18、

19、

20、lossciou=1-ciou (6)

21、s1,s2分别为预测框与真实框的交集和并集面积,ρ为预测框中心与真实框中心的距离,c为预测框与真实框所重叠的最小矩形对角线长度,v为预测框与真实框的宽高比相似度,α是影响因子;wgt、hgt分别为真实框的宽和高,wp、hp分别为预测框的宽和高;

22、置信度损失和分类损失两部分由bce loss计算得到,以80×80的特征图为例,yolov5对每个像素格子都预测三个位于该格子附近的矩形框,因此存在z,x,y的取值范围,置信度标签为矩阵l,预测置信度为矩阵p,矩阵中每个数值的bce loss即为lossbce(z,x,y);公式为:

23、lossbce(z,x,y)=-l(z,x,y)*logp(z,x,y)-(1-l(z,x,y))*log(1-p(z,x,y)) (7)

24、0≤z<3,0≤x<80,0≤y<80

25、使用旧缺陷类别的样本对模型进行训练,得到教师模型,作为后续出现新缺陷类别和新缺陷样本进行蒸馏工作的基础。

26、进一步地,在步骤s3中,利用教师模型对学生模型进行蒸馏操作的具体方法为:首先按照yolov5模型框架搭建学生模型,冻结教师模型参数,输入图片分别经过教师模型和学生模型后,通过最后一层检测层,输出向量的含义依次为:目标框中心点的横坐标、目标框中心点的纵坐标、目标框本文档来自技高网...

【技术保护点】

1.一种改进的联合YOLOv5和知识蒸馏的汽车发动机缸孔内壁检测方法,其特征在于,所述方法包括以下步骤:

2.根据权利要求1所述的方法,其特征在于,步骤S1具体为:

3.根据权利要求2所述的方法,其特征在于,在步骤S2中,首先根据数据集的特征,进行自适应锚框计算,得到大、中、小三个尺度下的各自三个锚框比例,用于后续的训练,然后对样本图片进行自适应图片缩放,以适应不同尺寸目标的检测。

4.根据权利要求3所述的方法,其特征在于,所述教师模型采用YOLOv5_small结构,其主干网络包括切片结构Focus、卷积模块Conv、瓶颈层C3以及空间金字塔池化SPP,输入图像经过主干网络的多次下采样提取了若干个不同尺度的特征,然后经过自上而下特征金字塔融合网络结构FPN,再经过自下而上的路径聚合网络结构PAN,将不同尺度的特征信息融合起来,最后头部预测网络将80×80、40×40、20×20的特征图分别对小型目标、中型目标、大型目标进行预测。

5.根据权利要求4所述的方法,其特征在于,在步骤S2中,训练教师模型时使用YOLOv5的损失函数,由三个损失部分组成,包括矩形框损失lossbox、置信度损失lossobj和分类损失losscls,损失函数是三个部分的损失加权和,公式为:

6.根据权利要求5所述的方法,其特征在于,在步骤S3中,利用教师模型对学生模型进行蒸馏操作的具体方法为:首先按照YOLOv5模型框架搭建学生模型,冻结教师模型参数,输入图片分别经过教师模型和学生模型后,通过最后一层检测层,输出向量的含义依次为:目标框中心点的横坐标、目标框中心点的纵坐标、目标框宽度、目标框高度、前景概率和属于各类别的概率;由于学生模型是同时可识别新增发动机缸孔内壁缺陷类别和旧缺陷类别的训练模型,因此学生模型的输出比教师模型的输出维度更高,高出的数量即为新增类别数量,对学生模型的输出进行切片操作,取出与教师模型维度及含义相对应的部分,将教师模型的输出向量与学生模型输出切片后的向量通过变形softmax函数,把教师模型的结果当作软标签,学生模型的结果当作软预测,把KL损失函数和L2损失函数的加权和当作蒸馏损失,让教师模型的输出指导学生模型的训练,使得学生模型对旧类别的输出结果与教师模型相接近,从而保持学生模型对旧类别的识别能力;L2损失函数公式为:

7.根据权利要求6所述的方法,其特征在于,在步骤S3中,学生模型的输出经过softmax函数,得到硬预测,与数据集中提前标注的对应硬标签按照YOLOv5的损失函数进行计算,从而使学生模型具备对新增缺陷类别样本的识别能力;

8.根据权利要求7所述的方法,其特征在于,引入变形Softmax函数进行平滑处理,具体方式是加入参数T,公式为:

9.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-8任一项所述方法的步骤。

10.一种计算机可读存储介质,用于存储计算机指令,其特征在于,所述计算机指令被处理器执行时实现权利要求1-8任一项所述方法的步骤。

...

【技术特征摘要】

1.一种改进的联合yolov5和知识蒸馏的汽车发动机缸孔内壁检测方法,其特征在于,所述方法包括以下步骤:

2.根据权利要求1所述的方法,其特征在于,步骤s1具体为:

3.根据权利要求2所述的方法,其特征在于,在步骤s2中,首先根据数据集的特征,进行自适应锚框计算,得到大、中、小三个尺度下的各自三个锚框比例,用于后续的训练,然后对样本图片进行自适应图片缩放,以适应不同尺寸目标的检测。

4.根据权利要求3所述的方法,其特征在于,所述教师模型采用yolov5_small结构,其主干网络包括切片结构focus、卷积模块conv、瓶颈层c3以及空间金字塔池化spp,输入图像经过主干网络的多次下采样提取了若干个不同尺度的特征,然后经过自上而下特征金字塔融合网络结构fpn,再经过自下而上的路径聚合网络结构pan,将不同尺度的特征信息融合起来,最后头部预测网络将80×80、40×40、20×20的特征图分别对小型目标、中型目标、大型目标进行预测。

5.根据权利要求4所述的方法,其特征在于,在步骤s2中,训练教师模型时使用yolov5的损失函数,由三个损失部分组成,包括矩形框损失lossbox、置信度损失lossobj和分类损失losscls,损失函数是三个部分的损失加权和,公式为:

6.根据权利要求5所述的方法,其特征在于,在步骤s3中,利用教师模型对学生模型进行蒸馏操作的具体方法为:首先按照yolov5模型框架搭建学生模型,冻结教师模型参数,输入图片分别经过教师模型和学生模型...

【专利技术属性】
技术研发人员:金晶陈铎何旭杰冯怡园
申请(专利权)人:哈尔滨工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1