Yolo系列之YOLOv1 & YOLOv2

一、YOLOv1

1. YOLOv1概述

YOLOv1是单阶段目标检测方法,不需要像Faster RCNN这种两阶段目标检测方法一样,需要生成先验框。Yolo算法采用一个单独的CNN模型实现end-to-end的目标检测。虽然Faster-RCNN在当时是mAP最高的算法(2015-2016年), 然而速度却很慢,相对而言,Yolo算法的性价比是很高的,大家也都对Yolo未来的发展抱有无限期待,下图是各种目标检测算法的效果对比:👇
在这里插入图片描述
可见,Yolo的FPS计算速度非常快,值得当时人们的期待~ 接下来看看Yolov1的思想。

2. YOLOv1核心思想

在这里插入图片描述
以论文原文为例,经过卷积图像缩小为7*7的shape,即49个像素点,我们以每个像素点为中心,分别进行49次预测。以上图👆中的红色点为例,以这个像素点为中心,产生B个候选框(原文只使用2个候选框,B = 2),然后将这两个候选框分别与真实的框做IoU,选取IoU更大的候选框根据Loss Function进行微调,得到最终结果。同理,49个像素点都要分别被当成中心产生候选框,择优后微调。

此外,以往的目标检测任务给出的结果通常为四元组,(X, Y, W, H)表示坐标以及长宽,这个四元组固定了框的位置(注:X, Y通常为小数,表示位置相对于整个图的百分比)。YOLOv1还使用了Confidence置信度,每个框是五元组的形式,即(X, Y, W, H,C),因为图像分为背景和前景,物体属于前景,我们希望对于属于背景的像素点,预测的Confidence为0,而物体(前景)的Confidence更接近1。

3. YOLOv1网络架构

(1) 核心架构

在这里插入图片描述
如上图所示,输入图像的尺寸规定为4484483,经过一定数量的卷积操作后(这里没啥创新,也不咋地,之后版本会改,就不说啦~),再经过FC全连接层,得到的1470的维度的向量,将其reshape成 7 * 7 * 30的shape,下面解读一下7 * 7 * 30的含义。

在开始我们就暗示了原文的图像最后缩小成了7 * 7的大小,下面来解释一下30的含义,原文中 B= 2,即对于每个像素点,以其为中心会产生2个候选框,每个候选框是一个五元组(X, Y, W, H, C),两个候选框就是2个五元组,共10个元素,B1:(X1, Y1, W1, H1, C1), B2:(X2, Y2, W2, H2, C2),然后这个数据集是20分类的,因此就自然还需要20个元素的位置,5+5+20 = 30。

总结:7 * 7 * 30 就是 (S * S)*(B * 5 + 10) ,可以自行更改网络架构

现在我们得到了7 * 7 * 30的初步判定结果,接下来需要按照Loss Function进行选择与微调,损失函数的构造如下图所示:👇
在这里插入图片描述Loss Function由(1)位置误差【x,y是坐标位置,直接作误差,w,h加了根号再做误差,因为考虑到:一个很大的物体,锚框偏移一点点,并没有影响,但是一个很小的物体,很小的锚框偏移相同的单位,可能影响就很大了】(y = √x 在x较大时,y的变化对x的变化不敏感)(有待改进);(2)含有object的前景的置信度误差【置信度越接近IoU越好】;(3)不含object的背景的置信度误差【加了参数λ,因为一张图片背景占大多部分,如果不加参数λ,则损失就都取决于背景了,效果不好】;(4)分类误差(就是刚才那20个元素的分类结果)。

(2)其他细节【NMS】

在这里插入图片描述
NMS即非极大值抑制,在模型测试时,可能有多个像素点为中心的锚框都分类为某一类别,如上图所示👆,其实需要进一步择优,只保留一个,实现方法是:IoU大于一定阈值的先留下,然后再选择置信度最大的那个框作为该类的预测框。

4. YOLOv1特点

(1)优点:

1.速度快,达到了完全实时的效率,输入448x448x3
2.端到端地训练网络(图片划分为7x7 grid),最多预测49个目标
3.迁移泛化好(迁移到艺术作品效果也好)
4.Background误差小,直接选用整图训练,能获取全局信息

(2)缺点:

1.YOLOv1在精确度上落后于当前最好的检测系统,主要来源于定位不够精确(Map低)
2.小物体检测效果差
3.定位误差高,而且无法解决重叠的问题(因为我们是以某像素为中心点进行画框,当图中两个物体的中心点本来就很接近甚至两个物体重叠时,就几乎很难检测出来了)

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

天使Di María

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

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

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

打赏作者

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

抵扣说明:

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

余额充值