点特征提取算法研究
摘要:点特征提取是图像匹配与图像理解的基础,在数字摄影测量与遥感领域得到了广泛的应用。本文介绍了Moravec算子、Forstner算子和Harris角点提取算法的基本原理,对其实验结果进行了分析与比较,并为Moravec算子的改进提供了建议。
关键词:点特征 Moravec算子 Forstner算子 Harris角点提取
1 引言
图像特征的研究是图像领域中一个重要的研究方向,图像特征的提取被广泛地应用于图像匹配、图像识别、图像分割等诸多方面。作为图像的基本特征,点特征一般认为是指灰度信号在二维方向上有明显变化的点,如角点、圆点、交叉点等[1]。点特征提取是最常采用的一种图像特征提取,也是数字摄影测量的关键技术之一,其定位精度在很大程度上影响了数字摄影测量过程中相对定向与绝对定向的定向结果。因此点特征提取算法的研究在数字摄影测量学中有重要的意义。
近年来,学者们已经提出了多种点特征提取算法。HanSP.Moravec(1977)提出利用灰度方差提取特征点,即利用“兴趣算子”来提取特征点,这是较早的基于图像灰度信息进行特征点检测的
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
。C.Harris和M.J.Stephens(1988)在H.Moravec算法的基础上发展出一种通过自相关矩阵的角点提取算法——Harris角点提取算法。Forstner (1987,1994)算子通过计算各像素的Robert梯度和像素(c,r)为中心的一个窗口的灰度协方差矩阵,在影像中寻找具有尽可能小的接近圆的误差椭圆的点作为特征点[2]。SUSAN算子(1997)和MIC算子 (1998)则是利用像素邻域内一个圆形模板的灰度计算出每个像素的角点响应函数CRF (Corner Response Funtion),通过与阈值进行比较来确定是否为特征点,该类方法具有较强的抗噪能力[3]。除了以上几种,还有Kitchen-Rosenfeld、IPAN、CSS等多种常见的点特征提取算法。
本文将以较为常用的Moravec算子、Forstner算子和Harris角点提取算法为例,对点
特征提取算法的原理和效果进行研究与分析,为点特征提取算法的选择和改进打下基础。
2 算法原理
2.1 Moravec算子
Moravec算子是一种利用灰度方差提取点特征的算子,主要是在四个方向上,选择具有最大、最小灰度方差的点作为特征点。步骤为[2]:
(1)计算各像元的兴趣值IV (Interest value)。
在以像素(c,r)为中心的w×w的影像窗口中(如5×5的窗口),计算四个方向相邻像素灰度差的平方和,取其中最小者作为该像素(c,r)的兴趣值。
(2)给定一个经验阈值,将兴趣值大于该值的点(即兴趣值计算窗口的中心点)作为候选点。阈值的选择应以候选点中包括所需要的特征点,而又不含过多的非特征点为原则。
(3)选择候选点中的极值点作为特征点。在一定窗口内(可以不同于兴趣值计算窗口,如5×5,7×7或9×9像元),将候选点中兴趣值不是最大者全部去掉,仅留下最大者,该像素即为一个特征点。这一步骤可称为“抑制局部非最大”。
2.2 Forstner算子
Forstner算子是一种摄影测量常用的点特征定位算子。该算子通过计算各像素的Robert梯度和像素(c,r)为中心的一个窗口(如5×5)的灰度协方差矩阵,在影像中寻找具有尽可能小的接近圆的误差椭圆的点作为特征点。
其步骤[2]为:
(1)计算各像素的Robert梯度。
(2)计算l×l(如5×5或更大)窗口中灰度的协方差矩阵:
(3)计算兴趣值q与w。
其中DetN代
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
矩阵N的行列式,trN为矩阵N的迹。可以证明,q是像素(c,r)对应的误差椭圆的圆度。q =0,表明该点可能位于边缘上;如果q =1,表明为一圆。w为该像元的权。
(4)确定待选点。
如果兴趣值大于给定的阈值,则该像元为待选点。阈值为经验值,可参考下列值:
其中w为权平均值,wc为权的中值。当q >Tq且w >Tw时,该像元为待选点。
(5)选取极值点。
以权值w为依据,选择极值点,即在一个适当窗口中选择w最大的待选点,而去掉其余的点。
2.3 Harris角点提取
应用 Harris 方法提取图像中角点的过程可以分为以下几步[4]:
(1)计算图像像素点在水平和垂直方向上的梯度,以及两者的乘积,得到M中4个元素的值。
(2)对图像进行高斯滤波,得到新的 M。
(3)计算原图像上对应的每个像素点的兴趣值,即 R 值。
(4)选取局部极值点。Harris 方法认为,特征点是局部范围内的极大兴趣值对应的像素点。
(5)设定阈值,选取一定量的角点。
3 实验分析与结论
下面将主要从定位的准确性和提取速度两方面对三种算法的角点提取性能进行分析比较。
3.1 Moravec算子
Moravec算子计算简单,运行速度快,易实现,但是容易提取出错误点或出现定位错误,且对斜边十分敏感。
Moravec算子中有3个可变的参数,分别是灰度差平方和的计算窗口的大小、候选点筛选所用的阈值和求极值点的候选窗口的大小。实验可知,阈值越小,提取点的数量越多,相应地,阈值越大提取点数量越少。阈值选取过小,则会出现错误检测;阈值选取过大,则会出现漏检。阈值的确定与图像的属性和检测时的计算窗口都有关系,需要根据实际的检测情况进行调节。候选窗口的大小也与提取点的数量有关,候选窗口越小,提取点数量越多。候选窗口的过大或过小会导致漏检或错误检测。候选窗口的大小的确定与影像角点的分布状态有关,需要根据影像的具体情况确定。相较于阈值和候选窗口,计算窗口的大小对提取点的数量影响不大。图1、2、3分别显示了当计算窗口为3X3、5X5、7X7时,Moravec算子在人造测试图像上的检测结果。 观察可知,单就这幅影像的检测效果而言,所有的检测结果中都出现了斜边上点的误提取。这主要是因为Moravec算子在计算灰度差平方和时只计算了以窗口中心为中心向4个方向延伸的相邻像素的灰度差平方和,并且仅仅通过比较选取最小值的方式来排除非角点,计算的方向较为离散,部分斜边的方向不在4个方向范围内,导致斜边上点的兴趣值偏大,出现提取错误。
除此之外,比较三幅影像可以发现,计算窗口越小,矩形、三角形等规则图形的角点的定位就越为准确。导致这一情况的因素有很多,其中一个原因是计算过程中部分受周围角点和边缘性质影响的角点邻近点的兴趣值比角点大,导致定位错误。当计算窗口较小时,每次计算考虑的中心点的周围像素数较少范围较小,相应地,受角点和边缘性质影响的像素范围变小,当出现定位错误时误判位置与真实位置也更为接近,定位也就更为准确。但需要注意的是,对于真实地物的影像而言,由于地物的形状复杂、拍摄角度各异,计算窗口的改变
可能不会带来明显的提取效果改变(如图4、5、6所示)。
3.2 Forstner算子
Forstner算子的运行速度略逊于Moravec算子,但定位较Moravec更为准确,总体的提取效果也更好。
Forstner算子中有四个可变参数,分别是计算窗口大小、阈值Tq、阈值Tw和候选窗口大小。Forstner算子中阈值和候选窗口大小的作用和确定方式与Moravec算子类似,而计
、8、9所示。Forstner算子实际上只是确定了点算窗口也同样存在不宜过大的问题,如图7
特征的最佳窗口,在确定了最佳窗口后还可以用最佳窗口内加权重心化的方法进一步提高定位精度。
3.3 Harris角点提取
Harris角点提取算法计算简单,易于程序实现,提取效果优于Moravec算子,点特征定位较准确,误判错检情况较少。但由于在计算过程中反复进行高斯滤波,计算量较大,与Moravec算子和Forstner算子相比运行速度较慢。Harris角点提取算法中只有一个可变参数,即候选窗口大小。其候选窗口的大小的作用和确定方式与Moravec算子类似。为了避免提取出在局部为极大值但相较于整幅影像兴趣值过小的点可额外设定阈值,如0.01倍的兴趣值最大值,其实验结果如图10所示。
4 Moravec算子改进建议
实验结果分析可知,Moravec算子虽然具有计算简单易实现等优点,但仍存在一些待改善的问题。为了提高Moravec算子点特征提取的效率、获得更好的角点检测效果,对以下问题提出了改进的建议。
)阈值的选取问题 (1
Moravec算子的所计算出的窗口兴趣值受影像的性质影响较大,因而对不同的影像用Moravec算子进行点特征提取时需要设定不同阈值,否则会出现错误检测或点特征遗漏的情况。人工设定阈值需要进行反复的实验,增加了特征提取操作的复杂程度。针对该问题,可以对Moravec算子作如下改进:将阈值设置为由待检测影像各计算窗口兴趣值计算得到的数值,数值随影像变化而变化,省去复杂的人工实验过程。例如,可以将阈值设定为整张影像各计算窗口兴趣值的最大值的0.01倍,或是设置成整张影像各计算窗口兴趣值的平均值的0.2-0.3倍。
(2)定位错误问题
Moravec算子点特征提取过程中出现的定位错误有多种类型,其中有一类定位错误是将角点周围的邻近点误提取。针对这种错误类型,可以对Moravec算子作如下改进:通过分析这类邻近点的性质,提取出这类邻近点,并将以该类邻近点为中心的计算窗口的兴趣值设置为0,从而避免这类定位错误。例如,该类邻近点中的很多点与周围像素的灰度值相同,可以计算出影像中每个像素x方向与y方向的梯度值,选取其中较大的值作为该像素的梯度值。设置一个阈值,将梯度值小于该阈值的像素标记为该类邻近点并剔除掉,从而减少该类定位错误。
5 结束语
Moravec算子、Forstner算子、Harris角点提取算法是数字摄影测量学中常用的点特征提取算法。本文探讨了这三种算法的基本原理,对其角点提取效果进行了比较和分析。实验证明,Moravec算子运行速度较快,但定位准确度不高;Forstner算子运行速度稍慢于Moravec算子,但定位准确度比Moravec算子高;Harris算子的运行速度慢于其他两种算法,但与Moravec算子相较定位更为准确、漏检错检情况也更少。最后,根据实验的分析结果给出了Moravec算子改进的建议,为之后点特征提取算法进一步的研究提供了依据。
参考文献
[1] 官云兰, 张红军, 刘向美. 点特征提取算法探讨[J]. 东华理工学院学报, 2007, 30(1): 42-46.
[2] 张剑清, 潘励, 王树根. 摄影测量学[M]. 武汉大学出版社, 2003.
[3] 张春美. 特征点提取及其在图像匹配中的应用研究 [D]. 解放军信息工程大学, 2008.
[4] 赵万金, 龚声蓉, 刘纯平, 等. 一种自适应的 Harris 角点检测算法 [J][J]. Computer Engineering, 2008.