YOLO入门理解 · 3YOLOv1 思路与细节

入门理解 · YOLOv1 思路与细节

核心概念

  • YOLOv1:第一个提出端到端单阶段目标检测的模型,将检测任务转化为回归问题。
  • 网格划分 (S×S):输入图像被划分为固定网格,每个网格负责预测落在其中心的物体。
  • 候选框 (Bounding Boxes):每个网格预测多个候选框,并通过 IoU 选择与真实框最接近的一个进行微调。
  • 预测输出:每个候选框预测
    • 位置坐标 (x, y, w, h)
    • 置信度 (confidence) 表示包含物体的概率
    • 类别概率分布(分类任务)。

提出问题

  • 如何将复杂的目标检测问题简化为端到端的回归问题?
  • 如何在保证速度的同时实现较好的检测精度?
  • 如何处理大量候选框带来的冗余问题?

论点与解决方案

  • 检测简化:将检测问题转换为一个 CNN 回归任务,直接预测边界框与类别。
  • 候选框筛选:每个网格生成两个候选框,通过 IoU 选择最优框,再进行偏移量回归。
  • 置信度过滤:低置信度预测框被舍弃,减少无效检测。
  • 后处理:通过 NMS(非极大值抑制)去除重叠度高的框,仅保留最优结果。
  • 损失函数:包含三部分
    • 位置损失(xywh 与真实框差异,w/h 用平方根缩放,提升小物体敏感度)
    • 置信度损失(前景 = IoU,背景 = 0,并加权平衡前景/背景不均衡)
    • 分类损失(交叉熵或类似的多分类误差)。

关键机制 / 细节

  • 固定输入:YOLOv1 使用 448×448×3 输入,网络中包含全连接层,因此输入大小必须固定。
  • 输出结构:最终输出为 7×7×30,解释为:
    • 每个网格预测 2 个框(5 个参数 × 2 = 10)
    • 每个网格预测 20 类概率
    • 7×7×30 表示最终检测结果。
  • 损失设计
    • xy 直接回归差异
    • wh 用平方根误差,减轻大物体的主导效应
    • 前景/背景置信度分开处理,并加权降低背景的影响。
  • 局限性
    • 每个网格只能预测一个类别 → 难以检测重叠物体
    • 候选框数量少(2 个),长宽比不够丰富 → 小物体检测差
    • 精度低于 Two-Stage(Faster R-CNN),但速度快。

总结

  • YOLOv1 开创性地提出单阶段检测框架,将目标检测转化为回归问题。
  • 优势:速度快、端到端训练、适合实时应用。
  • 局限:小物体检测能力弱、重叠物体处理差。
  • 意义:奠定了 YOLO 系列的基础,后续 v2/v3/v4 的改进都围绕弥补 v1 的不足展开。
posted @ 2025-09-20 11:20  s1332177151  阅读(40)  评论(0)    收藏  举报