欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > YOLOv7细节解读

YOLOv7细节解读

2025/5/5 11:11:24 来源:https://blog.csdn.net/weixin_71288092/article/details/147688942  浏览:    关键词:YOLOv7细节解读

  1. RepVGG 推理加速
    • 背景与动机:在模型的骨干网络(backbone)优化中,VGG 因结构简单,在显存利用上有优势(单一路径,仅需一倍显存),但被多分支结构的 ResNet 超越。然而,ResNet 的多分支结构存在速度和显存方面的劣势,如分支间需相互等待和数据相加,导致显存翻倍。RepVGG 旨在通过重参数化技术,提升推理速度并节省显存。 

    • 实现原理
      • 卷积和 BN 合并:对一个 batch 的数据进行归一化操作,将 BN 的计算转化为类似卷积的形式,以便与卷积合并。通过特定公式,将归一化后的结果表示为一个 11C 的卷积(wx + b),进而更新卷积核和偏置,实现卷积和 BN 的合并。
      • 转 3*3 卷积:将多分支、不同卷积核以及带 BN 的结构全部转换为 3×3 的卷积。以 ResNet 残差链接转换为例,将其转换为 3×3 卷积的形式,最终实现整体结构的统一。
  2. 正样本分配策略
    • 核心思想:依据 GT(Ground Truth)的中心点在特征图上的落点来确定正样本,即该落点附近的 anchor 被认定为正样本。为增加正样本数量,采用 “threeble - kill” 策略9。
    • 筛选过程
      • 初筛:基于长宽差异,要求 gt 与 anchor 的长宽比例处于 0.25 - 4 之间10。
      • 计算 IOU:计算候选框与 GT 之间的 IOU,得到一个 [正样本数量,候选框数量] 的矩阵。例如,当输入 3 个正样本和 13 个候选框时,会得到 [3, 13] 的 IOU 矩阵。之后通过 TOPK 操作,选取 IOU 较大的前几个候选框(通常为 10 个,若不足则取实际数量),得到新的矩阵,如 [3, 10] 矩阵。
      • 计算类别预测损失并二次筛选:计算类别预测损失,综合损失排名进行第二次筛选,确保每个 GT 至少有一个对应的候选框。同时,处理可能出现的一个候选框对应多个 GT 的情况,选择损失最小的匹配。
  3. 预测相关内容
    • 预测结果形式:不同版本的 YOLO 在预测框的计算方式上有所不同。V3V4 的预测结果中,bw​=pw​etw​ ,bh​=ph​eth​ ;V5V7 的预测结果为bw​=pw​(2σ(tw​))2 ,bh​=ph​(2σ(th​))2 。这些计算方式与正样本筛选时的 4 倍数字范围存在关联。
    • 预测值套 sigmoid 的原因:V3 不使用 sigmoid 时会出现梯度爆炸问题,V5 通过平方将取值范围限制在 0 - 4,这与选正样本时的倍率范围(0.25 - 4)相契合,避免了倍率差异过大的问题。
  4. AUX 辅助输出:输入图像大小为 1280,经下采样后实际输入为 640。模型设有 4 个输出层,每层 3 个 anchor,带辅助输出后共 8 个输出层。辅助头在选择正样本时依赖主头的预测结果,为提高召回率,选择周围 5 个区域,将偏移量由 0.5 调整为 1。
  5. 物体检测评估指标
    • 基础指标 IOU:IOU 用于衡量 GT 与预测框之间的差异,是后续所有评估指标的基础,其计算方式为交集面积除以并集面积。
    • TP、FP、FN 的定义
      • TP(True Positive):需同时满足置信度和 IOU 都达到阈值的条件,意味着预测框与 GT 相似且预测为物体的可能性高。
      • FP(False Positive):满足置信度阈值但 IOU 不够,或者前两者满足但最终预测的类别与实际不同。
      • FN(False Negative):存在 GT,但没有满足条件的预测框,即 GT 未被检测到。
      • TN(True Negative):文档中提及在计算相关指标时通常不需要该指标,它表示将背景正确识别为背景的情况。
    • PR 曲线与 AP 计算
      • PR 曲线绘制:以 7 张测试图像数据为例,在 IOU 默认满足 0.5 的条件下,首先确定哪些预测框是 TP,哪些是 FP。将预测框按照置信度排序,同一 GT 只能匹配一个预测框且选择置信度大的作为 TP。计算不同预测框的 Precision(精度)和 Recall(召回率),公式分别为 Precision = TP / (TP + FP),Recall = TP / (TP + FN) 。将这些值绘制曲线,该曲线展示了模型在精度和召回率之间的权衡关系,通常两者难以同时达到最优 。
      • AP 计算
        • VOC 中的计算方法(11 点插值法):计算 PR 曲线与坐标轴围成的面积。在召回率为 0, 0.1, ..., 1 这 11 个点处进行插值计算,公式为AP=111​∑r∈(0,0.1,...,1)​pinterp(r)​,即计算不同召回率下对应精度的平均值。例如,通过计算得到 AP = 0.2683。
        • COCO 中的计算方法:相比 VOC 更为科学,不再仅采用 0.5 这一阈值,而是从 0.5 到 0.95,间隔 0.05,共 10 个阈值。计算这 10 个阈值下的平均 AP(AP@[0.5:0.05:0.95]) 。同时,COCO 还会对不同大小的物体(小物体 area<32² 、中等物体 32²<area<96² 、大物体 area>96² )分别计算 AP,从而更全面地评估模型在不同尺度物体检测上的性能 。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词