YOLOv2简介

173 阅读6分钟

计算机视觉,一个不断升级的人工智能(AI)领域,这些天来不断涌现并得到普及。根据定义,"计算机视觉允许通过视觉(图像或视频)检测高水平、有意义的数据"。

从通过智能手机进行简单的人脸检测到复杂的癌症检测,计算机视觉的应用日渐扩大。像这样的快速进步使我们很难从无用的信息中过滤出有用的信息。

因此,我们已经为你做了研究,涵盖了。

  1. 什么是YOLO?
  2. 两阶段(多阶段)检测器
  3. 单级检测器
  4. 什么是YOLOv2?
  5. YOLO模型的结构
  6. 密集预测和稀疏预测
  7. YOLOv2的意义
  8. 应用
  9. YOLOv2的问题

让我们直接进入。

YOLO

什么是YOLO?

YOLO(You Only Look Once)是一种算法,它通过仅在其网络中传递一次视觉,提供具有高精确度和速度的实时物体检测。这种算法也被称为 "物体检测器"。

物体检测是通过图像和视频检测物体的技术。物体检测器通常用于安全和交通检查等过程中,以检测活动或识别人脸。然而,其应用不仅限于此。

两阶段检测器

计算机视觉在多阶段检测器的帮助下起飞了。这些多阶段检测器通过将过程分解成多个部分来处理图像和视频。

高精度和定位是一种突破,但最终还是落空了。为什么?它们很慢。处理图像的延迟迫使开发人员引入更快的算法。

单阶段检测器

直到2015年,约瑟夫-雷德蒙和他的同行们才推出了第一个单阶段物体检测器。他们将论文命名为 *"You Only Look Once: Unified, Real-time Object Detention"。*他们的主要目标是通过取消多阶段检测,用更快的单步骤过程取代它来节省时间。

一阶段检测器通过分析整个物体,使用一个独特的神经网络。它将物体切成多个盒子,每个盒子包含某个子物体。YOLO检查整体图像,而不是背对背地检查几个区域。

我们发现这种算法在多个领域都有应用,如检测交通灯、扑克作弊器、主权车辆、停车计时器等。

什么是YOLOv2?

在YOLO推出一年后,YOLOv2浮现在网络上。2016年,约瑟夫-雷德蒙和阿里-法哈迪发布了论文*《YOLO9000:更好、更快、更强*》,因为它可以检测到超过9000类的物体。相对而言,这是一个大大改进的版本,利用了批量归一化(BN)数据增量

YOLOv2还引入了锚定框的概念,即预定义的区域,该区域内的物体最有
可能被检测到。预测的边界盒和
锚盒
的重叠率(IoU)
作为一个阈值,决定检测到的物体的概率是否足以
做出预测。

然而,YOLO的设计是为了提供高度准确的结果,因此它检查训练数据并对其进行聚类(维度聚类)。这是为了确保我们要训练模型的数据在锚箱内得到体现。

YOLO模型的架构

所有的YOLO模型在其架构中都有一个类似的组件主题。

  1. 主干是一个卷积神经网络(CNN),收集并产生不同形状和大小的视觉特征。ResNetVGG 等模型也被用作特征提取器。
  2. 颈部是一组层,在特征被传递到预测层之前,对其进行整合和混合。
  3. 结构的头部将颈部的特征与边界框预测一起输入。在这里,分类(使用回归)是在特征和边界框的坐标上进行的,以完成检测过程;(x,y)坐标与宽度和高度一起被输出。

密集预测和稀疏预测

密集预测是最终的预测,由一个向量组成,其中包含预期边界框的顺序
、预测的信心分数和标签。

稀疏预测是包含零值的稀疏表示的数据特征与目标之间的关系。

YOLOv2的意义

易于使用和准确

YOLOv2基于DarkNet19结构,它有19个卷积层,有3×3的滤波器和5个最大集合层,与之前的层相比,通道的数量增加了一倍。这提高了结果的准确性。

更快、更强

通过在每个3×3卷积层之后增加一个1×1卷积层,降低了网络计算的复杂性。这种复杂性的降低增加了图像处理的推理时间,优化了算法的性能。

高分辨率

YOLOv2的功能是提高输入图像的分辨率,增加检测像素和检测信息量,有利于提高检测精度。

细致的特征

数据增强通过扩大输入数据集为模型添加特征。这通过随机裁剪和旋转输入图像来进行,为模型增加维度。

检测多个物体

正如该算法的作者所说,"YOLO9000预测了9000多个不同的物体类别的检测,而且都是实时的。

批量归一化

YOLOv2在每个卷积层之后都使用了批量归一化(BN)。它将数据的分布统一为标准的正态分布,从而提高检测的准确性。

必须指出的是。

  • 使用批量归一化和数据增量提高了准确性和mAP,与之前的YOLO版本相比,它也有定位误差。
  • 与YOLOv2相比,RCNN和更快的RCNN的检测速度都很低,因为YOLOv2的每秒帧数(FPS)更高。YOLO单独使用TITAN X GPU的检测速度为45 FPS,而快速YOLO使用相同类型的GPU可以达到155 FPS的速度。
  • 训练YOLOv2网络的时间减少了50%。

YOLOv2的应用

我们有以下YOLOv2的应用。

  • 微小的车辆
  • 多个物体
  • 最大化的视觉效果

YOLOv2的问题

虽然YOLOv2听起来像是计算机视觉的完美首选算法,但许多后来的版本对它进行了进一步的改进。今天,我们迎来了该系列的第6个版本--YOLOv6!

以下是新版本所具有的功能。

YOLOv3。

  • 更直观的理解
  • 使用独立的逻辑分类
  • 预测每个规模的箱子
  • 新的架构
  • 大量的骨干网络
  • 高硬件性能

YOLOv4:

  • 更快、更高效
  • 包含高的平均精度(AP)和每秒帧数(FPS)
  • 经过训练可以同时进行分类和边界盒回归
  • 更简单的架构
  • 包含80个内置对象类

YOLOv5。

  • 尺寸更小(27MB)
  • 重量轻 - 速度极快(140FPS)
  • 更准确(0.895mAP)。

最后的思考

由于可修改的算法和发展的需要,信息技术的发展继续加速。虽然YOLOv2是计算机视觉的一大进步,但它为后来的版本提供了骨干,使其能更有效地执行。新的模型使用它作为基础结构,并继续创造变化和改进,以表现得更好。