APP下载

基于YOLOv5 的打磨表面质量快速评价方法

2022-12-11黄震朱华波陶友瑞

智能计算机与应用 2022年11期
关键词:表面质量工件机器人

黄震,朱华波,陶友瑞

(1 河北工业大学 省部共建电工装备可靠性与智能化国家重点实验室,天津 300130;2 河北工业大学 机械工程学院,天津 300401)

0 引言

在手机壳喷漆前需要对手机壳表面进行打磨,打磨质量直接影响手机壳喷漆的效果,打磨面粗糙会造成手机壳表面漆层的不均匀,严重时会导致漆面的剥落。因此在打磨加工后,需对工件表面的质量进行检测,并评价其是否符合喷漆标准。传统检测是采用针触法、对比法和模具法等进行抽样检查,人工抽样检测的方法会受到来自多方面的制约限制,可能会出现漏检的情况,并且长时间的工作也会造成人的视觉疲劳,导致误检率逐渐增加。为了避免人工检测出现的问题,王武等人[1]设计了基于机器人视觉的手机壳表面缺陷检测的方法,实现了产品缺陷的自动化检测。为实现手机外壳表面缺陷的自动检测,文生平等人[2]成功搭建了手机壳表面缺陷视觉检测系统。针对手机壳面板表面的几种缺陷类型的检测,张岩等人[3]设计了基于黑白面阵CCD在线检测系统,并取得了良好的效果,但却需要在特定的情况下使用。针对手机壳表面凹坑、斑点等缺陷特征难识别的问题,刘源泂等人[4]提出将3 种成像光路分别对应单台彩色相机三通道成像的方法,为多材质和多颜色物体表面缺陷检测任务提供了一种基于颜色空间的解决思路。现阶段采用深度学习的算法针对视觉技术应用在特定目标的识别上做出了大量的相关研究,可广泛应用于识别检测、分类等[5-6]方面。深度学习算法主要包括R-CNN[7]、Faster R-CNN[8]、Fast R-CNN[9]和YOLO[10]等检测算法,YOLO 算法不需要区域建议寻求目标,具有检测速度快,背景误判率低等优点[11]。因此本文提出了一种基于YOLOv5 模型的图像识别评价方法,实现了对加工件表面质量缺陷的检测识别,可对表面质量是否符合标准进行快速的评估。

1 打磨表面质量评价方法

1.1 加工件表面缺陷

机器人在加工过程中执行器与被加工工件表面接触,执行器受到压力和摩擦力,从而降低机器人的整体刚度,造成机器人执行器的振动,在磨削过程中的振动由于振幅过大就会产生振纹[12]。振纹的产生会严重影响工件表面的平滑程度,进而影响了后续的喷装效果。常见的2 种影响加工件表面质量的缺陷如图1 所示。

图1 缺陷图Fig.1 Defects map

从图1 中可以看出,图1(a)中的条纹是加工件表面的振纹;图1(b)的黑点是加工件表面斑块,会严重影响喷装效果,因此当出现图1(b)中缺陷时工件无法进行喷漆工作。本文通过对这2 种缺陷的定量分析,从而达到对加工件表面质量评价的目的。

1.2 表面质量评价方法设计

通过对打磨机器人产生的2 种表面缺陷进行定量分析,提出了一种打磨面质量评价方法,具体流程如图2 所示。

由图2 可知,考虑到图1(b)中缺陷的出现会严重影响加工件表面喷装,因此当加工件表面出现图1(b)的缺陷时,工件会直接进行返工处理;没有检测出图1(b)的缺陷时,需计算单位面积内的振纹数量,与预设的单位面积内的振纹数量m进行比较:大于m时、返厂加工;小于m时,工件完成打磨工序,进入下一步。

图2 表面质量评价流程图Fig.2 Surface quality evaluation flowchart

振纹的产生会直接影响工件表面的平滑程度,所以选择单位面积内加工件表面振纹的数量决定打磨质量的高低。研究推得的数学公式如下:

其中,p为单位面积振纹数量;N为加工件表面振纹总数量;s为加工件表面面积。

2 基于YOLOv5 的表面缺陷检测

2.1 YOLOv5 介绍

YOLO 是一种基于深度神经网络的对象识别和定位算法,具有结构简单、检测速度快和识别准确等特点。YOLOv5 是目前YOLO 系列中最新的实时目标检测算法,在集成YOLOv4 算法优势的同时,也对主干网络进行了优化,提高对小目标的准确度。在YOLOv5中,有4 种控制网络结构的模型,分别是:YOLOv5s、YOLOv5m、YOLOv5l 和YOLOv5x,网络的深度直接影响检测器的检测精度和速度。4 种模型的官方性能测试结果显示[13],YOLOv5s 模型与其他3 种模型相比,具有模型最小和速度最快的优点,因此本文选用YOLOv5s 模型。

2.2 改进YOLOv5 网络结构

为了对模型轻量化的同时提高检测的精度,采用Ghost Bottleneck 模块来取代YOLOv5 网络结构中的Bottleneck[14],详见图3。该模块是一种即插即用的模块,由2 个堆叠的Ghost 模块组成,通过一组内在的缺陷映射,利用简单的线性变化生成更多的Ghost 缺陷映射,这些映射可以充分提取内在的缺陷信息,进而提高了缺陷提取能力。

图3 Ghost Bottleneck 模块Fig.3 Ghost Bottleneck module

本文研究的打磨表面缺陷具有不易识别、缺陷个体小的特点,为了让网络自适应地注意一个重要缺陷,因此在模型结构中引入了CBAM 模块。该模块会对输入的缺陷层,分别进行通道注意力机制和空间注意力机制的处理。其中,注意力机制的实现主要对单个缺陷层,依次进行全局平均池化和全局最大池化,再对2 个结果利用共享的全连接层进行处理,将2 个处理后的结果进行相加,而后通过sigmoid函数,获得输入缺陷层每一个通道的权值。将权值乘上原输入缺陷层,最终得到输出不同比重通道的缺陷图。空间注意力机制的实现是对单个缺陷层,在每一个缺陷点的通道上取最大值和平均值,并将2 个结果进行堆叠,利用一次通道数为1 的卷积调整通道数,接着又通过sigmoid函数,获得输入缺陷层每一个通道的权值。将权值乘上原输入缺陷层,最终得到输出不同比重通道的缺陷图。改进的YOLOv5 模型结构如图4 所示。

图4 改进的YOLOv5 模型结构Fig.4 Improved YOLOv5 model structure

为了让模型识别缺陷训练得更好,在损失函数模型中,利用IoU指标[15]构建了目标框与预测框位置损失函数CIoU_Loss,再利用FocalLoss评价指标构建目标框与预测框类别损失和置信度损失Focal_Loss,CIoU_Loss损失函数公式如下:

其中,IoU为预测框与真实框之间的交并比;Dis_C为待检测目标最小外接矩形对角线距离;Dis_2 为待检测目标真实框与预测框中心点的距离;v为衡量长宽比一致性参数。

研究指出,IoU是预测框与真实框之间的交并比,IoU数学定义式见如下:

其中,A为预测框,B为真实框。

这里的v是衡量长宽比一致性参数,其计算公式见如下:

其中,wgt为真实框宽度;hgt真实框高度;wp为预测框宽度;hp为预测框高度。

与此同时,研究推出的Focal_Loss损失函数计算公式见如下:

其中,pt为预测样本概率,γ为常数参数。

2.3 实验设置

本次实验运行的环境:CPU 为Intel(R)Core(TM)i7-8650U,GPU 为Intel(R)UHD Graphics 620,内存为16 G,操作系统为Windows10,开发语言为Python,Pytorch 框架。

手机壳表面质量检测模型训练采用的是打磨机器人加工出的工件表面数据集,作为YOLOv5 模型的训练输入和检测目标,为训练集提供300 张图片。该数据集包含2 种常见的打磨加工件表面缺陷,分别为:振纹和斑块。

为加强模型的泛化能力,使模型采集到更多的特征缺陷信息,在原始数据的基础上对数据进行扩充。通过对原始数据进行镜像、旋转、对比度变换的方法,将300 张已加工手机壳表面图片扩展到1 500张作为训练集。用labellmg 软件标注图像缺陷,将振纹缺陷设定成a,斑块缺陷设定成b,将标定完成的图像保存成xml 格式的文件,再将其输入到训练模型进行训练。

模型通过多次的Epoch训练进行逐步的学习,在150个Epoch后逐渐平稳,在训练过程中记录模型Precision曲线如图5 所示。图5中,Precision表示精度,值越高、说明精度越高。模型改进前预测曲线参见图5(a),预测曲线在训练达到25个Epoch时曲线总体上升趋势逐渐减小,在150个Epoch达到平稳,稳定在72%。模型改进后预测曲线参见图5(b),预测曲线明显比改进前的上升趋势大,同时在150个Epoch达到平稳,稳定在79%。由此可知,改进后的模型训练情况更好。

图5 改进YOLOv5 前后对比Fig.5 YOLOv5 model results comparison before and after the improvement

本文为提升YOLOv5 模型的精度,对模型进行了改进。改进后的YOLOv5 在精度方面:对图1(a)中缺陷的检测精度提高了19.2%,达79.5%,改进前召唤率为56.1%,改进后提升了7.1%;图1(b)缺陷的检测精度提高了14.2%,达85.4%,改进前召唤率为70.8%,改进后提升了5.4%,有效改善了模型漏检的问题。因此,本文通过改进YOLOv5 网络模型可以提高检测的精度,改进的YOLOv5 算法前后性能对比,见表1。

表1 YOLOv5 算法改进前后性能对比Tab.1 Performance comparison before and after the improvement of the YOLOv5 algorithm

3 手机壳表面打磨质量评价实验

3.1 打磨实验

机器人在不同的加工路径、加工位置会对机器人整体的加工刚度、及表面加工质量产生影响,因此本文设计了机器人在不同切入点和加工路径的打磨对比实验。通过提出的表面评价方法来判定加工表面质量是否符合标准,同时找出对比实验中的最佳打磨方式。实验选择加工的工件为手机壳,材质为铝合金,铝合金具有良好的塑性和易于加工的特点。选取的打磨头为方形打磨头,打磨深度为0.2 mm,打磨抛光多功能砂纸为240目,打磨头进给速度为3.75 mm/s,设定了2 种加工路径,其运动轨迹如图6 所示。

图6 加工路径轨迹Fig.6 Machining path track

在磨削深度以及磨削参数不变的工况下,选择4 个不同的打磨进刀点,进刀点与机器人的相对位置如图7 所示。图7中,1 和4 距离机器人最近,2和3 距离机器人最远。

图7 机器人与切入点相对位置Fig.7 The position of the robot relative to the entry point

实验中的4 个打磨进刀点,每个进刀点进行轨迹a、b两种路径的加工方式。编号1~8 代表工件每个切入点的不同路径:编号3、4、7 和8 属于轨迹a在不同切入点的打磨路径;编号1、2、5 和6 属于轨迹b在不同切入点的打磨路径。

图8 切入点与路径Fig.8 Pointcuts and paths

3.2 缺陷检测

手机壳是平放在加工台上,通过打磨机器人对手机壳进行打磨,要采集加工件表面的图像,在加工台的正上方安装一个相机。为了让相机更好地采集图像需要在加工台的侧面进行光照,将图像上传到训练模型中,得出加工后工件表面的识别效果图,如图9 所示。图9中,标号a为对加工件表面振纹的标定,标号b为斑块的标定,改进后的YOLOv5 可以有效检测出2 种缺陷,满足实验需求。

图9 工件表面检测效果Fig.9 Workpiece surface detection effect

3.3 实验结果与分析

采集8 种路径下打磨加工实验的手机壳表面图像的缺陷,根据单位面积内振纹数量判断打磨质量。实验中将8 种打磨路径进行多组的打磨实验,经过多次的实验得出:对打磨件缺陷进行识别以及评价表面质量是否合格的总时长平均在700 ms 左右,远高于人工检测。通过YOLOv5 模型检测出的打磨表面缺陷数量,如图10 所示,各路径单位面积内振纹数量,如图11 所示。

图10 打磨表面缺陷数量Fig.10 Number of polished surface defects

图11 各路径单位面积内振纹数量Fig.11 The number of vibration lines per unit area of each path

由图10 可得,路径7 打磨质量明显优于其他路径打磨,单位面积内的振纹最少,打磨质量更好。4种轨迹a的打磨路径:手机壳表面质量依次7>4>8>3;4 种轨迹b打磨路径:手机壳表面质量依次为6>5>2>1;说明轨迹a打磨路径比轨迹b打磨的手机壳表面质量高,且切入点4 位置优于其他3 点。但根据1.2 节提出的表面质量流程评价方法,对8种加工路径下的表面质量进行评价,在路径3、5 和8 中出现了缺陷b,可知2 种路径不符合加工,因此在加工最优的切入点4 时不能按照路径8 进行打磨。预设在本实验中单位面积内的振纹数量m设定为2,则仅有路径4、7 符合加工条件。实验结果表明该方法可以有效地快速识别表面缺陷,并对加工件表面质量是否符合要求进行评估。

4 结束语

为提高加工件表面特征的提取能力改进了YOLOv5 模型,引入注意力机制对特征图不同通道进行权衡的方法实现对加工件表面振纹和斑块两种缺陷的检测,在检测精度方面获得了较大的提升。同时基于YOLOv5 模型提出了一种对打磨加工件表面质量快速评价的方法,实验结果表明该方法可对加工件表面缺陷进行定量有效分析,从而判断加工件表面质量是否符合标准的快速评价,减少了人工测量的主观干扰,同时使整个加工流程更加自动化。

猜你喜欢

表面质量工件机器人
裂纹敏感性钢铸坯表面质量控制
考虑非线性误差的五轴工件安装位置优化
高强化平行流电解提高A级铜表面质量实践
关于机械加工中表面质量控制的探究
三坐标在工件测绘中的应用技巧
石英玻璃旋转超声铣削表面质量研究
焊接残余形变在工件精密装配中的仿真应用研究
机器人来帮你
认识机器人
机器人来啦