基于深度卷积神经网络的目标检测外文翻译资料

 2022-11-27 15:03:39

英语原文共 9 页,剩余内容已隐藏,支付完成后下载完整资料


基于深度卷积神经网络的目标检测

Christian Szegedy Alexander Toshev Dumitru Erhan

Google, Inc.

{szegedy, toshev, dumitru}@google.com

摘要

深度神经网络(DNNs)最近在图像分类任务上表现出色[14]。在本文中,我们进一步来解决使用DNN进行目标检测的问题,这不仅是分类,而且是精确定位各种类的对象。我们提出了一个简单但功能强大的对象检测公式作为对象边界框掩模的回归问题。我们定义了一个多尺度推理过程,它能够通过一些网络应用以低成本生成高分辨率目标检测。该方法的最新性能表现在Pascal VOC上。

1 介绍

随着我们向更完整的图像理解迈进,拥有更精确和更详细的目标识别变得至关重要。在这种情况下,我们不仅关心图像分类,还关心精确估计图像中包含的对象类别和位置,这就是目标检测问题。

现阶段主流目标检测方法性能的提高,来源于对象表征以及机器学习模型的提高。一个最先进的检测系统的突出例子是基于组件的变形模型(DPM)[9]。它需要仔细设计对象表征,并结合流体的对象组件分解原理,是一种图模型。使用图形模型的区分性学习可以为各种类构建高精度的基于组件的模型。

与浅层差异化训练模型相结合的手工设计表示也是目标分类相关问题的最佳范例[17]。然而在过去的几年里,深度神经网络(DNNs)[12]已经成为一种强大的机器学习模型。

DNNs显示出与传统分类方法的主要区别。首先,它们是深层架构,能够学习比浅层更复杂的模型[2]。这种表达性和强大的训练算法允许学习强大的对象表示,而无需手动设计特征。这已经在具有挑战性的ImageNet分类任务[5]上经过数千个类别[14, 15]的实际验证。

在本文中,我们利用DNNs的功能来解决目标检测问题,其中我们不仅要分类,还要尝试精确定位对象。我们在这里要解决的问题是具有挑战性的,因为我们想要使用有限的计算资源在同一图像中检测具有不同大小的潜在大量对象实例。

我们提出了一个能够预测给定图像中多个对象的边界框的公式。更确切地说,我们制定了一个基于DNN的回归方法,输出对象边界框(以及方框的部分)的二进制掩码,如图1所示。另外,我们使用一个简单的边界框从这些掩码中推理提取出检测对象。为了提高定位精度,我们以多尺度的方式在全图以及少数修剪后的大图上应用DNN掩码生成,然后进行细化步骤(见图2)。这样,只有通过几十个DNN回归,我们才能实现最先进的边界框定位。

在本文中,我们证明了基于DNN的回归能够学习不仅有利于分类的特征,而且还能捕获强大的几何信息。我们使用文献[14]中引入的通用体系结构进行分类,并用回归层替换最后一层。有点令人惊讶但有力的见解是,网络在一定程度上掩码了平移不变性,也可以捕获对象的位置。

其次,我们引入一个多尺度边框推理,然后在进行细化步骤以产生精确的检测结果。通过这种方式,我们能够以低成本将预测低分辨率掩模(由输出层大小限制)的DNN应用于逐像素精度—网络每个输入图像仅应用几十次。

另外,所提出的方法非常简单。没有必要手工设计一个能够明确捕捉部件及其关系的模型。这种简单的优点是易于适用于广泛的类别,而且在更广泛的物体上也表现出更好的检测性能—刚性物体和可变形物体。这与Pascal VOC挑战[7]中的最新检测结果一起呈现在2.7节中。

2 相关工作

其中一个研究最深入的目标检测范例是基于组件的变形模型,脚注[9]的文献是最突出的例子。这种方法结合了一套称为图像结构的星型模型中的一组有差别训练的部分。它可以被认为是一个2层模型—部分是第一层,星型模型是第二层。与层次一般的DNNs相反,文献[9]的工作利用领域知识,这些部分是基于手动设计的梯度直方图(HOG)描述符[4],并且部件的构造是运动驱动的。

对象检测和解析的深层体系结构受到基于组件的模型的激励,传统上称为组合模型,其中对象表示为图像基元的分层组合。一个值得注意的例子是And = Or图[20],其中一个对象由一棵树建模,And结点表示不同的部分,Or结点表示同一部分的不同模式。与DNNs类似,And = Or图由多个图层组成,其中较低层代表较小的通用图像基元,而较高层代表对象部分。这种组合模型比DNNs更易于解释。另一方面,它们需要推理,而本文中考虑的DNN模型纯粹是前馈的,不能推断出潜在变量。

用于检测和组合模型的更多示例有基于片段作为基元[1],侧重于形状[13],使用Gabor滤波器[10]或更大的HOG滤波器[19]。这些方法传统上受到训练困难的挑战,并使用特殊设计的学程序。而且,在推论时,他们结合了自下而上和自上而下的过程。

神经网络(NNs)可以被认为是组合模型,其中节点比上述模型更通用且解释更少。神经网络在视觉问题上的应用已有数十年的历史,卷积神经网络是最突出的例子[16]。直到最近,这些模型才在大规模图像分类任务[14, 15]中以DNNs的形式出现非常成功。然而,它们在检测中的应用是有限的。场景解析是一种更精细的检测形式,已经尝试使用多层卷积神经网络[8]。医学图像的分割已经使用DNNs进行处理[3]。然而,两种方法都利用NNs作为超像素或每个像素位置的局部或半局部分类器。然而,我们的方法使用整个图像作为输入,并通过回归执行定位。因此,它是神经网络更高效的应用。

也许最接近我们的方法是文献[18],它具有类似的高层次目标,但使用更小的网络,具有不同的特征,损失函数,并且没有用于区分同一类的多个实例的机制。

图1:基于DNN回归的对象检测示意图。

图2:经过几个尺度和大图像框的对象掩码回归后,我们执行对象框提取。通过在子图像上重复相同的过程,通过当前对象框裁剪获得的方框。为简洁起见,我们仅显示完整的对象掩码,但是,我们使用全部五个对象掩码。

3 基于DNN的检测

我们的方法的核心是基于DNN的对物体掩码的回归,如图1所示。基于这个回归模型,我们可以为整个物体和部分物体生成掩码。单个DNN回归可以让我们在图像中掩盖多个对象。为了进一步提高定位的精度,我们将DNN定位器应用于一小组大型子窗口。完整的流程如图2所示,并在下面解释。

4 作为DNN回归检测

我们的模型基于文献[14]定义的卷积DNN。它由7个层组成,前5层是卷积层,最后2层是全连接层。每层使用整流线性单元作为非线性转换。三个卷积层还具有最大汇集。有关更多详细信息,我们可以参阅文献[14]。

我们采用上述通用架构进行定位。我们不使用softmax分类器作为最后一层,回归层生成对象的二进制掩码DNN,其中是模型的参数,是对象的像素总和。由于模型的输出具有固定的维数,因此假设模型所预测的输出大小为。在调整为图像大小后,生成的二进制掩码结果包含一个或多个对象:如果此像素属于对象中的二进制掩码,则其值为1,否则为0。

通过最小化每张图像的二进制掩码与Ground Truth掩码差值的范式对模型进行训练:

其中是图片训练集,这些图片包含边界框对象,而图片中的边界框对象被表征为二进制掩码。

由于我们的基础模型具有高度的非凸性,则求解最优值将得不到保证,因此有时需要利用不同的权重对损失函数进行调整,从而使得模型容易将平凡解容易被忽略掉。直觉是大多数对象相对于图像大小很小,模型很容易被一个为每个输出分配一个零值的简单解决方案所困住。为了避免这种问题,损失函数利用参数来调整模型中的权重值,模型的输出若为与Ground Truth掩码对应的非零值,则增加输出的权重。如果选择的参数较小,则具有Ground Truth值为0的输出上的误差被惩罚的强度将小于Ground Truth值为1的误差,因此即使模型输出的掩码属于对象的强度比较弱,也能促使模型预测其为非零值。

在本论文的实现中,我们设计模型的输入是,而输出的二进制掩码是,其中。

5 通过DNN生成的掩码进行精确的对象定位

虽然提出的方法能够生成高质量的掩码,但还有几个额外的挑战。首先,模型输出的单个对象掩码无法有效地对相互靠近的歧义对象进行对象检测。其次,由于模型输出大小的限制,我们生成的二进制掩码的尺寸相对于原始图像显得极其小。例如,对于尺寸为和的图像,每个输出对应到原始图片的单元大小大约为,这将无法精确地对对象进行定位,特别是当它是更小尺寸的情况下。最后,受输入是整张图片的影响,尺寸比较小的对象对输入神经元的影响很小,从而使得识别变得困难。接下来,我们将解释我们是如何解决这些问题的。

5.1 用于定位的多种掩码

为了处理图片中多个触摸的对象,我们生成不是一个而是几个二进制掩码,每个二进制掩码表示完整对象或其中的一部分。由于我们的最终目标是生成一个边界框,我们使用一个网络来预测对象框掩码和四个额外的网络来预测框的四个半框:底部,顶部,左侧和右侧半框,全部用表示,其中。这五个预测边界框组成了针对对象的超完备组,有助于减少对象检测的不确定性以及处理一些预测二进制掩码的错误。此外,如果相同类型的两个对象彼此相邻放置,则所产生的五个二进制掩码中至少有两个二进制掩码将不会具有合并的对象,这将允许消除它们的歧义。这种方法能够检测多个对象。

在训练时,我们需要将对象框转换为这五个二进制掩码。由于二进制掩码可能比原始图像小得多,因此我们需要将Ground Truth掩码缩小到网络输出的大小。用表示模型输出值对应原始图片中小方格的大小。这个小方框左上角的坐标为,大小为,其中是输出二进制掩码的大小,,是输入图像的高和宽。在训练期间,我们可以利用模型的输出预测原始图像中对应的部分,从而可以将对象边界框覆盖:

其中对应于Ground Truth对象框。对于的其余值,对应原始框余下的四个半框。

请注意,我们使用完整的对象框以及顶部,底部,左侧和右侧半框来定义总共五种不同的覆盖类型。计算的结果对应于Ground Truth框,它在训练时被用来代表模型输出的类型。

在这一点上,应该指出的是,可以为所有掩码训练一个网络,其输出层将生成它们中的所有五个掩码。这将启用可伸缩性。通过这种方式,五个定位器将共享大多数层,因此能够共享特征,这看起来是自然的,因为它们处理相同的对象,一个更激进的方法是使用相同的定位器为很多不同的类进行定位,这似乎也是可行的。

5.2 来自DNN输出的对象定位

为了完成检测过程,我们需要为每个图像估计一组边界框。虽然模型的输出分辨率小于输入图像,但我们可以将二进制掩码重新缩放为与输入图像分辨率相同的大小。这个目标是估计边界框的参数,即在模型输出掩码坐标下标定出边界框的左上角坐标以及右下角坐标。

为此,我们使用表示每个边界框与掩码具有一致性的分数,并利用具有最高分数的来推断方框。一个自然的做法是测量边界框的哪一部分被掩码覆盖:

其中,是模型输出的二进制的索引,是模型输出的二进制掩码。如果我们将其扩展到所有的五种掩码类型,则最终得分为:

其中,索引整个边框和四个半框。是中的一个,表示与的相反一半,例如,被检测对象的顶部掩码应该被模型输出的顶部掩码完全覆盖,而不是完全被底部掩码覆盖。对于,我们用表示周围的矩形区域,如果完整的掩码延伸到之外,其分数将受到惩罚。在上述求和公式中,如果一个边界框与所有五个二进制掩码一致,则被检测对象的得分将很大。

我们使用等式(3)中的分数可以极大地搜索出可能的边界框。我们考虑让边界框的平均尺寸等于图像平均尺寸的[0.1,hellip;,0.9],通过训练数据中的对象Ground Truth边框进行均值聚类估计出10个不同的比率。我们使用图像中的5个像素的步幅来滑动上述90个边界框中的每一个。需要注意的是,在计算完掩码的积分图像之后,可以使用4次操作高效计算公式(3)中的分数。确切的操作数是5(2times; #pixels 20times; #boxes),其中第一项测量积分掩码计算的复杂度,而第二项计算边框计分计算。

为了产生最后的检测集合,我们执行两种类型的过滤。第一种方法是筛选出等式(2)计算出的分数中比较高的边界框,例如大于0.5。我们通过文献[14]应用DNN分类器进一步剪切之前选出来的边界框,文献[14]对感兴趣的对象类进行训练,并将正分类的w.r.t保留到当前检测器的类中。最后,我们应用文献[9]中的非最大抑制。

5.3 多尺度细化DNN定位器

网络输出的二进制掩码分辨率不足的问题通过两种方式解决:(i)将DNN定位器应用于若干尺度和几个大的子窗口;(ii)通过在顶部推断的边界框上应用DNN定位器来改进检测(见图2)。

使用各种尺度的大窗口,我们生成几个掩码,并将它们合并为更高分辨率的掩码,每个尺度一个。合适尺度的范围取决于图像的分辨率和定位器的接收区域的大小—我们希望图像被以更高分辨率操作的网络输出覆盖,同时我们希望每个对象落在至少一个窗口内并且这些窗口的数量比较小。

为了实现上述目标,我们使用三种尺度:完整图像和两个其他尺度,使得在给定尺度下的窗口的尺寸是先前给定尺度窗口尺寸的一半。我们用每个尺度的窗口覆盖图像,使得这些窗口具有小的重叠—其面积的20%。这些窗口在数量上相对较小并且在几个尺度上覆盖图像。最重要的是,最小尺度的窗口允许以更高的分辨率定位。

在推理时,我们在所有窗口上应用DNN。请注意,它与滑动窗口方法非常不同,因为我们需要

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[22159],资料为PDF文档或Word文档,PDF文档可免费转换为Word

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

发小红书推广免费获取该资料资格。点击链接进入获取推广文案即可: Ai一键组稿 | 降AI率 | 降重复率 | 论文一键排版