Harris 角点检测算法的应用研究

2022-07-29 06:54姚依妮
智能计算机与应用 2022年8期
关键词:实时性灰度阈值

姚依妮,王 玮

(洛阳科技职业学院 智能制造与汽车工程学院,河南 洛阳 471000)

0 引言

角点通常是指图像中梯度变化率非常大的像素点及图像边缘曲线曲率是极大值的像素点,反映了图像的局部特征。角点检测被广泛应用于目标定位、图像配准、三维重建、车辆监控、检测与识别等计算机视觉领域。角点检测算法可归纳为2 类:基于图像边缘信息的角点检测和基于灰度图像的角点检测。其中,基于图像边缘信息的角点检测对图像的边缘线依赖程度比较大,如果边缘线在提取时中断,就会对角点的提取结果造成很大的影响,且具有较大的计算量和难度。基于灰度图像的角点检测方法主要考虑像素领域点的灰度变化,即图像亮度的变化,将亮度变化足够大的点定义为角点,通过计算曲率和梯度来提取角点。常用的角点检测算法有Moravec 算法、KLT(Kanade-Lucas-Tomasi)算法、Harris 算法、SIFT(Scale Invariant Feature Transform)算法及SUSAN(Smallest Univalue Segment Assimilating Nucleus)算法等。研究指出,Harris 算法由于其计算简单、不受光源影响、提取的点特征均匀合理以及对旋转和角度变化不敏感的优点而得到了广泛应用。

1 Harris 角点检测原理

Harris 算子是Harris 和Stephenes 提出的一种特征点提取算子,主要应用微分方程和自相关矩阵来检测图像上是否存在角点。通过建立一个检测窗口,在窗口中进行图像检测,当窗口沿着任意方向移动时,判断各个方向上的灰度值是否均发生较大变化:若是,则认为窗口所在区域就是图像的角点位置。Harris 算子可以通过泰勒级数展开变形而获得窗口沿任意方向移动后的灰度变化情况,从而计算得到任意方向上的像素值的变化。Harris 算法检测时,窗口会产生微小移动,以像素点为中心,向方向和方向发生位移,图像将会分别产生大小为和的灰度变化。对于局部微小移动量[,],产生的灰度变化的自相关函数的数学表达式可写为:

其中,(,) 为加权函数,可以用常数或者高斯加权函数表示;(,) 是图像平移后的像素灰度值;(,)为图像移动前的像素灰度值。

再用泰勒公式展开、简化后,形成一个自相关矩阵,即:

其中,II分别为图像在水平方向和垂直方向的偏导函数。

根据特征值计算方法,会产生2 个特征值,这2个特征值代表了每个像素点变换的激烈程度,在实际计算过程中通过角点响应函数来计算出每个角点的响应值,再根据值来判断是否为角点。若所设定的阈值,则该像素点是图像中的角点;若,则为图像的边缘,即为非角点。角点响应函数的数学定义具体如下:

其中,是人为设置的经验常数,、为矩阵的两个特征值。

阈值选择的大小对检测出的角点数量有直接影响。的取值范围是0255。当设置的阈值较高时,检测出的角点数量较少;反之,角点数量较多。

Harris 角点检测流程如图1 所示。

图1 Harris 角点检测流程图Fig.1 Harris corner detection algorithm flowchart

Harris 角点检测算法的计算过程较为简单,且计算结果相对稳定,但是单一的Harris 算法在检测过程中却存在着非极大值抑制、高斯窗口不易控制、提取的角点是像素级的检测以及实时性较差等缺点,因此目前情况下在Harris 算法的基础上进行改进和结合的研究要更多些。

2 改进的Harris 角点检测算法的应用研究

Harris 角点检测算法在实际运行中,阈值的大小只能通过人为经验来进行判断和选择。阈值过大不仅会丢失部分角点信息,甚至还会导致伪角点的产生;阈值选择较小,不仅会降低角点的质量,还会增大对噪声的敏感程度。

2.1 改进的Harris 角点检测算法

孙万春等人针对Harris 算法在模板窗口移动过程中易受到噪声影响的问题,提出了一种Harris自适应灰度差分均值的方法,由于在角点响应的计算过程中容易产生相邻像素的重叠问题,又引入了积分图像的方法。实验表明,将2 种思想结合,在不同噪声环境下,改进的Harris 算法增强了其抗噪性,与原算法相比,角点提取的准确性和精确性都得到了提高,还降低了算法的运算量。李冰等人利用可变阈值对图像潜在角点局部区域进行粗略的筛选,再对此区域使用改进的自适应阈值的Harris 角点检测算法进行角点初检测,最后对初角点提纯,根据角点响应函数来判断模板中心点是否为角点。实验结果表明,相比于Harris 算法,此算法的计算效率提高了32.8%。吴一全等人提出了一种基于对比度的Harris 算法,依据像素间灰度值的差自适应地确定角点检测的阈值,并依据灰度相似性原理去掉伪角点,在此基础上用Harris 算法进行角点检测。实验结果表明,此算法具有较好的鲁棒性,配准时间降低,正确率更高,且自适应性更强。在提取角点时,针对角点检测算法必须给出合适的阈值问题,Wang 等人为了避免聚类现象和抑制伪角,通过迭代实现Harris 角点检测算法自适应阈值的选择,结果表明,该方法在阈值设置和特征提取方面取得了较好的效果,检测效率提高了10%。

2.2 改进的Harris 角点检测算法的实际应用

为检测工业自动化不同环境下的工业零件的角点位置,胡晓彤等人提出了一种基于图像角点灰度特征信息和自适应曲度阈值相结合的特征点检测的Harris-CPDA 算法。实验结果表明,结合两者的优势,可以改进特征点检测的定位精度和成功率,并提高检测时间的效率,准确率可达到77.59%。为解决在低空遥感监测中水稻长势的图像配准和拼接问题,周志艳等人采用图像像素灰度值标准差的自适应阈值法来确定角点的数量及质量,用欧氏距离进行图像配准。实验结果表明,角点重复率高达96%以上,稳定性较好;配准率达98%以上,拼接精度较高,且改进后的算法性能稳定,可辨性较强。刘帅兵等人为了准确、快速地获取玉米育种早期的玉米苗株数,采用HSV 颜色模型对摄取到的图像进行分割,通过数学形态的处理提取高精度玉米苗形态骨架,再利用影像尺度变换剔除带有噪声的影像,经Harris 角点检测能够较好地确定玉米苗的株数。结果表明,玉米苗总体识别率可达97%以上,在植株叶片生长状况复杂的情况下,仍具有良好的适应性。

目前,改进的Harris 角点检测主要解决因人为经验选取的阈值大小造成的角点难以确定问题,通过研究自适应阈值的算法,能够较好地去除伪角点,提高检测的实时性和精度,具有良好的鲁棒性,图像配准的时间也有所减少,且还获得了更高配准正确率。

3 Harris 角点检测与其他角点检测算法结合的应用研究

目前常用的基于灰度图像的角点检测算法有多种,各种方法的优势和不足的具体对比见表1。Harris 角点检测对噪声图像检测不准确、实时性较差,较为常见的改进方式是将Harris 角点检测与其他类型的角点检测算法相结合,这样就既能够改善Harris 算法聚簇现象严重的问题,也可以提高算法的实时性,有效解决Harris 算法的不足,并在实际场景中辅以测试验证,从而实现了优势互补。

表1 基于灰度图像的角点检测算法的对比Tab.1 Comparison of corner detection algorithms based on grayscale images

3.1 Harris 结合其他角点检测算法

董立红等人提出了一种基于Sobel 边缘检测的Harri 圆周模板角点检测算法,在提高算法角点检测效率的同时,可以降低误检率。Sobel 边缘检测用来备选角点,采用圆周模板进行非极大值抑制,并剔除邻域内临近角点,排除角点簇,从而提高检测准确度。实验表明,此算法的运行速率大大提高,降低了误检率的同时,还改善了算法的旋转不变性。为解决在图像配准过程中计算量大、速度慢等问题,蔡欣展等人提出了一种快速预筛选Harris 角点检测算法,首先用FAST 算法进行角点检测,在每个角点中引入一个抑制半径与其响应值进行比较,可以有效解决角点聚簇现象;在筛选出来的角点邻域内进行Harris 角点检测,实验结果表明此算法能有效提高角点匹配的速度和准确率。王玉凡利用角点和边缘点的特征,将预处理后的图像先进行Canny 边缘检测,得到图像的边缘信息,再对边缘图像进行Harris 角点检测,可以准确地获得特征点位置,有效提高后续图像拼接的效率和准确率。

3.2 Harris 结合其他角点检测算法的实际应用

为解决小麦苗期人工田间调查方法效率低、耗时耗力的问题,许鑫等人通过机器视觉和图像处理技术,对采集到的原始图像进行了目标区域裁剪,用K-means聚类分割算法进行特征提取,再用Harris角点检测算法对小麦苗进行识别,识别精度可达到95%以上,证明用此方法对田间小麦苗数量进行统计是有效可行的,但与拍摄过程的角度有关。高亭等人在关键词识别技术的框架下针对Harris 算法运算速度低、聚簇现象严重等问题,提出了改进Harris 的图像匹配算法,在对印刷体图像预处理后,以FAST 算法进行角点检测,Harris 算法进行角点描述,此算法既提高了文档图像检索的实时性,也改善了Harris 算法聚簇现象严重的问题,具有较好的实验效果。王杰茜等人将Harris 算法和SUSAN 算法结合,提出了一种对遥感影像中粗提取的建筑物边界不规则问题的解决方法,先通过预处理降低建筑物边界噪声的影响,然后分别使用Harris 和Susan算法对预处理后的图像进行角点检测提取,再对提取的角点进行点号排序和规则化拟合,将其连接后即可得到规则的建筑物边界,与实际边界基本一致。郭艾侠等人提出了一种融合Harris 角点与SIFT角点的检测算法,来满足农业机器人采摘整串荔枝的要求,先在荔枝结果的母枝部位采用Harris 角点检测,对采摘点的二维像素坐标进行计算,再对此采摘点进行SIFT 立体匹配,利用双目视觉系统计算采摘点的三维坐标,为农业机器人作业提供参数,此算法实现整串采摘荔枝的成功率能达到89.55%,荔枝母枝上枝叶结构复杂采摘点的计算精度需求得到满足。

Harris 角点检测算法与其他角点检测算法的结合,可以最大程度体现算法的优势,增强算法的作用及效果,不仅改善了Harris 算法聚簇现象严重的问题,而且也提高了算法的实时性,并在目前的图像配准、图像拼接等实际场景中,均取得了良好的应用效果。

4 结束语

Harris 角点检测因为具有计算简单、不受光源影响以及稳定可靠的优点而被广泛应用。但是单一的Harris 检测算法在检测过程中存在着阈值难以确定、聚簇现象严重、实时性较差等缺点,对此学界提出一系列改进,以提高其算法的综合性能。本文介绍了Harris 角点检测的技术原理,阐述了算法的检测步骤,并对Harris 角点检测的改进方法、应用领域及改进效果等方面进行着重分析研究。

近年来,Harris 角点检测算法及其他角点检测算法在使用或检测过程中并不完善。从实际工程的需求出发,角点检测技术的评价指标,如:实时性、快速性、准确性、鲁棒性等均有着不同的标准和定量,针对不同情况,需要研究人员对算法进行整体分析后才能判断能否达到特定要求,因此,角点检测测评技术指标的研究标准仍亟待完善。目前还未见到公认的关于角点检测的大规模的数据集或数据库,而且角点测评技术的维度和范围也十分有限,后续可作为重点研究。

猜你喜欢
实时性灰度阈值
非平稳声信号下的小波变换去噪方法研究
非均匀光照下文本图像分割算法研究
天津港智慧工作平台灰度发布系统和流程设计
华为“灰度”哲学
Arduino小车巡线程序的灰度阈值优化方案
利用迭代软阈值方法抑制恒时演化类核磁共振实验中的采样截断伪峰
计算机控制系统实时性的提高策略
可编程控制器的实时处理器的研究
基于B/S的实时用户行为检测管理系统设计与实现
两种改进的局部阈值分割算法