SPP-Net 论文演练:打破固定大小约束

了解空间金字塔池化如何通过从头开始的 PyTorch 实现使 CNN 能够处理任何图像大小SPP-Net 后论文演练:打破固定大小约束首先出现在《走向数据科学》上。

来源:走向数据科学

需要有固定的输入尺寸。这实际上是一个问题,因为我们周围的物体具有不同的尺寸。例如,对于人和汽车,我们不能使用完全相同的边界框来近似它们,因为人类往往具有垂直形状,而使用水平边界框来近似汽车更合适。解决这个问题的最简单方法是使用裁剪或扭曲,这样我们就可以将图像设置为具有特定的尺寸。但是,如果图像被裁剪,裁剪区域可能会切掉部分对象,而如果我们扭曲图像,对象就会变形。这些转换显然会导致对象的视觉外观发生奇怪的变化,因此如果我们使用它们来训练分类模型,可能会降低模型的准确性。请看下面的图 1,以便更好地理解我的意思。

在本文中,我们将讨论 SPP-Net,这是一种基于 CNN 的模型,它可以接受不同尺寸的图像,这样我们就可以完全避免使用裁剪或扭曲机制。不仅如此,这里我还将尝试使用PyTorch从头开始实现它,以便您可以更好地了解详细的架构。

SPP-Net 简史

SPP-Net 是在 He 等人于 2014 年 6 月撰写的题为“用于视觉识别的深度卷积网络中的空间金字塔池化”的论文中引入的[1]。值得注意的是,SPP 本身早在本文提出之前就已经存在了。所以,这篇论文本质上提出的是SPP-Net,它是第一个将SPP思想整合到CNN上的模型。

CNN 与 SPP-Net

SPP 层的工作原理

SPP-Net 的优势

实验结果

检测任务实验

不仅在分类任务上,作者还尝试使用 SPP-Net 进行对象检测,他们的一些实验结果总结在下面的图 7 中。

从头开始的 SPP-Net

SPP 层

# 代码块 4
打印(输出)

# 代码块 6

打印(输出)结束参考文献