YOLOv1-v3系列进化史回顾[AI算法库]

关注:决策智能与机器学习,深耕AI脱水干货

作者 / McGL

来源 | 知乎

授权转载

You only look once (YOLO)是一个针对实时处理的目标检测系统。在本文中,我们将介绍 YOLO、 YOLOv2、 YOLO9000和YOLOv3。对于那些只对 YOLOv3感兴趣的人,请直接转到文章的底部。下面是 YOLO 网站提供的准确率和速度比较。

 YOLO

让我们从下面的测试图片开始说起。

YOLO 检测到的物体:

Grid cell

为了便于讨论,我们裁剪了原始照片。YOLO 将输入图像划分为S x S grid。每个grid cell只预测一个物体。例如下面的黄色grid cell尝试预测其中心(蓝点)位于grid cell内的物体“人”。

每个grid cell预测一个固定数量的boundary boxes。在此示例中,黄色grid cell产生了两个boundary box预测(蓝色框)来定位人所在的位置。

但是,单物体规则限制了检测到的物体之间的距离。因为这一点,YOLO 确实对物体之间最多可以靠多近有一些限制。比如下面的图片,有9个圣诞老人在左下角,但 YOLO 只能检测到5个。

对于每个grid cell,

  • 它预测B个boundary box,每个box有一个box confidence score,

  • 无论boxes B是多少个,它都只检测一个物体,

  • 它预测C类条件概率(每个类别一个此物品类别的可能性)

为了评估 PASCAL VOC,YOLO 使用了7x7 grids(SxS)、2个boundary boxes(B)和20个类(C)。

YOLO 用 B 个boundary boxes在 SxS上预测

让我们了解更多的细节。每个boundary box包含5个元素: (x,y,w,h)和一个box confidence score。confidence score反映了框中包含物体的可能性(objectness)以及boundary box的精确度。我们用图像的宽度和高度将bounding box的宽度 w 和高度 h normalize。x和y 是相应cell的offset。因此,x,y,w 和 h 都在0和1之间。每个cell有20个类条件概率。 类条件概率是被检测物体属于特定类别的概率(每个cell中,每个类别有一个概率)。因此,YOLO 预测结果的shape是(S,S,Bx5 + c) = (7,7,2x5 + 20)=(7,7,30)。

YOLO的主要概念是创建一个CNN网络来预测一个(7,7,30)张量。它使用 CNN 网络将空间维度降低到7x7,每个位置有1024个输出channel。YOLO用两个全连接层线性回归产生7x7x2个boundary box的预测(下面中图)。为了做出最后的预测,我们保留那些具有高box confidence scores(大于0.25)的boxes作为最后的预测(右图)。

每个预测box的class confidence score计算公式如下:

它同时度量分类和定位(物体所在的位置)的confidence。

我们很容易地把那些得分项和概率项混淆。这里有一些数学定义,供你将来参考。

网络设计

YOLO有24个卷积层,之后接着2个全连接层。一些卷积层使用1x1来减少feature maps的深度。最后一个卷积层输出一个形状为(7,7,1024)的张量。然后把张量被flattened。2个全连接层作为一种线性回归输出7x7x30个参数,然后reshape成(7,7,30) ,即每个位置2个boundary box预测。

还有一个更快但不太精确的 YOLO 版本叫做 Fast YOLO,只使用9个卷积层和较浅的feature maps。

损失函数

YOLO 每个grid cell预测多个bounding boxes。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值