基于深度学习的自冲铆接偏铆缺陷检测算法研究*
2023-03-15崔俊佳莦茹茹廖宇轩李光耀
崔俊佳,张 军,莦茹茹,蒋 浩,廖宇轩,李光耀
(1.湖南大学汽车车身先进设计制造国家重点实验室,长沙 410082;2.北京理工大学深圳汽车研究院(电动车辆国家工程实验室深圳研究院),深圳 518118)
为响应国家可持续发展战略,轻量化已经成为节能减排的重要方式,特别在航空工业中,对航空飞行器每一克的自重都锱铢必较,对轻量化的需求十分迫切。针对轻量化需求,多种材料机身成为主流,由此诞生多种异种材料连接工艺。其中自冲铆接在连接异种材料时稳固可靠、方便快捷而备受关注。飞机蒙皮和骨架上,都会大面积运用铆接完成材料的连接。因此,针对自冲铆接工艺产生的缺陷以及接头性能评估的研究就显得尤为重要。
国内外学者针对自冲铆接工艺进行了较为全面的研究,Han等[1]以预应变等级为变量,对SPR(Selfpiercing riveting)试件进行剪切拉伸试验和疲劳试验,得出预应变等级同抗拉强度和疲劳寿命呈正相关。Rao等[2]研究了两种不同搭接方式下碳纤维复材– AA6111铝合金铆接件的疲劳性能,试验结果表明铆接件的钉头高度对接头的最大剪切载荷及失效时应力循环次数有着显著的影响。黎雄等[3]采用LS – DYNA软件建立玻璃纤维增强热塑性复合材料 (GFRTP)的自冲铆接有限元模型,对SPR过程进行数值模拟和试验验证,与金属SPR接头钉腿被下工件完全包裹而形成自锁结构不同,GFRTP工件SPR接头的形成机理是钉腿穿透下工件而向外翻卷,与钉头一起形成机械锁。蒋浩等[4]采用电磁铆接的方式探究了碳纤维–铝合金电磁铆接接头的力学性能,当以微观组织等性能作为评价指标时,最优放电能量为5.0 kJ;当以接头剪切力作为评价指标时,最优放电能量为5.3 kJ。
针对自冲铆接质量检测方法的研究也随着自冲铆接工艺的发展而逐渐深入。Han等[5]使用NDT(Non-Destructive-Testing)技术测试了一系列SPR接头,研究得出对于一些有两层或三层的铝接头,NDT技术可以检测到坏的接头,但是对于涉及非常薄的铝板和钢板的接头,该方法的检测精度还有待提高。Johnson等[6]引入机器视觉的方式,对铆钉装载是否到位、是否存在重复铆接进行监控,并且提供了一些可确定铆接面板厚度的方法,继而避免一些可能会在强度和美观方面损害机械自锁结构的故障发生。Haque等[7]研究了不同厚度的碳钢板和不同硬度等级的钢铆钉铆接时产生的力–位移特性曲线,将力–位移曲线分为四个不同的阶段,并提出力–位移曲线可用于监测相同工艺参数铆接接头质量的可行性。
人工智能技术的逐步成熟和在制造业中的成功应用,是制造业实现智能化的关键技术保障,目前越来越多基于人工智能的方法被运用到无损检测的领域。Zhao等[8]采用ANN(Artificial Neural Network)对自冲铆接内部自锁结构进行预测,并对铆钉、铆模进行最优化匹配。Karathanasopoulos等[9]也提出类似的神经网络对广泛可能的自穿铆接场景下的成功接头的形成进行精确分类。蒋玲[10]构建了两种基于卷积神经网络的子图像裂纹识别网络,并编写遍历搜索算法,将已构建的基于子图像的裂纹识别网络的应用范围拓展到自冲压铆接全尺寸图像的裂纹待检测区域,完成自冲铆接裂纹的自动识别。
虽然针对自冲铆接工艺的研究比较充分,但针对其工艺产生的缺陷及其缺陷检测方面的研究却鲜见。本文针对自冲铆接偏铆缺陷提出了一种基于YOLOv5s加ResNet18的检测算法。算法兼顾效率和正确率,并具有极高的鲁棒性和迁移能力。
1 试验及方法
1.1 自冲铆接设备与视觉检测平台
自冲铆接的设备和铆接过程如图1所示。铆接步骤主要可以分为4个阶段:
图1 自冲铆接设备及流程图Fig.1 Self-piercing riveting equipment and flow chart
(1)夹紧阶段,压边圈对上板施加压力,为固定铆钉、上下板材和凹模之间提供下压力;
(2)穿刺阶段,铆钉受力持续下降,刺穿上板,该环节铆钉不会发生较大的形变,否则会影响自锁结构的形成;
(3)扩张阶段,铆钉受力下降并受下板和铆模的阻碍,扩张变形,形成自锁结构;
(4)卸载阶段,铆接完成,压边圈和冲头上升,铆接接头卸力回弹。
本次试验所有图像均由一款4800 W像素的CCD(Charge Coupled Device)工业相机采集得到。为避免偏铆标定时出现由图像采集造成的误差,所有图像均在设备调试合适后,固定设备同一批次采集。采集设备如图2所示,最上方为图像采集设备和广角镜头,中部为环状补光灯,下方为铆接工件。本次试验共采集了33个自冲铆接件825张图像数据。
图2 视觉检测平台Fig.2 Platform of vision detection
1.2 偏铆缺陷的影响与量化
采用厚度2 mm的5052铝合金板 (下板)与3 mm的5083铝合金板(上板)具体尺寸如图3(a)所示,制作了3组正常件与3组偏铆件,接头形貌如图3(b)所示。采用美国斯特朗公司生产的Instron 5985万能试验机对样件进行2 mm/min的准静态剪切试验 (图3(c))得到表1的试验结果。偏铆件相较于正常件最大剪切力下降了423.64 N,考虑到自冲铆接作为车身或机身连接方式时总是成批使用,所以积累的力学性能下降会造成连接可靠性下降。
表1 最大剪切力Table 1 Maximum shear force
图3 准静态剪切试验Fig.3 Quasi-static shear experiment
由于偏铆程度过大时轮廓不能用标准圆拟合,所以需要一种适用性更广泛的量化偏铆方法。如图4所示,首先标出最大圆的最小外接矩形,通过该矩形找到最大圆圆心。然后以该圆心为中心,以最远距离、最近距离为半径画圆。所作两圆应该满足以下条件:轮廓与最近距离圆有且只有一个相切点,且轮廓上其余点均在最近距离圆外;与最远距离圆有且只有一个相切点,且轮廓上其余点均在最远距离圆内。最远距离圆直径减去最近距离圆直径的差值,即可量化铆接接头的偏铆程度。为了消除图像获取、标记软件对图像放大或缩小的影响,将直径差值除以最大外接圆的最小外接矩形平均边长,获得一个无量纲的数。为了更加方便地表述偏铆程度,在满足自冲铆接偏铆程度从完全无偏铆到极端偏铆的情况下,将该数扩大30倍,使该数处于0到10的区间,偏铆程度P为
提及体育学科的核心素养,简单来说,就是自主健身,其核心能力则主要包括运动认知能力、健身实践能力和社会适应能力,而体育学科核心素养是对知识与技能、过程与方法、情感态度价值观的整合,是以学生发展素养为核心价值追求。
图4 偏铆程度量化示意图Fig.4 Quantification diagram of degree of partial riveting
式中,D1是最大距离圆直径;D2是最小距离圆直径;W是铆接接头外接矩形的宽;H是该矩形的高。将偏铆程度按[0,3)、[3,6)、[6,10)分别划分为正常件、良品和次品。
1.3 单步检测方法研究
1.3.1 基于YOLOv5s的偏铆检测
YOLO是“You Only Look Once”的缩写,是单阶段端对端的目标检测算法,经过训练的目标检测网络可以根据图像输入直接输出目标边界框和类别,兼具高效率和高精度,被广泛应用于工业质量检测及缺陷检测中[11]。YOLOv5是该系列在开源网站维护较为活跃的网络结构,其中YOLOv5s网络参数量最小,算力要求小,检测效率高。因此本文在偏铆缺陷检测上选用YOLOv5s网络,并在后续双步检测中,将YOLOv5s网络进行剪枝使其充当一个单纯的目标检测网络,不再兼顾分类任务。
YOLOv5s在对采集到的图像分训练集和验证集进行100轮训练后的结果如图5所示。此处YOLOv5s采用CIOU Loss和BCE Loss来计算损失,后续网络采用CrossEntropy Loss计算损失,可看出在3个损失中,无论是在训练集还是在测试集中,边界盒损失和客观性损失经过一段急剧下降后,以相对平滑的曲线下降并最终呈现收敛的状态。但是在验证集中的分类损失却以一种极其夸张的反复跳跃逐步完成下降,并且最终也不收敛,处于反复的振荡状态。经过100轮训练后,YOLOv5s虽然得到了一个接近于1的精度和召回率 (Recall),但是召回率和正确率始终处于一种振荡状态。召回率在50轮次左右甚至有接近30%的回撤。
图5 YOLOv5s训练结果Fig.5 YOLOv5s training results
边界盒损失和客观性损失平滑下降并最终收敛于极小的值,由此可知YOLOv5s在找出铆接接头并框选出铆接接头区域的任务上表现优秀。但是在铆接接头分类任务上表现却不理想,最终实测可得95.18%的正确率。
1.3.2 基于ResNet18的偏铆检测
ResNet网络[12]创造性地提出残差结构,解决了在深度学习中当网络堆叠到一定深度会出现的梯度消失或梯度爆炸以及退化问题。在ResNet中按网络结构的深度又分为若干分支,本文采用网络结构最为简单的ResNet18作为分类网络。
本次试验用采用ResNet18网络结构对样本数据进行100轮训练。经过100轮训练后,在训练集中的训练损失达到了0.00013862,在验证集中的准确率达到91.46%,并且在10 ~ 50轮的时候准确率有较大幅度的波动 (图6)。
图6 ResNet18训练结果Fig.6 ResNet18 training results
1.4 双步检测方法研究
由于只采用一种深度学习网络难以达到预期的目标,萌生出将自冲铆接接头检测任务分为铆接接头检出和分类两个任务,并由不同的方法分别完成,如图7所示。使用YOLOv5和霍夫2-1圆检测完成铆接接头检出任务,使 用ResNet18、VGG16和GooLeNet完成铆接接头分类。
图7 检测流程图Fig.7 Detection process chart
1.4.1 铆接接头检出
YOLOv5铆接接头检出方法采用基于YOLOv5网络修改完成,去掉原网络的分类损失,不再进行铆接接头分类,保留其中的客观性损失和边界盒损失,检测图像中是否存在铆接接头和铆接接头的具体位置。去掉YOLOv5网络head部分中用以检测小目标的80×80检测部分和用以检测中等目标的40×40检测部分,仅保留用以检测大目标的20×20检测部分。
经过训练后特制YOLOv5网络优秀地完成了铆接接头检测的任务(总共825张铆接工件图像),检出825张铆接接头图像,无漏检无错检。检出的铆接接头图像完整、准确,铆接接头基本以最大外圆的最小外接矩形裁剪完成。部分铆接接头图像如图8所示。
图8 铆接接头类别Fig.8 Types of riveted joints
霍夫2-1圆检测基本完成铆接接头检测任务 (总共825张铆接工件图像),但是出现了1漏检和1错检,检出823张铆接接头图像。在被检出的铆接接头图像中同时存在着部分铆接接头并不是完整且准确检出的情况,如图9所示。
图9 霍夫检测中不完整的铆接接头Fig.9 Incomplete riveted joint in Hough
由两种方法对铆接接头检出结果可知,定制的YOLOv5网络在铆接接头检出任务上的表现更好,检出的铆接接头完整且准确。霍夫2-1圆检测在该任务上不仅没法做到全部检出,检出的铆接接头存在残缺的问题,而且检出的铆接接头区域不够准确。但是两种方法中,霍夫2-1圆检测的检测方法拥有更加朴素且可解释的过程,所需要的计算量相较于YOLOv5网络更少。在严格控制图像采集环境和采集方法的工业化生产线上,霍夫2-1圆检测具有超过YOLOv5深度学习网络的潜力。
1.4.2 铆接接头分类
在上一步将铆接接头检出的基础上,需要对铆接接头进行分类,以区分合格品、次品和残品。常见的CNN(Convolutional neural networks)分类网络的过程大致可以分为两步,先通过若干层卷积层提取图像深层特征,然后展开为全连接层,通过激活函数分别计算图像所属各个类别的可能性。不同的CNN分类网络主要区别在于采用的特征提取卷积层结构不同,所以本次试验采用3种常见的CNN分类网络ResNet18、VGG16和GoogLeNet。
VGG网络[13]在定位任务和分类任务中有着优秀的表现。VGG16分别用霍夫2-1圆检测和YOLOv5所检测出的铆接接头图像进行训练,试验结果如图10所示。其中呈下降趋势的是训练集分类损失,呈上升趋势的是验证集正确率,分类损失越低、正确率越高说明网络对该分类任务的完成情况越好。VGG16在YOLOv5所采集的铆接接头数据集上表现相对较好,相较于在霍夫算法所采集的数据集上的表现,训练集的分类损失更快下降,验证集的正确率更快上升。但VGG16网络在训练过程中波动较大,分类损失和正确率都无法收敛。
图10 VGG16训练结果Fig.10 VGG16 training results
GoogLeNet是一种包含Inception的深度卷积神经网络体系结构[12],能较好地完成分类和检测任务。GoogLeNet分别用霍夫2-1圆检测和YOLOv5所检测出的铆接接头图像进行训练,试验结果如图11所示。GoogLeNet在YOLOv5所采集的铆接接头数据集上表现相对较好,相较于在霍夫算法所采集的数据集上的表现,其训练集分类损失几乎全程都更小。但是在两种数据上的验证集正确率都处于巨大的波动中,在YOLOv5采集的数据集上甚至在训练后期出现了接近30%的反弹。无论是分类损失还是正确率都处于一直振荡状态无法收敛,所以GoogLeNet网络不能很好地完成该分类任务。
图11 GoogLeNet训练结果Fig.11 GoogLeNet training results
ResNet18网络试验结果如图12所示。ResNet18在该分类任务上表现极好,无论是在YOLOv5或是霍夫算法采集的数据集上,训练集分类损失都能收敛到0,验证集正确率都能收敛到1,ResNet18网络展现出了极好的分类效果。令人意外的是该网络在第10轮训练时就在YOLOv5采集的数据集上达到了测试集分类误差为0,验证集正确率为1的最好状态,拥有极快的收敛速度。并且在整个训练过程中网络表现都很稳定,没有出现前两种网络的大幅振荡,仅在YOLOv5数据集上训练初期和霍夫数据集上接近收敛时验证集正确率出现了5%左右的振荡,训练集分类损失仅在急速下降末期和收敛前期出现了小幅振荡。虽然ResNet18网络在霍夫算法采集的数据集和在YOLOv5采集的数据集上均有优秀的表现,但是可以很明显地看出YOLOv5采集的数据集在促进ResNet18网络快速收敛方面更有优势,无论是训练集分类损失还是验证集正确率ResNet18网络在YOLOv5采集的数据集上的表现都更加优秀。
图12 ResNet18训练结果Fig.12 ResNet18 training results
由以上结果可知,在铆接接头分类任务中ResNet18表现最好。ResNet18相较于VGG16和GoogLeNet不仅最终结果达到了测试集分类损失0.000104128,测试集正确率100%,并且ResNet18的训练过程更平顺,收敛速度更快。YOLOv5所采集的铆接接头数据集在3种深度学习网络训练过程中都对霍夫2-1圆检测的数据集有着不同程度的领先,这也从侧面说明YOLOv5采集的铆接接头在质量上更加完整和准确。
2 结果与讨论
Grad-CAM[14]使用任何目标概念的梯度流到最后的卷积层,产生一个粗定位地图,突出图像中的重要区域,以预测该概念。Grad-CAM先获取CNN网络正向传播的特征层,一般为最后一个卷积层的输出,因为越深层的卷积层抽象程度越高,语义信息越丰富,然后获得未经激活函数处理的网络预测值y,从中分离出所需的分类类别yc。然后针对该分类反向传播,获取其针对目标特征层每个通道的权重,再通过激活函数ReLu就可以获得该图像在分类下的Grad-CAM。
式中,A代表某个特征层,在本次试验中所用的是最后的一个卷积层;k代表特征层A中的第k个通道;c代表类别c;Ak代表特征层A中通道k的数据;代表针对Ak的权重。
式中,yc代表网络针对类别c预测的未经激活函数处理的分数;代表特征层A在通道k中,坐标为 (i,j)位置处的数据;Z等于特征层的宽度和高度的乘积。
在单步检测和双步检测中均采用了ResNet18,在单步检测中ResNet18只能达到84.1%正确率,但在双步检测中正确率却可以达到100%,如图13所示。本试验保存了在训练过程中每一次训练后网络的权重数据,然后通过Grad-CAM对每个权重数据下ResNet18网络对于图像的侧重进行可视化显示,最终结果如图14和15所示。可以看到在单步检测中,ResNet18虽然能够找到铆接接头所在位置,但是其关注的都是铆接接头的局部信息,并且还会关注板料所摆放的夹角等无效信息。在单步检测中,由于画面含有许多无效信息,这些无效信息明显干扰了ResNet18网络对于铆接接头种类的判断。在图16中,由于双步检测将图像除铆接接头外的区域全部裁剪丢掉,只保留接头位置图像。通过ResNet18网络学习,ResNet18网络迅速找到铆接接头核心区域,它似乎明白了该分类任务的实质就是找到铆接接头内圆和外圆的关系。从最后一轮权重的3种分类的Grad-CAM图像可以看出,ResNet18在寻找图像重要区域的时候,并不是机械地将图像中心区域设置为重要,而是将图像核心区域随着铆接接头内圆位置而改变。
图13 ResNet18单–双步训练结果Fig.13 ResNet18 single-double step training results
图14 ResNet18单步训练Grad-CAM图像Fig.14 ResNet18 single step training Grad-CAM image
图15 ResNet18双步训练Grad-CAM图像Fig.15 ResNet18 double step training Grad-CAM image
本试验研究了VGG16和ResNet18在双步检测中面对同样的训练数据集出现巨大差异的原因,如图16所示。VGG16不仅训练过程振荡,最终结果也只达到97.5%的正确率。VGG16经过50轮训练的Grad-CAM图形如图17所示,可以发现VGG16对合格件所采取预测策略令人非常迷惑,不对图像某个通道侧重,而是采取了均等权重的处理方式,在其看来图像角点的信息和铆接接头所产生的信息是等价值的,但是很明显图像边角的图像信息不提供任何一点铆接接头是否偏铆的判断数据。并且在次品和残品类别中,VGG16所侧重的只是铆接接头核心区域的某一局部信息,并且该网络更关注图像上一小部分区域的信息。训练过程中Grad-CAM图像侧重区域的大幅度变动也解释了为什么VGG16在训练过程中反复振荡的问题,VGG16所迭代的策略比较激进,继而会出现下一轮权重大面积推翻上一轮预测的情况。
图16 ResNet18和VGG16双步训练结果Fig.16 ResNet18 and VGG16 double step training results
图17 VGG16双步训练Grad-CAM图像Fig.17 VGG16 double step training Grad-CAM image
3 结论
(1)试验论证了偏铆缺陷对自冲铆接工件最大剪切力有负面影响,偏铆件最大剪切力为7200.71 N,相较于正常件的7624.35 N,下降了5.6%。
(2)为了实现偏铆缺陷的正确检出,提出了剪枝后的YOLOv5s加ResNet18的检测方案。单独使用ResNet18时,验证集中的分类正确率达到91.46%;单独使用YOLOv5s,验证集中的分类正确率达到95.18%。而当将YOLOv5s裁剪掉分类功能和适配不同大小目标的分支后,得到一个专用的自冲铆接接头检测算法,再用ResNet18对裁剪出的铆接接头进行分类,最后实现验证集中分类正确率达到100%。
(3)通过Grad-CAM解释最终结果,ResNet18在双步检测中比单步检测中有更少无关信息干扰,并且经过YOLOv5s裁剪的铆接接头图像能提供更多的铆接接头信息,使得双步检测中ResNet18能快速且正确地捕捉核心区域,并做出正确的分类预测。ResNet18拥有残差模块,能有效避免梯度消失;VGG16中没有该结构,在提取图像信息时,深层网络受浅层网络的影响权重快速消失,并不能提取到图像深层信息,所以完成分类任务时效果不如ResNet18优秀。