当前位置: 首页 > news >正文

YOLOv1 与 YOLOv2 核心笔记:从单阶段检测开创到性能升级

YOLOv1 与 YOLOv2 核心笔记:从单阶段检测开创到性能升级

YOLO 系列是单阶段目标检测的里程碑,YOLOv1 开创 “端到端回归” 新思路,YOLOv2 则通过多维度优化实现 “更快、更强” 的检测效果。这份笔记系统梳理两代模型的核心设计、网络架构、缺陷与改进,清晰呈现技术迭代逻辑。

一、YOLOv1:单阶段目标检测的开创者

YOLOv1(2015 年提出)首次将目标检测任务转化为端到端的回归问题,用一个 CNN 网络同时预测物体类别与边界框,实现实时检测,奠定单阶段算法的基础。

1. 核心设计理念

  • “You Only Look Once”:输入图像仅经过一次 CNN 前向传播,即可输出所有物体的类别与位置,无需生成候选区域(区别于 Two-Stage 算法);
  • 检测任务回归化:不区分 “分类” 与 “定位” 子任务,直接预测边界框坐标(x,y,w,h)、置信度及类别概率,用一个损失函数统一优化;
  • 实时性优势:推理速度达 45 FPS(CPU)、155 FPS(GPU),远超同期 Faster R-CNN(5 FPS),可应用于视频实时检测。

2. 网络架构与输出解读

(1)网络结构(基于 GoogLeNet 改进)
  • 输入:448×448×3 RGB 图像(训练前期用 224×224 预训练分类,后期微调 448×448 适配检测);
  • 特征提取:20 层卷积层(含 5 层最大池化)+2 层全连接层,逐步压缩特征图尺寸;
  • 输出:7×7×30 的张量,对应 “7×7 网格” 的检测结果,具体维度含义如下:
    • 7×7 网格:将输入图像划分为 7×7 个网格,每个网格负责检测 “中心落在该网格内” 的物体;
    • 每个网格输出 30 维向量:包含 2 个边界框(B=2)+20 个类别概率(VOC 数据集 20 类),即:
      • 2 个边界框:每个边界框含 5 个参数(x,y,w,h,c),共 2×5=10 维;
        • x,y:边界框中心相对于网格左上角的偏移量(归一化到 0~1);
        • w,h:边界框宽高相对于整幅图像的比例(归一化到 0~1);
        • c:边界框置信度(反映 “框内有物体” 的概率与 IoU 的乘积);
      • 20 个类别概率:网格包含某类物体的概率(条件概率,基于 “框内有物体”)。
(2)输出公式

输出张量维度满足:S×S×(B×5+C),其中:

  • S=7(网格数量),B=2(每个网格的边界框数),C=20(类别数);
  • 代入得:7×7×(2×5+20)=7×7×30,与网络输出一致。

3. 损失函数:多任务统一优化

损失函数通过加权求和,平衡 “位置回归”“置信度”“类别预测” 三类误差,避免某类误差主导优化:

  • 位置误差:仅对 “负责检测物体的边界框”(与 GT IoU 最大的框)计算,用平方误差优化 x,y,w,h;为避免大框小误差、小框大误差的不平衡,对 w,h 取平方根后计算;
  • 置信度误差
    • 含物体的网格:优化预测置信度与 “GT IoU” 的误差,权重 λ_coord=5(提升位置精度);
    • 不含物体的网格:优化预测置信度与 0 的误差,权重 λ_noobj=0.5(减少背景误检);
  • 类别误差:仅对 “含物体的网格” 计算,优化预测类别概率与真实类别的平方误差。

4. 后处理:NMS(非极大值抑制)

YOLOv1 输出 7×7×2=98 个边界框,需通过 NMS 过滤重复框:

  1. 过滤置信度低于阈值(如 0.2)的框;
  2. 按置信度降序排列剩余框;
  3. 选取置信度最高的框 A,删除与 A 的 IoU > 阈值(如 0.5)的其他框;
  4. 重复步骤 3,直到候选框为空,输出最终检测结果。

5. 优势与缺陷

(1)优势
  • 速度快:端到端架构,无候选区域生成步骤,实时性领先同期算法;
  • 泛化能力强:对 unseen 数据(如艺术画、漫画)的检测效果优于 Two-Stage 算法,不易过拟合。
(2)核心缺陷
  • 小物体检测差:7×7 网格粒度粗,小物体(如远处的行人)中心易落在同一网格,每个网格仅预测 1 个类别,无法区分重叠小物体;
  • 边界框预测粗糙:每个网格仅 2 个边界框,且长宽比固定,对不规则形状物体适配性差;
  • 定位精度低:相较于 Two-Stage 算法(如 Faster R-CNN),mAP 较低(VOC 2007 数据集 mAP=63.4%)。

二、YOLOv2:针对 v1 缺陷的全面升级

YOLOv2(2016 年提出)围绕 “提升精度、保持速度” 目标,通过 10 项改进实现性能飞跃,在 VOC 2007 数据集 mAP 提升至 78.6%,同时保持实时性(67 FPS)。

1. 核心改进:10 项优化措施

(1)Batch Normalization(批量归一化)
  • 改进:移除 v1 的 Dropout,所有卷积层后添加 BN 层;
  • 作用:归一化每层输入分布,加速模型收敛,减少过拟合,提升 2% mAP;
  • 现状:已成为 CNN 网络的标准组件,几乎所有检测模型均采用。
(2)高分辨率微调(Hi-Res Classifier)
  • v1 缺陷:训练前期用 224×224 预训练分类,测试时突然切换到 448×448,模型 “水土不服”;
  • 改进:预训练后,用 448×448 图像额外微调 10 轮,让模型适应高分辨率输入;
  • 效果:提升 4% mAP,增强小物体细节捕捉能力。
(3)新网络架构:DarkNet-19
  • v1 缺陷:基于 GoogLeNet,全连接层参数量大,易过拟合;
  • 改进:设计 DarkNet-19 网络,含 19 层卷积层 + 5 层最大池化层,无全连接层:
    • 用 1×1 卷积压缩通道数(减少参数量),3×3 卷积提取特征;
    • 输入尺寸改为 416×416(32 的倍数,便于后续降采样),最终输出 13×13 特征图(5 次降采样:416→208→104→52→26→13);
  • 优势:参数量比 v1 减少,推理速度更快,特征提取能力更强。
(4)Anchor Box(锚框)引入
  • v1 缺陷:每个网格仅 2 个边界框,依赖网络直接回归坐标,对新数据集适配性差;
  • 改进:借鉴 Faster R-CNN 的 Anchor 机制,通过K-Means 聚类生成适配数据集的先验框:
    • 聚类距离公式:用d(box, centroid)=1-IoU(box, centroid)替代欧氏距离,避免大框对聚类结果的主导;
    • 聚类结果:VOC 数据集聚类出 5 个先验框,COCO 数据集聚类出 9 个,覆盖不同尺寸与长宽比;
  • 效果:边界框预测数量从 v1 的 98 个(7×7×2)提升至 169 个(13×13×1),召回率从 81% 提升至 88%。
(5)直接位置预测(Directed Location Prediction)
  • v1 缺陷:直接预测边界框坐标偏移量,易导致坐标超出图像范围,模型收敛不稳定;
  • 改进:预测 “相对于网格的偏移量”,并用 σ 函数限制在 0~1:
    • 设网格左上角坐标为(Cx, Cy),先验框宽高为(Pw, Ph),模型预测(tx, ty, tw, th);
    • 边界框最终坐标计算:
      • \(b_x = σ(t_x) + C_x\)(σ(tx) 将偏移量限制在 0~1,确保 bx 在当前网格内);
      • \(b_y = σ(t_y) + C_y\);
      • \(b_w = P_w × e^{t_w}\)(指数确保宽高为正);
      • \(b_h = P_h × e^{t_h}\);
    • 最终坐标再乘以 “特征图与原图的缩放比”(如 32,416/13=32),映射回原图尺寸;
  • 效果:避免坐标越界,模型收敛速度提升,定位精度更高。
(6)细粒度特征融合(Fine-Grained Features)
  • v1 缺陷:最终特征图(7×7)感受野大,小物体特征易丢失;
  • 改进:引入 “Passthrough 层”,将浅层 13×13×256 特征图与深层 26×26×128 特征图融合:
    • 浅层特征图通过 “拆分堆叠”(将 26×26×128 拆分为 13×13×4×128=13×13×512),与深层 13×13×1024 特征图拼接为 13×13×1536;
  • 效果:融合浅层细节特征与深层语义特征,提升小物体检测精度。
(7)多尺度训练(Multi-Scale Training)
  • 改进:训练过程中,每 10 轮随机调整输入图像尺寸(32 的倍数),范围 320×320~608×608;
  • 作用:迫使模型适应不同尺度的物体,增强泛化能力,对大 / 小物体检测均有提升;
  • 注意:输入尺寸变化时,特征图尺寸同步变化(如 320×320→10×10 特征图,608×608→19×10 特征图),DarkNet-19 的全卷积架构确保适配。

2. 关键概念:感受野(Receptive Field)

YOLOv2 的 DarkNet-19 大量使用 “小卷积核堆叠”,核心依赖 “感受野” 原理:

  • 定义:特征图上的一个像素,对应原始图像的区域大小,即 “该像素能‘看到’的原始图像范围”;
  • 小卷积核优势:3 个 3×3 卷积核堆叠(步长 1)的感受野 = 7×7,与 1 个 7×7 卷积核相同,但参数量更少(27C² vs 49C²,C 为通道数),且多轮非线性激活(ReLU)能提取更细致的特征;
  • DarkNet-19 应用:通过堆叠 3×3 卷积核,在减少参数量的同时,保证足够大的感受野(适配 416×416 输入)。

3. YOLOv2 vs YOLOv1:性能对比

指标YOLOv1(VOC 2007)YOLOv2(VOC 2007)提升幅度
mAP(平均精度)63.4%78.6%+15.2%
推理速度(GPU)45 FPS67 FPS+22 FPS
小物体检测能力-
边界框预测数量98 个169 个(13×13×1)+71 个

http://www.dtcms.com/a/491331.html

相关文章:

  • 项目上传到GitHub流程
  • 强化学习入门-2(Dueling DQN)
  • 【第6篇】引入高配大模型
  • 嵌入式计算机AF208:自动化装配管理集成方案核心
  • 五台县建设局网站有ip地址如何做网站
  • 数码产品商城网站建设网上推广赚钱方法
  • 数智时代的软件架构峰会
  • 展板模板网站河东网站建设公司
  • 快手编程大模型真实水平,本地部署,实测
  • 如何在AutoCAD中进行GIS空间查询?
  • 旧电脑变废为宝:打造低成本网络打印机服务器全记录
  • EF Core 导航属性赋值的一种方式
  • 做实验流程图的网站必应搜索引擎入口官网
  • 做那个的网站谁有wordpress用户信息修改
  • VMware虚拟机安装文档
  • 分布式专题——46 ElasticSearch高级查询语法Query DSL实战
  • Spring Boot核心功能深度解析
  • 麒麟系统使用-使用Sublime浏览小说
  • 【2025年10月一区SCI】Experience Exchange Strategy 经验交换策略(EES),优化算法改进新方法!-附Matlab免费代码
  • 渭南建网站如何建立官方网站
  • Azure Cobalt 100 VM:以卓越性能与能效优化云端工作负载
  • 【泛3C篇】AI深度学习在手机背板外观缺陷检测应用方案
  • OpenAI Sora 2 现已在Azure AI Foundry 公共预览中开放
  • 外贸网站推广渠道网站录入
  • **Unreal引擎中的发散创新思维:探索创新与优化之路**随着游戏
  • h5游戏免费下载:电子木鱼
  • h5游戏免费下载:《飞跃的奶酪》
  • 网站速度对seo的影响羽毛球赛事在哪里看
  • 阿里云渠道商:阿里云CDN怎么进行配额优化?
  • 自行车零部件尺寸自动化三维测量快速尺寸测量-中科米堆CASAIM