简介
论文是发表在
上的一篇关于目标检测的论文。如标题所示,论文的主要贡献是提出一种高效的多尺度训练方法,实际上包含了对
的改进。实验结果为在
数据集上,基于
及论文提出的方法,其
可达
。在速度方面,单
每秒可处理
张输入图像。
论文原文 源码
0. Abstract
论文提出一种实例级的多尺度训练方法,
。与传统处理图像金字塔的方式(逐层逐像素处理)不同,
仅关注标注框附近的上下文区域(文中称之为
,本文译为碎片)。同时,这里每层标注框的选取方式参考
,即仅选择特定尺寸的标注框。在生成负样本时,碎片通过
网络生成。因此,在训练过程中,碎片是根据图像中场景的复杂性自适应生成的。最后,
打破了想要在实例级任务上获得好的结果,其模型输入必须是高分辨率图像的观点。
论文贡献:(一)提出一种高效的多尺度训练方法,可以有效减少模型的计算量,在获得
相当精度的前提下,速度是其
倍之多;(二)指出在训练高性能目标检测器时,我们不要仅关注输入图像的分辨率,而要更加注重采样的正负样本的质量。
1. Introduction
作者根据人类视觉系统的规律得出:当我们集中于附近的目标时,远处的目标会变得模糊 ,并且我们很难同时关注不同尺度的目标;同时在给定时间点,我们仅能够有效处理小范围视野的信息,自然而然地忽略掉视野中的其他内容。而当前实例级的视觉识别任务,如目标检测,偏离了这种处理视觉信息的方式。通常为了实现多尺度训练, 系列等方法基于金字塔结构逐层逐像素地处理,这带来了计算量的显著增加。
所作的工作的就是在多尺度训练中,忽略掉极端尺寸目标的梯度,如高分辨率图中的大目标和低分辨率图中的小目标等。针对 的工作,作者指出是否在金字塔上处理整幅图像(对应于文中提出的裁剪策略)?是否可以仅在目标周围采样(忽略掉图中的其余区域,对应于第一段的内容)?
同时作者也指出,忽略掉图像中的某些区域能够带来计算量的减少,但同时也有可能丢失重要信息。所以在多尺度训练过程中,应权衡计算量、上下文、负样本采样(如何高效地忽略掉图像的背景区域,同时不丢失重要信息)等方面。由此,作者提出 ,它基于图像内容在整幅图像中自适应地采样碎片。其中,正类碎片基于标注实例得到,使用 产生负类碎片(这两个方面后面会单独说明)。作者指出, 能够获得同 相当的精度,同时大幅提升了模型的推理速度。
2. Background
我们首先来介绍文中大量提及的
和
。
首先对于输入图像,使用 算法产生约 个建议框。然后对于每个建议框,将其尺寸调整为 (感觉是为了迎合 数据集的预训练模型?)。对于每个调整尺寸后的建议框,使用 提取特征,最后进行回归操作和使用 分类。在 中,由于所有的建议区域都会被调整为固定尺寸,检测模型只用适应这一种固定的尺寸,所以 具有良好的尺度不变性。但同时我们也可以看到,由于没有共享卷积运算, 模型的计算量验证依赖于建议区域的数量。
与 最大的不同是, 将利用 产生的建议区域映射到特征图上(如上图中的红色框所示),从而实现了卷积计算的共享。然后,使用 池化将映射后的建议区域调整为固定尺寸,最后进行回归操作和使用 分类。但同时我们注意到,不同大小的目标实质上是在同一尺度下的特征图上处理的,这破坏了 原来的尺度不变性(即 必须适应不同尺度图像的输入,即模型需要在多尺度条件下训练才能保证其检测效果的鲁棒性)。
作者综合分析 和 的优势和劣势,所提出的 通过产生特定尺度的碎片保留了二者的优点,这些碎片涵盖了尽可能多的特定尺度的建议区域。像 一样, 对在碎片内的所有建议区域进行高效的分类(将 中的碎片类比为 的特征图,碎片内的建议区域即为 中映射到特征图上的建议区域)。同时,由于 不对含大目标的图像进行上采样、忽略容易分类的背景区域,使其比 的训练速度更快。
作者指出在 中,尽管极端尺寸目标的梯度被忽略(即不参与训练),它仍可被看做是几乎使用了图像金字塔的所有像素,这同样会产生大量的计算。( 仍基于图像金字塔,虽然每层上可能是仅处理了少量像素,但所有层合起来则几乎处理了图像中的所有像素)而 的做法是:从多尺度的金字塔上固定地采样大小为 的区域。因此在极端大的图像中, 可能仅关注原图的 的区域。但同时,由于 中的碎片仅根据标注实例产生,其相对于原图分辨率可能很小(如根据一个小的标注实例产生一个较小的碎片,其中包含的背景区域即负样本数量有限)。所以,作者指出产生负类碎片的过程非常重要。论文的做法是首先训练一个 ,而使用 产生可能包含目标的区域,将这些产生的区域定义为负类碎片。最后,相比于 , 的精度与其相当,但后者的速度是前者的 倍之多!
3. SNIPER
3.1 Chip Generation
以 表示图像的多个尺度,产生的碎片集合为 。在特定尺度下,首先图像的尺寸被调整为 ,然后以 为间隔放置 (上述提到的 )的碎片(类似于滑动窗口的思路,即将原任何尺寸的图裁剪出 大小的区域)。对于图像的每个尺度,均会产生正类碎片和父类碎片,其详细内容如下。
3.2 Positive Chip Selection
对于尺度 ,规定一个有效范围 ,该范围决定了参与训练的标注框(这借鉴了 的思想),有效的标注框集合记为 。然后,选择包含尽可能多标注实例的碎片作为正类碎片(标注框整体处于碎片内部称为包含),将所有尺度下产生的碎片集合记为 ,最后保证每个标注框至少处于至少一个碎片内。由于上述规定的范围可能存在重叠部分,一个标注框可能处于多个碎片内部。同时,某个标注框可能会被碎片截断,而剩余部分仍会保留在碎片内部。下图是正类碎片的选取过程:
如上图左侧:绿色边框为标注的实例框,而其他颜色边框表示根据原图产生的碎片,这些碎片集合包含了所有的标注框。右图是产生的碎片的细节,其中红色边框为无效的标注框,即在一个碎片内仅处理特定尺寸范围的目标。同时我们也可以看到,第二幅图和第三幅图中的电视均被视为有效标注、第四幅图中的椅子标注被截断。
注意这个过程同 中处理候选区域的过程由异曲同工之妙,同样是根据原图裁剪得到固定大小的区域,这就使得 具有 的尺度不变性。这样,对于每一个碎片内部,由于碎片是通过不同尺度得到的,大目标和小目标的检测都得到了充分的保证。
3.3 Negative Chip Selection
由于上述过程产生的正类碎片包含了所有的标注实例,但同时由于背景区域没有参与训练,这会导致假阳率的增大(由于大量正样本而只包含极少数的负样本,模型倾向于产生正类结果,最终模型基本会将所有的输入当作正类结果)。所以,作者指出有效地产生父类碎片仍非常重要。同时由于图像中的绝大部分区域为背景,这些区域是容易被分类的,从而可以避免这部分区域的相关计算。
文中具体的做法是:首先使用一个预训练的 用于产生建议区域,这些区域可以大致指示其内部是否包含实例。如果某个某个碎片内不包含任何建议区域,那么它其中肯定不包含实例,即容易分类的样本,我们可以忽略这些区域的计算。接着,剔除那些被正类碎片包含的建议区域。然后同正类碎片的选取过程一致,将包含尽可能多的建议区域的碎片称为负类碎片,将所有尺度下产生的碎片集合记为 。下图是正类碎片的选取过程:
如上图第一行,图中的绿色边框为标注边界框。第二行中的橙色框表示由 选取的负类碎片,其中红色圆点表示某个建议框的中心。
注意这个过程将可能包含假阳样本的区域作为负类碎片(由于该区域包含大量由 产生的候选区域),同时负样本根据负类碎片得到,这样得到的负样本是难分样本,这有利于增强模型检测鲁棒性。
3.4 Label Assignment
的训练过程与 类似,即使用网络产生建议区域的同时对其分类。在训练过程中,通过 产生的建议区域根据碎片内的标注框分配类别标签和确定回归目标。具体地,将与任何标注框的交并比大于 的建议区域确定为正样本。同时像 一样,使用有效的标注框给 产生的区域分配标签,通过无效的标注框过滤掉无效的先验框。
3.5 Benefit
在训练过程中,从整个数据集中随机采样碎片以产生批训练数据。对于 数据集,每幅图像平均产生 个 大小的碎片。在训练 的图像时, 所处理的像素数仅为其他方法的 。同时由于每个碎片的大小是固定的,这使得我们可以在增大训练批次的同时可以满足 的充分利用。
以此,我们可以得出:在实例级识别任务中使用 可以消除输入图像分辨率的瓶颈,即我们可以通过再采样的碎片来训练模型。即前文提到的, 否定了想要在实例级任务上获得好的结果,其模型输入必须是高分辨率图像的观点。
4. Experiments Details
上述给出是否采样负类碎片得到的模型的召回率的比较。由结果我们可以看到,是否使用负类碎片不会显著影响模型的召回率。作者指出这是由于假阳率的改变不会影响召回率。
上述给出是否采样负类碎片得到的模型的平均准确率的比较。由结果我们可以看到,是否使用负类碎片将会显著影响模型的精度,原因在上文已分析过了。
上图中最后两行是 用于实例分割的结果。
文章还包含许多实验设置的细节,以及是如何设计消融实验的,详细内容请参考原文。
5. Conclusion
论文提出一种高效的多尺度训练方案,在 的基础上, 更加注重减少模型的计算量。 通过从多尺度金字塔中裁剪固定的碎片用于训练,采样的正类碎片包含了图像中的有效信息、采样的负类碎片可以为模型提供高质量的负样本,从而提高了模型检测精度和鲁棒性。作者最后指出,以后可以在碎片尺寸(本文为 )上开展相关研究工作。
由于没有阅读源码,本文只总结了 的大体结构和信息,详细内容请阅读论文原文。
参考
- Singh B, Najibi M, Davis L S. SNIPER: Efficient multi-scale training[C]//Advances in neural information processing systems. 2018: 9310-9320.
- https://blog.csdn.net/u014380165/article/details/82284128?utm_source=blogxgwz5.