基于局部视觉特征的图像识别研究(5)
时间:2017-05-06 11:20 来源:毕业论文 作者:毕业论文 点击:次
4. 去除低对比度的特征点 如果在DoG图像的当前像素的灰度幅值小于一个特定值,这个点就被抛弃。实际中,我们计算在位移 的 泰勒二次展开式,如果它的值小于0.03,则该点被抛弃,否则保留,且最终的位置为 ,尺度为t,其中 是尺度为t的关键点的原来位置(即步骤3最先找出的点)。 5. 去除边上的点 DoG函数容易得到边上的点,而这些点可能对即使是小数量的噪声也无法保持健壮性。因此,为了提高稳定性,我们要去除那些对图像表示没有帮助,却对边反应强烈的点。 我们的想法是在关键点上计算两个方向上的梯度。两个方向相互垂直。根据关键点周围的图像,存在三种可能性。 一个平坦的区域: 这种情况下,两个梯度值都很小。 边上:这种情况下,其中的一个梯度(与边垂直的那个)会很大,而另一个(与边平行)会很小。 一个角上:这种情况下,两个梯度的值都会很大。 其中,在角上的点是理想的点,所以我们想要的只是角上的点。如果两个梯度值都足够大,我们就把它当成一个关键点。否则,就把该点抛弃。 理论上,这个步骤是通过计算DoG函数的二次Hessian矩阵实现的,这里不再赘述。 6. 为关键点确定主方向 为关键点确定主方向是SIFT具有旋转不变性的很重要的一个过程。我们的想法是在关键点周围统计相应的梯度方向及幅值。之后再找到该区域中最主要的一个方向,把它作为关键点的方向。之后的所有计算都以此方向为基准。这样就保证了旋转不变性。 梯度的幅值和方向是用下面两个公式计算的: 之后,我们用一个直方图来统计关键点周围所有像素的幅值和方向。在该直方图中,360度被分成了36个“桶”(每个桶包括10度)。例如,得到一个点是18.97度,那就把它放到10-19这个“桶”中,而加到该“桶”上的量与这个点的幅值成比例。对所有的点完成上述操作后,直方图在某些点上会出现峰值,如下图,峰值出现在20-29间,因此,关键点的方向为3(第三个桶)。 另外,每个高于峰值80%的桶都将独立生成一个新的关键点,新点的位置与原先的点相同,但方向与新的峰值相同。 (责任编辑:qin) |