APP下载

基于改进YOLOv5 的玻璃纤维管纱缺陷检测方法

2023-12-19董振宇景军锋

棉纺织技术 2023年12期
关键词:卷积精度特征

董振宇 景军锋,2

(1.西安工程大学,陕西西安,710600;2.陕西省人工智能联合实验室西安工程大学分部,陕西西安,710600)

玻璃纤维管纱是由玻璃纤维纱缠绕在纱管上 形成的管状纱线体,是玻璃纤维纱运输和储存的包装形式。随着玻璃纤维及其制品的迅速发展,玻璃纤维纱广泛应用于制造印刷电路板(Printed Circuit Board,PCB)和建筑材料的强化[1]。由于玻璃纤维纱的特殊性,任何微小的缺陷都会对管纱的质量评估产生严重的影响。早期的管纱缺陷检测主要靠人眼观察,人眼在长时间高强度劳动后容易产生生理性疲劳,造成误判。此外,由于工人的身体和情绪状态等因素,不同的工人对管纱的缺陷检测结果一致性较弱,检测的准确率和召回率无法得到保证。因此开展基于机器视觉的管纱自动缺陷检测的研究,对提高管纱的质量管控有深远意义。

基于机器视觉的缺陷检测方法通过先进的视觉设备采集缺陷图像,根据算法对图像进行处理,这类方法已经成功应用于管纱毛羽缺陷检测领域。JING J 等[2]为解决传统管纱表面缺陷检测质量不稳定的问题,提出了一种基于视觉显著性分析的管纱表面缺陷检测方法;蔡逸超等[3]针对筒子纱不规则的纹理基元增加缺陷检测难度的问题,提出一种基于多尺度多方向模板卷积的筒子纱表面网纱缺陷检测算法;李海叶等[4]为解决管纱人工检测质量不稳定的问题,提出一种基于最大稳定极值区域(MSER)和支持向量机(SVM)的玻璃纤维管纱毛羽检测方法。上述研究均使用基于机器视觉的传统算法,这些算法对于形状明显的缺陷可以获得较为满意的检测结果,但其对微小缺陷的识别能力较差。此外,在检测不同类型且尺寸差异较大的缺陷时,需要手动调整参数,因此该方法不适用于工业场景中的管纱缺陷检测。

近年来,基于深度学习的缺陷检测方法已经成熟并广泛应用于许多工业品领域。与传统图像处理技术相比,深度学习的方法能够从采集到的图像中学习缺陷的轮廓及语义规律,从而对缺陷进行智能检测,具有较强的泛化能力和鲁棒性,这类方法已经成为管纱缺陷检测领域新的研究焦点。赵麟坤等[5]以碳纤维立体编织物表面质量检测为研究对象,针对传统视觉识别率不高、小缺陷特征定位和识别不够准确的问题,提出基于改进的Faster RCNN 缺陷检测算法,可以满足碳纤维立体编织物表面质量检测要求。杨毅等[6]针对织物瑕疵检测中存在小目标瑕疵检测困难、不同种类瑕疵长宽比差异大、对实时性要求高等问题,以YOLOv4 网络为基础,提出一种新的轻量化织物瑕疵检测算法,该方法能够较好地应用于织物瑕疵检测。孙浩东等[7]针对经编织物缺陷检测精度低、漏检和误检率高等问题,提出改进的YOLOv5s 算法模型CSC-YOLOv5s,该算法对经编织物缺陷检测整体性能较好。

本研究提出了一种基于改进YOLOv5 的管纱缺陷检测方法(BY-YOLO),以解决管纱缺陷检测中存在的抗干扰能力差、检测精度低和检测速度慢的问题。本研究的主要创新如下。一是提出BY-YOLO,能够提高管纱缺陷检测的精度,同时可实现缺陷的实时检测。二是建立了高效重参数 网 络(Efficient Reparameterization Network,ER-Net)作为主干网络对管纱缺陷特征进行优化提取,利用结构重参数化技术和精确金字塔池化模块(Refined Spatial Pyramid Pooling,R-SPP),加快检测速度和减弱特征的噪声信息对检测效果的影响。三是构造了深度注意力路径聚合网络(Depth Attention Path Aggregation Network,DAPANet)作为颈部网络对管纱的多尺度特征进行融合,通过特征增强模块Depth-Mixer 和注意力机制模块,增强管纱缺陷特征的语义信息,提高模型对多尺度缺陷的检测能力。

1 管纱缺陷检测算法

1.1 YOLOv5 算法概述

YOLOv5 算法的网络结构主要包括三部分:一是主干网络,主要采用带有残差结构的C3(CSP-Bottleneck with three convolutions)模块对图像进行特征提取;二是颈部网络,使用路径聚合网 络(Pyramid Aggregation Network,PANet)实现了特征增强与双向特征信息流融合;三是检测头,通过卷积层改变特征图的通道数量,获取目标的位置信息和类别信息,使用定位、分类和置信度3 种损失函数对模型进行迭代学习,从而获得精准的检测锚框。

1.2 BY-YOLO 算法模型

本研究在YOLOv5 算法的基础上针对管纱缺陷检测任务进行改进,对YOLOv5 的主干网络和颈部网络分别使用不同的网络结构进行优化,BY-YOLO 模型结构如图1 所示。

图1 BY-YOLO 模型结构图

1.2.1 主干网络

BY-YOLO 主干网络为本研究提出的高效重参数网络(ER-Net),ER-Net 由RepVGGBlock[8]模块和精确金字塔池化(R-SPP)模块组成。

现阶段基于深度神经网络的管纱缺陷检测方法的检测速度一直无法令人满意,为了解决这个问题,本研究所使用的RepVGGBlock 模块在VGG 结构[9]的基础上加入了结构重参数化技术,如图2 所示。

图2 RepVGGBlock 模块

在训练阶段,RepVGGBlock 模块主要由卷积层、批归一化(BN)层和SiLU 激活函数组成,通过卷积层和跳跃连接来提取管纱的特征信息,激活函数作为非线性因素,能够提高神经网络对模型的表达能力。在训练阶段结束后将卷积层和BN层融合。

卷积层和BN 层融合后利用卷积的线性可加性将1×1 的卷积核和跳跃连接视为填充为0 的3×3 卷积核,与实际所使用的3×3 卷积核进行融合,最终在推理阶段得到只有一个卷积层和损失函数的结构,以此来达到降低模型复杂度、加快管纱缺陷检测速度的目的。

在主干网络进行特征提取中,由于经过多次下采样操作的管纱特征图存在大量的噪声特征,造成背景复杂,直接将特征图输入颈部网络容易提取出大量的冗余特征,增加检测难度,为解决这个问题提出了R-SPP 模块,如图3 所示。该池化模块通过1×3 和3×1 两个深度可分离卷积(Depthwise Separable Convolution,DS-Conv)[10]模块获取特征图的局部语义信息,两个不同大小的卷积层组成的局部感受野可以获取更加丰满的局部信息;通过全局平均池化模块将全局信息进行编码,使用双线性插值的上采样模块解耦来获取特征图的全局语义信息;多尺度语义信息通过两个连续的最大池化模块获得,该模块有助于提取特征级的稀疏信息,提高特征的多样性。这些包含不同感受野的特征图采用级联操作进行融合,通过1×1 的CBS 模块输出与输入相同尺度的特征图来扩大高层特征图的感受野,在一定程度上消除了管纱的噪声特征。

图3 R-SPP 模块的整体结构

1.2.2 颈部网络

BY-YOLO 颈部网络为本研究提出的深度注意力路径聚合网络(DA-PANet),其遵循PANet[11]自上而下和自下而上的双向特征融合方法。

在颈部网络中,C3 模块作为特征增强模块,主要通过其中的残差模块来增强对特征的提取能力,由于残差模块所提取的信息仅限于局部,无法充分提取管纱的上下文语义信息,影响了网络对多尺度缺陷的检测性能,为解决这个问题,提出了Depth-Mixer 模 块。受 到MLP-mixer[12]网 络 结 构的启发,该模块采用纯卷积结构实现令牌混合(Token Mixer)和通道混合(Channel Mixer)两个单元来增强模型的特征提取能力,具体结构如图4 所示。

图4 Depth-Mixer 模块的整体结构

在Token Mixer 单元中,首先通过通道分离(Channel Split)模块将特征图按照通道数拆分为不同分支,对不同分支的特征图分别使用核尺寸为3×3 和5×5 的深度卷积进行特征提取后融合,使用核尺寸为7×7 的深度卷积对融合后的特征图再次进行特征提取。深度卷积的优点是复杂度低、参数量小。深度卷积将特征图通道中的每一个位置都视为一个令牌,它的线性特征提取过程被看作是一种特殊的令牌混合方式,不同大小的卷积核代表了不同的混合范围,这使得管纱特征图以极小的参数代价能够学习到广泛的特征信息。对于Channel Mixer 单元,通过使用两个标准卷积对特征进行低维到高维之间的映射,以学习更多抽象的语义信息来增强管纱缺陷特征的语义价值。 在特征提取结束后,该模块遵循CSPNet[13]的 基 本 结 构,避 免 了 梯 度 信 息 重 复 使用,保证了整个模型的特征提取能力。

对于经过多次融合和特征提取的管纱高层特征图,其内部通道的权重分布紊乱,会对检测头的预测产生干扰。为了解决这个问题,在高层特征图输入至检测头之前加入了SENet(Squeeze-and-Excitation Network)[14]作为一种通道注意力 机制模块,通过全局池化将全局信息编码到通道维度,利用全连接层解耦特征的通道相关性来改变不同通道的权重关系,具体结构如图5 所示。该模块使得检测网络能够专注于提供更高层次语义价值的区域,提高管纱缺陷检测的准确率。

图5 SENet 模块的整体结构

2 试验

2.1 图像采集

图像采集平台主要包括图像采集设备、照明系统和传输系统。图像采集平台如图6 所示,相机为Basler ace acA1920-25uc 面阵相机。首先,通过传送带将管纱送入图像采集系统;由液压装置启动机械手将管纱移动到检测工位;在光源的照射下,通过面阵相机从各个角度获取旋转中的管纱图像。通过控制检测工位的旋转速度和面阵相机的采样频率,获取管纱的完整图像。

图6 图像采集平台

2.2 数据集

该缺陷检测方法所采用的管纱数据集取自真实的工业现场,在采集到的管纱图像中挑选出有缺陷的图像分割成小的图像块,然后输入网络进行训练。管纱的缺陷可以分为四类:污渍(blot)、毛 羽(the hairiness)、毛 圈(looped pair)和 毛 夹(hair clip)。污渍是运输过程中不小心划伤造成的,毛羽、毛圈和毛夹是管纱在缠绕过程中张力不均匀导致的。污渍为无规则形状的图案;毛羽为单根的线状纤维纱;毛圈为单根的圈状纤维纱;毛夹为多根不规则形状的纤维纱缠绕在一起而形成的,具体示例如图7 所示。管纱缺陷数据集按照近似8∶1∶1 的比例分为训练集、验证集和测试集,图像分辨率为320 pixel×320 pixel,表1 显示了数据集的基本信息。

表1 数据集的基本信息 单位:张

图7 缺陷图片

2.3 试验设置

试验所使用的模型是基于YOLOv5 第六代版本中的YOLOv5s 模型进行改进。训练迭代次数(epoch)为500,批次大小为16;初始学习率为0.01,学习率动量为0.1;采用随机梯度下降方法,其他为默认设置,具体试验环境:操作系统为Windows 10,图形处理器为NVIDIA GeForce RTX 2080Ti(11 G),中央处理器为Intel(R) Xeon(R) Gold 5118 @2.3 GHz,加速环境为CUDA 11.1、cuDNN8.0.4,训练框架为Pytorch。

2.4 评价标准

与传统算法不同,我们选择用于评估神经网络工作模型有效性的相关指标有精确率(Precision,P)、召回率(Recall,R)、平均精度(Average Precision,AP)、平 均 精 度 均 值(mean Average Precision,mAP)。在评估mAP时,本研究将缺陷图像的交并比(Intersection over Union,IoU)设置为0.5。

2.5 消融试验

为了进一步验证所提出的BY-YOLO 网络模型在管纱缺陷数据集上的有效性,表2 中的消融试验列出了不同改进模块对管纱缺陷检测的精度和速度的影响。当模型使用RepVGGBlock 作为主干网络的特征提取模块时,管纱缺陷的精度没有出现下降,参数量降低了30.48%,检测速度从75 帧/s 提高至120 帧/s;当主干网络被替换为ER-Net 时,毛羽和毛夹缺陷的AP值分别提高了2.49 个百分点和2.34 个百分点,检测速度下降至108 帧/s;将颈部网络中的C3 模块替换为Depth-Mixer 模块后,污渍和毛圈缺陷的AP值分别提高了3.81 个百分点和2.85 个百分点,参数量和检测速度的变化不明显;当颈部网络在此基础上加入注意力机制完成改进后,与YOLOv5s 模型相比,mAP值增加了4.01 个百分点,参数量降低了21.65%,检测速度提升了37.33%。图8 对比了YOLOv5s 和BY-YOLO 的检测结果,可以看到BY-YOLO 避免了因环境噪声造成的误检和漏检,并且能够得到精准的检测框,非常适合用于玻璃纤维管纱缺陷检测。

表2 对YOLOv5s 添加不同改进模块的对比试验

图8 管纱的4 种缺陷在不同模型下检测结果对比

2.6 对比试验

为了验证BY-YOLO 模型的先进性,本研究在管纱缺陷数据集上将两种经典的目标检测模型(SSD[15]、Faster RCNN[16])和YOLO 系 列 算 法(YOLOv3[17]、EfficientNet-YOLOv3[18]、YOLOv4-Tiny[19]、MobileNetv3-YOLOv4[20]、YOLOX[21])与BY-YOLO 模型进行对比试验,结果如表3 所示。相比于其他方法,BY-YOLO 试验方法取得最高的mAP值。相较于最先进的单阶段检测模型之一的YOLOX,BY-YOLO 的mAP提高了2.75 个百分点;相较于经典的目标检测模型YOLOv3 及其 变 体,BY-YOLO 的mAP分 别提 高 了30.80 个百分点和17.34 个百分点;相较于更换了轻量级主干网络MobileNetv3 的YOLOv4 变体而言,BY-YOLO 的mAP提 高了11.93 个 百 分 点;相 较于兼顾检测速度和精度的SSD 和YOLOv4-Tiny而言,BY-YOLO 的检测精度和速度均有大幅提升;相较于经典的两阶段网络,Faster RCNN 的检测精度和速度远低于BY-YOLO。就单一缺陷角度分析,BY-YOLO 在毛圈缺陷的检测精度上有了显著的提升,达到了最高的99.34%。另外,BY-YOLO 在检测污渍缺陷时保持最优的检测精度,达到了86.62%;在毛羽和毛夹两种缺陷的检测上具有较突出的检测结果。从内存占用的角度来分析,通过BY-YOLO 网络训练出来的模型内存占用是最低的,其大小仅为11.2 MB,更加符合设备部署的需要。总之,BY-YOLO 在花费最低参数量和内存占用的前提下,保持了最优的检测精度和检测速度。相比于其他主流的检测模型,BY-YOLO 拥有更高的鲁棒性、准确性和实时性。

表3 不同检测模型的对比试验

3 结语

针对管纱缺陷检测存在的抗干扰能力较差、检测精度低和检测速度慢的问题,本研究提出了一种基于改进YOLOv5 的玻璃纤维管纱缺陷检测方法BY-YOLO。引入ER-Net 作为主干网络,通过RepVGGBlock 模块提取管纱缺陷的低层到高层特征,对管纱的高层特征图使用R-SPP 模块在一定程度上消除了管纱特征图的噪声特征,在保证精度的前提下提升了检测速度;使用DAPANet 作为颈部网络,通过Depth-Mixer 模块充分提取上下文语义信息,对管纱的高层特征使用通道注意力机制模块梳理特征通道的权重分布,提升了对管纱整体缺陷的检测精度,从而实现了一种快速、准确、更适用于实际工业应用的管纱缺陷检测方法。在未来的研究中,优化网络结构部署和训练策略可以作为新的方向,在保证检测速度的前提下,使模型对管纱缺陷的检测能够达到更高的检测精度。

猜你喜欢

卷积精度特征
基于3D-Winograd的快速卷积算法设计及FPGA实现
如何表达“特征”
从滤波器理解卷积
不忠诚的四个特征
基于DSPIC33F微处理器的采集精度的提高
基于傅里叶域卷积表示的目标跟踪算法
抓住特征巧观察
GPS/GLONASS/BDS组合PPP精度分析
改进的Goldschmidt双精度浮点除法器
一种基于卷积神经网络的性别识别方法