杭州论坛网站建设,做微信网站价格,建e全景室内设计网,wordpress数据库显示图片1.1 简介
YOLOV5是YOLO#xff08;You Only Look Once#xff09;系列目标检测模型的一个重要版本#xff0c;由 Ultralytics 公司的Glenn Jocher开发并维护。YOLO系列以其快速、准确的目标检测能力而闻名#xff0c;尤其适合实时应用。YOLOV5在保持高效的同时#xff0c…1.1 简介
YOLOV5是YOLOYou Only Look Once系列目标检测模型的一个重要版本由 Ultralytics 公司的Glenn Jocher开发并维护。YOLO系列以其快速、准确的目标检测能力而闻名尤其适合实时应用。YOLOV5在保持高效的同时进一步提升了检测精度是深度学习领域中非常受欢迎的目标检测模型之一。以下是关于YOLOV5的详细介绍
基本概念
YOLOV5基于先前的YOLO模型改进而来采用了更为先进的网络架构设计和训练策略。它是一个端到端的模型意味着从输入图像到输出物体边界框和类别概率整个过程一次性完成无需多阶段处理。
网络架构 BackboneYOLOV5的基础网络架构经历了多次迭代从V5到V5.0.6其中V5.0开始使用了CSPNetCross Stage Partial Networks作为主干网络这是一种提高效率同时减少计算冗余的设计。CSPNet通过跨阶段部分特征重用来减少计算量。随后的版本中引入了更为高效的注意力机制和改进的瓶颈结构如SPPSpatial Pyramid Pooling、FPNFeature Pyramid Networks等进一步提升模型性能。 NeckYOLOV5的颈部设计包括了 PANetPath Aggregation Network和一些自定义的特征融合技术用于整合不同尺度的特征图以增强对多尺度目标的检测能力。 Head检测头部分负责生成最终的预测包括边界框坐标、类别概率以及对象置信度。YOLOV5采用了一个或多个预测层每个层对应不同的特征尺度从而能够有效检测不同大小的对象。
训练与优化 Anchor BoxesYOLOV5继续使用预设的锚框来初始化潜在对象的位置但通过优化算法动态调整这些锚框以适应数据集特性提高检测准确性。 Loss Function采用多任务损失函数结合了分类损失和定位损失确保模型在学习分类信息的同时也能精确地定位目标。 Training Tricks包括Mosaic数据增强、自适应图片缩放、Cosine Annealing学习率调整策略、DropBlock正则化等这些技巧显著提高了模型的泛化能力和收敛速度。
性能特点 速度与精度YOLOV5以其在速度和精度之间的良好平衡著称。特别是在CPU上运行时相比其他一些复杂的检测模型YOLOV5能够提供更快的推理速度同时保持较高的检测精度。 轻量化尽管不断迭代升级YOLOV5系列也推出了多种大小的模型版本如YOLOV5s、YOLOV5m、YOLOV5l、YOLOV5x等分别针对不同的应用场景需求从小型设备上的快速推理到服务器级别的高精度检测。 易用性YOLOV5提供了简洁的代码实现和详细的文档支持PyTorch框架使得研究人员和开发者能够轻松上手、训练和部署模型。
应用场景
由于其高效和准确的特性YOLOV5被广泛应用于各种场景包括但不限于视频监控、自动驾驶、无人机巡检、医疗影像分析、体育赛事直播分析、机器人导航等需要实时目标检测的任务。
结论
总之YOLOV5是目标检测领域的一个里程碑它不仅继承了YOLO系列的优点还通过一系列创新设计和优化策略在模型效率、精度以及易用性方面实现了新的突破成为实际应用中极为受欢迎的选择。随着持续的更新和社区的贡献YOLOV5的性能和功能仍在不断进化。 1.2 V5性能 1.3 网络结构 详情请看https://blog.csdn.net/qq_37541097/article/details/123594351 网络结构主要由三部分组成 改进点
需要注意的是V5的V6.0之后将之前的focus模块替换成了6x6的普通卷积层。两者功能相同但后者效率更高。
focus模块很像swin-transformer中的patch emerging。 将V4的SPP换成了SPPF 这么做的目的是将两个5x5maxpool串行在一起等价于9x9maxpool将三个5x5maxpool串行在一起等价于13x13maxpool,且SPPF效率更高因为计算量更小推理速度快了两倍。
1.4 数据增强
Mosaic增强
https://blog.csdn.net/qq_51605551/article/details/140425535?spm1001.2014.3001.5501
Copy paste:
Copy-Paste 数据增强策略是一种直观且有效的方法广泛应用于计算机视觉任务中旨在通过模拟更多样化的训练样本以提高模型的泛化能力。该方法的基本思想是直接从图像中复制部分区域并粘贴到同一张图像或其他图像的不同位置上以此来增加训练数据的多样性。以下是该策略的一些关键点和应用方式 基本操作在实施Copy-Paste时首先会随机选择图像中的一个或多个感兴趣区域如目标对象、背景特征等然后将这些区域复制并粘贴到同一图像的其他位置或者粘贴到另一张图像中。粘贴过程中可能会进行适当的缩放、旋转、翻转等变换以进一步增加多样性。 应用领域这种策略特别适用于对象检测、语义分割、实例分割等任务因为它不仅增加了图像的内容多样性还能够帮助模型学习到对象间的上下文关系以及对象在不同场景下的外观变化
优势
提升模型鲁棒性通过在不同的背景和上下文中展示相同的对象可以增强模型对各种环境变化的适应能力。简化数据收集相比于手动创建新样本Copy-Paste是一种成本较低的数据增强方式能有效利用现有数据资源。促进小对象学习对于检测或分割中的小对象Copy-Paste可以通过增加其在图像中的出现频率和尺度变化改善模型对这类对象的识别能力。 实现细节在实际操作中开发者需要精心设计复制和粘贴的逻辑包括选择哪些区域、如何融合粘贴后的像素以避免明显的剪切痕迹、以及如何控制增强的程度以保持数据的真实性等。 与其它增强方法结合Copy-Paste通常与其他数据增强技术如颜色变换、几何变换等结合使用形成更强大的数据增强策略共同提升模型性能。 random affine:
Random Affine 变换是计算机视觉中常用的一种数据增强策略它通过在图像上施加一系列随机的仿射变换来增加训练数据的多样性。仿射变换是一种保持直线依然为直线的几何变换它可以包括旋转、缩放、平移、剪切等操作。下面详细介绍Random Affine变换的几个核心方面 旋转Rotation随机改变图像的角度使对象以不同的方向出现。这有助于模型学习到对象的旋转不变性。 缩放Scaling按随机的比例放大或缩小图像可以是均匀缩放或独立控制宽度和高度的非均匀缩放。此操作帮助模型处理不同大小的对象。 平移Translation在图像的水平或垂直方向上随机移动图像内容模拟对象在场景中的不同位置增强模型的位置不变性。 剪切Shearing对图像进行倾斜变换即沿一个或两个轴方向上的线性变形增加图像的几何扭曲提高模型对形变的鲁棒性。 保持一致性和真实性在进行这些变换时通常会设定一定的参数范围确保变换后的图像既具有多样性又保持视觉上的合理性和真实性避免产生过于失真的图像。 应用领域Random Affine变换广泛应用于图像分类、物体检测、图像分割等任务中能够显著提升模型的泛化能力尤其是在处理存在视角变化、大小变化和位置变化的实际问题时效果尤为明显。 实现细节在实际应用中开发者通常会使用图像处理库如OpenCV、Pillow等提供的功能来实现Random Affine变换。通过定义一个随机生成的仿射变换矩阵并应用到图像上就可以轻松地生成增强后的图像样本。 Mix up:
https://blog.csdn.net/qq_51605551/article/details/140496749?spm1001.2014.3001.5501
将两张图片按透明程度插值混合成一张新的图片。 Albumentations:
Albumentations 是一个开源的Python库专门用于图像数据增强。它提供了丰富的图像处理和数据增强方法广泛应用于深度学习中的计算机视觉任务如图像分类、目标检测、图像分割等。Albumentations的主要特点和优势包括 多样化数据增强Albumentations 支持广泛的图像变换包括但不限于旋转Rotation、缩放Scale、平移Translate、翻转Flip、裁剪Crop、色彩空间变换如亮度调整、对比度变化、色调变换等、以及更复杂的变换如随机仿射变换RandomAffine、光度变换PhotometricDistortions等。这些变换可以单独使用也可以组合成序列执行复杂的数据增强策略。 易于使用的API该库提供了简洁直观的API用户可以通过简单的配置创建复杂的数据增强管道。用户可以轻松地链式组合多个变换并通过参数设置变换的概率、幅度等使得数据增强策略高度可定制化。 高性能Albumentations 使用高效的算法实现确保了在大规模数据集上的快速处理速度。特别是其内置的并行处理机制可以显著加速数据预处理过程。 兼容性好Albumentations 设计之初就考虑到了与机器学习框架的无缝集成特别是与PyTorch和TensorFlow等主流深度学习框架的配合使用。它可以直接与这些框架的数据加载器集成简化了数据预处理流程。 可视化工具库内还包含了可视化功能允许用户直观地查看应用了哪些数据增强操作后的图像效果这对于调试和理解数据增强策略非常有帮助。 灵活性除了图像数据Albumentations 还支持对图像掩码、bounding boxes边界框等结构化数据进行相应的同步变换这对于实例分割、目标检测等任务尤为重要。
总之Albumentations 是一个强大而灵活的数据增强工具它极大地简化了数据预处理的复杂度提升了模型训练的效率和最终模型的泛化能力。通过使用Albumentations研究者和开发者可以轻松构建出丰富多样的训练数据集从而推动计算机视觉模型性能的提升。
Augment HSV:
HSV数据增强策略是基于HSV色彩空间对图像进行颜色变换的一种数据增强方法。HSV Hue, Saturation, Value 色彩空间区别于常用的RGB色彩空间它更符合人类对颜色的感知方式其中
Hue色相:表示颜色的种类如红色、绿色、蓝色等。Saturation饱和度:描述颜色的纯度饱和度越高颜色越鲜艳反之则越接近灰色。Value明度/亮度:表示颜色的明暗程度值越大图像越亮。
在数据增强中通过随机改变图像的HSV值可以模拟不同光照条件、色彩偏差等场景进而增加模型对颜色变化的鲁棒性。具体来说HSV数据增强通常包括以下几个方面 随机色相偏移Hue Shift在一定范围内随机改变图像的整体色相使得同一物体呈现不同颜色帮助模型学习颜色不变性。 饱和度调整Saturation Adjustment增加或减少图像的饱和度模拟色彩鲜艳度的变化。这可以训练模型在面对过饱和或低饱和度图像时仍能准确识别。 明度变化Value/Brightness Adjustment改变图像的整体明暗程度模拟不同光照条件。通过增减明度模型能够学习到在明亮或昏暗环境下的物体特征。
实施HSV数据增强时开发者通常会设定一个合理的随机变化范围避免过度夸张的颜色变换导致图像失真。这种增强方法尤其适用于那些对颜色敏感的任务如图像分类、物体识别、皮肤疾病诊断等。
在实践上可以使用如OpenCV这样的库来实现HSV空间的变换通过调整图像的HSV分量生成新的训练样本增加模型训练时的多样性从而提升模型的泛化能力。
Random horizontal filp:
Random Horizontal Flip随机水平翻转是一种常用的数据增强策略尤其在计算机视觉领域中被广泛应用。它的基本操作是对输入的图像进行随机的水平方向镜像翻转即左右对调。这项技术的目的在于通过引入图像的方向变化增强模型的泛化能力使其能够更好地识别和理解图像中的内容而不仅仅依赖于特定方向的特征。
关键特点 简单有效随机水平翻转是一种简单易行的数据增强方法实施成本低但能显著提升模型对图像中物体方向变化的鲁棒性。 保持语义不变性对于大多数自然图像而言水平翻转不会改变图像内容的语义信息如猫翻转后仍然是猫车翻转后还是车因此这是一种保持类别标签不变的增强方式。 增强多样性通过随机应用此变换可以为训练集引入更多的样本变体特别是在物体检测、图像分类和图像分割等任务中有助于模型学习到更加全面的特征表示。 平衡数据分布在某些数据集中物体可能倾向于某一特定方向随机水平翻转可以帮助平衡不同方向的样本数量减少模型对特定方向的偏好。
实现方式
在实现随机水平翻转时一般会设置一个概率参数决定图像是否进行翻转。例如在深度学习框架中可以设置一个0到1之间的概率值每次处理图像时根据这个概率随机决定是否执行翻转操作。翻转操作本身则可以通过编程语言的标准库或专门的数据处理库如OpenCV、PIL等轻易实现。
应用场景
图像分类增加图像方向多样性帮助模型学会从不同视角识别对象。目标检测与识别提升模型对目标在图像中不同位置和方向的检测能力。图像分割同样适用于增强分割任务中的训练样本多样性尤其是对于对称或方向无关的物体。图像生成和风格迁移在某些情况下也可以作为预处理步骤增加模型训练时的输入变化性。
总之Random Horizontal Flip作为一种基础而强大的数据增强手段通过简单地变换图像方向就能有效提升模型的泛化性能是许多计算机视觉项目中的标配策略。 1.5 训练策略
Multi-scale training(0.5~1.5x)
多尺度训练的基本原理 动态调整输入尺寸在每个训练迭代或一定迭代次数后随机选择或按照预定计划改变输入图像的分辨率。例如可以在一个范围内如[320, 640]像素之间随机选择尺寸或者按照一个预设的尺度序列进行训练。 提升模型鲁棒性通过这种方式模型被迫学习在不同尺度下目标的特征从而增强其对尺寸变化的鲁棒性提高检测精度尤其是在小目标检测方面表现更佳。 模拟真实场景实际应用中目标的尺寸变化多样多尺度训练模拟了这种多样性使得模型在面对不同大小目标时都能有良好的表现。 避免过拟合通过增加训练数据的多样性多尺度训练还可以帮助减少模型对特定尺寸目标的过度依赖降低过拟合的风险。
实现细节 实现方式在YOLOv5的训练脚本或配置文件中可以通过设置参数来启用多尺度训练比如定义一个尺度范围或一个尺度列表并配置训练时如何从中选择尺寸。 渐进式尺度调整有时会采用渐进式的尺度调整策略即在训练初期使用较小的尺度随着训练进行逐步增加图像尺寸这样可以在早期训练阶段让模型专注于学习基本特征后期再关注更细致的尺度变化。 固定比例调整为了保持图像的长宽比通常在调整尺寸时会保持图像的宽高比不变只改变整体大小。
AutoAnchor(for training custom data)
AutoAnchor是一种自动锚点优化策略用于动态调整模型中预设的锚框anchor boxes尺寸以提高目标检测的准确性尤其是针对不同尺寸目标的检测效果。AutoAnchor的设计初衷是减少人工设定锚框尺寸的主观性和繁琐性通过自动化过程找到最优的锚框配置从而提升模型性能。
基本原理 初始化锚点首先YOLOv5会基于一些默认或经验设定的锚点尺寸开始训练这些锚点尺寸覆盖了目标可能出现的不同宽高比和大小。 评估与反馈在训练过程中模型会计算预测框与真实框ground truth bounding boxes之间的IOUIntersection over Union交并比IOU是衡量两个矩形框重叠程度的一个指标。AutoAnchor策略会收集所有预测框与真实框匹配情况的统计信息特别是那些高质量匹配高IOU的情况。 优化锚点尺寸基于上述统计信息算法会重新计算和调整锚点尺寸倾向于生成那些在训练数据集中能更好地匹配真实框的尺寸。这一步通常涉及到优化算法比如使用进化算法或贪心算法来搜索最优的锚点配置。 迭代优化调整锚点尺寸后模型会使用新的锚点配置重新训练整个过程可能需要多次迭代直到锚点尺寸收敛到一个较优的状态。
实现细节 K-Means聚类一种常见的实现方式是使用K-Means聚类算法来自动确定最优锚点尺寸。该算法根据训练集中的真实框尺寸进行聚类从而得到一组能够较好覆盖这些尺寸的锚点。 进化算法YOLOv5的作者Joseph Redmon在原始YOLO论文中提到了使用进化算法来优化锚点尺寸通过模拟自然选择和遗传变异的过程寻找最优解。 集成于训练流程AutoAnchor不是独立的步骤而是融入到模型训练的循环中根据模型的训练反馈不断优化是一个迭代优化的过程。
优点 提高检测精度通过自动调整锚点能更好地匹配数据集中目标的实际尺寸分布减少误检和漏检提高检测精度。 简化超参数调整减轻了手动调整锚点尺寸的负担自动化过程使得模型更易于训练和部署。 提升训练效率虽然AutoAnchor涉及到额外的计算但长远看它减少了人工试错的时间提升了整体训练效率。
Warmup and Cosine LR scheduler
“Warmup and Cosine LR Scheduler”是一种学习率调整策略旨在通过智能地控制学习率随训练轮次变化的方式来优化模型的学习过程提高训练效率和最终模型的性能。这个策略分为两个阶段Warmup阶段和Cosine Annealing阶段。
Warmup 阶段
目的在训练初期模型权重的初始化往往比较随机直接使用较高的学习率可能会导致训练不稳定甚至偏离最优解。Warmup阶段就是在训练开始时逐步增加学习率让模型参数有一个从随机初始化到较为合理分布的平滑过渡。
操作在这个阶段学习率从一个非常小的值线性增加到预定的初始学习率。这个过程通常持续几个epochs或者指定的迭代次数确保模型能够在较为稳定的条件下开始正式的学习过程。
Cosine Annealing 阶段
目的Cosine Annealing余弦退火学习率调度策略模拟了余弦波形通过周期性地减小学习率来帮助模型逐渐收敛到更优的局部最小值同时避免过早陷入局部最优而错过全局最优解。
操作在Warmup之后学习率按照余弦函数的形状进行调整。具体来说学习率随着训练迭代次数增加而逐渐减小但并非线性减小而是先快后慢最终趋近于一个极小值通常不为0。这个过程可以帮助模型在训练后期进行更精细的调整减少过拟合的风险并有可能发现更好的解决方案。
综合效果
结合Warmup和Cosine AnnealingYOLOv5的训练策略实现了从温和启动到高效收敛的平滑过渡。Warmup确保了模型训练初期的稳定性而Cosine Annealing则促进了模型在训练后期的优化两者共同作用于整个训练周期旨在提升模型的泛化能力和检测性能。
这种策略的灵活性在于可以通过调整Warmup的持续时间和Cosine Annealing的具体参数如周期长度、最低学习率等来适应不同的任务需求和数据集特性从而达到最佳的训练效果。
EMA(exponential Moving Average)
Exponential Moving AverageEMA指数移动平均训练策略是一种模型权重更新的技术用于提高模型的稳定性和泛化能力。EMA通过跟踪模型参数的历史趋势逐步平滑权重更新过程中的波动从而得到一个更加平滑且通常性能更优的模型版本。
基本原理
在标准的SGD随机梯度下降或其变种如Adam、RMSprop等优化过程中模型参数会直接根据梯度进行更新。然而这些更新可能受到训练数据中的噪声影响导致模型权重在训练过程中波动较大。
EMA方法则引入了一个影子权重Shadow weights的概念也称为“滑动平均模型”Moving Average Model。在每次迭代时影子权重会根据当前模型的真实权重和一个衰减因子通常用γ表示取值接近1但略小于1进行更新 实现细节
初始化训练开始时影子权重通常被初始化为模型的初始权重。更新在每一次迭代后使用上述公式更新影子权重使得影子权重逐渐趋向于模型权重的长期平均值。评估训练完成后通常使用EMA权重来进行验证和测试而不是最后一步的真实权重。这是因为EMA权重反映了模型在整个训练过程中的稳定状态往往能提供更好的泛化性能。
优势
提高稳定性通过平滑权重更新减少了训练过程中的波动使模型更加稳定。提升性能在很多情况下EMA模型在测试集上的表现优于直接使用原始训练权重的模型尤其是在噪声较大的数据集上。简化调参相较于频繁调整学习率等超参数EMA提供了一种相对简单且有效的优化策略
Mixed precision
Mixed Precision训练策略是一种利用半精度FP16和单精度FP32混合的方式来加速训练过程并节省显存的技术。这种策略特别适用于拥有支持半精度运算的现代GPU上如NVIDIA的Tensor Cores它能够显著提升训练速度并降低内存占用而对模型的准确率影响甚微或几乎没有负面影响。
基本原理 半精度FP16FP16相对于FP32使用16位存储浮点数相比32位的FP32它占用的内存少一半计算速度在支持的硬件上可以更快。但是直接使用FP16训练可能会遇到数值稳定性问题特别是在梯度累积和权重更新时因为FP16的表示范围和精度较低。 混合精度为了解决FP16的稳定性问题Mixed Precision训练策略采用了一种折衷方案。它通常保持模型的权重和梯度在FP32保证精度而在中间的计算过程中如前向传播、反向传播的大部分计算使用FP16这样既享受了FP16带来的速度和内存节省又避免了严重的数值下溢或上溢问题。 自动混合精度AMP在YOLOv5中常利用深度学习框架如PyTorch的torch.cuda.amp模块提供的自动混合精度训练功能。该功能自动管理FP16和FP32的转换开发者只需要少量的代码修改即可启用此策略。
实现细节
启用方式在YOLOv5的训练脚本中通过设置特定的参数如--mixed-precision标志来激活混合精度训练。损失缩放Loss Scaling为了应对FP16下梯度可能的下溢问题常采用损失缩放技术。在反向传播前将损失函数的值乘以一个较大的标量损失缩放因子并在梯度更新后除以该因子以此放大梯度防止下溢然后再转换回FP32进行更新。监控与调整在实际应用中监控训练过程中的数值稳定性很重要必要时调整损失缩放因子或其他相关参数以保持训练的稳定性和效率。
优势
加速训练由于半精度计算的速度优势混合精度训练通常能显著加快训练速度尤其是在大型模型或大数据集上。减少内存占用减少一半的内存需求使得在有限的硬件资源下能够训练更大的模型或批次大小。
Evolve hyper-parameters
Evolve Hyper-Parameters训练策略是一种自动化超参数优化方法它通过进化算法或遗传算法来寻找一组最优的超参数配置以最大化模型的性能。这种策略的目标是自动探索和优化模型训练过程中的一系列关键参数如学习率LR、批量大小Batch Size、Momentum、权重衰减Weight Decay等从而提升模型训练效率和最终的检测性能。
基本概念 进化算法这是一种借鉴自然界生物进化过程的全局优化方法。它通过模拟生物种群的遗传、突变、竞争和选择过程来寻找问题的最优解。在超参数优化场景中每一个个体代表一套超参数配置而算法的目标是找到“最适应”的超参数组合。 种群初始化算法首先随机生成一个初始的超参数配置种群。 评价函数每个个体超参数配置会被用来训练模型并通过验证集上的性能如mAP即平均精度均值作为其适应度得分。 选择Selection根据个体的适应度得分选择表现较好的个体进入下一代。 交叉Crossover从选择出的个体中随机选择两个或多个个体的部分超参数进行交换生成新的后代个体。 变异Mutation对部分个体的超参数进行小幅度的随机修改引入新的探索性变化。 重复迭代上述过程会重复进行多代直到满足停止条件如达到预设的迭代次数或找到足够优秀的超参数配置。
YOLOv5中的应用
虽然YOLOv5本身作为一个开源项目并没有直接内置Evolve Hyper-Parameters作为其标准训练流程的一部分但是用户可以根据自己的需求利用第三方库如Optuna、Hyperopt等或自行编写脚本来实现这一优化策略。通过自动化超参数优化研究者和开发者可以更加高效地探索模型的潜力减少手动试错的时间和工作量尤其是在面对大规模超参数空间时。
优势
自动化自动探索超参数空间减少人力投入。高效相较于网格搜索或随机搜索进化算法能更高效地找到较好的超参数组合。广泛适用性适用于任何具有可调参数的模型不仅仅局限于YOLOv5。
注意事项
计算资源进化算法可能需要大量计算资源尤其是当超参数空间大、迭代次数多时。优化目标明确需要清晰定义评价函数以确保算法朝向正确的优化方向前进。结果解释最终得到的超参数配置需要经过验证理解其对模型性能提升的具体贡献。
1.6 其他 损失计算 平衡不同尺度损失
一般小型目标要更难预测一些所以小型目标的权重大一些。 消除Grid敏感度‘
回顾V4的做法https://blog.csdn.net/qq_51605551/article/details/140586628?spm1001.2014.3001.5501
在V5中作者还提出了两个变化即最终框的宽高变化。下图中上面公式是V2-V4采用的公式下面是V5中采用的公式防止了指数爆炸的情况。 匹配正样本build targets 在V5当中先计算rw和rh也就是GT与anchor模板的宽高比值然后第三四行公式计算的是GT与ATanchor template宽高的差异性大小如果GT与AT宽高一致那么rwmax或者rhmax是等于1的如果不相等肯定是大于一的。最后一行的公式是取宽高差异最大的那个值。作者又设置了一个anchor_t4如果rmax小于anchor_t的话我们就认为匹配成功为正样本。
至于为什么值设置为4可以看上面消除敏感度的图修改后的预测框的宽高是不会超过4的所以宽高比不会超过四倍。
看下图只要不超过AT的0.25倍和四倍就算匹配成功。AT1中GT超过了匹配失败AT2中没超过匹配成功AT3同理。
接下来的步骤和V4是一模一样的。 回顾V4中的IOU threshold:YOLOv5网络详解_哔哩哔哩_bilibili