CN115049639A - 一种基于分类重加权YOLOv5模型的织物瑕疵检测方法 - Google Patents

一种基于分类重加权YOLOv5模型的织物瑕疵检测方法 Download PDF

Info

Publication number
CN115049639A
CN115049639A CN202210864109.4A CN202210864109A CN115049639A CN 115049639 A CN115049639 A CN 115049639A CN 202210864109 A CN202210864109 A CN 202210864109A CN 115049639 A CN115049639 A CN 115049639A
Authority
CN
China
Prior art keywords
feature map
classification
loss
prediction
feature
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.)
Granted
Application number
CN202210864109.4A
Other languages
English (en)
Other versions
CN115049639B (zh
Inventor
郑雨婷
吕文涛
陈影柔
王成群
徐伟强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Sci Tech University ZSTU
Original Assignee
Zhejiang Sci Tech University ZSTU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang Sci Tech University ZSTU filed Critical Zhejiang Sci Tech University ZSTU
Priority to CN202210864109.4A priority Critical patent/CN115049639B/zh
Publication of CN115049639A publication Critical patent/CN115049639A/zh
Application granted granted Critical
Publication of CN115049639B publication Critical patent/CN115049639B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • G06V10/763Non-hierarchical techniques, e.g. based on statistics of modelling distributions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/766Arrangements for image or video recognition or understanding using pattern recognition or machine learning using regression, e.g. by projecting features on hyperplanes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/806Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30124Fabrics; Textile; Paper
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Biophysics (AREA)
  • Quality & Reliability (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
  • Treatment Of Fiber Materials (AREA)
  • Image Analysis (AREA)

Abstract

本发明属于纺织布匹瑕疵检测技术领域,具体涉及一种基于分类重加权YOLOv5模型的织物瑕疵检测方法。对YOLOv5模型中的分类损失函数进行改进,引入EqualizationLossv2函数梯度引导平衡重加权,独立、平等地重新平衡每个类别的训练过程,并在EqualizationLossv2函数的基础上,针对召回率Recall过小导致总体mAP不高的问题,在loss值函数关于类别权重的梯度计算中,使模型忽略低召回率类别作为其他类别的负样本的情况,减少低召回率类别对应的样本权重对负向梯度的累积,只累积正向梯度。进一步提升整体召回率,巧妙地提升总体mAP精度。使用本发明所述方法进行织物图像的瑕疵检测,相较于现有的先进检测模型在检测精度和效率指标上都具有较大的优势,同时也很好地满足了工业场景中的实时性要求。

Description

一种基于分类重加权YOLOv5模型的织物瑕疵检测方法
技术领域
本发明属于纺织布匹瑕疵检测技术领域,具体涉及一种基于分类重加权YOLOv5模型的织物瑕疵检测方法。
背景技术
纺织行业在我国的国民经济发展中一直占据着重要地位。在纺织工业生产中织物不仅作为制作服装的基础材料,而且可作为其他装饰类和工业类的原材料进行再加工。随着经济发展和人民生活水平的提高,市场对产品质量的要求逐渐身高,需要专业的质检人员检查纺织品的瑕疵并剔除不合格布匹。人工检测的方法不仅效率低成本高,而且会受检测人员的主观因素影响导致误检或漏检。因此,设计一种高效的自动化织物瑕疵检测方法是非常有必要的。
近些年来,卷积神经网络(CNNs)在图像分类、检测和分割等任务上占据愈来愈重要的地位,大量的研究人员参与其领域并改进出各式各样的网络模型。在目标检测方向,同样涌现出大量优秀的研究工作,具有代表性的有如R-CNN和YOLO系列的检测模型,其中YOLO系列因其检测速度快和模型轻量的优点,在众多模型中脱颖而出并占据一席之地。
发明内容
针对现有技术中存在的上述问题,本发明提出一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,对YOLOv5模型中的分类损失函数进行改进,引入Equalization Lossv2函数梯度引导平衡重加权,独立、平等地重新平衡每个类别的训练过程,并在Equalization Loss v2函数的基础上,针对召回率Recall过小导致总体mAP不高的问题,在loss值函数关于类别权重的梯度计算中,使模型忽略低召回率类别作为其他类别的负样本的情况,减少低召回率类别对应的样本权重对负向梯度的累积,只累积正向梯度。进一步提升召回率,巧妙地提升总体mAP精度。进而使得训练完成后的YOLOv5模型的织物瑕疵检测准确度更高。
本发明采用以下技术方案:
一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,包括步骤:
S1、采集织物图像数据集,并对每张图像中的各瑕疵进行类别、位置的标注;
S2、按预设比例对数据集进行划分,分别得到训练集、验证集、测试集;
S3、使用聚类算法根据训练集中所有图像的目标GT框进行聚类,得到K个先验框;
S4、随机选择训练集中的X张图像作为分类重加权YOLOv5模型的输入,经过主干网络特征提取后得到N个不同尺度的有效特征图,特征融合模块对有效特征图进行融合,以得到N个不同尺度的融合特征图,最后对融合特征图的通道进行调整以获得N个预测特征图;
S5、将K个先验框按照尺度预先均匀分布到N个预测特征图上,然后根据预测特征图上锚点信息对相应的先验框进行调整,得到所有预测框;
S6、根据预测特征图、预测框、相应GT框来计算网络整体损失,并使用梯度下降法来更新分类重加权YOLOv5模型的参数,网络整体损失基于分类损失计算得到,所述分类损失的计算采用梯度引导平衡重加权的均衡损失函数,且在采用均衡损失函数计算正负梯度过程中,忽略低召回率类别作为其他类别的负样本的情况;
S7、重复步骤S4-S6直到训练集中所有图片都输入模型一次,根据参数更新后的分类重加权YOLOv5模型来对验证集的每张图像进行预测,统计后输出验证集中各个类别的AP值;
S8、重复步骤S7,直至步骤S7中所统计的各个类别的AP值的平均值mAP稳定在某个值,得到训练完成的分类重加权YOLOv5模型;
S9、使用训练完成的分类重加权YOLOv5模型对测试集中所有图像进行预测,得到特征图上的预测框,根据特征图和原图的比例关系,将预测框映射至对应的原图上来定位瑕疵。
作为优选方案,步骤S4中,包括步骤:
S4.1、随机选取训练集中X张图像,并进行切片处理后,输入主干网络中进行逐级特征提取,从中取出最深层的三个含有不同尺度和通道数的有效特征图,按尺度从小到大分别称为M5特征图、M4特征图、M3特征图;
S4.2、将步骤S4.1中得到的三个有效特征图输入特征融合模块中进行进一步融合,经过自上至下和自下至上的融合加强语义特征和定位特征的融合,以输出P5特征图、P4特征图、P3特征图;
S4.3、将P5特征图、P4特征图、P3特征图的通道数均调整为num_anchor*(5+num_class),以得到三个预测特征图,num_anchor表示在预测特征图的每个锚点上预设先验框数目,num_class表示预测类别数目。
作为优选方案,步骤S4.2中,包括步骤:
S4.2.1、将M5特征图经过第一卷积块,得到K5特征图,将K5特征图进行上采样并和M4特征图进行融合,将融合结果依次通过第一瓶颈结构模块和第二卷积块,以得到K4特征图;
S4.2.2、将K4特征图进行上采样并和M3特征图进行融合,将融合结果输入第二瓶颈结构模块,以得到最浅层输出的P3特征图;
S4.2.3、将K4特征图与P3特征图进行融合,将融合结果输入第三瓶颈结构模块,以得到中间层输出的P4特征图;
S4.2.4、将P4特征图进行下采样,并与K5特征图进行融合,将融合结果输入第四瓶颈结构模块,以得到最深层输出的P5特征图。
作为优选方案,步骤S5中所述将K个先验框按照尺度预先均匀分布到N个预测特征图上,具体为:将每个预测特征图划分为H×W的网格,其中每个网格单元中心称为锚点,然后在每个锚点上覆盖属于对应预测特征图的K/N个先验框。
作为优选方案,步骤S5中所述根据预测特征图上锚点信息对相应的先验框进行调整,得到所有预测框,具体为:预测特征图上每个锚点对应一个num_anchor*(5+num_class)长度的向量,通过对这个向量进行维度拆分,得到对于每个先验框的5+num_class长度的一维调整向量,基于一维调整向量对先验框位置和大小进行调整,得到对应的预测框。
作为优选方案,步骤S6中,网络整体损失基于交并比损失、分类损失、目标置信度损失以预设比例加权求和得到。
作为优选方案,所述梯度引导平衡重加权的均衡损失函数,具体为:根据每个分类器累积的正负梯度比,计算得到正、负样本在损失计算中的样本权重,计算公式如下:
Figure BDA0003757854500000051
Figure BDA0003757854500000052
Figure BDA0003757854500000053
其中,
Figure BDA0003757854500000054
表示第t次迭代第j个类别的正样本的权重,
Figure BDA0003757854500000055
表示第t次迭代第j个类别的负样本的权重,
Figure BDA0003757854500000056
表示第t次迭代第j个类别的正负梯度比,α、γ、μ均为预设的超参数;
进而,根据正、负样本的权重与交叉熵损失BCEloss计算得到分类损失clsloss,计算公式如下:
Figure BDA0003757854500000057
其中,
Figure BDA0003757854500000058
为第i个实例在第j类上的实际标签。
作为优选方案,所述在采用均衡损失函数计算正负梯度过程中,忽略低召回率类别作为其他类别的负样本的情况,具体为:通过引入低召回率判别函数threshlod和前景判别函数
Figure BDA0003757854500000059
利用低召回率判别函数和前景判别函数对正负样本权重进行更新,使其在更新正负梯度时,不累积低召回率类别样本作为其他类别的负样本的梯度;
其中,若为低召回率类别,低召回率判别函数值为1,若为其他类别,低召回率判别函数值为0;
若为前景,前景判别函数值为1,若非前景,前景判别函数值为0;
对正负样本权重进行更新的具体计算公式为:
Figure BDA0003757854500000061
其中,weight’表示更新后权重,weight表示更新前权重,更新前权重weight对应正样本的权重为
Figure BDA0003757854500000062
更新前权重weight对应负样本的权重为
Figure BDA0003757854500000063
为第i个实例在第j类上的估计概率,
Figure BDA0003757854500000064
为第i个实例在第j类上的实际标签。
作为优选方案,步骤S1与步骤S2之间还包括步骤:使用Mosaic数据增强方法,以实现数据集的扩充。
作为优选方案,步骤S2中,所述训练集、验证集、测试集的比例为8:1:1。
本发明的有益效果是:
对YOLOv5模型中的分类损失函数进行改进,引入Equalization Loss v2函数梯度引导平衡重加权,独立、平等地重新平衡每个类别的训练过程,并在Equalization Loss v2函数的基础上,针对召回率Recall过小导致总体mAP不高的问题,在loss值函数关于类别权重的梯度计算中,使模型忽略低召回率类别作为其他类别的负样本的情况,减少低召回率类别对应的样本权重对负向梯度的累积,只累积正向梯度。进一步提升召回率,巧妙地提升总体mAP精度。进而使得训练完成后的YOLOv5模型的织物瑕疵检测准确度更高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明所述分类重加权YOLOv5模型的网络结构示意图;
图2是织物图像样例的原图及检测效果图;
图3是分类重加权YOLOv5模型在织物数据集上的各类别AP值示意图。
具体实施方式
以下通过特定的具体实施例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
本实施例提供一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,参照图1所示,其为本实施例中所述分类重加权YOLOv5模型的网络结构示意图。以下,详细说明本发明所述方法对于提高检测精度的效果。
一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,包括步骤:
S1、采集织物图像数据集,每张图像都对应一个XML格式的标注文件,其中含有对图像中的每个瑕疵的类别和位置标注,并对织物图像数据集进行数据增强以扩充数据集,以得到织物图像增强后的数据集;
S2、按预设比例对数据集进行划分,分别得到训练集、验证集、测试集,本实施例中预设比例具体为8:1:1;
S3、使用Kmeans++聚类算法根据训练集中所有图像的目标GT框进行聚类,得到K个先验框;
S4、随机选择训练集中的X张图像作为分类重加权YOLOv5模型的输入,经过主干网络特征提取后得到N个不同尺度的有效特征图,特征融合模块对有效特征图进行融合,以得到N个不同尺度的融合特征图,最后对融合特征图的通道进行调整以获得N个预测特征图;
S5、将K个先验框按照尺度预先均匀分布到N个预测特征图上,然后根据预测特征图上锚点信息对相应的先验框进行调整,得到所有预测框;
S6、根据预测特征图、预测框、相应GT框来计算网络整体损失,并使用梯度下降法来更新分类重加权YOLOv5模型的参数,网络整体损失基于分类损失计算得到,所述分类损失的计算采用梯度引导平衡重加权的均衡损失函数(Equalization Loss v2函数),且在采用均衡损失函数计算正负梯度过程中,忽略低召回率类别作为其他类别的负样本的情况;
S7、重复步骤S4-S6直到训练集中所有图片都输入模型一次,根据参数更新后的分类重加权YOLOv5模型来对验证集的每张图像进行预测,统计后输出验证集中各个类别的AP值,将整个训练集的图片都输入一次网络进行前向传播并反向优化网络参数的过程称为一个epoch,在每个epoch过后,使用参数更新完成的网络对验证集中的每张图片进行预测,根据每张图的预测和GT来统计出验证集的各个类别的AP指标;
S8、重复步骤S7,直至步骤S7中所统计的各个类别的AP值的平均值mAP稳定在某个值,得到训练完成的分类重加权YOLOv5模型,通过连续多轮mAP值不变或者出现下降趋势可以判断网络收敛,反之则继续下个epoch的训练;
S9、使用训练完成的分类重加权YOLOv5模型对测试集中所有图像进行预测,得到特征图上的预测框,根据特征图和原图的比例关系,将预测框映射至对应的原图上来定位瑕疵。
由于召回率远远低于精准率导致总体mAP并不高,通过使模型训练减少低召回率类别对应的样本权重对负向梯度的累积,只累积正向梯度,进而提升整体的召回率Recall;在低召回率的类别中,由于其所积累的负向梯度过大,真阳性样本往往被认为是背景或其他类别。由于大量的样本损失计算,于是在loss值函数关于类别权重的梯度计算中,我们不考虑低召回率类别样本作为其他类的负样本的情况,减少低召回率类别对应的样本权重对负向梯度的累积,只累积正向梯度。同时,利用Equalization Loss v2中梯度引导的重新加权机制进行动态加权。在loss为了减少低召回率类别被错检为其他类别的概率,在loss值函数关于类别权重的梯度计算中,不关注低召回率类别作为其他类别的负样本的梯度累积。该方法通过Equalization Loss v2中梯度引导的重新加权机制进行动态加权,并且只累积低召回率类别对应权重的正向梯度,进一步提升召回率,巧妙地提升总体mAP精度。
召回率计算如下式(1)所示,其中TP为真阳性,而FP为假阴性。从Recall的定义式可以看到,可以通过减少假阳性的出现概率从而提升召回率。
Figure BDA0003757854500000091
具体地:
步骤S1中所得到数据集具体为,织物数据集包括多幅织物图像及对应的标签文件。织物图像尺寸为4096×1696像素。标签文件是记录图像中的目标位置信息和类别信息的xml格式文件。
步骤S1中所述数据增强具体为,使用Mosaic数据增强方法对织物数据集进行扩充,所述的Mosaic数据增强是随机选择四张训练集中的四张图像,将四张图片进行随机裁剪,再拼接到一张图上作为新的训练数据。
进一步,步骤S2中,将训练集、验证集、测试集的划分比例设为8:1:1,并生成train.txt、val.txt、test.txt文件来保存对应图像列表。
步骤S3中具体为:根据训练集中标签文件的位置信息来计算目标的宽高从而进行聚类,标签文件中格式为(c,x1,y1,x2,y2),c表示标注框内所含物体所属类别,x1、y1分别表示标注框左上角顶点的x坐标和y坐标,x2、y2表示标注框内右下角顶点的x坐标和y坐标。标注框也就是真实框,称为Ground Truth(GT)。其中使用K-means++聚类算法来根据宽高进行聚类,将最终得到的K个聚类中心坐标作为K个先验框的宽和高。
步骤S4中具体包括以下步骤:
S4.1、随机从训练集中取X张图片输入分类重加权YOLOv5模型的主干网络Backbone中进行多尺度特征提取,输出三个不同尺度的有效特征图,尺度分别为20×20、40×40、80×80,按尺度从小到大分别称为M5特征图、M4特征图、M3特征图,参照图1所示,其中所提的Backbone是由四个卷积块CBL、四个瓶颈结构模块BottleneckCSP和一个空间金字塔快速池化模块SPPF组成的;
S4.2、将主干网络提取的三个不同尺度的有效特征图通过路径聚合网络PANet进行进一步融合,以输出三个融合特征图,分别称为P5特征图、P4特征图、P3特征图,输出的三个融合特征图和主干网络输出的有效特征图尺度相对应(分别为上述的20×20、40×40、80×80),所述PANet结构自顶向下传达强语义特征,以及自底向上传达强定位特征。
S4.3、通过轻量化的YOLO Head将融合特征图的通道数调整为num_anchor*(5+num_class),输出三个预测特征图。其中,num_anchor表示在预测特征图的每个锚点上预设先验框数目,num_class表示预测类别数目。
进一步,步骤S5中具体为:将9个先验框按照尺寸大小顺序平均分配至3个预测特征图,将每个尺度的网络预测特征图划分为不同数量的网格,并根据每个网格中心位置和所分配的先验框尺寸生成相应的候选框。
所述9个先验框尺寸分别为:
(7,8),(15,14),(30,33),(25,188),(639,34),(639,49),(71,636),(639,71),(639,637)。
而在步骤S4中得到的3个不同尺度的预测特征图的尺度分别为20×20、40×40、80×80。对于每一个预测特征图,分配3个尺寸的先验框。如对于20×20尺度的预测特征图,因其感受野最大,所以分配其最大的3个尺寸的先验框(71,636),(639,71),(639,637)。同理对于40×40尺度的预测特征图,分配较大的3个尺寸的先验框(25,188),(639,34),(639,49)。对于80×80尺度的预测特征图,分配最小的3个先验框(7,8),(15,14),(30,33)。
进一步,步骤S5中所述根据预测特征图上锚点信息对相应的先验框进行调整,得到所有预测框,具体为:预测特征图上每个锚点对应一个num_anchor*(5+num_class)长度的向量,通过对这个向量进行维度拆分,得到对于每个先验框的5+num_class长度的一维调整向量,其中前5个值代表的分别是对应先验框的宽高、中心点坐标的调整信息和边框置信度。基于一维调整向量对先验框位置和大小进行调整,得到对应的预测框。
步骤S6中,为根据预测特征图、预测框与对应图片的GT框来计算网络整体损失,具体为:
根据预测框及相应GT框计算交并比损失(Complete Intersection over Union,CIoU),根据网络输出预测特征图中包含的每个预测框的分类结果、目标置信度计算分类损失、目标置信度损失,并将交并比损失、分类损失、目标置信度损失以预设比例加权求和以得到网络整体损失,并进行反向传播来优化网络参数。
交并比损失和目标置信度损失分别由DIOU函数、交叉熵计算得到。分类损失的计算采用梯度引导平衡重加权的均衡损失函数(Equalization Loss v2函数);且在采用均衡损失函数计算正负梯度过程中,忽略低召回率类别作为其他类别的负样本的情况,减少低召回率类别对应的样本权重对负向梯度的累积,只累积正向梯度。Equalization Loss v2函数是根据每个分类器累积的正负梯度比,计算得到正负样本在损失计算中的样本权重;
计算公式如下:
Figure BDA0003757854500000121
Figure BDA0003757854500000122
Figure BDA0003757854500000123
其中,
Figure BDA0003757854500000124
表示第t次迭代第j个类别的正样本的权重,
Figure BDA0003757854500000125
表示第t次迭代第j个类别的负样本的权重,
Figure BDA0003757854500000126
表示第t次迭代第j个类别的正负梯度比,α、γ、μ均为预设的超参数。
进而,根据正、负样本的权重与交叉熵损失BCEloss计算得到分类损失clsloss,计算公式如下:
Figure BDA0003757854500000127
其中,
Figure BDA0003757854500000128
为第i个实例在第j类上的实际标签。
所述在采用均衡损失函数计算正负梯度过程中,忽略低召回率类别作为其他类别的负样本的情况,具体为:通过引入低召回率判别函数threshlod和前景判别函数
Figure BDA0003757854500000131
利用低召回率判别函数和前景判别函数对正负样本权重进行更新,使其在更新正负梯度时,不累积低召回率类别样本作为其他类别的负样本的梯度;
其中,若为低召回率类别,低召回率判别函数值为1,若为其他类别,低召回率判别函数值为0;
若为前景,前景判别函数值为1,若非前景,前景判别函数值为0;
更新后权重weight’实际设置如式(5)所示,其中更新前权重weight对应正样本的权重为
Figure BDA0003757854500000132
对应负样本的权重为
Figure BDA0003757854500000133
Figure BDA0003757854500000134
上式中,
Figure BDA0003757854500000135
为第i个实例在第j类上的估计概率,
Figure BDA0003757854500000136
为第i个实例在第j类上的实际标签。得到更新后权重后,由
Figure BDA0003757854500000137
Figure BDA0003757854500000138
更新正、负梯度
Figure BDA0003757854500000139
Figure BDA00037578545000001310
Figure BDA00037578545000001311
Figure BDA00037578545000001312
更新正负梯度后,由下式利用第t次迭代计算得到的
Figure BDA00037578545000001313
Figure BDA00037578545000001314
对新正、负梯度
Figure BDA00037578545000001315
Figure BDA00037578545000001316
进行重加权,并更新第t+1次迭代要用到的正负梯度比
Figure BDA00037578545000001317
再由得到的正负梯度比进入下一个循环,依次得到每次迭代的分类损失clsloss
Figure BDA00037578545000001318
Figure BDA00037578545000001319
Figure BDA00037578545000001320
计算分类损失的算法的伪代码如下表1所示:
Figure BDA0003757854500000141
表1 Recall Long Tailed算法伪代码表
所述步骤S7,S8中,具体地,进行分类重加权YOLOv5网络模型训练,具体包括以下步骤:
A:配置网络环境,Python版本为3.7和深度学习框架为PyTorch1.8,使用CUDA进行加速;
B:设置初始学习率为0.01,学习率调整策略为余弦退火衰减;
C:设置每批输入网络的图像数量为8;
D:使用正态分布初始化方式对网络权重进行初始化,不使用预训练权重。在训练过程中的每个周期结束后进行网络整体损失计算。循环迭代直至验证集的mAP指标稳定在某个值,此时停止分类重加权YOLOv5网络模型的训练。
步骤S9中具体为:对于每张图像,网络输出对应的N个预测特征图,然后在预测特征图上根据每个锚点对应的调整向量对先验框进行调整,得到每张图像的所有预测框,接着使用非极大值抑制(NMS)去除其中的冗余框,得到特征图上的预测框。最后根据比例关系将特征图尺度上的预测框映射到原图尺度上。映射所得到的最终预测框在待检测织物图像中为织物瑕疵的检测定位,如图2所示。
为了验证所提方法的性能,使用训练后分类重加权YOLOv5网络模型对测试集中的图像进行预测,使用预测结果和GT计算平均精确度均值mAP(mean Average Precision)和每个类别对应的准确率(Precision)、召回率(Recall)。实验结果如图3所示,本发明能够实现对多种类别的织物瑕疵检测,取得了较高的准确率。
以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案作出的各种变形和改进,均应落入本发明的保护范围内。

Claims (10)

1.一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,其特征在于,包括步骤:
S1、采集织物图像数据集,并对每张图像中的各瑕疵进行类别、位置的标注;
S2、按预设比例对数据集进行划分,分别得到训练集、验证集、测试集;
S3、使用聚类算法根据训练集中所有图像的目标GT框进行聚类,得到K个先验框;
S4、随机选择训练集中的X张图像作为分类重加权YOLOv5模型的输入,经过主干网络特征提取后得到N个不同尺度的有效特征图,特征融合模块对有效特征图进行融合,以得到N个不同尺度的融合特征图,最后对融合特征图的通道进行调整以获得N个预测特征图;
S5、将K个先验框按照尺度预先均匀分布到N个预测特征图上,然后根据预测特征图上锚点信息对相应的先验框进行调整,得到所有预测框;
S6、根据预测特征图、预测框、相应GT框来计算网络整体损失,并使用梯度下降法来更新分类重加权YOLOv5模型的参数,网络整体损失基于分类损失计算得到,所述分类损失的计算采用梯度引导平衡重加权的均衡损失函数,且在采用均衡损失函数计算正负梯度过程中,忽略低召回率类别作为其他类别的负样本的情况;
S7、重复步骤S4-S6直到训练集中所有图片都输入模型一次,根据参数更新后的分类重加权YOLOv5模型来对验证集的每张图像进行预测,统计后输出验证集中各个类别的AP值;
S8、重复步骤S7,直至步骤S7中所统计的各个类别的AP值的平均值mAP稳定在某个值,得到训练完成的分类重加权YOLOv5模型;
S9、使用训练完成的分类重加权YOLOv5模型对测试集中所有图像进行预测,得到特征图上的预测框,根据特征图和原图的比例关系,将预测框映射至对应的原图上来定位瑕疵。
2.根据权利要求1所述的一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,其特征在于,步骤S4中,包括步骤:
S4.1、随机选取训练集中X张图像,并进行切片处理后,输入主干网络中进行逐级特征提取,从中取出最深层的三个含有不同尺度和通道数的有效特征图,按尺度从小到大分别称为M5特征图、M4特征图、M3特征图;
S4.2、将步骤S4.1中得到的三个有效特征图输入特征融合模块中进行进一步融合,经过自上至下和自下至上的融合加强语义特征和定位特征的融合,以输出P5特征图、P4特征图、P3特征图;
S4.3、将P5特征图、P4特征图、P3特征图的通道数均调整为num_anchor*(5+num_class),以得到三个预测特征图,num_anchor表示在预测特征图的每个锚点上预设先验框数目,num_class表示预测类别数目。
3.根据权利要求2所述的一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,其特征在于,步骤S4.2中,包括步骤:
S4.2.1、将M5特征图经过第一卷积块,得到K5特征图,将K5特征图进行上采样并和M4特征图进行融合,将融合结果依次通过第一瓶颈结构模块和第二卷积块,以得到K4特征图;
S4.2.2、将K4特征图进行上采样并和M3特征图进行融合,将融合结果输入第二瓶颈结构模块,以得到最浅层输出的P3特征图;
S4.2.3、将K4特征图与P3特征图进行融合,将融合结果输入第三瓶颈结构模块,以得到中间层输出的P4特征图;
S4.2.4、将P4特征图进行下采样,并与K5特征图进行融合,将融合结果输入第四瓶颈结构模块,以得到最深层输出的P5特征图。
4.根据权利要求2所述的一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,其特征在于,步骤S5中所述将K个先验框按照尺度预先均匀分布到N个预测特征图上,具体为:将每个预测特征图划分为H×W的网格,其中每个网格单元中心称为锚点,然后在每个锚点上覆盖属于对应预测特征图的K/N个先验框。
5.根据权利要求2所述的一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,其特征在于,步骤S5中所述根据预测特征图上锚点信息对相应的先验框进行调整,得到所有预测框,具体为:预测特征图上每个锚点对应一个num_anchor*(5+num_class)长度的向量,通过对这个向量进行维度拆分,得到对于每个先验框的5+num_class长度的一维调整向量,基于一维调整向量对先验框位置和大小进行调整,得到对应的预测框。
6.根据权利要求1所述的一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,其特征在于,步骤S6中,网络整体损失基于交并比损失、分类损失、目标置信度损失以预设比例加权求和得到。
7.根据权利要求1所述的一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,其特征在于,所述梯度引导平衡重加权的均衡损失函数,具体为:根据每个分类器累积的正负梯度比,计算得到正、负样本在损失计算中的样本权重,计算公式如下:
Figure FDA0003757854490000041
Figure FDA0003757854490000042
Figure FDA0003757854490000043
其中,
Figure FDA0003757854490000044
表示第t次迭代第j个类别的正样本的权重,
Figure FDA0003757854490000045
表示第t次迭代第j个类别的负样本的权重,
Figure FDA0003757854490000046
表示第t次迭代第j个类别的正负梯度比,α、γ、μ均为预设的超参数;
进而,根据正、负样本的权重与交叉熵损失BCEloss计算得到分类损失clsloss,计算公式如下:
Figure FDA0003757854490000047
其中,
Figure FDA0003757854490000048
为第i个实例在第j类上的实际标签。
8.根据权利要求1所述的一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,其特征在于,所述在采用均衡损失函数计算正负梯度过程中,忽略低召回率类别作为其他类别的负样本的情况,具体为:通过引入低召回率判别函数threshlod和前景判别函数
Figure FDA0003757854490000049
利用低召回率判别函数和前景判别函数对正负样本权重进行更新,使其在更新正负梯度时,不累积低召回率类别样本作为其他类别的负样本的梯度;
其中,若为低召回率类别,低召回率判别函数值为1,若为其他类别,低召回率判别函数值为0;
若为前景,前景判别函数值为1,若非前景,前景判别函数值为0;
对正负样本权重进行更新的具体计算公式为:
Figure FDA0003757854490000051
其中,weight’表示更新后权重,weight表示更新前权重,更新前权重weight对应正样本的权重为
Figure FDA0003757854490000052
更新前权重weight对应负样本的权重为
Figure FDA0003757854490000053
Figure FDA0003757854490000054
为第i个实例在第j类上的估计概率,
Figure FDA0003757854490000055
为第i个实例在第j类上的实际标签。
9.根据权利要求1所述的一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,其特征在于,步骤S1与步骤S2之间还包括步骤:使用Mosaic数据增强方法,以实现数据集的扩充。
10.根据权利要求1所述的一种基于分类重加权YOLOv5模型的织物瑕疵检测方法,其特征在于,步骤S2中,所述训练集、验证集、测试集的比例为8:1:1。
CN202210864109.4A 2022-07-21 2022-07-21 一种基于分类重加权YOLOv5模型的织物瑕疵检测方法 Active CN115049639B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210864109.4A CN115049639B (zh) 2022-07-21 2022-07-21 一种基于分类重加权YOLOv5模型的织物瑕疵检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210864109.4A CN115049639B (zh) 2022-07-21 2022-07-21 一种基于分类重加权YOLOv5模型的织物瑕疵检测方法

Publications (2)

Publication Number Publication Date
CN115049639A true CN115049639A (zh) 2022-09-13
CN115049639B CN115049639B (zh) 2024-04-26

Family

ID=83166458

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210864109.4A Active CN115049639B (zh) 2022-07-21 2022-07-21 一种基于分类重加权YOLOv5模型的织物瑕疵检测方法

Country Status (1)

Country Link
CN (1) CN115049639B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113192040A (zh) * 2021-05-10 2021-07-30 浙江理工大学 一种基于YOLO v4改进算法的织物瑕疵检测方法
CN114240822A (zh) * 2021-12-28 2022-03-25 中山小池科技有限公司 基于YOLOv3及多尺度特征融合的棉布瑕疵检测方法
CN114372968A (zh) * 2021-12-31 2022-04-19 江南大学 结合注意力机制与自适应记忆性融合网络的瑕疵检测方法
WO2022095612A1 (zh) * 2020-11-05 2022-05-12 西安交通大学 一种核磁共振图像中颈动脉血管中心线的提取方法及系统
CN114549507A (zh) * 2022-03-01 2022-05-27 浙江理工大学 改进Scaled-YOLOv4的织物瑕疵检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022095612A1 (zh) * 2020-11-05 2022-05-12 西安交通大学 一种核磁共振图像中颈动脉血管中心线的提取方法及系统
CN113192040A (zh) * 2021-05-10 2021-07-30 浙江理工大学 一种基于YOLO v4改进算法的织物瑕疵检测方法
CN114240822A (zh) * 2021-12-28 2022-03-25 中山小池科技有限公司 基于YOLOv3及多尺度特征融合的棉布瑕疵检测方法
CN114372968A (zh) * 2021-12-31 2022-04-19 江南大学 结合注意力机制与自适应记忆性融合网络的瑕疵检测方法
CN114549507A (zh) * 2022-03-01 2022-05-27 浙江理工大学 改进Scaled-YOLOv4的织物瑕疵检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张丽瑶;王志鹏;徐功平;: "基于SSD的织物瑕疵检测的研究", 电子设计工程, no. 06, 20 March 2020 (2020-03-20) *

Also Published As

Publication number Publication date
CN115049639B (zh) 2024-04-26

Similar Documents

Publication Publication Date Title
CN110660052B (zh) 一种基于深度学习的热轧带钢表面缺陷检测方法
CN112396002A (zh) 一种基于SE-YOLOv3的轻量级遥感目标检测方法
CN112381030B (zh) 一种基于特征融合的卫星光学遥感图像目标检测方法
CN112784756B (zh) 人体识别跟踪方法
CN112861982A (zh) 一种基于梯度平均的长尾目标检测方法
CN114463759A (zh) 一种基于无锚框算法的轻量化文字检测方法及装置
CN109376787A (zh) 流形学习网络及基于其的计算机视觉图像集分类方法
CN111666852A (zh) 一种基于卷积神经网络的微表情双流网络识别方法
CN117576038A (zh) 基于YOLOv8网络的织物瑕疵检测方法及系统
CN114882011A (zh) 一种基于改进Scaled-YOLOv4模型的织物瑕疵检测方法
CN117542082A (zh) 一种基于YOLOv7的行人检测方法
CN117372332A (zh) 一种基于改进YOLOv7模型的织物瑕疵检测方法
CN114943859A (zh) 面向小样本图像分类的任务相关度量学习方法及装置
CN114494250A (zh) 基于神经网络模型的地板缺陷检测方法
CN114494777A (zh) 一种基于3D CutMix-Transformer的高光谱图像分类方法及系统
CN115049639B (zh) 一种基于分类重加权YOLOv5模型的织物瑕疵检测方法
CN115861239A (zh) 一种基于元学习的小样本工业零件表面缺陷检测方法
CN115205518A (zh) 一种基于YOLO v5s网络结构的目标检测方法及其系统
CN113780335A (zh) 一种小样本商品图像分类方法、装置、设备及存储介质
CN118072115B (zh) 一种医学细胞检测方法及系统
CN118297119B (zh) 一种用于微核识别的神经网络及方法
CN114139656B (zh) 一种基于深度卷积分析的图片归类方法及播控平台
CN113378631B (zh) 一种基于嵌入式与人工智能的后厨工装识别方法
CN115100120B (zh) 一种增强神经网络特征多样性的缺陷检测方法及系统
CN118521913A (zh) 一种双阶段协同的遥感小目标检测方法及系统

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
GR01 Patent grant
GR01 Patent grant