为了保证特征点的方向不变性,我们必须确定特征点的方向。
我们知道,确定一个点的梯度方向有如下公式:
其中为(x,y)处的梯度大小而为该点的梯度方向。
我们在以特征点为中心的邻域窗口中进行采样,并用直方图来统计邻域像素的梯度方向,梯度直方图的范围是0~360°,其中每10度一个柱,总共36个柱,直方图的峰值代表了该关键点处邻域梯度的主方向,即为关键点的方向,图示如下:
注意:对于每一个采样点,它梯度方向所对应的直方图内的增量是它的梯度大小。
在梯度方向直方图中,若存在另一个方向相当于主峰值80%的能量时,我们会认定这个方向是该特征点的辅方向。一个特征点可能会被指定具有多个方向(一个主方向,多个辅方向),这可以增加匹配的鲁棒性。至此图像的特征点以检测完毕,每个特征点具有三个信息:位置,所在尺度,方向。