【问题标题】:relationship between SIFT keypoint orientation and SIFT description orientationSIFT关键点方向与SIFT描述方向的关系
【发布时间】:2015-01-01 00:34:41
【问题描述】:
我正在使用 VLfeat 开源来提取 SIFT 关键点及其描述。下图显示了其中之一。黄色圆盘表示关键点的比例(半径)和方向(线)。绿色框表示其描述(即 4x4 8-bin 方向直方图)。
问题本身很简单。
为什么这里的“关键点(黄线)的方向”与“描述中的主要(最常见)方向(绿色最流行的bin)”不同?
据我了解,关键点的方向由周围的峰值像素梯度决定。那么,方向也显示为绿色不是很自然吗?是不是因为绿框比关键点的比例大很多?
(来源:young at me.berkeley.edu)
【问题讨论】:
标签:
computer-vision
sift
vlfeat
keypoint
【解决方案1】:
我认为这只是 VLfeat 中使用的可视化问题。如here 所述
(来源:vlfeat.org)
“标准定向框架”将被可视化为一个半径向下的圆。
这里也一样。如果您旋转框架使半径指向下方,则框架的主要梯度方向应该是水平的,这在 4x4 正方形内的大多数直方图中都是一致的。
我认为这种约定是有道理的,因为指向下方的半径与框架的“主要笔画”对齐(这在视觉上很直观),但 正交主要梯度方向。
【解决方案2】:
为了解释为什么不需要这样,至少需要考虑三件事:
第一个是主(黄色)方向有一个36bin的直方图,描述符(绿色)方向是8bin;这允许几个(〜30)度的误差。
第二个是描述符直方图(绿色)是在特征区域按其主要(黄色)方向旋转后计算的,因此它们至少会通过这种旋转移动。
但最重要的原因是,两个方向都是从同一个区域计算的,但是完全不同的邻域(大小和位置不同),所以它们的梯度根本不需要相似。