【YOLO系列】YOLOv1论文解读

【声明】: 此笔记是根据b站大up【@同济子豪兄】视频内容并结合自己理解进行整理,如有不理解之处可以去b站找up原视频观看详解。另:十分非常万分感谢大up子豪兄的无私奉献,使像我这样的小白能够更快跨入DL大门,指引出一条更加方便快捷省时的炼丹之路。

Name: YOLOv1:You Only Look Once: Unified, Real-Time Object Detection

Author: Joseph Redmon

Publiced: 2016-05-09



YOLOv1细节

1. YOLOv1网络框架

在这里插入图片描述


2. Grid cell

在这里插入图片描述

输入图片划分为(7 x 7)个grid cell,每个grid cell预测 B = 2 个框,则总共预测(7 x 7 x 2)= 98 个框。每个grid cell预测一组条件类别概率(即置信度),即20个类别的条件概率,对2个框进行置信度计算,最终找出置信度最大的类别(即最粗的预测框)。

也对应下文(7 x 7 x 30)output的由来,20 classes + 2 x Box(x, y, w, h, 置信度值) = 30。


3. (7 X 7 X 30)输出的由来

在这里插入图片描述

(7 x 7)是grid cell,30包括(2 x Box)和20个classes,每个Box包括5个参数(x, y, w, h, 置信度值)。

在这里插入图片描述


4. 条件概率最高的类别所占有的框

在这里插入图片描述

如图所示,展示了条件概率最高的类别所占有的框。每一个grid cell 只能有一个类别,如紫色部分是Bicycle条件概率最高所占有的grid cell,绿色部分是Bicycle条件概率最高所占有的grid cell。


5. 预测后处理

后处理阶段: 置信度过滤 ----> 非极大值抑制NMS。后处理就是把纷繁复杂的98个预测框进行筛选过滤,把重复的预测框只保留一个,最终获得目标检测的结果。它包含把低置信度的框过滤掉,以及把重复的框过滤掉只保留一个框,这个步骤称为非极大值抑制NMS。

  • (7 x 7 x 30)中30所代表的含义

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

(7 x 7 x 30)中30所代表的含义: 前两个5代表 2个bbox 的维度,即(x, y, w, h, c),后边20代表20个类别的条件概率。

  • NMS工作原理

在这里插入图片描述

在这里插入图片描述

NMS工作流程: 将class:dog的条件概率从大到小排序,然后将置信度最大的点设置为基点,从第二个到最后一个依次轮流和基点对比,如果二者重合度超过之前设定的 IoU 阈值,即认为这两个框预测了同一个目标,将置信度小的条件概率置为0,如果两个框交并比没有超过Iou阈值,则保留。然后依序设置第二个不为0的条件概率点为基点,重复上述过程。最后得到低于 Iou 阈值(即认为预测框不重复)的框,就获得了最终目标检测结果。

【注】: NMS只应用与预测阶段,在训练阶段是不能用NMS的。因为在训练阶段的每一个框都需要在损失函数中起到作用,因此不需要用NMS把框的条件概率置0。



YOLOv1论文精读(部分截图)

1. YOLOv1损失函数

在这里插入图片描述


2. Dropout 防止过拟合

在这里插入图片描述


3. 论文笔记截图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述



猜你喜欢

转载自blog.csdn.net/qq_39770163/article/details/126567031