我是计算机视觉的新手,并开始学习计算机视觉社区中非常受欢迎的主题,即SIFT。但我对一个实现细节感到困惑:
在检测到关键点之后,我们必须构造4乘4的局部直方图,作为最终的SIFT描述符,对吧?每个局部直方图包含4乘4像素的局部邻域的方向。总的来说,我们有16次16等于256像素,这是在关键点周围的邻域内。所以这个邻域是一个16乘16的像素网格。
但这个社区如何详细确定?邻域是否根据关键点的方向旋转?这个256像素邻域内的像素是否根据检测到关键点的比例而分开?
感谢所有人的帮助!
答案 0 :(得分:0)
首先,以多个尺度提取SIFT关键点。使用相应的比例来计算描述符。所以,我不会说“像素”,因为它可能是模棱两可的。对于你的问题,我想引用original paper(第6.1节):
首先是图像渐变幅度 和关键点在关键点位置周围采样,使用的比例 关键点选择图像的高斯模糊水平。
为了实现定位 不变性,描述符的坐标和梯度方向相对旋转 关键点方向。
高斯加权函数,σ等于描述符窗口宽度的一半 用于为每个采样点的大小分配权重。
我希望这能回答你的问题。如果不清楚,请不要犹豫。