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

YOLO系列论文综述(从YOLOv1到YOLOv11)【第5篇:YOLOv3——多尺度预测】

YOLOv3

  • 1 摘要
  • 2 YOLOv3
    • 2.1 相对于v2的改进
    • 2.2 网络架构
    • 2.3 多尺度预测
    • 2.4 YOLOv3结果


YOLO系列博文:

  1. 【第1篇:概述物体检测算法发展史、YOLO应用领域、评价指标和NMS】
  2. 【第2篇:YOLO系列论文、代码和主要优缺点汇总】
  3. 【第3篇:YOLOv1——YOLO的开山之作】
  4. 【第4篇:YOLOv2——更好、更快、更强】
  5. 【第5篇:YOLOv3——多尺度预测】
  6. 【第6篇:YOLOv4——最优速度和精度】
  7. 【第7篇:YOLOv5——使用Pytorch框架、AutoAnchor、多尺度预训练模型】
  8. 【第8篇:YOLOv6——更高的并行度、引入量化和蒸馏以提高性能加速推理】
  9. 【第9篇:YOLOv7——跨尺度特征融合】
  10. 【第10篇:YOLOv8——集成检测、分割和跟踪能力】
  11. 【第11篇:YOLO变体——YOLO+Transformers、DAMO、PP、NAS】
  12. 【第12篇:YOLOv9——可编程梯度信息(PGI)+广义高效层聚合网络(GELAN)】
  13. 【第13篇:YOLOv10——实时端到端物体检测】
  14. 【第14篇:YOLOv11——在速度和准确性方面具有无与伦比的性能】
  15. 【第15篇(完结):讨论和未来展望】

1 摘要

  • 发表日期:2018年4月
  • 作者:Joseph Redmon, Ali Farhadi
  • 论文:YOLOv3: An Incremental Improvement
  • 代码:https://pjreddie.com/darknet/yolo/
  • 主要优缺点
    • 使用Darknet-53作为主干网络,结合残差网络提高检测精度;
    • 引入多尺度预测来改善对小物体的检测;
    • 取消软分类器,使用独立的二元分类器提高模型性能。

2 YOLOv3

YOLOv3由 Joseph Redmon 和 Ali Farhadi 在 2018 年发表于 ArXiv上,它有着显著的改进和更大的架构,以达到与当时SOTA方法相当的水平,同时保持实时性能。

2.1 相对于v2的改进

YOLOv3相对于v2的变化如下:

  1. 边界框预测:YOLOv2网络为每个边界框预测四个坐标 tx, ty, tw, th,类似的,YOLOv3 使用逻辑回归为每个边界框预测一个目标性分数。对于与真实框重叠度最高的锚框,这个分数是 1,其余锚框则是 0。与 Faster R-CNN相反,YOLOv3 只为每个真实物体分配一个锚框。此外,如果没有任何锚框被分配给一个对象,则只会产生分类损失,而不会产生定位损失或置信度损失。

anchor

  1. 类别预测:v3没有使用 softmax 进行分类,而是将问题表示为多标签分类,使用二元交叉熵来训练独立的逻辑分类器。这一改变允许同一个框可以被赋予多个标签,可以很好地应用到一些具有重叠标签的复杂数据集中。例如,同一个物体既可以是“人”也可以是“男人”。

  2. 新的骨干网络:YOLOv3 具有一个更大的特征提取器,由 53 个带有残差连接的卷积层组成。

  3. 空间金字塔池化(SPP):论文中没有提到,作者还在骨干网络中添加了一个修改后的 SPP 块,该块将多个最大池化输出拼接在一起,但不进行下采样(步长 = 1),每个输出具有不同的核,大小是k × k,其中 k = 1, 5, 9, 13,扩大了感受野。这个版本被称为 YOLOv3-spp,是表现最好的版本,AP50 提高了 2.7%。

  4. 多尺度预测:类似于特征金字塔网络,YOLOv3 在三个不同尺度上预测三组框。

  5. 先验边界框:与 YOLOv2 类似,作者也使用 k-means 来确定Anchor。区别在于,在 YOLOv2 中,每格使用总共五个先验框,而在 YOLOv3 中,他们在三个不同尺度上使用三个先验框。

这些改进共同使得 YOLOv3 在维持实时性能的同时,达到了与当时的SOTA方法相媲美的效果。

2.2 网络架构

YOLOv3 中提出的架构骨干网络被称为 Darknet-53,它将所有的最大池化层替换为步幅卷积,并添加了残差连接,总共包含 53 个卷积层。

网络架构
Darknet-53 骨干网络在 Top-1 和 Top-5 准确率上与 ResNet-152 相当,但速度几乎快了一倍。

2.3 多尺度预测

除了更大的架构外,YOLOv3 的一个关键特性是多尺度预测,即在多个网格尺寸上进行预测,这有助于获得更精细的边界框,并显著提高了小物体的预测能力,这是之前版本YOLO的主要劣势之一。

多尺度检测架构工作原理如下图所示:

多尺度预测

第一个输出标记为y1,相当于YOLOv2的输出,大小是13×13。

第二个输出y2由Darknet-53中的(Res×4)的输出与(Res×8)的输出拼接而成。因为特征图大小不同(13×13和26×26),所以在拼接前有一个上采样的操作。

最后,通过上采样操作,第三个输出y3将26×26和52×52的特征图拼接起来。

对于包含80个类别的COCO数据集,每个尺度提供一个形状为N×N×[3×(4+1+80)]的输出张量,其中N×N是特征图(或网格单元)的大小,3表示每个单元格中的框数,而4+1包括四个坐标值和目标性分数,80是类别数。

2.4 YOLOv3结果

当YOLOv3发布时,物体检测的基准已经从PASCAL VOC变为了Microsoft COCO。因此,从那时起,所有的YOLO模型都在MS COCO数据集上进行评估。YOLOv3-spp在20帧每秒(FPS)的速度下达到了平均精度AP 36.2%和AP50 60.6%,这在当时达到了SOTA水平,并且速度是其他模型的两倍。
结果


http://www.kler.cn/a/417553.html

相关文章:

  • NSS-DAY2
  • React - jsx 语法
  • Verilog基础(一):基础元素
  • 2.Mkdocs配置说明(mkdocs.yml)【最新版】
  • Three.js 后期处理(Post-Processing)详解
  • DeepSeek AI模型本地部署指南:让技术变得简单
  • JMeter中获取随机数、唯一ID、时间日期(包括当前日期增减)截取指定位数的字符等
  • 853 有边数限制的最短路(bellman-ford贝尔曼福特算法)
  • MySQL常见面试题(一)
  • A*(A-star)算法
  • qt QGraphicsEllipseItem详解
  • 电气火灾式故障电弧探测器在某医院照明回路中的应用
  • 第七课 Unity编辑器创建的资源优化_UI篇(UGUI)
  • Java中TimedCache缓存对象的详细使用
  • 力扣--LCR 149.彩灯装饰记录I
  • RAG数据拆分之PDF
  • Java Stream reduce 函数,聚合数据
  • html 中的 <code>标签
  • uniapp的video组件截图(抓拍)功能,解决截后为黑图bug
  • MySQL中的锁与MVCC
  • 【Ansible】自动化运维工具
  • Kafka知识体系
  • Python面向对象编程与模块化设计练习
  • 【Linux】管道
  • RAT:融合RAG和CoT的高效多步推理任务策略
  • 【ROS2】ROS2 Hello World (C++实现)