精华内容
下载资源
问答
  • yolov1论文
  • YOLOv1论文解读

    2020-06-01 00:40:51
    YOLOv1论文解读 论文原文地址: https://arxiv.org/pdf/1506.02640.pdf 论文的一个tensorflow实现版本: https://github.com/gliese581gg/YOLO_tensorflow 一、摘要 YOLO的英文是(you only look once),之所以这样...

    YOLOv1论文解读

    论文原文地址:

    https://arxiv.org/pdf/1506.02640.pdf

    论文的一个tensorflow实现版本:

    https://github.com/gliese581gg/YOLO_tensorflow

    一、摘要

    YOLO的英文是(you only look once),之所以这样命名是相对于之前的物体检测方法提出的,YOLO是整个系列初始版本,后续改进版本用v加一个数字表示版本号,本文使用的YOLO即是YOLOv1。在YOLO以前,物体检测方法主要是通过region proposal方法来产生大量可能包含待检测物体的潜在BBox( bounding box),再通过训练好的分类器去判断每个BBox里面是否包含有物体,并给出物体的种类的概率(probability)和置信度(confidence)。YOLO的提出具有划时代意义,检测的方法发生了根本性的变化(相对于Fast R-CNN)。YOLO将目标检测任务看作回归(regression)问题,仅用单个神经网络来完成上述任务。作者还在文章中提到因为整个过程都在一个神经网络中进行,因此方便进行端到端的性能优化。

    优势

    1. YOLO更快。相比于R-CNN、Fast R-CNN 以及Faster R-CNN等来说,YOLO在保持高mAP的同时检测速度仍然遥遥领先。

    YOLO实时性对比

    1. YOLO能更好的避免图片背景错误。之前提出的大部分方法使用的region proposal使其分类器只能得到图像的部分信息。而YOLO是以整张图像为输入,因此能够利用一张图像的全部信息进行决策,从而减少背景预测出错。作者同Fast R-CNN进行比较,得出YOLO的背景错误不到Fast R-CNN的一半。
      Fast R-CNN与YOLO的错误率比较
    2. YOLO的泛化性能更加强大。作者发现在自然图像上进行训练,在一些艺术风格的图像上进行测试时,YOLO仍然表现出更烈的泛化性。例如下图时作者在CVPR2016做论文讲解时进行的示例:
      作者展示

    不足

    1. YOLO的检测精度低于一些最新的目标检测模型。
    2. YOLO容易产生物体的定位错误。(19.0%的定位错误相比于Fast R-CNN的8.6%高出不少)
    3. YOLO对小物体的检测效果不好。
      YOLO对小物体进行检测

    二、算法原理

    在这里插入图片描述
    可以根据作者给出的示例图片总结出如下三步:

    1、分格

    首先,图像会被分为S x S个格子,各个格子分别大小相同,分别拥有原图的一部分。
    分格

    2、检测

    包含Ground truth(GT,即正确标记的数据)物体中心的格子负责检测相应的物体。这一步中需要改变输入图像的大小并送入卷积神经网络中,通过非极大值抑制(Non-max suppression)获取预测结果.

    3、结果表示

    每一个格子都会给出B个检测框及其置信度,以及C个类别的概率,因此整个模型的输出为S x S x (5 x B +C)。作者的模型是基于VOC数据集进行的,在该数据集上,作者将原始图像分为7 x 7共49个格子,每个格子给出两个BBox,每个BBox由一个向量表示为[x,y,w,h,c],分别是目标物体中心点(x,y),BBox的宽高(w,h)以及c(confidence)为预测的BBox和GT box的IOU值。同时该数据集由20个分类(包括狗、自行车等),因此对于VOC数据集训练的YOLO模型而言,该模型输出的为7 x 7 x (5 x 2+20)=1470维的一个向量结果。通过设置IOU与阈值,过滤掉低分的BBox来决定是否将预测出的物体标注在图上。
    在这里插入图片描述

    三、模型结构

    模型的搭建借鉴了GoogleNet,但是通过使用1 x 1卷积层来整合多个颜色通道的信息和3 x 3卷积来进行特征提取来替代inception module。
    在这里插入图片描述

    损失函数

    目标检测的任务,就是要找准目标的位置,准确标出目标的宽高,正确给出目标的分类。因此,损失函数的应该为优化上述三个目标进行服务:
    在这里插入图片描述
    红色框线内即对坐标预测的损失函数部分,用于判断第i个格子的第j个BBox是否负责目标的检测。绿色框线部分表示BBox含有目标的置信度。绿色框线表示BBox不含目标的置信度的预测。紫色框线部分为该格子对应的所属类别的概率。
    其中出现的λcoordλ_{coord}λnoobjλ_{noobj}用于调节权重。在作者的训练中希望有目标的BBox比没有目标的BBox拥有更大的权重。

    四、结语

    目前最新的YOLO已经有v4版本,在v2与v3版本中都对v1版本进行了改进。其中作者自己提出的现有的模型弊端有:图片的输入尺寸固定以及对小目标检测效果差等。
    最主要的缺陷还是当同一个格子之中包含了多个物体时,仅仅能给出其中一个IOU最高的结果而抛弃其它的,改进方法将在后面的版本中进行讨论。

    参考文献

      [1]: https://arxiv.org/pdf/1506.02640.pdf
      [2]: https://arxiv.org/pdf/1612.08242v1.pdf
      [3]: https://blog.csdn.net/hrsstudy/article/details/70305791
      [4]: https://www.bilibili.com/video/BV12x411a7Di
      [5]: https://github.com/gliese581gg/YOLO_tensorflow
    
    展开全文
  • YOLOv1 论文学习笔记

    2021-02-08 19:48:18
    YOLOv1 论文学习笔记前言一、Abstract(概括)二、Introduction(介绍)三、Unified Detection(统一检测) 前言 本文是自己阅读原论文You Only Look Once:Unified, Real-Time Object Detection时所总结的学习笔记,...

    前言

    本文是自己阅读原论文You Only Look Once:Unified, Real-Time Object Detection时所总结的学习笔记,接下来会介绍原论文的Abstract(概括)、Introduction(介绍)、Unified Detection(统一检测)这三部分,并在每一部分呈现原英语论文、自己理解的中文翻译和阅读理解后的笔记,希望能帮助大家更加深刻地理解该论文,如有不足之处,还请大家指正。

    Abstract(概括)

    在这里插入图片描述
    我们提出了一种新的目标检测方法YOLO,以往关于目标检测的工作是将分类器重新用于执行检测。然而,我们是将目标检测当作成一个回归问题来构建空间分离的bounding boxes和相关的类概率。一个单一的神经网络直接从评估里的整张图片中预测bounding boxes和类概率。由于整个检测管道是单一的网络,因此可以直接对检测性能进行端到端的优化。

    笔记:
    1.bounding boxes(包围盒):框住目标物体的边框。

    2.YOLO可以进行端到端的优化因为其检测管道是单一的网络,这也是为什么YOLO检测速度快的一个原因。

    在这里插入图片描述
    我们的统一架构是非常快的。我们的基础YOLO模型以每秒45帧的速度实时处理图像。一个较小版本的网络,Fast YOLO,以令人震惊的每秒155帧进行处理的同时仍然可以实现其他实时探测器两倍的mAP(Mean Average Precision)(平均AP值)。与最先进的检测系统相比,YOLO产生了更多的定位错误,但很少可能会在背景的预测上产生假阳性。最后,YOLO学习了很多目标对象的广泛表现。当从自然图像推广到其他领域如艺术品时,它优于其他检测方法,包括DPM和R-CNN。

    笔记:
    1.mAP(Mean Average Precision)(平均AP值): 所有类别的平均精度求和除以所有类别。

    2.AP(average precision)(平均精度):P-R曲线所围成图形的面积。

    3.P(precision)(精准度):预测为正的且事实正的占所有事实正的比例。
    在这里插入图片描述
    TP(True Positive) (真阳性):事实是正的预测为正。
    FP(False Positive) (假阳性):事实是负的预测为正。
    FN(False Negative) (假阴性):事实是正的预测为负。
    TN(True Negative) (真阴性):事实是负的预测为负。

    4.R(recall)(召回率):预测为正的且事实正的占所有预测正的比例
    在这里插入图片描述

    1.Introduction(介绍)

    在这里插入图片描述
    人类瞥了一眼图像就立即知道图像中的物体是什么,它们在哪里,以及它们是如何相互作用的。人类的视觉系统是快速和准确的,允许我们执行复杂的任务,如没有很多意识想法的驾驶。快速、准确的目标检测算法将允许计算机在没有专门传感器的情况下驾驶汽车,使辅助设备能够向人类用户传达实时场景信息,并表现出一般目标和反应灵敏的机器人系统的潜能。
    在这里插入图片描述
    当前的检测系统重新使用分类器来执行检测。为了检测一个对象,这些系统为该对象采取分类器并在测试图像中的不同位置和尺度上对其进行评估。一些系统像deformable parts models (DPM)使用滑动窗口的方法,就是让分类器在整个图像上以均匀间隔位置的方式运行。
    在这里插入图片描述
    图1:YOLO检测系统。用YOLO处理图像是简单明了的。 我们的系统(1)将输入图像调整到448x448,(2)在图像上运行一个卷积网络,(3)通过模型的置信度阈值处理所得到的检测结果。

    笔记:
    1.阈值处理:即图像二值化。是图像分割的一种最简单的方法。二值化可以把灰度图像转换成二值图像。把大于某个临界灰度值的像素灰度设为灰度极大值,把小于这个值的像素灰度设为灰度极小值,从而实现二值化。

    在这里插入图片描述在这里插入图片描述
    大多数最新的方法如R-CNN使用region proposal(候选区域)的方法去首先在图像中生成潜在的包围框,然后在这些候选框上运行分类器。在分类之后,后处理被用来改善bounding boxes,消除重复检测,并根据场景中的其他对象重新划分边框。这些复杂的管道是缓慢和难以优化的,因为每个单独的组件必须单独训练。

    笔记:
    1.region proposal(候选区域):图像中目标物体可能存在的区域。

    在这里插入图片描述
    我们将对象检测重新划分为一个单一的回归问题,直接从图像像素到bounding box的坐标和类概率。使用我们的系统you only look once (YOLO)在一副图像上来预测哪些对象存在以及它们在哪里。
    在这里插入图片描述
    在这里插入图片描述
    YOLO简单得让人欣喜:看图一。单个卷积网络同时预测这些框的多个bounding boxes和类概率。YOLO在整张图像上训练并直接优化检测性能。
    该统一模型相比于传统的目标检测方法具有几个优点。
    在这里插入图片描述
    首先,Yolo非常快。由于我们将检测作为一个回归问题因此我们不需要一个复杂的管道。我们只需在测试时的一张新图像上运行神经网络来预测检测结果。我们的基础网络在泰坦xGPU上没有批处理的情况下以每秒45帧的速度运行,而快速版本运行则超过150个FPS。这意味着我们可以在小于25毫秒的延迟下实时处理流视频。此外,YOLO达到了其他实时系统mAP的两倍以上。有关我们的系统在网络摄像机上实时运行的演示,请参阅我们的项目网页:http://pjreddie.com/yolo/

    笔记:
    1.FPS:FPS是图像领域中的定义,是指画面每秒传输帧数,通俗来讲就是指动画或视频的画面数。FPS是测量用于保存、显示动态视频的信息数量。每秒钟帧数越多,所显示的动作就会越流畅。
    在这里插入图片描述在这里插入图片描述
    第二,YOLO在做预测时是对图片进行全局推理。与基于滑动窗口和候选区域的技术不同,YOLO能在训练和测试的时候看到整张图片,因此它能毫无保留地把关于类和表现的复杂信息编译成计算机语言。Fast R-CNN,一种顶级的检测方法,因为不能看见更多的背景而把一张含有目标对象的图像背景块弄错。与Fast R-CNN相比,YOLO的背景误差不到一半。
    在这里插入图片描述
    第三,YOLO学习目标对象可归纳的表现。当在自然图像上训练并在艺术品上测试时,YOLO较顶级检测方法如DPM和R-CNN有很大的优势。由于YOLO是高度可归纳的,所以当应用于新域或意外输入时它很少可能会崩溃。
    在这里插入图片描述
    YOLO在准确性上仍然落后于最先进的检测系统。 虽然它可以快速识别图像中的对象,但它很难精确地定位一些对象,特别是小对象。 我们在实验中进一步研究了这些权衡。
    在这里插入图片描述
    我们所有的训练和测试代码都是开源的。各种预训练的模型也可以下载。

    笔记:
    YOLO优点概括:
    1.检测快
    2.延迟低
    3.mAP高
    4.背景误差少
    5.检测领域广

    2.Unified Detection(统一检测)

    在这里插入图片描述
    我们将目标检测的独立的成分统一为一个单一的神经网络。我们的网络使用来自整个图像的特征来预测每个bounding box。它还同时预测图像中所有类中的所有bounding boxes。这意味着我们的网络全局推理整张图像以及图像中的所有目标对象。该YOLO的设计能够在端到端的训练和实时速度的同时保持较高的平均精度。
    在这里插入图片描述
    我们的系统将输入的图像划分为SxS的网格。如果该目标对象的中心落入网格单元中,那么这个网格单元负责检测该对象。
    在这里插入图片描述
    每个网络格预测B个bounding boxes和这些边框的置信分数。这些置信分数反映了模型对边框包含一个目标对象的置信度,以及它认为边框预测的准确性。我们在形式上把置信度定义成在这里插入图片描述
    如果该单元格中不存在对象,则置信分数应为零。除此之外,我们希望把置信分数等同于在预测的边框和真实边框之间intersection over union (IOU)。

    笔记:
    1.IOU:交并比
    在这里插入图片描述
    如图所示,交并比指的是绿色区域占蓝绿黄区域的比值,即AB的交集与AB并集之比。

    在这里插入图片描述
    每个网格单元还预测C个条件类概率在这里插入图片描述
    在这里插入图片描述

    这些概率取决于包含目标对象的网格单元。我们仅仅预测每个网格单元的一组类概率,不管边框的数量B。
    在这里插入图片描述

    在测试时,我们将条件类概率和单个框置信度预测相乘在这里插入图片描述
    这给了我们每个框的特定类的置信度分数。这些分数编码了该类出现在框中的概率,以及预测的框与对象的匹配程度。
    在这里插入图片描述
    在这里插入图片描述
    图2:模型。 我们的系统模型检测将作为一个回归问题。它将图像划分为SxS的网格,并且对于每个网格单元预测B个bounding boxes、边框的置信度和C个类概率。这些预测将会被编码成一个S x S x (B * 5 + C)的张量。
    在这里插入图片描述
    为了在PASCAL VOC上评估YOLO,我们将S = 7,
    B = 2。PASCAL VOC有20个标签类,因此C = 20。我们的最终预测是一个7 x 7 x 30的张量。

    2.1. Network Design(网络设计)

    在这里插入图片描述
    我们用卷积神经网络来实现这种模型,并在PASCAL VOC检测数据集上对其进行评估。网络的初始卷积层从图像中提取特征的同时完全连接层预测输出的概率和坐标。
    在这里插入图片描述
    我们的网络架构的灵感来自于图像分类中的谷歌网络模型。我们的网络有24个卷积层,然后紧接着的是2个完全连接层。与谷歌网络使用的初始模型不同,我们只使用1x1还原层,然后是3x3卷积层,类似于Lin等人使用的结构。 完整的网络如图3所示。
    在这里插入图片描述
    我们还训练了一个快速版本的YOLO,旨在推动快速目标检测的边界。Fast YOLO使用的神经网络具有较少的卷积层(九个而不是二十四个)和较少的过滤器除了网络的大小,所有的训练和测试参数在YOLO和Fast YOLO之间是相同的。
    在这里插入图片描述
    笔记:
    1.该网络实现如下:首先是用一个7x7步长为2的卷积层和2x2的最大池化层,然后用3x3的卷积层和2x2的最大池化层,接着1x1与3x3卷积层和2x2的最大池化层交替多次后得到7x7深度为1024的特征矩阵,经过一层全连接层变成4096维度的向量,最后经过一层连接层变成7x7x30的张量。
    2.该张量展开图如下:
    在这里插入图片描述
    7x7可以认为是上文所说7x7的网络格,将每一份的深度展开来看是由两个bounding box和20个类组成,每个bounding box含有xy(坐标)、wh(宽高)和confidence(置信度)这五个参数。
    在这里插入图片描述
    图3:结构。我们的检测网络有24个卷积层,然后紧跟着的是2个完全连接的层。交替使用1x1卷积层来减少前一层的特征空间。我们将Image Net分类任务上的卷积层预先训练为分辨率的一半(224x224输入图像),然后将分辨率加倍进行检测。
    在这里插入图片描述
    我们网络的最终输出是预测的7x7x30的张量。

    2.2. Training(训练)

    在这里插入图片描述
    我们在ImageNet 1000-class competition数据集上对我们的卷积层进行了预训练。对于预训练,我们使用图3中的前20个卷积层,然后是平均池层和完全连接层。我们对这个网络训练大约一周,并在Image Net2012验证集上实现了单个作物前5名88%的精度,与Caffe的模型中的GoogLeNet模型相当。对于所有的训练和推理,我们使用Darknet框架来进行。在这里插入图片描述
    然后,我们将模型转换为执行检测。Ren等人表明在预先训练的网络中加入卷积层和全连接层可以提高性能。在它们的例子中,我们添加了四个卷积层和两个具有随机初始化权值的全连接层。检测通常需要精确的视觉信息,因此,我们将网络的输入分辨率从224x224提高到448x448。
    在这里插入图片描述
    我们的最后一层预测类概率和bounding box坐标。 我们通过图像宽度和高度对bounding box宽度和高度进行归一化,使它们介于0到1之间,我们将bounding box 的x和y坐标参数化为特定网格单元位置的偏移量,因此它们也被限制在0到1之间。
    在这里插入图片描述
    我们对最后一层使用线性激活函数,对其他所有的层使用leaky校正线性激活:在这里插入图片描述
    笔记:
    这个激活函数是ReLU函数的变体——Leaky ReLU
    该损失方程的优点是不会过拟合
    在这里插入图片描述
    在这里插入图片描述

    我们优化了我们模型输出中的平方和误差。我们使用和平方误差,因为它很容易优化,但它并不完全符合我们最大限度地提高平均精度的目标。它将定位误差与可能不理想的分类误差赋予相等的权重。另外,在每个图像中,许多网格单元不包含任何对象。这将这些单元格的“置信度”分数推到零,这往往压倒了确实包含对象的单元格的梯度。这可能导致模型不稳定从而引起训练早期发散。
    在这里插入图片描述
    为了解决这个问题,我们增加了边界框坐标预测的损失,并减少了不包含对象的框的置信预测的损失。我们使用两个参数,在这里插入图片描述去完成这个。我们令在这里插入图片描述
    在这里插入图片描述
    平方和误差在大边框和小边框中也同样有权重错误。我们的误差度量应该反映出大盒子中的小偏差比小盒子中的小偏差小。为了部分解决这一问题,我们直接预测bounding box宽度和高度的平方根,而不是宽度和高度。
    在这里插入图片描述
    YOLO在每一个网络格中预测出多个bounding boxes。在训练时,我们只希望一个bounding box预测器负责每个对象。我们指定了一个和真实物体位置有最高的IOU的预测器来“负责”预测一个对象,这导致了bounding box预测器之间的专门化。每个预测器更好地预测某些大小、纵横比或对象类别,从而提高总体召回率。
    在这里插入图片描述
    在这里插入图片描述
    在训练过程中,我们优化了以下多个部分的损失方程:在这里插入图片描述
    其中1obji表示对象是否出现在单元格i中,1objij表示单元格i中的jth边界框预测器对该预测“负责。

    笔记:
    1.该公式可分为三部分进行理解:第一部分是第一第二行公式表示为bounding box的损失方程,第二部分是第三第四行公式表示为confidence的损失方程,第三部分是最后一行公式表示为classes的损失方程。
    在这里插入图片描述
    请注意,如果网格单元中存在一个对象,则损失函数只会惩罚分类错误(因此前面讨论了条件类概率)。 如果该预测器是“负责”真实框( 在该网格单元中,任何预测器的IOU都是最高的),它还只惩罚bounding box坐标错误。
    在这里插入图片描述
    我们在PASCAL VOC 2007 and 2012的训练和验证数据集上对该网络进行了大约135期的训练。在2012进行测试时,我们还用了包括用于训练的VOC 2007测试数据。 在整个训练过程中,我们使用的批次大小为64,动量为0.9,衰减为0.0005。
    在这里插入图片描述
    我们的学习速度安排如下:在最初的几期,我们慢慢地将学习速度从103提高到10􀀀2。如果我们以高学习率开始,我们的模型经常由于不稳定的梯度而发散。我们继续用10􀀀2训练75个期,然后用103训练30期,最后用10􀀀4训练30期。

    在这里插入图片描述
    为了防止过拟合,我们使用dropout和广泛数据增强。 在第一个连接层之后,速率为0.5的dropout层防止了层与层之间互相适应。 对于数据增强,我们引入了多达20%的原始图像大小的随机缩放和平移。 我们还在HSV颜色空间中随机调整图像的曝光和饱和度,最高可达1.5倍。

    笔记:
    1.dropout层 :防止过拟合的一个层
    2.HSV:色调H、饱和度S、明度V

    2.3. Inference (推理)

    在这里插入图片描述
    就像在训练中一样,预测测试图像的检测只需要一个网络评估。 在PASCAL VOC上,该网络在每个图像上预测98个bounding boxes和每个框的类概率。 YOLO在测试时非常快,因为它只需要一个单一的网络评估,不像基于分类器的方法。
    在这里插入图片描述
    在这里插入图片描述
    该网格的设计在bounding box的预测中强制空间多样性。 通常,目标对象落入到哪个网格单元是很清楚的,网络只为每个对象预测一个框。然而,一些大型物体或物体在多个网络格附近的能够被多个网络格很好地定位。非极大值抑制可用于修复这些多重检测。尽管性能对R-CNN 或者 DPM并不是关键的,但非极大值抑制能在mAP中增加了2-
    3%。

    2.4. Limitations of YOLO(YOLO的局限性)

    在这里插入图片描述
    Yolo对边界框预测施加了很强的空间约束,因为每个网格单元只预测两个框,并且只能有一个类。 这种空间约束限制了我们的模型可以预测的附近物体的数量。 我们的模型难以处理成群出现的小物体,例如成群的鸟。
    在这里插入图片描述
    由于我们的模型学会从数据中预测边界框,因此它难以用新的或不寻常的纵横比的结构去归纳目标。 我们的模型还使用相对粗糙的特征来预测bounding boxes,因为我们的结构具有来自输入图像中的多个下采样层。
    在这里插入图片描述
    最后,当我们训练一个接近检测性能的损失函数时,我们的损失函数在小bounding boxes和大bounding boxes中处理相同的错误。 大边框中的小错误通常是良性的,但小边框中的小错误对IOU有很大的影响。 我们的主要错误来源是错误的定位。

    展开全文
  • yolov1论文理解与学习

    千次阅读 2018-06-28 11:46:54
    个人理解:yolov2相对于yolov1更改很多,但可以通过查看yolov1论文进行对yolo框架的了解,再过渡到yolov2 YOLO出自2016CVPR You Only Look Once:Unified,Real-Time Object Detection 是个值得学习的深度学习框架。 ...

    个人理解:yolov2相对于yolov1更改很多,但可以通过查看yolov1论文进行对yolo框架的了解,再过渡到yolov2

    YOLO出自2016CVPR You Only Look Once:Unified,Real-Time Object Detection 是个值得学习的深度学习框架。

    1 Abstract

        作者提出了新的一种物体检测的方法YOLO,YOLO之前是通过region proposal产生大量的potential bounding boxes,随后分类器分别对每个Bounding box进行解析:判断该Boundingbox是否含有物体,物体所含类别,以及confidence。大部分深度学习网络如:R-CNN,FAST-R-CNN,Faster-R-CNN等都是通过这种方式来进行物体检测。

        YOLO与上述方法不同,其将物体检测任务当做了一个regression问题来处理,通过将一张图片送入神经网络中,来预测出bounding box的坐标,类别以及置信度。由于YOLO目标检测是在一个神经网络中完成的,所以是end to end来进行目标检测。

        YOLO的优点是在于其实时性比较好,其检测速度可以高达45FPS,使用Tiny-YOLO速度会更加快,但是Tiny-YOLO的准确率并不是很高。速度效率如图所示。

    虽然,YOLO的实时性比较好,但是也是损失了少许精度,其准确率并不如Fast-R-CNN以及Faster-R-CNN。

    2 Introduction

        简介:

        YOLO之前的物体检测系统是使用分类器来完成物体检测任务的,为了检测一个物体,这些物体检测系统要在一张图的不同位置,不同尺寸的Bounding box上使用物体分类器来检测是否有物体。如最早的DPM系统,就是使用滑框算法来在图像上进行滑框,再对滑框所处的位置通过分类器来进行分类。受到DPM算法的启发,如Fast-R-CNN、Faster-R-CNN均是通过先找到region proposal区域,然后再在使用potential bounding box来检测,最后对众多的boxes进行打分,接着通过post-processing来改善bounding boxes的选择,消除重复检测目标,再次对Boundingboxes进行从新打分,整个流程较为复杂,且进行分类与预测Bounding boxes是分开的,很难进行优化来提高速度。

        三步走:

        而本文作者将物体检测当成了回归问题,直接通过整张图片来得到Bounding boxes的坐标、置信度以及类别,YOLO是端到端的进行物体检测,只需要将一张图片输入到神经网络模型中就能检测到图片中物体的位置以及类别。通过使用YOLO来进行物体检测是通过三步来进行的:

    (1)将输入图像resize到448*448作为神经网络的输入(使用高分辨率的图片使得feature map的分辨率也得以提高)

    (2)运行神经网络,得到一些Bounding boxes的坐标、confidence以及probablely class

    (3)运行非极大值抑制算法(NMS)对Bounding boxes进行筛选

        YOLO优点:

    (1)YOLO检测速度特别快,只需要将输入图片送入至神经网络中,就能够检测到图片中物体的位置信息,confidence,probablely classier,是end to end的网络,常用于实时检测,并能取得较好的结果。(由于其得到检测结果只是通过一次卷积神经网络,而例如R-CNN系列,虽然也是整张图输入,但是采用的proposal-classifier的思想,而yolo是直接采用回归的思想)

    (2)YOLO可以很好的避免背景错误,产生false positives:其不像DPM使用滑窗也不像R-CNN使用region proposal,分类器只能得到图像的局部信息。YOLO在训练与测试中能够看到在一整张图的整体信息,YOLO在进行检测的时候能够利用好上下文的关系,从而不容易在背景中预测出错误的物体信息。和Fast-R-CNN相比,YOLO错误率不及其一半。(由于yolo检测的时候能够更好的使用图像的上下文关系,是对整张图片进行检测,而R-CNN系列使用的还是region-proposal,分类器只能得到图像的局部信息。)

    (3)YOLO可以很好的学到泛化特征:在自然图像上,YOLO的性能会比其他网络模型更好。

        YOLO缺点:

    (1)由于检测速度的提升牺牲了部分部分精度,YOLO物体检测性比其他sate-of-the-art(最先进的)物体检测检测系统要低。

    (2)YOLO较容易产生物体定位错误。(由于yolov1是采用了直接回归出绝对坐标,而直接回归出绝对坐标的难度较大,因此,yolov2以及yolov3针对物体定位提出了新的方法,回归相对坐标,难度较小且能够准确率较高。而且对于对不同大小的box预测的时候,相比于大物体预测的偏一些,小物体预测偏一些则不能忍受,会产生较大的误差,因此作者在构造损失函数的时候使用了将w,h使用了根的均方和误差,虽然做了该处理不过定位误差还是较大。)

    (3)YOLO对检测小物体不好(一个grid cell只能预测两个Bounding boxes)(由于每个grid cell虽然可以预测B个bounding box,但是会选择最优的一个作为目标检测输出,即每个网格至多只能预测出一个物体,如果图像中包含大量密集的物体,则会检测错误,出现大量漏检现象。)

    对于物体检测性能(使用的指标是mAP)的体现如图所示:

    mAP(mean average precision)经常用于衡量物体检测系统识别精度的指标,多个类别检测中,每一类都可以根据recall和precision来判断。

    3 下面进入重要章节(YOLO到底是如何进行物体检测的):Unified Detection

    (1)整体流程:将输入图像分为S*S个栅格(grid cell),每个栅格来检测中心落在该栅格的物体,具体情况如图所示。每个栅格预测两个Bounding boxes(每个box含有5个变量:x,y,w,h,confidence)(此方法只是理解,后来证明降低了准确率)。且预测该栅格是哪个种类的物体,下面具体讲解Bounding boxes的参数,confidence的求解以及conditional class probability(条件类别概率)。

    (2)对于Bounding box的理解:Bounding box含有4个变量,分别是x:代表在该栅格的物体中心相对于该栅格的横坐标;y:代表在该栅格的物体中心相对于该栅格的横坐标;w:代表在该Bounding box的宽度相对于整个图片的宽度;h:代表在该Bounding box的高度相对于整个图片的高度。

    (3)关于confidence的理解:首先confidence的计算公式如下图所示。

      在confidence求解中,首先判断该Boundingbox是否有物体:有则Pr(Object)=1,反之则Pr(Object)=0;若有物体则计算IOU(IOU就是预测框与标注框的交集与并集的比值),其越大表示预测的准确率越高。

    (4)conditional class probability:前面讲述一个grid cell预测2个Bounding boxes,而且其也预测该grid cell是属于哪个class。下图表示一个grid cell代表的含义。

    即一个grid cell的深度值为30:包含两个Bounding boxes的值也包括类别(在此作者的类别为20),因此一个grid celld的深度是(2*5+classes)。由于是一个grid cell预测一个类别,所以类别与Bounding boxes并没有什么联系。conditional class probability的计算方法为Pr(Class|Object),即在某个grid cell包含物体的情况下,确定该物体的类别。

    (5)测试:在测试的时候将每个grid cell的conditional class probability与其预测的Bounding boxes的置信度进行乘积,求得最后的结果既可以表示每个Bounding box代表的类别也可以表示其是否有物体以及其坐标的准确度。

    (6)YOLO训练:在对PASCAL VOC数据集进行训练的时候,论文中使用的S=7,类别为20类,因此最后输出张量的个数为7*7*(2*5+Classes(20))

    4 Network Design

        YOLO物体检测系统包括24个卷积层,2个池化层。卷积层的作用是为了提取图像的特征,全连接层是为了预测图像的位置以及物体类别的概率值。网络模型如图所示。

    5 Training

        在训练数据中,大家可以参考YOLO的官网来进行操作,参考网站:https://pjreddie.com/darknet/yolo/   (注意:由于官网上是比较简单入门的,可以提前练练手)。对于自己训练数据大家可以参考我的博文。

        YOLO使用了ImageNet数据集训练好的参数即Pre-Training,在这个基础之上在进行训练会使得收敛速度加快,同时为了获取更加细化的结果,将输入的图片分辨率调节为448*448.在激活函数中使用了Leaky RELU,防止过拟合加入了Dropout层,同时为了提高精度做了数据增强。(Dropout没有batch-normalization效果好,建议大家可以看看batch-normalization)。

    6 损失函数

        在做深度学习的童鞋们都应该知道,我们是通过降低损失来不断优化我们的模型,使我们的模型更加强壮,而在目标识别中损失函数较为简单,再加入检测时,会使得损失函数比较复杂,了解YOLO的损失函数构成,对我们以后的学习,代码的理解起到至关重要的作用。(本人自己的理解,若不对,请勿喷)

        YOLO损失函数的设置时为了让坐标(x,y,w,h),confidence以及classification这个三个函数达到平衡,由于一张图中物体相对于背景占少数一部分,但是其数量过多且数值为0,很容易使得网络不稳定甚至发散。而且8维的location error与20维的classification占相同比例肯定不符合,于是YOLO模型的损失函数就如图所示。

    解决方案:更重视8维的坐标预测,给这些损失前面赋予更大的loss weight, 记为 λcoord ,在pascal VOC训练中取5。(上图蓝色框),对没有object的bbox的confidence loss,赋予小的loss weight,记为 λnoobj ,在pascal VOC训练中取0.5。(上图橙色框) 有object的bbox的confidence loss (上图红色框) 和类别的loss (上图紫色框)的loss weight正常取1。

        在 YOLO中,每个栅格预测多个bounding box,但在网络模型的训练中,希望每一个物体最后由一个bounding box predictor来负责预测。 因此,当前哪一个predictor预测的bounding box与ground truth box的IOU最大,这个 predictor就负责 predict object。 这会使得每个predictor可以专门的负责特定的物体检测。随着训练的进行,每一个 predictor对特定的物体尺寸、长宽比的物体的类别的预测会越来越好。

    7 非极大值抑制(NMS)

        由于每个grid cell都会生成若干个Bounding boxes,但是有可能不同的grid cell产生的Bounding boxes会产生交集,就此运用NMS来选择分数最高的,来抑制分数比较低的box,即去除掉冗余框。

        我自己查阅博客然后进行理解,参考了诸多博客的内容加上自己的理解,阅读完论文,下一步就要去查看源码,来进行更深的理解,由于我也阅读了YOLOV2的论文,其改变的还是比较大,尤其是Bounding box的选取采用了改进K-means算法来实现的,我以后会对源码以及YOLOV2的一些特点进行分析。

    参考资料:https://blog.csdn.net/hrsstudy/article/details/70305791

                      https://pjreddie.com/darknet/yolo/

                       

     

    展开全文
  • YOLOv1论文理解

    万次阅读 多人点赞 2017-04-20 21:46:32
    论文使用的 S=7,即将一张图像分为7×7=49个栅格每一个栅格预测B=2个boxes(每个box有 x,y,w,h,confidence,5个预测值),同时C=20(PASCAL数据集中有20个类别)。 因此,最后的prediction是7×7×30 { 即S * S * ...

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

    Abstract

    作者提出了一种新的物体检测方法YOLO。YOLO之前的物体检测方法主要是通过region proposal产生大量的可能包含待检测物体的 potential bounding box,再用分类器去判断每个 bounding box里是否包含有物体,以及物体所属类别的 probability或者 confidence,如R-CNN,Fast-R-CNN,Faster-R-CNN等。

    YOLO不同于这些物体检测方法,它将物体检测任务当做一个regression问题来处理,使用一个神经网络,直接从一整张图像来预测出bounding box 的坐标、box中包含物体的置信度和物体的probabilities。因为YOLO的物体检测流程是在一个神经网络里完成的,所以可以end to end来优化物体检测性能。

    YOLO检测物体的速度很快,标准版本的YOLO在Titan X 的 GPU 上能达到45 FPS。网络较小的版本Fast YOLO在保持mAP是之前的其他实时物体检测器的两倍的同时,检测速度可以达到155 FPS。

    相较于其他的state-of-the-art 物体检测系统,YOLO在物体定位时更容易出错,但是在背景上预测出不存在的物体(false positives)的情况会少一些。而且,YOLO比DPM、R-CNN等物体检测系统能够学到更加抽象的物体的特征,这使得YOLO可以从真实图像领域迁移到其他领域,如艺术。

    Introduction

    YOLO之前的物体检测系统使用分类器来完成物体检测任务。为了检测一个物体,这些物体检测系统要在一张测试图的不同位置和不同尺寸的bounding box上使用该物体的分类器去评估是否有该物体。如DPM系统,要使用一个滑窗(sliding window)在整张图像上均匀滑动,用分类器评估是否有物体。

    在DPM之后提出的其他方法,如R-CNN方法使用region proposal来生成整张图像中可能包含待检测物体的potential bounding boxes,然后用分类器来评估这些boxes,接着通过post-processing来改善bounding boxes,消除重复的检测目标,并基于整个场景中的其他物体重新对boxes进行打分。整个流程执行下来很慢,而且因为这些环节都是分开训练的,检测性能很难进行优化。

    作者设计了YOLO(you only look once),将物体检测任务当做回归问题(regression problem)来处理,直接通过整张图片的所有像素得到bounding box的坐标、box中包含物体的置信度和class probabilities。通过YOLO,每张图像只需要看一眼就能得出图像中都有哪些物体和这些物体的位置。

    这里写图片描述

    如图所示,使用YOLO来检测物体,其流程是非常简单明了的:
    1、将图像resize到448 * 448作为神经网络的输入
    2、运行神经网络,得到一些bounding box坐标、box中包含物体的置信度和class probabilities
    3、进行非极大值抑制,筛选Boxes

    下图是各物体检测系统的检测流程对比:

    这里写图片描述

    YOLO模型相对于之前的物体检测方法有多个优点:

    1、YOLO检测物体非常快。
    因为没有复杂的检测流程,只需要将图像输入到神经网络就可以得到检测结果,YOLO可以非常快的完成物体检测任务。标准版本的YOLO在Titan X 的 GPU 上能达到45 FPS。更快的Fast YOLO检测速度可以达到155 FPS。而且,YOLO的mAP是之前其他实时物体检测系统的两倍以上。

    2、YOLO可以很好的避免背景错误,产生false positives。
    不像其他物体检测系统使用了滑窗或region proposal,分类器只能得到图像的局部信息。YOLO在训练和测试时都能够看到一整张图像的信息,因此YOLO在检测物体时能很好的利用上下文信息,从而不容易在背景上预测出错误的物体信息。和Fast-R-CNN相比,YOLO的背景错误不到Fast-R-CNN的一半。

    3、YOLO可以学到物体的泛化特征。
    当YOLO在自然图像上做训练,在艺术作品上做测试时,YOLO表现的性能比DPM、R-CNN等之前的物体检测系统要好很多。因为YOLO可以学习到高度泛化的特征,从而迁移到其他领域。

    尽管YOLO有这些优点,它也有一些缺点:

    1、YOLO的物体检测精度低于其他state-of-the-art的物体检测系统。
    2、YOLO容易产生物体的定位错误。
    3、YOLO对小物体的检测效果不好(尤其是密集的小物体,因为一个栅格只能预测2个物体)。

    下图是各物体检测系统的检测性能对比:
    这里写图片描述

    Unified Detection

    YOLO将输入图像划分为S*S的栅格,每个栅格负责检测中心落在该栅格中的物体,如下图所示:
    这里写图片描述

    每一个栅格预测B个bounding boxes,以及这些bounding boxes的confidence scores。
    这个 confidence scores反映了模型对于这个栅格的预测:该栅格是否含有物体,以及这个box的坐标预测的有多准。
    公式定义如下:
    这里写图片描述
    如果这个栅格中不存在一个 object,则confidence score应该为0;否则的话,confidence score则为 predicted bounding box与 ground truth box之间的 IOU(intersection over union)。

    YOLO对每个bounding box有5个predictions:x, y, w, h,
    and confidence。
    坐标x,y代表了预测的bounding box的中心与栅格边界的相对值。
    坐标w,h代表了预测的bounding box的width、height相对于整幅图像width,height的比例。
    confidence就是预测的bounding box和ground truth box的IOU值。
    这里写图片描述

    每一个栅格还要预测C个 conditional class probability(条件类别概率):Pr(Classi|Object)。即在一个栅格包含一个Object的前提下,它属于某个类的概率。
    我们只为每个栅格预测一组(C个)类概率,而不考虑框B的数量。

    这里写图片描述
    注意:
    conditional class probability信息是针对每个网格的。
    confidence信息是针对每个bounding box的。

    在测试阶段,将每个栅格的conditional class probabilities与每个 bounding box的 confidence相乘:
    这里写图片描述
    这样既可得到每个bounding box的具体类别的confidence score。
    这乘积既包含了bounding box中预测的class的 probability信息,也反映了bounding box是否含有Object和bounding box坐标的准确度。

    这里写图片描述

    将YOLO用于PASCAL VOC数据集时:
    论文使用的 S=7,即将一张图像分为7×7=49个栅格每一个栅格预测B=2个boxes(每个box有 x,y,w,h,confidence,5个预测值),同时C=20(PASCAL数据集中有20个类别)。
    因此,最后的prediction是7×7×30 { 即S * S * ( B * 5 + C) }的Tensor。

    这里写图片描述
    这里写图片描述
    这里写图片描述

    Network Design

    YOLO检测网络包括24个卷积层和2个全连接层,如图所示:
    这里写图片描述
    这里写图片描述
    其中,卷积层用来提取图像特征,全连接层用来预测图像位置和类别概率值。

    YOLO网络借鉴了GoogLeNet分类网络结构。不同的是,YOLO未使用inception module,而是使用1x1卷积层(此处1x1卷积层的存在是为了跨通道信息整合)+3x3卷积层简单替代。

    Training

    首先利用ImageNet 1000-class的分类任务数据集Pretrain卷积层。使用上述网络中的前20 个卷积层,加上一个 average-pooling layer,最后加一个全连接层,作为 Pretrain 的网络。训练大约一周的时间,使得在ImageNet 2012的验证数据集Top-5的精度达到 88%,这个结果跟 GoogleNet 的效果相当。

    将Pretrain的结果的前20层卷积层应用到Detection中,并加入剩下的4个卷积层及2个全连接。
    同时为了获取更精细化的结果,将输入图像的分辨率由 224* 224 提升到 448* 448。
    将所有的预测结果都归一化到 0~1, 使用 Leaky RELU 作为激活函数。
    为了防止过拟合,在第一个全连接层后面接了一个 ratio=0.5 的 Dropout 层。
    为了提高精度,对原始图像做数据提升。

    损失函数

    损失函数的设计目标就是让坐标(x,y,w,h),confidence,classification 这个三个方面达到很好的平衡。
    简单的全部采用了sum-squared error loss来做这件事会有以下不足:
    a) 8维的localization error和20维的classification error同等重要显然是不合理的。
    b) 如果一些栅格中没有object(一幅图中这种栅格很多),那么就会将这些栅格中的bounding box的confidence 置为0,相比于较少的有object的栅格,这些不包含物体的栅格对梯度更新的贡献会远大于包含物体的栅格对梯度更新的贡献,这会导致网络不稳定甚至发散。

    这里写图片描述

    解决方案如下:
    更重视8维的坐标预测,给这些损失前面赋予更大的loss weight, 记为 λcoord ,在pascal VOC训练中取5。(上图蓝色框)
    对没有object的bbox的confidence loss,赋予小的loss weight,记为 λnoobj ,在pascal VOC训练中取0.5。(上图橙色框)
    有object的bbox的confidence loss (上图红色框) 和类别的loss (上图紫色框)的loss weight正常取1。

    对不同大小的bbox预测中,相比于大bbox预测偏一点,小box预测偏相同的尺寸对IOU的影响更大。而sum-square error loss中对同样的偏移loss是一样。
    为了缓和这个问题,作者用了一个巧妙的办法,就是将box的width和height取平方根代替原本的height和width。 如下图:small bbox的横轴值较小,发生偏移时,反应到y轴上的loss(下图绿色)比big box(下图红色)要大。

    这里写图片描述

    在 YOLO中,每个栅格预测多个bounding box,但在网络模型的训练中,希望每一个物体最后由一个bounding box predictor来负责预测。
    因此,当前哪一个predictor预测的bounding box与ground truth box的IOU最大,这个 predictor就负责 predict object。
    这会使得每个predictor可以专门的负责特定的物体检测。随着训练的进行,每一个 predictor对特定的物体尺寸、长宽比的物体的类别的预测会越来越好。

    神经网络输出后的检测流程

    这里写图片描述

    非极大值抑制

    这里写图片描述

    获取Object Detect 结果

    这里写图片描述

    参考文档

    https://zhuanlan.zhihu.com/p/25236464
    http://blog.csdn.net/surgewong/article/details/51864859
    https://deepsystems.io/en/reviews
    https://zhuanlan.zhihu.com/p/24916786?utm_source=qq&utm_medium=social
    https://arxiv.org/abs/1506.02640

    展开全文
  • YOLOv1论文解析

    2020-10-27 17:19:53
    1.论文题目:You Only Look Once:Unified, Real-Time Object Detection ​ 2.发表时间:2015 ​ 3.文献地址:https://arxiv.org/abs/1506.02640 ​ 4.论文源码: YOLO官网:https://pjreddie.com/darknet/yolo/ ...
  • YOLOv1论文阅读理解

    2019-04-27 21:13:53
    YOLOv1 早期检测任务是用分类的方法来做定位,一般分为两个阶段。YOLOv1直接把检测问题作为回归问题来做,在一次推断中直接能端到端(一阶段)得到边界框(bounding boxes)和分类概率。Fast YOLO的速度是当时其他...
  • YOLOv1论文翻译

    千次阅读 多人点赞 2018-07-04 16:50:32
    在形式上我们将confidence定义为 C = Pr(Object) ∗ IOU truth pred( Pr(Object)网格存在物体为1,不存在为0),如果网格中不包含物体则Pr(Object) = 0则confidence为0,包含物体Pr(Object) = 1则confidence等于...
  • 本人自己做的ppt,里面内容是自己对YOLOV1的个人理解,及重要代码讲解,讲的不好请多多包涵
  • YOLOv1论文学习

    2019-10-02 14:38:27
    对于这个损失函数的理解,前面没有加权值λ的项是原始loss计算值,其余3项均为根据上述1、2两种情况进行的惩罚,来使得训练过程收敛 网格设计使得在bb预测过程中强制保证了空间松散性,通常来说,一个对象落在...
  • YOLOv1 论文笔记

    2019-01-29 16:39:50
    论文地址:You Only Look Once: Unified, Real-Time Object Detection 前记: 在YOLO之前,绝大部分目标检测算法都是采用分类的思想进行的,比较具有代表性的如DPM算法,通常都是在图像上采用滑窗的方法,然后对每...
  • YOLOv1 论文学习

    2018-12-03 14:16:47
    You Only Look Once: Unified, Real-Time Object DetectionAbstract1. Introduction2. Unified Detection2.1 Network Design2.2 Training2.3 Inference2.4 Limitations of YOLO3. Comparison to other detection sys...
  • YOLOv1论文笔记

    千次阅读 2018-07-24 09:09:04
    下面进行YOLOv1论文的解读 1、YOLOv1基本思想 YOLO的核心思想就是 将目标边框定位问题转化为回归问题 ,利用整张图作为网络输入, 直接在输出层回归bounding box (边界框)的位置和bounding box 所属的类别。...
  • yolov1论文笔记

    2018-07-27 11:25:16
    1.实时性 2.处理的是整张照片,所以背景出错概率减小 3.泛化:可以迁移用于其他领域 &如何解决问题: YOLO直接从一张图片中提取特征,来预测每一个Bounding box,直接进行端到端的训练。 首先 将图片...
  • 这里写目录标题概述论文阅读介绍Dig into YOLONetwork DesignTrainingloss源码实现 概述 目标检测模型大致分为两类 ...基于anchor-free:YOLOv1 基于anchor-based:YOLOv5 论文阅读 原文链接You Onl
  • YOLOv1论文翻译解读

    2020-04-29 12:27:35
    论文地址;代码地址 这是一篇2016年的关于目标检测的论文,可以算是yolo系列的开端,起到了开山的作用,为后面的发展奠定了理论基础。这里我会针对英文与中文对应翻译解读,一般地方都是谷歌翻译,有些专业部分根据...
  • YoLov1论文理解

    2018-03-20 10:29:12
    论文使用的 S=7,即将一张图像分为7×7=49个栅格每一个栅格预测B=2个boxes(每个box有 x,y,w,h,confidence,5个预测值),同时C=20(PASCAL数据集中有20个类别)。 因此,最后的prediction是7×7×30 { 即S * S * ...
  • yolov1 论文学习总结

    2020-10-14 16:09:54
    1、将空间中的边界框和对应的类概率当作回归问题 1.Introduction 2、优点: 第一, yolo 检测速度非常快 第二,yolo 基于全部的图片范围作预测 第三,yolo 学习对象的概括性特征 2.Unified Detection 3、使用整个图片...
  • YOLOv1论文阅读笔记

    2020-04-08 00:08:43
    首先放上我根据论文实现的YOLOV1的代码:https://github.com/1991yuyang/YOLOV1-PYTORCH 代码的实现完全是根据我个人对论文的理解,如果有不对的地方请谅解.接下来来介绍YOLOV1 一.主要思想 将目标检测任务看作是一个...
  • YOLOv1论文要点理解

    2020-01-05 15:32:52
    不同的是,YOLO未使用inception module,而是使用1x1卷积层(此处1x1卷积层的存在是为了跨通道信息整合)+3x3卷积层简单替代。下图可以更加清楚地看到全连接层部分的结构: 2.损失函数 作者没有采用传统的sum-...
  • YOLOv1论文翻译-You Only Look Once:Unified, Real-Time Object Detection摘要 Abstract1.简介 Introduction2.统一检测 Unified Detection2.1 网络设计 Network Design2.2 训练 Training2.3 前向传播 Inference2.4 ...
  • yolov1论文阅读笔记

    2018-11-29 10:28:16
    1、介绍: 在yolo之前出现的方法,像DPM(deformable parts models)是使用滑动窗口的方法,分类器在整个图像上以均匀间隔的位置运行。R-CNN则是先选出提议区域,产生潜在的边界框,并在此上运行分类器。后处理细化...
  • 【目标检测】YOLOv1论文理解

    千次阅读 2020-04-14 14:22:08
    1.1 YOLOv1和Faster RCNN系列的区别 Faster R-CNN系列:         1)two-state目标检测算法;         2)重用分类器执行检测:该系列的算法,首先产生候选区域 通过一些...
  • 因为一些项目需要使用到yolov3,为了能深刻的理解yolov3算法,因而翻译了yolo系列论文。 You Only Look Once:Unified, Real-Time Object Detection 摘要 我们提出了一种新的目标检测算法:YOLO。先前通过重用分类...
  • YOLOv1的创新点 将整张图作为网络的输入,直接在输出层回归bounding box的位置和所属的类别。 速度快,是one-stage目标检测模型的开山之作。 YOLOv1详细介绍 YOLOv1(You Only Look Once:Unified,Real-Time ...
  • 论文链接:https://arxiv.org/pdf/1506.02640.pdf You Only Look Once: Unified, Real-Time Object Detection Abstract 摘要 我们提出了一种新的目标检测方法——YOLO。以前主要是通过调整修改分类方法实现检测的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 698
精华内容 279
关键字:

yolov1论文