YOLOD也来啦 | 优化YOLOv5样本匹配,顺带设计了全新的模块

简介: YOLOD也来啦 | 优化YOLOv5样本匹配,顺带设计了全新的模块

在本研究中,重点分析了YOLOv5模型的结构问题。基于人造革细微缺陷的特点,设计了四种创新结构,分别是DFP、IFF、AMP和EOS。这些改进使得提出了一个名为YOLOD的高性能人造革细微缺陷检测模型。YOLOD在人造革缺陷数据集上表现出色,相比于YOLOv5,提高了11.7% - 13.5%,错误检测率显著降低了5.2% - 7.2%。

此外,YOLOD在通用的MS-COCO数据集上也表现出色,提高了0.4% - 2.6%,提高了2.5% - 4.1%。这些结果表明YOLOD在人造革缺陷检测和通用目标检测任务上的优越性,使其成为一个高效且有效的适用于实际应用的模型。

1、本文方法

1、Dual Feature Pool

在提出新结构之前,对FPN+ PAN结构进行了分析。发现在这种组合架构中,用于检测小目标的检测网络的深度比用于检测大目标的网络的深度要浅(图3)。

为了提高网络检测的准确性,增加网络的深度和宽度变得至关重要。因此,FPN + PAN结构被认为对于检测小目标不够优化。为了解决这个问题,作者的目标是找到一种可以增强小目标检测网络的深度或宽度,从而提高检测小目标的准确性的结构。因此,作者开发了双特征池化结构(DFP)。在这个背景下,术语定义如下:直接从Backbone网络输出的特征称为“源特征”,经过中间网络处理的特征称为“处理特征”。

网络结构分为3部分:

  • 第1部分,采用类似于CSPNet的结构,通过使用半通道的卷积将Backbone网络输出的3个Level源特征分为两部分。
  • 第2部分,每个Level的2个输出之一被融合形成2个特征池化(图4)。
  • 第3部分,将源特征的另一部分与两个特征池化的输出融合,在输入每个检测头之前,通过干扰特征过滤(IFF)和空间注意力模块(SAM)去除干扰,并增强融合后的特征。通过采用这种结构,作者的目标是尽可能地扩展网络的宽度,同时保持网络的深度不变。

DFP结构由这3部分组成,可以有效地扩展整个中间网络部分,特别是小目标网络。两个特征池化起着关键作用,它们集成了小中尺度和中大尺度的特征,为检测头提供了更多可选择的特征维度。在第3部分的融合之后,进入检测头的维度相对于FPN + PAN增加了1.75到2倍。采用这种结构的初衷是扩展小目标网络的宽度,作者的目标在随后的实验结果中得到了成功验证。

2、Interference Feature Filtering

在特征提取过程中,卷积网络产生的特征图的质量可能不均匀。这种变异性可能会影响更深的卷积网络的有效性。为了解决这个问题,作者设计了一个模块,根据每个通道特征图的均值对其进行评分。随后,作者删除得分低于0.5%到5%之间的通道特征(图5)。

所提出的结构专注于2个关键方面:Backbone网络的输出和源特征与处理特征的连接(图4)。在Backbone网络的源特征输出上应用IFF以确保提供给中间网络的特征的纯净性。这是因为源特征的质量直接影响到处理特征的质量,进而影响到检测的准确性。

此外,在源特征和处理特征连接处也使用了IFF,因为连接后的特征通道数量远大于最终通过CSP传递的通道数量。目的是通过大规模通道压缩减少低质量特征,从而增强通道压缩后输出的特征质量。

在训练过程中,被过滤的特征的百分比从5%线性减少到0.5%,随着干扰特征的减少。值得注意的是,如果过滤的特征太多,可能会导致检测准确性下降。在作者的实验中,过滤的百分比在第240个周期时设置为0.5%。

3、Adaptive Multi Positives

YOLOv5和YOLOX都有增加正样本数量的方法。YOLOv5根据GT中心点的偏移,在上、下、左、右四个网格中选择一个或两个正样本,从而总共有2个或3个正样本。

YOLOX将围绕GT中心点的网格视为正样本。作者提出的自适应多正样本(AMP)方法是对YOLOv5方法的改进(图6(a))。图6(b)所示的添加正样本表示作者提出的方法的第一步。如果GT的偏移大于或等于0.35个网格,则不会添加左上角的正样本。

除图中所示部分外,上右、下右和下左网格的扩展原则保持不变,是基于GT中心点的偏移计算的。例如,当GT的中心点在x轴上的偏移大于0.65个网格且在y轴上的偏移小于0.35个网格(0.35的值是使用欧氏距离公式计算的,假设X坐标等于Y坐标,欧氏距离为0.5),则会添加右上角的正样本。

另一步是根据GT的边界框大小自动选择并增加正样本数量。如果GT的边界框大小小于一个网格方格,则不会添加正样本。当GT的边界框大小大于或等于一个网格方格时,正样本的增加遵循YOLOv5的方法。

此外,如果GT的边界框大小大于或等于2个网格方格,则会使用作者提出的方法添加正样本。不添加GT边界框大小小于一个网格方格的正样本的原因是在添加的网格方格中没有目标特征。因此,这可能导致虚假检测,并对网络对GT的特征训练产生不利影响。

4、Eliminate Output Sensitivity

自从YOLOv4引入了消除网格敏感性的方法(方程式4),许多算法采用了这种方法来减轻无法检测到目标的网格方格的影响。

然而,作者发现了一个问题:随着比例参数值的增加,靠近附近的斜率也增加(如图7(a)所示)。作者推导了方程式4(如方程式5所示)。当时,斜率达到最大值,最大斜率与比例值相关联。

因此,增加比例值以消除网格敏感性会导致在附近出现非常大的斜率。接近0的输入值()可能导致网络收敛不良。

对先前的方法进行了改进(方程式6)。乘以一个参数α,其中α表示一个固定的斜率值。当将在YOLOv4中使用的消除网格敏感性视为基准时,α取值为2。另一方面,当不消除网格敏感性(如在YOLOv3中)时,α设置为1。通过对方程式6进行导数(如方程式7所示),可以观察到当 = 0时斜率与α有关。

在这种方法中,作者使用一个固定的值α而不是一个变量值比例。因此,当以这种方式消除网格的敏感性时,曲线的斜率保持不变(如图7(b)所示)。在作者的实验中,作者将α设置为2。

2、实验

3、参考

[1].High-Performance Fine Defect Detection in Artificial Leather Using Dual Feature Pool Object Detection.

目录
打赏
0
0
0
0
34
分享
相关文章
YOLOv5改进 | 检测头篇 | 利用DBB重参数化模块魔改检测头实现暴力涨点 (附代码 + 详细修改教程)
YOLOv5改进 | 检测头篇 | 利用DBB重参数化模块魔改检测头实现暴力涨点 (附代码 + 详细修改教程)
480 3
堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能
本文深入探讨了堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能。文章详细介绍了堆叠的实现步骤,包括数据准备、基础模型训练、新训练集构建及元学习器训练,并讨论了其优缺点。
265 3
YOLO训练/写作脚本目录一览 | 涉及标签格式转换、数据扩充、热力图、感受野、精度曲线、数量统计等近百个脚本文件
YOLO训练/写作脚本目录一览 | 涉及标签格式转换、数据扩充、热力图、感受野、精度曲线、数量统计等近百个脚本文件
57 5
YOLOv11改进策略【模型轻量化】| 使用 MoblieOne 模块,引入结构重参数化,提高模型检测效率
YOLOv11改进策略【模型轻量化】| 使用 MoblieOne 模块,引入结构重参数化,提高模型检测效率
98 12
决策树算法大揭秘:Python让你秒懂分支逻辑,精准分类不再难
【9月更文挑战第12天】决策树算法作为机器学习领域的一颗明珠,凭借其直观易懂和强大的解释能力,在分类与回归任务中表现出色。相比传统统计方法,决策树通过简单的分支逻辑实现了数据的精准分类。本文将借助Python和scikit-learn库,以鸢尾花数据集为例,展示如何使用决策树进行分类,并探讨其优势与局限。通过构建一系列条件判断,决策树不仅模拟了人类决策过程,还确保了结果的可追溯性和可解释性。无论您是新手还是专家,都能轻松上手,享受机器学习的乐趣。
82 9
OpenCV合并图像中加权和与覆盖的讲解与实战(附Python源码)
OpenCV合并图像中加权和与覆盖的讲解与实战(附Python源码)
278 0
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
409 0
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
大模型开发: 解释批量归一化以及它在训练深度网络中的好处。
批量归一化(BN)是2015年提出的加速深度学习训练的技术,旨在解决内部协变量偏移、梯度消失/爆炸等问题。BN通过在每层神经网络的小批量数据上计算均值和方差,进行标准化处理,并添加可学习的γ和β参数,保持网络表达能力。这样能加速训练,降低超参数敏感性,对抗过拟合,简化初始化。BN通过稳定中间层输入分布,提升了模型训练效率和性能。
249 3
|
11月前
|
python隶属关系图模型:基于模型的网络中密集重叠社区检测方法
python隶属关系图模型:基于模型的网络中密集重叠社区检测方法