基于 Harris 角点的伪点剔除算法

发表时间:2020/9/9   来源:《科学与技术》2020年28卷第9期   作者:程文雅 张凡 赖瀚轩
[导读] 根据传统的Harris角点检测算法检测得到的角点会出现聚簇现象,
        程文雅 张凡 赖瀚轩
        西南交通大学希望学院  四川省成都市  610000
        摘要:
        根据传统的Harris角点检测算法检测得到的角点会出现聚簇现象,并产生较多的伪角点,分布也不够均匀等问题。因此本文提出了一种根据角点响应值及距离约束的剔除算法。该算法首先通过角点响应值将检测到的角点分类,再将分类后的角点通过距离约束筛选分类,最终得到正确的角点。通过实验表明,改进算法得到的角点更准确,位置分布更均匀,还能定量取出需要的角点,该算法比传统的Harris角点更精确,所需数据量也更少,在实际应用中提高了运行速度,具有很高的实用价值。
关键词:Harris角点;伪点;均匀分布;响应值与距离约束;
1、引言
图像的特征点是图像的一种重要的局部特征,它是图像理解和模式识别中的重要信息。因此特征点提取技术是进行图像处理的有力工具。研究人员就该问题也提出了很多特征点提取技术,比如Harris与Stephens提出了得Harris角点提取算法;Harris角点提取算法是一种经典的角点检测算法,具有旋转和仿射不变性,但却存在着以下不足:Harris角点检测在对角点度量执行非极大值抑制,确定局部极大值时,角点提取的效果完全依赖于单阈值的设定。阈值大会丢失角点信息,阈值小又会提取很多伪角点,算法中采用了可调窗口的高斯平滑函数,但在实际应用中高斯窗口的大小和滤波参数不易控制,如果滤波窗口较小,则会因为噪声干扰导致众多伪角点的出现;如果滤波窗口较大,则会因为卷积的圆角效应使得角点的位置产生偏移。David Lowe提出的基于尺度不变的SIFT特征点检测算法[3]等。SIFT算法搜索所有尺度上的图像位置。通过高斯微差分函数来识别潜在的对于尺度和旋转不变的特征点。在每个候选的位置上,通过一个拟合精细的模型来确定位置和尺度。关键点的选择依据于它们的稳定程度。基于图像局部的梯度方向,分配给每个关键点位置一个或多个方向。所有后面的对图像数据的操作都相对于关键点的方向、尺度和位置进行变换,从而提供对于这些变换的不变性。在每个关键点周围的邻域内,在选定的尺度上测量图像局部的梯度。但是SIFT特征点提取算法的数据量大,提取特征点的时间较长,得到的特征点较多,其中包含较多的伪角点,目前也没有较好的剔除伪点的方法,因此要应用到实时性要求较高算法中,伪特征点的影响不容忽视,还需要对伪特征点进行剔除。
 由于Harris角点提取方法简单,提取速度快,精度高等特点,因此在机器人定位,运动估计,图像匹配,图像拼接、目标识别等很多领域都采用Harris角点算法[4-7],进行图像处理。但是不可避免的是Harris算法提取到的伪角点较多,出现很多点聚簇的现象,对后续的图像处理不仅在速度上,而且在对精度上也产生影响,严重的会导致数据错误,不能进行精确的定位等后。果因此本文提出了一种基于Harris角点的改进算法。  
2、Harris角点检测及改进算法
2.1、Harris角点检测算法
根据Harris角点的基本原理[8-9],提取算法一般分为如下几个步骤:
首先,计算每个像素点的自相关矩阵M。

最后,去除中小于阈值的像素点,并根据极大值抑制的原则得到一定数量的角点;
虽然Harris角点提取算法能够准确的、快速的提取角点,但是不可避免的有很多伪角点,并且找到的点分布不是很均匀,导致很多点都聚簇到一起,可能会降低后续算法的精度。基于此本文提出一种根据像素点的响应值及其距离来进行约束的角点剔除方法。
2.2、改进算法
      对提取到的Harris角点,通过响应值与最大响应值进行比较,将其分为两类,大于若特征点的响应值大于阈值,在其对应的距离数组中为其赋一个极大的距离值;若特征点的响应值小于阈值,需要在判断此点的响应值与剩余点的响应值,若小于则找与此点距离最近的点,并记录此点与其的最近点的距离,最后将此时的所有距离值进行排序,选取前n个点,则得到优化后的角点。其流程图如下



3、伪角点剔除效果对比
本文对Harris算法和改进的算法都进行了仿真,图像大小为1080*1920,计算机配置为win7系统,intel i5 8400,内存16G,采用C++语言进行编写,其具体效果如下:
下图2是Harris提取的角点数目,总共是2023个点,从图中可以看到提取到的角点有聚簇的现象,还有很多伪点,图3-图8是本文算法根据自己的需要,分别是当阈值为0.5和0.8时提取的500,800个角点,从图中可以看到特征点分布均匀的没有明显的聚簇现象,减少了伪角点的,提高了角点提取的精度,可以为后续的图像处理奠定了基础。

                     
表1是Harris角点提取与改进算法的时间对比,从表中可以看出在改进算法在不同的阈值和选取不同的点数时,对速率的影响不大,虽然与Harris角点提取的时间相比多了近一半,但都是在毫秒级,可以忽略,重要的是本算法可以根据需要控制点数,减少了数据量,提高了后续图像处理的时间。
   在采集图像数据时,周围环境发生变化时,亮度会发生变化,同时会才生各种噪声,包括由于相机本身的制造原因,也会产生各种噪声。因此新的方法必须在不同的亮度,噪声环境下,都能够稳定提取出特征点。基于此,试验2在试验1的基础上上对图像增加了方差为0.5和0.7的高斯噪声,并且同时将亮度降低和增加10%进行试验,将阈值设为0.8,点数在500的情况做对比试验。图7和图8是分别加入了0.5和0.7的高斯噪声,亮度不变;图9和图10是在图7和图8的基础上降低了10%的亮度,图11和图12是在图7和图8的基础上增加了10%的亮度。表2是上述试验的提取特征点的时间对比。
    从图7-12中可以看出不同的噪声会影响提取到的特征点,但是点的位置大部分都是在梯度变化大的角点位置,虽然有噪声,但是噪声的响应值很小,所以噪声对特征点的影响很小;图9、图10、图11、图12可以看出,虽然图像的亮度不同,但是得到图像点的位置基本没有变化,因此在一定范围的亮度变化并不会影响提取到的特征点;根据表1和表2的时间对比,可看出,随着噪声的增加提取特征点时间有所增加,其原因是噪声的存在,初始特征点的提取个数增加,导致时间增加;



4、  结束语
      本文的方法对像素点的响应值及距离进行约束,得到的角点不会产生聚簇现象,剔除了很多伪角点,对于不同噪声和亮度,都能够在图像上准确的、均匀的提取角点,能够定量的取出需要点数,说明算法有较强的的鲁棒性,具有一定的实用价值。此算法也为后续的图像处理减少了数据的运算量,提高了计算速度。本算法也已经用到图像实时拼接系统中,对提高图像拼接起到了重要作用。
参考文献:
[1]卢瑜, 郝兴文, 王永俊. Moravec和Harris角点检测方法比较研究[J]. 计算机技术与发展, 2011(06):101-103+106.
[2]高健, 黄心汉, 彭刚. 一种简化的SIFT图像特征点提取算法[J]. 计算机应用研究, 2008, 25(7):2213-2215.
[3]张迁, 刘政凯, 庞彦伟, et al. 基于SUSAN算法的航空影像的自动配准[J]. 测绘学报, 2003, 32(3):245-250.
[4] 张文明, 刘彬, 李海滨. 基于双目视觉的三维重建中特征点提取及匹配算法的研究[J]. 光学技术, 2016, 34(02).
[5]孟龙龙. 基于机器视觉及机器学习的室内机器人导航研究[D].
[6]杨晓敏, 吴炜, 卿粼波, et al. 图像特征点提取及匹配技术[J]. 光学精密工程, 2009(09):214-220.
[7]王付新, 黄毓瑜, 孟偲, et al. 三维重建中特征点提取算法的研究与实现[J]. 工程图学学报, 2007(03):97-102.
[8] 郭晨曦. 基于Harris角点检测算法的图像拼接技术的研究与应用[D]. 2016.
[9]李建勋, 曾琦. 基于改进Harris角点的图像配准方法: Chinese Optics Letters.
投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: