APP下载

基于改进残差网络的空纱筒识别模型

2024-03-13陆伟健屠佳佳王俊茹韩思捷史伟民

纺织学报 2024年1期
关键词:网络结构轻量化残差

陆伟健, 屠佳佳,2, 王俊茹, 韩思捷, 史伟民

(1.浙江理工大学 机械工程学院, 浙江 杭州 310018;2.浙江机电职业技术学院 自动化学院, 浙江 杭州 310053)

近年来,我国纺织原料、生产用工、环保管理等成本因素持续上升[1],导致国内的中小棉纺织企业生存压力不断加大,因此自动化生产的需求也越来越大。纺织工厂进行纺纱时,工人需要对几百个纱架不断地巡检,识别纱架上的空纱筒,然后再更换新的纱筒。纱架高度一般3 m左右,人工换筒不便捷,易造成识别错误、生产效率低、实时性较差以及人工成本过高的一些问题,因此实现实时、准确的空纱筒识别,对于纺织行业具有重要意义。

随着机器视觉技术的不断发展,机器学习与深度学习等方法被广泛应用于实际生产中。张文昌等[2]利用机器视觉实现对纱笼纱杆进行快速定位。但传统机器视觉鲁棒性较差,易受到环境的干扰。任慧绢等[3]提出了利用颜色特征去识别定位筒纱,在背景简单时具有较好的识别效果。王倪奕棋等[4]提出了基于改进的SSD(single shot MultiBox detector)深度学习算法去识别纱筒与定位,平均识别准确率达到了94%,但是对硬件要求较高。石志伟等[4]利用机器视觉识别纱筒余纱量,能达到小于5.7 mm的误差,但是当余纱量小于2 mm时利用机器视觉计算余纱量会造成较大的误差,且上述方法的神经网络模型深度且参数量大,在实际生产中不能将复杂的模型部署在计算能力有限的嵌入式设备中。为解决该问题,常见方法有在网络框架中加入深度可分离的分组卷积,如Xception[6]、MobileNet[7]等网络结构。在实验过程中发现还存在以下问题:拍摄背景复杂,存在大量干扰信息,导致空纱筒识别难度较大;纱筒余纱量少于2 mm时,会导致识别空纱筒难度提升;纱筒种类较多,采集完整的样本难度较高,导致模型适应性不强。

为克服上述问题,本文设计了基于改进残差网络的空纱筒识别模型,通过卷积核轻量化,减少模型的冗余结构;同时结合优化残差结构与SENet注意力机制,提升检测空纱筒的准确率和模型的轻量化。通过模拟生产现场进行数据增强,使数据集适用于实际生产中,为空纱筒的在线检测提供理论参考。

1 空纱筒识别流程及算法

1.1 空纱筒识别流程

将本文改进的模型运用到空纱筒检测中,以迅速、准确地检测空纱筒。首先换筒机器人开始巡检,到达拍照点位时,进行图像采集,由于纱架位置相对固定,对图像中的纱筒进行分割,选取合适图像作为数据集,最后将分割后的纱筒图片,投入改进空纱筒识别模型中完成识别,具体检测流程如图1所示。

图1 纱筒检测流程Fig.1 Spindle inspection process

1.2 ResNet-18模型结构

图2 经典的残差结构Fig.2 Classical residual structure. (a) Classic residual structure 1; (b) Classic residual structure 2

ResNet系列的网络模型利用残差模块的特点,解决了层数过多的问题,但仍存在特征提取尺寸单一、模型参数多、硬件要求高等问题。因此需要在ResNet-18模型的基础上对残差模块进行改进。

1.3 图像采集与图像增强

2022年1~2月于广东纤纺纺织科技有限公司,利用海康工业摄像机MV-CA060-10GC进行纱筒图像采集。采集图像主要分为2大类:一类为空纱筒,其中空纱筒类型中有用完的纱筒、背景与纱架等;另一类为非空纱筒,在非空纱筒中包含大量不同余纱量的纱筒。原始纱筒数据集共9 176张图片,其中空纱筒3 892张,非空纱筒5 284张。图3示出空纱筒与非空纱筒样本示例。圆纬机自动化生产线中的换筒机器人整体机构如图4所示。

图3 空纱筒与非空纱筒样本示例Fig.3 Examples of empty and non-empty bobbin sample. (a) Conical empty yarn cylinder; (b) White cylindrical empty yarn cylinder; (c) White conical non-empty yarn cylinder; (d) Black cylindrical non-empty yarn cylinder

图4 样本采集平台Fig.4 Sample collection platform

纱架上的纱筒通常存在于复杂的实际生产场景中,由于存在光照强度差异、拍摄角度差异、相机设备的不稳定和余纱量变化等因素的影响,导致识别纱筒难度较高。纱筒样本在颜色、纱筒轮廓信息等方面都会存在较大的差异,如图5所示。

注:样本1~4为随机选择的数据。

原始采集的纱筒数据中余纱量小于2 mm的样本较少,并不能较好地应用于实际生产中。为了使数据集更加贴近实际生产需求,通过随机翻转来模拟不同的拍摄角度,如图5(a)所示;对原始图像添加模糊处理,来模拟设备聚焦效果差,增加细节增强图如5(b)所示;通过亮度增强来模拟不同时间段的现场情况如图5(c)所示。综合以上3种方法,增强后的数据集大小是原来数据集的4倍。为方便模型读取图片,将其改成224像素×224像素,并按照10∶1划分训练集与验证集。

2 改进残差网络的模型设计

一些经典的深度学习模型网络可以达到较高的目标识别准确率,但存在网络结构复杂、参数量多、内存要求高等缺点。本文在借鉴了ResNet-18网络结构的基础上,对网络结构进行如下设计:1)卷积核轻量化;2)优化残差结构;3)将SENet注意力机制添加到优化残差模块中。

整体网络结构如图6所示,首先利用卷积组减少模型参数,然后通过改进的残差模块1、模块2、模块3、模块4,不仅实现了模型的轻量化而且提高了模型提取纱筒全局特征与深层网络特征的能力。为使模型适合纱筒类型的识别,需要获取纱筒的全局特征信息,进行全局平均池化后,最后通过全连接层进行纱筒类型输出。

图6 整体网络结构Fig.6 Overall network structure

2.1 卷积核轻量化设计

为将模型移植到移动设备中,独立完成空纱筒类型的识别。需要实现模型的轻量化[11],因此将所有的7×7的卷积核替换成3个3×3的卷积核。感受野计算公式为

油饼、炒粉、炒饭……这些花样繁多的主食是人们常点的外卖,高油、高盐或高糖,它们往往具备其中一到两个特点。由于外卖菜肴难免油多盐多糖多,因此主食选择上,尽量选择做法简单、口味清淡的米饭、馒头,或素馅、肉菜混合馅的饺子、包子。主食中若能加点原汁原味的红薯、玉米、芋头等杂粮最理想。

Wi=(Wi+1-1)×Si+K

(1)

式中:Wi为第i层的卷积层的感受野,Wi+1为第(i+1)层的感受野,Si为卷积步长,K为本层卷积核的大小。

由式(1)可得,1个7×7卷积核的感受野等于3个3×3卷积核的感受野。

卷积的参数量可由式(2)计算:

(2)

式中:A是输入的通道数;B为输出的通道数;K为本层卷积核的大小。

7×7卷积计算量为49×A×B,3个3×3卷积计算量为27×A×B,因此该方法不仅不减少感受野还可以减少一半的计算量。小卷积核之间通过ReLU激活函数,拥有更强的非线性表达能力,使模型的准确率更高。

2.2 优化残差结构设计

由于仅改进模型中的冗余卷积层,不能更好地获取纱筒的全局特征和实现模型轻量化,因此要解决准确率与轻量化的问题。本文对经典残差模块进行如下优化:首先在主分支上先进行通道分离,通过1×1普通卷积核,然后通过3×3卷积核的深度可分离卷积中的深度卷积(DW)[12]与1×1的点卷积(PW)[14],根据步长选择辅分支结构,实现轻量化的目的。网络完成卷积后,主分支与捷径分支进行特征连接,实现对各个纱筒图像通道的特征矩阵进行叠加、融合,从而增强网络提取纱筒全局特征的能力。网络在连接后,进行通道混合操作,建立起各个维度之间的联系,从而提高纱筒识别的准确率和模型的轻量化,如图7(a)轻量化残差模块1和图7(b)轻量化残差模块2所示。

图7 轻量化残差结构Fig.7 Lightweight residual structure.(a) Lightweight residual module 1; (b) Lightweight residual module 2

2.3 融合SENet注意力机制设计

一张纱筒图片中的各个像素点都具有一定的联系,由于卷积核的感受野有限,会导致各个像素点失去联系。为提高识别纱筒的准确率,需要纱筒的全局像素信息,这样能较好的获取纱筒信息。因此本文利用了由Jie等[15]提出的SENet网络,建立起卷积特征通道之间的相互联系,来提高提取深层网络特征的能力。该结构主要由挤压操作、激励操作与权重重赋这3个基本操作构成,如图8所示。

图8 SENet网络结构Fig.8 SENet network structure

改进残差模块结合SENet网络结构的优点,提高了提取纱筒图像深层网络特征的能力,从而提高了识别纱筒的准确率。改进残差模块1如图9(a)所示,改进残差模块2如图9(b)所示。

图9 改进后的残差模块Fig.9 Improved residual module. (a) Improved residual module 1;(b) Improved residual module 2

3 实验测试与分析

3.1 实验环境及参数设定

本文实验在Intel Core i5-7300HQ CPU,2.50 GHz处理器,运行内存16 GB。测试软件环境为Window10,64位操作系统。识别网络模型由Python3.6基于Pytorch 1.10深度学习框架、CUDA 12.0搭建网络环境,在NVIDIA GeForce GTX 1060下进行模型训练。在训练模型时,将输入批尺寸设置为16,样本输入尺寸均为224像素×224像素,所有模型迭代次数为30。

3.2 消融实验

本文研究从卷积核大小、注意力机制与轻量化残差模块对ResNet-18进行了组合设计,设计方案与性能参数如表1所示,可得出如下结论。

表1 ResNet-18设计方案与性能对比Tab.1 ResNet-18 design and performance comparison

1)卷积核设计方向。在方案1和方案2中都没有应用注意力机制与残差结构的优化。卷积核分别使用了大卷积核与小卷积核,大卷积核的最高准确率比小卷积核的高3.24%,但是方案1使用了大卷积核,增加了模型的训练参数量。

2)注意力机制设计方向。在方案1与方案3中使用了相同的卷积核并且不应用改进残差结构,应用了注意力机制的方案3其最高准确率可提高3.86%。

3)优化残差模块设计方向。在方案4、方案6中均应用了改进的残差结构,分别与方案1与方案5进行比较发现,采用改进残差结构使模型训练参数比原模型减少了650%,在验证集上的最高准确率大约提升了1.22%。

综上考虑,以方案6为最终的改进方案。

3.3 实验结果与分析

为客观验证改进方法的可行性,在纱筒数据集上,利用改进模型与其它经典的模型(如AlexNet[16]、VGG-16[17]、ResNet-18[10])进行对比,结果见表2。

表2 不同模型识别准确率Tab.2 Recognition accuracy of different models

如表2所示,改进模型在验证集中的最高准确率达到了99.6%,比ResNet-18模型高4.46%,比其它识别模型高7.05%~9.41%。同时,改进模型训练参数量缩减为ResNet-18的1/10左右,与其它模型相比缩减为1/2~1/83。综上可知,对于空纱筒的分类识别,改进模型的各项指标均优于其它识别模型。因此,改进模型既兼顾了模型的准确率也实现了模型的轻量化,为部署到移动端奠定了基础。

3.3.1 数据增强对模型的影响

为提高模型的泛化能力,本文在原数据集的基础上进行数据增强。分别在3种不同的情况下模拟工厂的实际工作环境,数据增强后的每个样本数都增加了4倍。在训练参数和网络结构相同的实验条件下,为验证原始数据集和扩充数据集对模型的影响。ResNet-18模型在扩充数据集的测试准确率比原数据集的测试准确率高,表明数据增强能提高纱筒数据的多样化,有效避免原模型出现过拟合的现象。此外改进模型在原数据集或增强后的测试集中,其验证集的最高准确率变化不大,具体如表3所示。表中的数据集1、2、3分别为模拟不同的拍摄角度、不同的时间段、设备与环境干扰所得到的训练样本。改进模型在原始数据集上也能达到较好的空纱筒识别效果,说明改进模型的鲁棒性较好。

表3 本文算法与原模型的识别效果对比Tab.3 Comparison of recognition effects between algorithm in this paper and original model

3.3.2 模型识别效果对比分析

为研究模型识别空纱筒的效果,在相同的实验环境下训练30次,结果如图10所示。改进模型识别空纱筒的准确率以及收敛速度明显优于其它模型,且上升过程比较平滑,表明了改进模型的高效性。图11示出4种模型的纱筒识别效果。

图10 不同模型的识别准确率对比Fig.10 Comparison of recognition accuracy of different models

为验证改进模型的空纱筒识别效果,本文利用易识别出错的非空纱筒样本进行实验。例如图11(a)左侧图片是余纱量小于2 mm的非空圆柱纱筒、图11(a)右侧图片是余纱量小于2 mm非空圆锥纱筒,将二者作为实验对象,在同一平台上进行检测,验证结果如图11所示。可以看出,当纱筒余纱量小于2 mm时,改进模型在纱筒类型识别方面无错检且具有较高准确率,对比ResNet-18,VGG16和AlexNet有较大的改善。改进模型可满足工厂实际生产所要求的基本需求。

为进一步探究各个模块获取纱筒特征的情况,本文对空纱筒识别过程进行可视化处理。原模型中各个残差模块提取纱筒特征矩阵的效果,如图12(a)所示。改进模型中的各个残差模块提取纱筒特征矩阵的效果,如图12(b)所示。通过对比发现,改进模型在提取浅层与深层的网络特征能力上,优于原模型。因此改进模型能减少卷积过程中丢失的纱筒特征信息,从而提取到更为复杂的纱筒整体信息,有效提高了识别空纱筒的能力。

图12 不同模型特征提取可视化对比Fig.12 Visual comparison of feature extraction from different models. (a) Original module; (b) Improved module

4 结 论

本文设计了基于改进残差网络的空纱筒识别模型,根据纱筒的具体特征进行研究,构建了符合工厂实际生产的纱筒数据集,通过卷积核轻量化,改进经典的残差模块并加入了SENet注意力机制,从而实现空纱筒的准确识别与模型的轻量化。与其它算法相比,改进模型的鲁棒性较好,更适用于工厂复杂的生产环境。在工厂生产中,利用嵌入式设备实现空纱筒的在线检测,这将是今后空纱筒检测的发展趋势,因此本文在网络结构与数据集方面进行了改进,可有效应用于空纱筒检测,为嵌入式设备部署模型提供了思路,但还未在后续的模型部署中进行实验,这将是今后进一步研究的内容。

猜你喜欢

网络结构轻量化残差
基于双向GRU与残差拟合的车辆跟驰建模
汽车轻量化集成制造专题主编
基于残差学习的自适应无人机目标跟踪算法
基于递归残差网络的图像超分辨率重建
一种轻量化自卸半挂车结构设计
一种轻量化自卸半挂车结构设计
瞄准挂车轻量化 锣响挂车正式挂牌成立
基于互信息的贝叶斯网络结构学习
知识网络结构维对于创新绩效的作用机制——远程创新搜寻的中介作用
沪港通下A+ H股票网络结构演化的实证分析