CN117455855A - 一种基于YOLOv8的轻量级管纱检测模型构建方法 - Google Patents
一种基于YOLOv8的轻量级管纱检测模型构建方法 Download PDFInfo
- Publication number
- CN117455855A CN117455855A CN202311371184.8A CN202311371184A CN117455855A CN 117455855 A CN117455855 A CN 117455855A CN 202311371184 A CN202311371184 A CN 202311371184A CN 117455855 A CN117455855 A CN 117455855A
- Authority
- CN
- China
- Prior art keywords
- model
- attention
- convolution
- module
- detection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 85
- 238000010276 construction Methods 0.000 title claims abstract description 13
- 230000007246 mechanism Effects 0.000 claims abstract description 33
- 230000006872 improvement Effects 0.000 claims abstract description 20
- 230000000694 effects Effects 0.000 claims abstract description 13
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 10
- 230000006870 function Effects 0.000 claims description 37
- 238000000034 method Methods 0.000 claims description 27
- 238000012549 training Methods 0.000 claims description 26
- 238000004364 calculation method Methods 0.000 claims description 20
- 230000003121 nonmonotonic effect Effects 0.000 claims description 15
- 230000007547 defect Effects 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 8
- 238000011176 pooling Methods 0.000 claims description 8
- 230000009466 transformation Effects 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 4
- 239000011159 matrix material Substances 0.000 claims description 4
- 230000004927 fusion Effects 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 101100481876 Danio rerio pbk gene Proteins 0.000 claims description 2
- 101100481878 Mus musculus Pbk gene Proteins 0.000 claims description 2
- 238000012512 characterization method Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 claims description 2
- 238000005259 measurement Methods 0.000 claims description 2
- 230000006641 stabilisation Effects 0.000 claims description 2
- 238000011105 stabilization Methods 0.000 claims description 2
- 239000013598 vector Substances 0.000 claims description 2
- 238000002474 experimental method Methods 0.000 abstract description 38
- 238000011897 real-time detection Methods 0.000 abstract description 3
- 238000012360 testing method Methods 0.000 description 11
- 230000008901 benefit Effects 0.000 description 9
- 239000004753 textile Substances 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000002679 ablation Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000009776 industrial production Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000003014 reinforcing effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 206010026749 Mania Diseases 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000000875 corresponding effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30124—Fabrics; Textile; Paper
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种基于YOLOv8的轻量级管纱检测模型构建方法,包括以Darknet‑53作为模型的骨干网络,由于纱筒目标在空间分布上较为密集,模型引入了LSKUnit(Large Selective Kernel Unit)用于提升模型对于密集目标的识别和定位效果,同时,为了减少卷积神经网络对特征局部信息的过度关注带来的问题,引入能够捕捉长距离依赖的动态稀疏注意力(Bi‑Level Routing Attention)机制,此外,为了平衡准确性与检测速度,构建了FasterNeck作为模型的颈部网络,使用Ghost卷积替换掉原本的卷积块以及与FasterNet融合,在尽量少的牺牲检测精度的同时获得了较大的推理速度提升,最后,模型使用了带有动态聚焦机制的WIoU作为边界框损失函数,基于自制纱筒数据集的实验结果显示,改进后的模型较基准模型有明显提升,满足了工业部署和实时检测的要求。
Description
技术领域
本发明涉及纺织工业领域,具体为一种基于YOLOv8的轻量级管纱检测模型构建方法。
背景技术
对于纺织行业来说,全面进入智能化工厂是必然趋势,自动络筒机也被广泛的应用于纺织工厂的实际生产中。若要实现自动络筒机生产过程的去人工化,纱筒识别是必要的一项工作,近年来,纱库式自动络筒机的自动更换管纱技术的改造项目受到业内多方关注。因此,在智能制造的时代背景下,如何提高纱筒识别的稳定性、准确性以及实时性成为当代众多纺织企业亟待攻克的难关。
传统的纱筒检测技术实现主要依靠光电传感器检测以及传统计算机视觉算法检测。使用传统视觉方法对图像进行预处理,利用管纱图像的色调以及饱和度信息通过支持向量机对管纱进行识别。使用HSV色域变换,通过色彩偏差矫正、滤波等方式对管纱图像进行预处理,最后使用模板匹配法进行识别。等人利用Gabor滤波器增强目标纹理信息,随后通过主色提取和色差计算构建各分区的纹理特征,采用多分类SVM实现了管纱识别。
上述这类传统的视觉检测算法往往需要大量的人工参与,特征提取、预处理等工作十分依赖人工经验,这就导致了传统检测算法泛化能力不足,人工成本高等问题。同时其繁杂的检测步骤也导致了检测速度慢等缺陷,无法很好的适用于纺织工厂环境。
由于传统视觉检测算法的局限性,业内逐渐将研究的重心转移到了基于神经网络的检测算法。近年来,随着深度学习技术的发展,在诸多工业领域,基于深度学习的目标检测算法凭借其泛化能力强、准确率高、鲁棒性强等优点正逐渐取代传统的目标检测算法。目前应用于工业目标检测的算法主要有CNN、GAN以及ViT等,其中,CNN发展最早,在工业生产中应用也最为广泛。用于目标检测的CNN主要分为两类,一类是以YOLO和SSD为代表的单阶段检测算法,另一类是以RCNN为代表的双阶段检测算法。双阶段检测算法需要先划分候选区域,再通过卷积提取目标特征,最后送入SVM进行分类。随后Girshick结合了SPPNet提出了更快、更强的Fast-RCNN,模型使用了VGG16作为Backbone,同时实现了端到端的训练。Faster R-CNN模型使用区域生成网络(RPN),利用Anchor机制将区域生成与卷积网络联系到一起,再度取得检测速度上的突破。双阶段的检测算法虽在检测精度上有一定优势,然而其检测速度难以达到工业实时检测的要求。YOLO系列经过多年的发展已经来到了YOLOv8,其模型具有检测速度快、检测精度高、便携性和可移植性高的优点,可以很好的适用于工业检测环境。YOLOv8的Backbone部分结合了CSPDarkNet53和YOLOv7的设计思想,使用了C2f模块代替了YOLOv5中的C3模块,使模型具有更丰富的梯度流,是目前YOLO系列中检测精度最高的模型。
然而,检测精度的提升往往伴随的是大量的计算成本、时间成本以及高昂的部署费用,这对于大部分纺织企业来说是得不偿失的。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种基于YOLOv8的轻量级管纱检测模型构建方法,解决了上述背景技术中提出的问题。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:一种基于YOLOv8的轻量级管纱检测模型构建方法,包括:
S101:以Darknet-53作为模型的骨干网络,为优化模型精度,引入LSKUnit(LargeSelective Kernel Unit),用于提升模型对于密集目标的识别和定位效果;
S102:对模型的上下文关联能力进行补强,引入Biformer模型,通过其中捕捉长距离依赖的动态稀疏注意力单元BRA(Bi-Level Routing Attention),以弥补卷积神经网络在全局信息方面关注度的不足;
S103:对模型进入轻量化部署改进,构建FasterNeck作为模型的颈部网络,用于在尽量少的牺牲检测精度的同时获得推理速度提升;
S104:泛化模型,提升模型的鲁棒性,使用带有动态聚焦机制的WIoU作为边界框损失函数,减少了模型过拟合风险。
优选的,输入LSKUnit的特征通过两个较大的卷积核串行来实现扩大感受野的功能,多个不同大小的卷积核使模块产生的空间特征具有多尺度多感受野特性,丰富了目标特征,以少量的计算代价强化了骨干网络对背景特征的关注能力。
优选的,所述Biformer模型通过构建两层的动态稀疏注意力机制(Bi-LevelRouting Attention,BRA)来实现计算量的减少,其关键思想是首先对输入特征应用一次粗粒度的过滤,将大部分不相关的键值对忽略,再对剩下的区域进行细粒度的token-to-token注意力。
优选的,将FasterBlock与基准网络Neck部分的C2f模块进行结合,在减少了模型参数量的同时利用C2f模块多梯度流的思想使FasterBlock内的PWConv能够利用不同梯度的多通道信息,弥补了PConv产生的精度损失。
优选的,使用GhostConv替换掉Neck部分的普通卷积模块,使GhostConv利用简单的线性变换产生类似卷积的效果,以降低模型的参数量和计算成本。
优选的,使用WIoU替换YOLOv8中的CIoU作为模型的边界回归损失函数,通过WIoU带有的非单调动态聚焦机制使模型对不同质量的训练数据赋予不同的权重梯度,避免模型过度关注难以识别的样例以及容易识别的样例,提升模型对普通样例的关注度,从而提升模型的稳定性WIoU是具有非单调动态聚焦机制的损失函数,其具体实现如下,
上述式中,β被定义为当前数据的离群度,该值越大则表示该数据质量越低,越难被检测;越小则表示质量越高,越容易被检测,γ是非单调动态调焦系数,δ与α为超参数,当β=δ时,γ=1,即不对训练数据的损失进行加权,由于表示参与训练的数据的平均IoU损失,可以自学习,因此γ会随着训练的进行动态变化,WIoU的计算公式如下,
上述式中,(x,y)为真实标定框的中心位置,(xgt,ygt)为预测标定框的中心位置,上式表明该损失函数由非单调动态聚焦系数、中心距离惩罚机制和原始IoU损失函数构成。
本发明提出了一种轻量级高精度的基于改进YOLOv8的模型构建方法,该模型应用于纱库式自动络筒机的纱筒检测工序,并表现出了优异的性能。
首先从模型精度优化的角度出发,针对提升模型检测准确率进行了改进实验。带有大核选择机制的LSKUnit可以很好的提升模型对浅层特征提取能力,同时其使用了多种大卷积核的特点也丰富了模型的输出特征,使其具有多尺度的空间信息。随后使用Biformer对模型的上下文关联能力进行补强,以弥补卷积神经网络在全局信息方面关注度的不足。此外,将LSKUnit和Biformer与基准模型中的C2f模块进行结合,并通过实验验证了改进后的C2f-LSK模块以及C2f-BRA模块能够更大程度上发挥其原本模块的优势。
其次针对工业检测的应用场景,以降低模型部署成本为前提,对模型进行了轻量化部署的改进。FasterBlock被证实能够有效的加速模型的检测过程以及训练过程,因此将FasterBlock与基准网络Neck部分的C2f模块进行结合,在减少了模型参数量的同时利用C2f模块多梯度流的思想使FasterBlock内的PWConv能够利用不同梯度的多通道信息,弥补了PConv产生的精度损失。随后使用GhostConv替换掉Neck部分的普通卷积模块,使GhostConv利用简单的线性变换产生类似卷积的效果,以降低模型的参数量和计算成本。在后续的实验中证明,C2f-Faster模块以及GhostConv能够有效的提升模型的检测速度,并且使模型更加轻量化,使模型的可移植性提高同时不带来精度上的损失。
最后,为了泛化模型,提升模型的鲁棒性,使用WIoU代替CIoU损失函数。通过WIoU带有的非单调动态聚焦机制使模型对不同质量的训练数据赋予不同的权重梯度,避免模型过度关注难以识别的样例以及容易识别的样例,提升模型对普通样例的关注度,从而提升模型的稳定性。
(三)有益效果
本发明提供了一种基于YOLOv8的轻量级管纱检测模型构建方法。具备以下有益效果:
1、本方案基于LSKUnit改进模型的Backbone,将LSKUnit与C2f模块结合,凭借C2f模块多梯度流的特性充分利用LSKUnit的大核选择机制,使模型对密集目标的检测效果提升,强化Backbone的特征提取能力;
2、本方案利用Biformer的动态稀疏注意力机制(Bi-Level Routing Attention,BRA)提升模型捕获全局信息的能力,以弥补卷积过度关注局部而忽视整体的特征,实验证明能够提升模型在纱筒数据集上的表现;
3、本方案以轻量化的GhostConv模块和C2f-Faster模块替换原本的卷积模块和C2f模块,提出一个轻量化的特征金字塔结构FasterNeck,使模型的参数量、体积大幅度减少,检测速度明显提高;
4、本方案引入了WIoU作为边界框回归的损失函数,相比基准网络的CIoU损失函数,WIoU能够强化模型对中等质量训练数据的关注,降低质量差的训练数据的权重,从而提升模型的泛化能力以及鲁棒性。
附图说明
图1为本发明的计算流程图;
图2为本发明的基线模型YOLOv8n在数据集上的表现;
图3为本发明的性能改进实验结果;
图4为本发明的轻量化改进实验结果;
图5为本发明的基准模型与网络结构改进后模型的实验对比;
图6为本发明的不同超参数选择的聚焦系数γ的函数曲线;
图7为本发明的WIoU超参数选择实验结果;
图8为本发明的损失函数改进实验结果;
图9为本发明的消融实验结果。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图对本发明做进一步的详细描述:
本发明实施例提供一种基于YOLOv8的轻量级管纱检测模型构建方法,如图1所示,包括:
S101:以Darknet-53作为模型的骨干网络,为优化模型精度,引入LSKUnit(LargeSelective Kernel Unit),用于提升模型对于密集目标的识别和定位效果;
S102:对模型的上下文关联能力进行补强,引入Biformer模型,通过其中捕捉长距离依赖的动态稀疏注意力单元BRA(Bi-Level Routing Attention),以弥补卷积神经网络在全局信息方面关注度的不足;
S103:对模型进入轻量化部署改进,构建FasterNeck作为模型的颈部网络,用于在尽量少的牺牲检测精度的同时获得推理速度提升;
S104:泛化模型,提升模型的鲁棒性,使用带有动态聚焦机制的WIoU作为边界框损失函数,减少了模型过拟合风险。
在一种可能的实施方式中,S101具体包括:
模型通过对大卷积核进行拆分和筛选,实现模型聚焦于与被测目标关联性最大的背景区域,以解决传感图像检测领域的问题。
LSKUnit是LSKNet的基础模块,模块的输入特征首先经过分解后的多个大卷积核进行卷积,以此获得不同的大感受野下的特征图,再对这些特征图进行通道concat,随后通过平均池化和最大池化层,有效的提取空间特征信息,该部分的特征运算式如下:
F1=Kernel 1(Fin);F2=Kernel 2(Fin)
Fk=[F1;F2]
Fpool=[AvgPool(Fk);MaxPool(Fk)]
上述式中,Kernel 1(F)是指输入特征F经过1号卷积核的卷积;AvgPool与MaxPool分别代表平均池化和最大池化。
得到了空间特征后,通过一个卷积层以及Sigmoid激活函数实现不同空间特征的融合和交流,最终生成注意力模块的权值,随后将权值与大卷积核输出的特征进行加权并获得最终模块的输出特征,该部分的特征运算式如下:
Fattn1;attn2=Sigmoid(Conv(Fpool))
Fout=(Fattn1*F1+Fattn2*F2)*Fin
上述式中,Conv代表conv2d模块,Sigmoid表示sigmoid激活函数。
如此以来,输入LSKUnit的特征通过两个较大的卷积核串行来实现扩大感受野的功能,相比于使用一个更大的大卷积核,多个较大卷积核串行的运算速度及参数量都要优于前者,同时,多个不同大小的卷积核使模块产生的空间特征具有多尺度多感受野特性,丰富了目标特征,以少量的计算代价强化了骨干网络对背景特征的关注能力。
在一种可能的实施方式中,S102具体包括:
众所周知,相比于卷积神经网络,Transformer的核心优势是凭借自注意力机制来捕获长距离依赖关系,这种结构虽然能够在一定程度上带来模型性能的提升,但是这导致了传统的自注意力模块会占用很大的内存以及自身高额的计算量代价。
为解决这一问题,使用了Biformer模型,该模型通过构建两层的动态稀疏注意力机制(Bi-Level Routing Attention,BRA)来实现计算量的减少,其关键思想是首先对输入特征应用一次粗粒度的过滤,将大部分不相关的键值对忽略,再对剩下的区域进行细粒度的token-to-token注意力。
Biformer模块与众多的Transformer模型架构类似,采用了一个自注意力单元与一个多层感知机单元的基础框架,与其余ViT模型不同的是,Biformer构建了一个新型的自注意力单元Bi-level Routing Attention(BRA),在BRA模块中,高为H、宽为W、含有C个通道的输入特征会被划分为S*S个区域,再分别取对应可学习的权重矩阵Wq,Wk,Wv,得到Q(queies)、K(keys)、V(values)三向量,计算公式如下:
Q=XWq;K=XWk;V=XWv
自注意力机制的运算公式为:
式中常数C是为了梯度稳定做的归一化,从上式可以看出自注意力机制是对V矩阵的一次加权运算,取权值QKT作为其他不同区域特征对所选区域Q的相关性度量表征,对其进行top-k算法,得到与当前所选区域Q相关性最高的k个区域,以此实现了一次粗粒度的键值筛选。
随后将得到的与当前所选区域最相关的k个区域的键值对合并,进行细粒度的token-to-token注意力计算:
In=index(topk(QKT)),n∈1,2,…k
Kg=Gath er(K,In);Vg=Gath er(V,In)
通过引入Biformer来提升模型捕捉长距离依赖的能力,强化了网络的上下文特征感知,同时又因为Bi-level Routing Attention相比于其他自注意力机制计算量更少、注意力运算更快,更好的实现了模型精度与检测速度的平衡。
在一种可能的实施方式中,S103具体包括:
深度神经网络的发展推动了众多计算机视觉任务的技术进步,目标检测、图像识别等方面的准确度越来越高,但随之而来的就是更大的模型、更深的网络结构以及更多的计算成本,对于并不复杂的一些下游计算机视觉任务而言,如何平衡好精度与速度才是推动技术应用于实际的最大助力。
GhostConv:ResNet-50的特征提取骨干网络提取到的特征图通常包括很多高度相似的特征图,将其称作Ghost对,并认为这些Ghost对与模型的特征提取能力呈正相关,如此通过简单的线性变换来产生多组Ghost对既能够提升模型的特征提取能力,又可以减少卷积带来计算量开支,这便是GhostNet的核心思想,在模块搭建过程中,简单线性变换的实现方式采用了DWConv。
FasterBlock:经典轻量化卷积DWConv等通常致力于减少FLOPs(Floating-PointOperations),而FLOPS(Floating-Point Operations per Second)则没有得到有效的优化,实验发现DWConv频繁的内存访问导致了实际计算处理单元(CPU or GPU)在做相关运算时并没有有效的提高速度,于是出现了一种PConv(Partial Convolution)用于解决这个问题,并以此为基础模块搭建了FasterNet,FasterNet中使用了大量的PConv,这是一种部分卷积方法,即只对输入特征的部分通道进行卷积运算,这显然计算量与内存访问量均小于全面的卷积,但这种卷积方式会忽略部分输入特征的信息,因此在PConv后进行一次逐点卷积(Point-Wise Convolution)可以提高对输入特征其他通道的利用并且不会产生高昂的计算代价。
在一种可能的实施方式中,S104具体包括:
YOLOv8使用CIoU作为边界框的回归损失函数,考虑了标定框与预测狂的重叠面积、中心距、长宽比等因素,能够取得比IoU损失函数更好的边界回归效果,但在工业应用场景下采集到的数据集往往是质量高低不一的,CIoU无法实现对不同质量的数据采取不同的损失惩罚标准,因此会导致模型过度关注较难或较易的检测目标,从而导致模型鲁棒性的下降。
为此,本试验使用WIoU作为模型的边界回归损失函数,WIoU是具有非单调动态聚焦机制的损失函数,其具体实现如下:
上述式中,β被定义为当前数据的离群度,该值越大则表示该数据质量越低,越难被检测;越小则表示质量越高,越容易被检测,γ是非单调动态调焦系数,δ与α为超参数,当β=δ时,γ=1,即不对训练数据的损失进行加权,由于表示参与训练的数据的平均IoU损失,可以自学习,因此γ会随着训练的进行动态变化,WIoU的计算公式如下:
(x,y)为真实标定框的中心位置,(xgt,ygt)为预测标定框的中心位置,上式表明该损失函数由非单调动态聚焦系数、中心距离惩罚机制和原始IoU损失函数构成。
与原始模型的CIoU相比,WIoU能够在训练中动态的针对不同检测难易度的数据调整损失权重,使模型更多的关注中等质量的训练数据,以此提高模型的鲁棒性,同时减少了模型过拟合风险。
为证明本实施例所提供的方法实有效,设计并实施了实验用以检测本实施例的效果,实验采用的数据集一部分是采集自纺织工厂生产线的闲置纱库,一部分是直接拍摄的纱筒和纱库图像,经过水平翻转、竖直翻转等基础的图像增强后共有图像628幅,数据中含有的被测目标数量约有12000个,分类为有纱筒和无纱筒,并按照8:1:1的比例划分为了训练集、验证集以及测试集。
为保证实验结果分析的有效性和严谨性,研究实验采用精确度/查准率(P),召回率/查全率(R)以及平均准确率(mAP)作为模型的主要评价指标,在不同结构的模型对比中,辅以模型大小以及推理帧数作为参考评价指标,
其中,TP为检测出的正样本数量;FP为误报的负样本数量;TN为检测出的负样本数量;FN为未检测出的正样本数量;∑AC为全类别的准确率;C为疵点种类的数量。
考虑到工业应用的成本以及空纱筒视觉检测任务的难易度,本试验使用YOLOv8中的nano基础模型作为网络结构改进实验中用于对比实验的基准模型,相比于YOLOv8其他的基础模型,nano模型具有体积小、推理速度快、运算成本低的优势,是最适合部署于工业实时检测的模型之一,但由于其网络深度以及宽度是最小的,导致精度不及其余的YOLOv8基础模型,YOLOv8n在纱筒数据集上的表现如图2所示。
在本试验中,若无特殊说明,mAP@.5指置信度为0.5时模型的平均准确率,mAP@.5-.95指置信度在不同阈值(从0.5到0.95,步长为0.05)的平均准确率。
从上述实验结果可以看出,模型在置信度为0.5时的平均准确度已达到较高水平,但是随着置信度阈值的提高,精度有明显下降,说明模型在高置信度的区间内出现了误检或漏检,同时模型的检测速度也有较大的提升空间。
首先,为证明LSKBlock以及Biformer能够提升模型在纱筒数据集上的表现,本试验在YOLOv8n模型的基础上引入了进行实验,实验结果如图3所示。
1、2号实验组为分别在基准模型的Backbone添加LSKUnit和Biformer模块;3、4号实验组为分别将基准模型Backbone的C2f模块替换为改进后的C2f-LSK模块以及C2f-BRA模块。
从图3可以得知,LSK注意力机制以及Biformer在本试验数据集上具有良好的表现,1号和2号实验组数据说明,LSKUnit的引入使模型的平均准确率提升了0.4%,Biformer模块将模型的平均准确率提升了0.1%。
而将上述模块与C2f模块结合之后,以新的注意力机制模块替换掉C2f模块原本的Bottleneck模块,能够使模型接收到注意力加权后的多梯度信息,以少量的计算量代价实现了局部特征融合,在保持模型轻量化的同时提升了模型的准确度,3号和4号实验数据显示,基准模型在引入C2f-LSK模块以及C2f-BRA模块后,mAP分别提升了0.4%和0.5%,同时检测速度也有不同程度的提升。
上述实验结果有力的印证了本试验所提出结构的有效性,实验表明,改进后的C2f-LSK以及C2f-BRA模块可以在不损失检测速度的同时,可以提升模型在纱筒数据集上的平均准确率。
因此,本试验选取改进后的C2f-LSK模块以提升模型对密集纱筒的特征感知能力,通过其多尺度的大核选择机制使模型同时关注被测目标的前景与背景,减少模型的误检以及漏检,同时引入C2f-BRA模块防止模型过度关注局部信息,强化模型对全局信息的感知。
此外,对于纺织工业领域而言,模型的检测效率、精度、鲁棒性、轻量化等方面必须做到较好的平衡,只要有一个因素受到限制,就难以应用于实际工业生产,所以,为平衡投产成本以及检测性能,本试验对模型进行轻量化改进实验,实验结果如图4所示。
1号实验为对基准模型的Backbone进行重参数化构建;2号实验为将基准模型Backbone部分的所有卷积都替换为GhostConv;3号实验为将基准模型的Backbone替换为FasterNet;4号实验为使用SlimNeck替换基准网络的Neck部分;5号实验为将基准模型Neck部分的卷积替换为GhostConv;6号实验为将基准模型Neck部分的C2f模块替换为融合了FasterBlock的C2f-Faster模块。
上述实验结果的第5组可以看出,使用GhostConv替换模型Neck部分的普通卷积后,模型的精度提升了0.5%,检测速度提高了86FPS,6号实验组表明使用C2f-Faster模块替换基准模型Neck中的C2f模块后,模型的检测速度获得了显著的提高,同时模型的平均准确率也提升了0.3%。
综上可知,本试验所提出的改进Neck结构确能够在纱筒数据集上取得良好的模型轻量化效果,同时模型的mAP也得到了小幅的上升。
此外,2号实验组的结果显示,使用GhostNet替换基准模型的Backbone后,模型权重大小减少了2.2MB,参数量减少了1.14M,检测速度也有明显的上升,同时模型的精确度损失仅有0.2%,考虑到工业部署成本,该实验组的改进模型能够大幅的降低模型大小和参数量,也不失为一个优秀的选择。
最终,本试验提出的改进模型选择使用改进后的C2f-LSK模块以及C2f-BRA模块替换YOLOv8n模型Backbone部分的C2f模块,以提高模型的检测精度;并使用GhostConv以及FasterBlock模块对基准模型的Neck部分进行轻量化改进,以在不牺牲模型精度的前提下提高模型的检测速度,改进后的模型对比实验如图5所示。
如图5所示,网络结构改进后的模型在相较于基准模型有着较大的优势,其全类别平均准确率提升了0.6%,Empty类别的平均准确率更获得了较大的1.1%提升,同时模型也更加轻量化,相比于原模型,改进后的模型权重大小减少了1.3MB,参数量减少了0.7M,同时检测速度提升了46FPS,该组实验数据有力的印证了本试验所提出结构的优越性,在提升了模型精度的同时降低了模型部署成本。
基准模型使用CIoU作为网络的边界框回归损失函数,而在工业应用的场景下,难以避免地包含低质量示例,所以如距离、纵横比之类的几何度量都会加剧对低质量示例的惩罚从而使模型的泛化性能下降,优秀的边界框回归损失函数应避免过多的关注低质量训练数据,从而较少的干预训练过程,以提升模型的泛化性能。
WIoU作为一种具有非单调动态聚焦性质的边界框回归损失函数,其非单调动态聚焦机制的实现主要依靠聚焦系数γ(式12),通过定义当前锚框的IoU损失与平均锚框的IoU损失的比为离群度β(式12),并在训练中实时迭代来实现聚焦系数γ的动态变化,根据超参数δ和α的不同,聚焦系数方程的曲线也不同,系数γ的函数曲线如下图6所示。
在gamma1.0线上从左至右按照出现顺序分别为alpha=2.5,sigma=2;alpha=1.9,sigma=3;alpha=1.6,sigma=4;alpha=1.4,sigma=5。
离群度β越小意味着当前边界框的质量越高,即优秀的训练数据,此时我们不希望模型对其过度关注,因此通过聚焦系数γ为其赋予小的梯度权重,可以提升模型的泛化能力,而当离群度β很大时,表示当前边界框的质量很差,即低质量训练数据,此时同样赋予其很低的梯度权重,是为了避免低质量数据产生较大的有害梯度,当训练数据质量中等时,通过系数γ为其赋予高的梯度权重,使模型聚焦于中等质量的训练数据以提升模型性能。
由上图可见,不同的超参数选择对训练数据的梯度权重有着较大的影响,为此我们设计了对照实验来寻找对于纱筒数据集最适合的超参数,实验数据如图7-8所示。
WIoU超参数选择实验结果表明,超参数选择为δ=3,α=1.9时,WIoU在纱筒数据集上的表现最好,在后续的对比试验结果中,使用WIoU的模型比使用CIoU模型的平均准确率提高了0.2%,证实了相较于原始的CIoU,WIoU更适应于该目标检测任务。
为了证明改进后的网络能够有效的提升模型在纱筒数据集上的表现,本小节采用消融实验法来评估模型改进的性能结果,实验将C2f-LSK模块、C2f-BRA模块、C2f-Faster模块、GhostConv以及WIoU损失函数作为五种变量,并采用平均精确度、模型权重大小、参数量以及推理速度作为最终的评估指标,对本试验所改进的模型使用消融实验验证结果如图9所示。
从上述实验数据可以看出,改进后的C2f-LSK模块以及C2f-BRA模块的引入可以给网络精度带来有效的提升,但模型深度的加深会加剧网络浅层特征的丢失,同时更多卷积的引入也导致了模型更加关注局部信息,因此在加入C2f-LSK模块的同时,引入带有自注意力机制的C2f-BRA模块,提升模型对全局信息的关注,数据显示改进方式是行之有效的,使模型的平均准确率提升了0.4%。
上述实验数据的结果显示,C2f-Faster以及GhostConv模块能够显著的提升模型的检测速度,并且不会导致模型的精度损失,将二者结合后表明轻量化改进的Neck结构的参数量以及权重大小都有明显降低,检测速度也明显提高。
最后,实验数据有力的印证了本试验所提出结构的优越性,在引入WIoU损失函数后,模型精度较基准模型而言,提升了0.8%,同时检测速度也提升了46FPS,模型权重大小以及参数量都获得了较大幅度的降低。
上述检测结果显示,本试验提出的模型在做到轻量化的同时,检测效果相比基准模型没有任何损失,同时,在部分极端的条件下,检测效果要优于基准模型(如弱光照环境和大倾角位姿,强光照下与基准模型持平),这主要归功于WIoU损失函数的引入,使模型的泛化性能提高,可以适应多种应用场景。
本试验提出了一种轻量级高精度的基于改进YOLOv8的小模型,该模型应用于纱库式自动络筒机的纱筒检测工序,并表现出了优异的性能。
首先从模型精度优化的角度出发,针对提升模型检测准确率进行了改进实验,带有大核选择机制的LSKUnit可以很好的提升模型对浅层特征提取能力,同时其使用了多种大卷积核的特点也丰富了模型的输出特征,使其具有多尺度的空间信息,随后使用Biformer对模型的上下文关联能力进行补强,以弥补卷积神经网络在全局信息方面关注度的不足,此外,将LSKUnit和Biformer与基准模型中的C2f模块进行结合,并通过实验验证了改进后的C2f-LSK模块以及C2f-BRA模块能够更大程度上发挥其原本模块的优势。
其次针对工业检测的应用场景,以降低模型部署成本为前提,对模型进行了轻量化部署的改进,FasterBlock被证实能够有效的加速模型的检测过程以及训练过程,因此将FasterBlock与基准网络Neck部分的C2f模块进行结合,在减少了模型参数量的同时利用C2f模块多梯度流的思想使FasterBlock内的PWConv能够利用不同梯度的多通道信息,弥补了PConv产生的精度损失,随后使用GhostConv替换掉Neck部分的普通卷积模块,使GhostConv利用简单的线性变换产生类似卷积的效果,以降低模型的参数量和计算成本,在后续的实验中证明,C2f-Faster模块以及GhostConv能够有效的提升模型的检测速度,并且使模型更加轻量化,使模型的可移植性提高同时不带来精度上的损失。
最后,为了泛化模型,提升模型的鲁棒性,使用WIoU代替CIoU损失函数,通过WIoU带有的非单调动态聚焦机制使模型对不同质量的训练数据赋予不同的权重梯度,避免模型过度关注难以识别的样例以及容易识别的样例,提升模型对普通样例的关注度,从而提升模型的稳定性。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (7)
1.一种基于YOLOv8的轻量级管纱检测模型构建方法,其特征在于,包括:
S101:以Darknet-53作为模型的骨干网络,为优化模型精度,引入LSKUnit(LargeSelective Kernel Unit),用于提升模型对于密集目标的识别和定位效果;
S102:对模型的上下文关联能力进行补强,引入Biformer模型,通过其中捕捉长距离依赖的动态稀疏注意力单元BRA(Bi-Level Routing Attention),以弥补卷积神经网络在全局信息方面关注度的不足;
S103:对模型进入轻量化部署改进,构建FasterNeck作为模型的颈部网络,用于在尽量少的牺牲检测精度的同时获得推理速度提升;
S104:泛化模型,提升模型的鲁棒性,使用带有动态聚焦机制的WIoU作为边界框损失函数,减少了模型过拟合风险。
2.根据权利要求1所述的一种基于YOLOv8的轻量级管纱检测模型构建方法,其特征在于,所述S101具体包括:
S1011:所述LSKUnit的输入特征首先经过分解后的多个大卷积核进行卷积,以此获得不同的大感受野下的特征图;
S1012:对所述特征图进行通道concat;
S1013:通过平均池化和最大池化层,有效的提取空间特征信息,
F1=Kernel 1(Fin);F2=Kernel 2(Fin)
Fk=[F1;F2]
Fpool=[AvgPool(Fk);MaxPool(Fk)]
上述式中,Kernel 1(F)是指输入特征F经过1号卷积核的卷积;AvgPool与MaxPool分别代表平均池化和最大池化。
S1014:通过一个卷积层以及Sigmoid激活函数实现不同空间特征的融合和交流,生成注意力模块的权值,
Fattn1;attn2=Sigmoid(Conv(Fpool))
上述式中,Conv代表conv2d模块,Sigmoid表示sigmoid激活函数;
S1015:随后将权值与大卷积核输出的特征进行加权并获得最终模块的输出特征,
Fout=(Fattn1*F1+Fattn2*F2)*Fin
上述式中,Fout代表最终模块的输出特征,输入LSKUnit的特征通过两个较大的卷积核串行来实现扩大感受野的功能,多个不同大小的卷积核使模块产生的空间特征具有多尺度多感受野特性,丰富了目标特征,以少量的计算代价强化了骨干网络对背景特征的关注能力。
3.根据权利要求1所述的一种基于YOL0v8的轻量级管纱检测模型构建方法,其特征在于,所述S102具体包括:
S1021:所述BRA模块中,高为H、宽为W、含有C个通道的输入特征会被划分为S*S个区域;
S1022:分别取对应可学习的权重矩阵Wq,Wk,Wv,得到Q(queies)、K(keys)、V(values)三向量,
Q=XWq
K=XWk
V=XWv
BRA模块的运算公式为,
上述式中,常数C是为了梯度稳定做的归一化,从上式可以看出自注意力机制是对V矩阵的一次加权运算,取权值QKT作为其他不同区域特征对所选区域Q的相关性度量表征,对其进行top-k算法,得到与当前所选区域Q相关性最高的k个区域,以此实现了一次粗粒度的键值筛选;
S1023:将得到的与当前所选区域最相关的k个区域的键值对合并,进行细粒度的token-to-token注意力计算,
In=index(topk(QKT)),n∈1,2,...k
Kg=Gather(K,In);Vg=Gather(V,In)
所述Biformer模型通过构建两层的动态稀疏注意力机制(Bi-Level RoutingAttention,BRA)来实现计算量的减少,其关键思想是首先对输入特征应用一次粗粒度的过滤,将大部分不相关的键值对忽略,再对剩下的区域进行细粒度的token-to-token注意力。
4.根据权利要求1所述的一种基于YOLOv8的轻量级管纱检测模型构建方法,其特征在于,所述S103具体包括:
S1031:将FasterBlock与基准网络Neck部分的C2f模块进行结合,在减少了模型参数量的同时利用C2f模块多梯度流的思想使FasterBlock内的PWConv能够利用不同梯度的多通道信息,弥补了PConv产生的精度损失;
S1032:使用GhostConv替换掉Neck部分的普通卷积模块,使GhostConv利用简单的线性变换产生类似卷积的效果,以降低模型的参数量和计算成本。
5.根据权利要求1所述的一种基于YOLOv8的轻量级管纱检测模型构建方法,其特征在于,所述S104具体包括:
S1041:使用WIoU替换YOLOv8中的CIoU作为模型的边界回归损失函数,通过WIoU带有的非单调动态聚焦机制使模型对不同质量的训练数据赋予不同的权重梯度,避免模型过度关注难以识别的样例以及容易识别的样例,提升模型对普通样例的关注度,从而提升模型的稳定性WIoU是具有非单调动态聚焦机制的损失函数,其具体实现如下,
上述式中,β被定义为当前数据的离群度,该值越大则表示该数据质量越低,越难被检测;越小则表示质量越高,越容易被检测,γ是非单调动态调焦系数,δ与α为超参数,当β=δ时,γ=1,即不对训练数据的损失进行加权,由于表示参与训练的数据的平均IoU损失,可以自学习,因此γ会随着训练的进行动态变化,WIoU的计算公式如下,
上述式中,(x,y)为真实标定框的中心位置,(xgt,ygt)为预测标定框的中心位置,上式表明该损失函数由非单调动态聚焦系数、中心距离惩罚机制和原始IoU损失函数构成。
6.根据权利要求1所述的一种基于YOLOv8的轻量级管纱检测模型构建方法,其特征在于,所述S1031具体包括:
S10311:由PConv(Partial Convolution)搭建FasterNet,所述FasterNet中使用了大量的所述PConv,这是一种部分卷积方法,即只对输入特征的部分通道进行卷积运算;
S10312:在所述PConv后进行一次逐点卷积(Point-Wise Convolution),用于提高对输入特征其他通道的利用并且不会产生高昂的计算代价。
7.根据权利要求1所述的一种基于YOLOv8的轻量级管纱检测模型构建方法,其特征在于,S1032具体包括:
S10321:采用DWConv作为简单线性变换的实现方式,用以产生多组Ghost对,既能够提升模型的特征提取能力,又可以减少卷积带来计算量开支。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311371184.8A CN117455855A (zh) | 2023-10-23 | 2023-10-23 | 一种基于YOLOv8的轻量级管纱检测模型构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311371184.8A CN117455855A (zh) | 2023-10-23 | 2023-10-23 | 一种基于YOLOv8的轻量级管纱检测模型构建方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117455855A true CN117455855A (zh) | 2024-01-26 |
Family
ID=89580977
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311371184.8A Pending CN117455855A (zh) | 2023-10-23 | 2023-10-23 | 一种基于YOLOv8的轻量级管纱检测模型构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117455855A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117786823A (zh) * | 2024-02-26 | 2024-03-29 | 陕西天润科技股份有限公司 | 一种基于建筑物单体化模型轻量化处理的方法 |
-
2023
- 2023-10-23 CN CN202311371184.8A patent/CN117455855A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117786823A (zh) * | 2024-02-26 | 2024-03-29 | 陕西天润科技股份有限公司 | 一种基于建筑物单体化模型轻量化处理的方法 |
CN117786823B (zh) * | 2024-02-26 | 2024-05-03 | 陕西天润科技股份有限公司 | 一种基于建筑物单体化模型轻量化处理的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112150821B (zh) | 轻量化车辆检测模型构建方法、系统及装置 | |
CN114120019A (zh) | 一种轻量化的目标检测方法 | |
CN111062297B (zh) | 基于eann深度学习模型的暴力异常行为检测方法 | |
CN105243356B (zh) | 一种建立行人检测模型的方法及装置及行人检测方法 | |
CN114972213A (zh) | 一种基于机器视觉的两阶段主板图像缺陷检测及定位方法 | |
CN117455855A (zh) | 一种基于YOLOv8的轻量级管纱检测模型构建方法 | |
CN113052006B (zh) | 一种基于卷积神经网络的图像目标检测方法,系统及可读存储介质 | |
CN113807176B (zh) | 一种基于多知识融合的小样本视频行为识别方法 | |
CN112819063B (zh) | 一种基于改进的Focal损失函数的图像识别方法 | |
CN115294563A (zh) | 一种基于Transformer的增强了局部语义学习能力的3D点云分析方法及装置 | |
CN110852199A (zh) | 一种基于双帧编码解码模型的前景提取方法 | |
CN113159067A (zh) | 一种基于多粒度局部特征软关联聚合的细粒度图像辨识方法及装置 | |
CN114255403A (zh) | 基于深度学习的光学遥感图像数据处理方法及系统 | |
CN114359245A (zh) | 一种工业场景下产品表面缺陷检测方法 | |
CN114120045B (zh) | 一种基于多门控混合专家模型的目标检测方法和装置 | |
CN117034100A (zh) | 基于分层池化架构自适应图分类方法、系统、设备和介质 | |
Fu et al. | A case study of utilizing YOLOT based quantitative detection algorithm for marine benthos | |
CN117726940A (zh) | 一种基于区域提议增强的遥感图像细粒度检测方法及系统 | |
Heinrich et al. | Is bigger always better? Lessons learnt from the evolution of deep learning architectures for image classification | |
CN117456167A (zh) | 一种基于改进YOLOv8s的目标检测算法 | |
CN117079095A (zh) | 基于深度学习的高空抛物检测方法、系统、介质和设备 | |
CN117173449A (zh) | 基于多尺度detr的航空发动机叶片缺陷检测方法 | |
CN116934694A (zh) | 一种布面疵点检测方法及系统 | |
CN109840498A (zh) | 一种实时行人检测方法及神经网络、目标检测层 | |
CN112800968B (zh) | 一种基于hog分块的特征直方图融合对饮水区域猪的身份识别办法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |