死磕YOLO系列,YOLOv1 的大脑、躯干和手脚

本文详细介绍了YOLOv1目标检测算法,从大脑(为何能检测目标)、躯干(网络结构)和手脚(训练过程)三个方面展开。YOLO采用单阶段检测,通过神经网络直接预测物体边界框和类别,通过Cell预测BBox和Confidence,以渔网捕获物体的方式进行检测。文章还讨论了YOLO的训练策略和损失函数,包括预训练、目标检测训练以及损失计算的细节。最后,指出了YOLO的局限性和后续学习路径。
摘要由CSDN通过智能技术生成

系列文章:
死磕YOLO系列,YOLOv2的自我修养
YOLO 是我非常喜欢的目标检测算法,堪称工业级的目标检测,能够达到实时的要求,它帮我解决了许多实际问题。

在这里插入图片描述
这就是 YOLO 的目标检测效果。它定位了图像中物体的位置,当然,也能预测物体的类别。

之前我有写博文介绍过它,但是每次重新读它的论文,我都有新的收获,为此我准备写一个系列的文章来详尽分析它。这是第一篇,从它的起始 YOLOv1 讲起。

YOLOv1 的论文地址:https://www.cv-foundation.org/openaccess/content_cvpr_2016/papers/Redmon_You_Only_Look_CVPR_2016_paper.pdf

建议没有看过原论文的都应该好好看看。

在这里插入图片描述

YOLO 预测时,很简单。

1.缩放输入的图片
2.将图片送入到卷积神经网络中进行预测
3.通过预测的结果进行置信度的阈值处理,得到最终的结果。

本文围绕:

  1. YOLO 为什么能检测目标?
  2. YOLO 长什么样子?
  3. YOLO 如何训练?

三大问题来详细展开,为此我类比为 YOLO 的大脑、躯干和手脚。

1. 大脑,为什么能检测目标?

YOLO 是 One-Stage (单阶段) 检测算法,它只需要看图片一次,就可以预测图片中所有的物体边框。

我个人有一个形象的比喻,那就是撒渔网。

一个渔网撒下去,所有的鱼儿都要捕获。

在这里插入图片描述

而实际上,YOLO 真的有类似渔网的操作。

YOLO 把一张图片划分成了 SxS 个格子。

这里的 S 不固定,可以根据实际情况由开发者自主决定。

在这里插入图片描述
论文中,S 取值为 7,所以整张图片被分割成 7*7=49 个格子(Cell)。

这些格子像不像渔网的网眼呢?

那么,这些 Cell 是干什么用的呢?为什么要设置这么多的 Cell ?

这些 Cell 每个 Cell 都会预测 B 个 bbox。在论文中 B 取值为 2。

所以,一张图片经 YOLO 跑一遍,就会产生 98 个 bbox。

在这里插入图片描述
有同学可能会思考:

这么多 bbox,比目标的个数还要多,怎么选择呢?

以上面的图片为例:

在这里插入图片描述
图片中有狗、自行车、汽车 3 个目标,但是预测到的 bbox 有 98 个之多,最终肯定只能从 98 个 bbox 中选择 3 个。

那么,怎么操作呢?

分 2 步走。

第一步,有选择的响应 cell。

总共有 49 个 cell,但是并不是每一个 cell 的预测都有意义,我们需要找出有意义的 cell。

那么哪些 cell 算是有意义呢?

先来看看一个叫做 Confidence 可信度的概念。

每个 Cell 预测 B 个 bbox,还有每个 bbox 对应的 Confidence。

Confidence 公式定义如下:
C o n f i d e n c e = P r ( O b j ) ∗ I O U p r e d t r u t h Confidence = Pr(Obj)*IOU_{pred}^{truth} Con

评论 44
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

frank909

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值