SIFT 描述符背后的故事是什么?

信息处理
2022-01-11 17:40:03

以下来自 Lowe 2004 年的论文 ( http://www.cs.ubc.ca/~lowe/papers/ijcv04.pdf )。

一种明显的方法是以适当的比例对关键点周围的局部图像强度进行采样,并使用归一化相关性度量来匹配这些强度。然而,图像块的简单相关性对导致样本配准错误的变化高度敏感,例如仿射或 3D 视点变化或非刚性变形。Edelman、Intrator 和 Poggio (1997) 已经证明了一种更好的方法。他们提出的表示基于生物视觉模型,特别是初级视觉皮层中的复杂神经元。这些复杂的神经元对特定方向和空间频率的梯度作出反应,但梯度在视网膜上的位置被允许在一个小的感受野上移动,而不是被精确定位。爱德曼等人。假设这些复杂神经元的功能是允许从一系列视点匹配和识别 3D 对象。

我试图理解 SIFT 描述符。我了解前一阶段(关键点检测器)。

我不知道为什么它是这样实现的。我想知道故事背后的故事。

1个回答

从a获得的描述符64×64在获得的尺度上的兴趣点邻域。

它将划分这个64×64地区到16×16导致 16 个补丁的补丁。

对于每个patch,我们计算梯度,然后找到梯度的主要方向(其中有一些细节),然后以主要方向作为参考方向,我们将360度划分为8个角度区域,每个区域有45度,然后求和位于每个角度区域中的每个梯度的大小。

我们可以将其视为梯度方向的分布或 8 bin 直方图(考虑到强梯度有更多信息,我们必须在计算分布时以更高的权重使用它们,因此我们使用它们的大小作为它们的权重,从而得出它们大小的总和)。然后我们将对这些直方图进行归一化。

在每个补丁的最后,我们有一个 8 bin 直方图,我们有 16 个补丁,这导致 128 个数字描述符。

通过找到主导方向,我们的描述符也变得旋转不变。通过使用梯度,我们的描述符变得对基线照明保持不变,并且通过对获得的直方图进行归一化,我们的描述符变得对图像的对比度保持不变。