登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 外文翻译 > 物流管理与工程类 > 物流工程 > 正文

YOLO:统一的实时目标检测外文翻译资料

 2021-12-21 10:12  

英语原文共 10 页

YOLO:统一的实时目标检测

摘 要

本文提出了YOLO,一种新的目标检测方法。以前的目标检测工作使用分类器来执行检测。相反,本文是将目标检测框架看作是一个从空间上分割边界框和相关的类别概率的回归问题。单个神经网络在一次评估中直接从完整图像预测边界框和类别概率。由于整个检测路线是单个网络,因此可以直接在检测性能上进行端到端优化。

本文的统一架构非常快。YOLO模型以45帧/秒的速度实时处理图像。YOLO网络的一个较小版本,Fast YOLO,每秒处理帧数达到惊人的155帧,并且其mAP是其它实时检测器的mAP的两倍。与最先进的检测系统相比,YOLO产生了更多的定位误差,但不太可能在预测背景时产生误报。最后,YOLO学习得到了目标的通用特征。当从自然图像到艺术品等其它领域泛化时,它都优于其它检测方法,包括DPM和R-CNN。

一、引言

人们瞥一眼图像,立即知道图像中的物体是什么,它们在哪里以及它们如何相互关系。人类的视觉系统是快速和准确的,使我们能够执行复杂的任务,比如驾驶时弱意识思考。快速,准确的目标检测算法可以让计算机在没有专门传感器的情况下驾驶汽车,使辅助设备能够向人类用户传达实时的场景信息,并释放出通用响应式机器人系统的潜力。

目前的检测系统使用分类器来执行检测。为了检测目标,这些系统为该目标提供一个分类器,并在一张测试图像中从不同的位置和规模评估目标。像可变形部件模型(DPM)这样的系统使用滑动窗口方法,其分类器在整个图像的均匀间隔的位置上运行[10]。

最近的方法如R-CNN使用区域建议方法首先在图像中生成潜在的边界框,然后在这些建议的框上运行分类器。在分类之后,后处理用于细化边界框,消除重复的检测,并根据场景中的其它目标重新定位边界框[13]。这些复杂的流程很慢,很难去优化,因为每个单独的组件都必须单独进行训练。

本文将目标检测重新看作单一的回归问题,直接从图像像素到边界框坐标和类概率。使用该系统,只需要在图像上看一次(YOLO),就可以预测出现的目标和位置。

图1.1 YOLO检测系统

用YOLO处理图像简单直接。该系统(1)将输入图像调整为448times;448,(2)在图像上运行单个卷积网络(3)由模型的置信度对所得到的检测进行阈值处理。

YOLO非常简单:参见图1.1。单个卷积网络同时预测图中框体的多个边界框和类别概率。YOLO在全图像上训练并直接优化检测性能。与传统的物体检测方法相比,这种统一模型具有多种优势。

首先,YOLO速度非常快。由于YOLO将检测视为回归问题,所以不需要复杂的流程。测试时只需在一张新图像上运行YOLO的神经网络来预测检测。其基础网络以每秒45帧的速度在Titan X GPU上没有批处理的情况下运行,快速版本运行速度超过150fps。这意味着YOLO可以在不到25毫秒的延迟内实时处理流式视频。此外,YOLO实现了其它实时系统两倍以上的平均精度。关于该系统在网络摄像头上实时运行的演示,请参阅下面的项目网页:http://pjreddie.com/yolo/。

其次,YOLO在进行预测时,会对图像进行全面地推理。与基于滑动窗口和区域建议的技术不同,YOLO在训练期间和测试时会“看到”整个图像,所以它隐式地编码了关于类的上下文信息以及它们的外观。Fast R-CNN是一种顶级的检测方法[14],由于它看不到更大的上下文,所以在图像中会将背景块误检为目标。相较于Fast R-CNN,YOLO的背景误检数量少了一半以上。

第三,YOLO学习目标的泛化表示。当在自然图像上进行训练并对艺术作品进行测试时,YOLO大幅优于DPM和R-CNN等顶级检测方法。由于YOLO具有高度泛化能力,因此在应用于新领域或碰到不期望的输入时不太可能出故障。

YOLO在准确性方面仍然落后于最先进的检测系统。虽然它可以快速识别图像中的对象,但它很难精确定位某些对象,特别是小对象。本文在实验中进一步研究了这些权衡。

本文所有的训练和测试代码都是开源的,各种预训练模型也都可以下载。

二、统一检测

本文将目标检测的单独组件集成到单个神经网络中。该网络使用整个图像的特征来预测每个边界框。它还可以同时从一张图像中的所有类别预测出所有边界框。这意味着YOLO的网络全面地推理整张图像和图像中的所有目标。YOLO设计可实现端到端训练和实时的速度,同时保持较高的平均精度。

YOLO的系统将输入图像分成Stimes;S的网格。如果一个目标的中心落入一个网格单元中,该网格单元负责检测该目标。

每个网格单元预测B个边界框和边界框的置信度分数。这些置信度分数反映了该模型有几成把握确信边界框包含目标,以及模型对预测的边界框的准确程度的评估。在形式上,本文将置信度定义为:Pr(Object)*。如果该单元格中不存在目标,则置信度分数应为零。否则,希望置信度分数等于预测框与真实边界值的交并比(IOU)。

每个边界框由5个预测组成:x,y,w,h和置信度。(x, y)坐标表示相对于网格单元的边界框的中心坐标。宽度和高度是相对于整个图像预测的。最后,置信度预测表示预测框与实际边界框之间的IOU。

每个网格单元还预测C个条件类概率Pr(|Object)。这些概率以包含目标的网格单元为条件。YOLO只预测每个网格单元的一组类概率,而不管边界框的的数量B是多少。

在测试时,本文将条件类概率和单个边界框的置信度预测相乘:

它提供了每个框特定类别的置信度分数。这些分数编码了该类出现在框中的概率以及预测框拟合目标的程度。

图2.1 模型

YOLO系统将检测建模为回归问题。它将图像分成Stimes;S的网格,并且每个网格单元预测B个边界框、这些边界框的置信度以及C个类概率。这些预测被编码为Stimes;Stimes;(B*5 C)的张量。

为了在Pascal VOC上评估YOLO,设定S=7,B=2。Pascal VOC有20个标注类,所以C=20。最终的预测结果是7times;7times;30的张量。

2.1 网络设计

本文将此模型作为卷积神经网络来实现,并在Pascal VOC检测数据集[9]上进行评估。网络的初始卷积层从图像中提取特征,而全连接层预测输出概率和坐标。

YOLO的网络架构受到GoogLeNet图像分类模型[33]的启发。网络有24个卷积层,后面是2个全连接层。YOLO网络只使用1times;1降维层,后面是3times;3卷积层,而不是GoogLeNet使用的Inception模块,这与Lin等人[22]类似。完整的网络如图2.2所示。

此外还训练了一个快速版的YOLO,旨在突破快速物体检测的界限。快速YOLO使用具有较少卷积层(使用9层卷积层代替了24层卷积层)的神经网络,并且在这些层中使用较少的滤波器。除了网络的大小,YOLO和Fast YOLO之间的所有训练和测试参数都是相同的。

该网络的最终输出是7times;7times;30的预测张量。

图2.2 架构

YOLO的检测网络有24个卷积层,后面跟着2个全连接层。交替1times;1卷积层,减少了前面的图层的特征空间。在ImageNet分类任务上以一半的分辨率(224times;224的输入图像)预训练卷积层,然后将分辨率加倍进行检测

2.2 训练

YOLO在ImageNet 1000类竞赛数据集[29]上预训练我们的卷积层。对于预训练,使用图2.2中的前20个卷积层,接着是平均池化层和全连接层。通过对这个网络进行了大约一周的训练,并且在ImageNet 2012验证集上,获得的单一图像裁剪的top-5准确率达到了88%,与Caffersquo;s Model Zoo[24]中的GoogLeNet模型相当。

本文然后转换模型来执行检测。Ren等人表明,预训练网络中增加卷积层和连接层可以提高性能[28]。按照其提供的例子,本文添加了四个卷积层和两个全连接层,并且具有随机初始化的权重。检测通常需要细粒度的视觉信息,因此本文将网络的输入分辨率从224times;224增加到448times;448。

YOLO的最后一层预测类概率和边界框坐标。通过图像宽度和高度来规范边界框的宽度和高度,使它们落在0和1之间。同时将边界框x和y坐标参数化为特定网格单元位置的偏移量,所以它们边界也在0和1之间。

通过对最后一层使用线性激活函数,所有其它层使用下面的泄露整流线性激活:

YOLO优化了模型输出中的平方和误差。YOLO使用平方和误差是因为它很容易进行优化,但是它并不完全符合YOLO最大化平均精度的目标。对于分类误差与定位误差的权重是一样的,这可能并不理想。另外,在每张图像中,许多网格单元不包含任何对象。这将这些单元格的“置信度”分数推向零,通常压制包含目标的单元格的梯度。这可能导致模型不稳定,从而导致训练早期发散。

为了改善这一点,本文增加了边界框坐标预测损失,并减少了不包含目标的边界框的置信度预测损失。通过使用两个参数和来完成这个工作,设置lambda;coord =5和lambda;noobj =0.5。

平方和误差也可以在大边界框和小边界框中同样加权误差。错误指标应该反映出,大边界框的小偏差小于小边界框的小偏差。为了部分解决这个问题,可以预测边界框宽度和高度的平方根,而不是直接预测宽度和高度。

YOLO在每个网格单元预测多个边界框。在训练期间,每个目标YOLO只需要一个边界框预测器来负责。指定一个预测器根据哪个预测与真实边界值之间具有当前最高的IOU来“负责”预测目标。这导致边界框预测器之间的专业化。每个预测器可以更好地预测特定大小,宽高比,或目标的类别,从而改善整体召回率。

在训练期间,优化了以下多部分损失函数:

其中表示目标是否出现在单元格i中,表示在单元格中的第j个边界框对预测目标i负责。

注意,如果目标存在于该网格单元中,则损失函数仅惩罚分类错误(因此前面讨论了条件类概率)。如果该预测器对真实边界框“负责”(即,该网格单元中具有所有预测器的最高IOU),它也仅惩罚边界框坐标误差。

本文在Pascal VOC 2007和2012的训练数据集和验证数据集上进行了大约135个迭代周期的网络训练。在Pascal VOC 2012数据集上进行测试时,YOLO的训练也包含了VOC 2007的测试数据。在整个训练过程中,设定批尺寸为64,动量为0.9,衰减为0.0005。

学习率表如下:对于第一个迭代周期,我们将学习率从缓慢提高到。如果从高学习率开始,YOLO的模型通常会因梯度不稳定而发散。然后继续训练,以的学习率训练75个迭代周期,以的学习率训练30个迭代周期,最后以的学习率训练30个迭代周期。

为避免过拟合,使用了dropout以及大量数据增强。在第一个全连接层之后,以概率为0.5的随机失活层防止层与层之间的互相适应[18]。对于数据增强,本文引入随机缩放以及对原始图像尺寸高达20%的转换。同时还在HSV色彩空间中使用高达1.5的因子随机调整图像的曝光和饱和度。

2.3 推断

就像在训练中一样,预测测试图像的检测只需要一次网络评估。在PASCAL VOC数据集上,网络预测每个图像98个边界框和每个框的类概率。YOLO在测试时非常快,因为它只需要一次网络评估,这与基于分类器的方法不同。

网格设计强化了边界框预测中的空间多样性。通常网格设计对于目标落在哪个网格中是很清楚的,并且网络只为每个目标预测一个框。然而,一些大的目标或者靠近多个网格单元边界的目标可以被多个网格单元很好地定位,非极大值抑制可用于修正这些多重检测。尽管对于R-CNN或DPM来说,性能并不重要,但是非极大值抑制会增加2-3%的mAP。

2.4 YOLO的限制

YOLO对边界框预测强加空间约束,因为每个网格单元只预测两个框,并且只能有一个类。此空间约束限制了模型可以预测的邻近目标的数量。YOLO模型应用于群体中出现的小目标时,效果并不十分良好,例如成群的鸟类。

由于YOLO模型从数据中学习预测边界框,因此很难泛化到新的或不寻常的宽高比或配置中的目标。该模型还使用相对粗略的特征来预测边界框,因为YOLO的体系结构具有来自输入图像的多个下采样层。

最后,当训练一个近似检测性能的损失函数时,损失函数会同样地对待小边界框与大边界框的误差。大边界框的小误差通常是良性的,但小边界框的小误差对IOU的影响要大得多。其主要错误来源是不正确的定位。

三、与其他检测系统的比较

目标检测是计算机视觉中的核心问题。检测流程通常从输入图像上提取一组鲁棒特征(Haar [25],SIFT [23],HOG [4],卷积特征[6])开始。然后,分类器[35,21,13,10]或定位器[1,31]被用来识别特征空间中的目标。这些分类器或定位器在整个图像上或在图像中的一些子区域上以滑动窗口的方式运行[34,15,38]。本文将YOLO检测系统与几种顶级检测框架进行比较,突出了关键的相似性和差异性。

DPM(可变性组件模型):可变形组件模型(DPM)使用滑动窗口方法进行目标检测[10]。DPM使用不相交的流程来提取静态特征,对区域进行分类,预测高评分区域的边界框等。本文的系统用单个卷积神经网络替换所有这些不同的部分。网络同时进行特征提取,边界框预测,非极大值抑制和上下文推理。网络训练内嵌特征而不是静态特征,并为检测任务优化它们。YOLO

资料编号:[4048]

您需要先支付 30元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图