Harris角点检测的C#实现及应用

叶增炉
摘要:用C#语言实现了Harris角点检测算法程序,并结合图例分析了该算法各种参数的
设置。
关键词:角点检测;Harris角点检测
角点特征具有计算量少、匹配简单以及旋转、平移、放缩不变的性质,因此角点在图像配准与匹配、目标识别、运动分析、目标跟踪等应用领域都起着非常重要的作用。Harris角点检测算法是Harris和Stephens[1]在1988年提出的角点特征提取算子。这种算子受信号处理中自相关函数的启发,给出与自相关函数相联系的矩阵M。M阵的特征值是自相关函数的一阶曲率,如果两个曲率值都高,那么就认为该点是角点特征。
Harris算子是一种有效的点特征提取算子,其优点有如下
几个方面[2]:
(1)计算简单:Haris算子中只用到灰度的一阶差
分以及滤波,操作简单;
(2)提取的点特征均匀而且合理
Haris算子对图像中的每个点都计算其兴趣值,然后在邻域中
选择最优点。Harris角点提取方法是目前效果最好的,它不受摄像机姿态及光照的影响[3]。
1Harris角点检测原理
建立矩阵

M
(1)
其中I(x,y)是亮度值,这里用灰度表示;Ix为图像I的x方向的梯度;Iy为y方向的梯度。通过分析上面矩阵可以看出,如果在一点上矩阵M的两个特征值很大,则在该点向任意方向上的一个很小的移动都会引起灰度值的较大变化。这也就说明该点是一个角点。
在矩阵M基础上,角点响应函数CRF定义为

:
(2)
其中det为矩阵M的行列式;trace为矩阵M的迹(矩阵对角线元素的和);k为常数,一般取0.04[1]。CRF的局部极大值所在的点即为角点。
该算法易受噪声的影响。为了减小噪声的干扰,在对图像进行偏导计算以后用高斯滤波器对数据进行平滑。于是(1)式矩阵M重新定义为如下(3)式

:
(3)
其中G为高斯模板;<.>表示高斯模板与函数卷积

:
(4)
按此方法求出的角点数量很多。为了减少匹配计算量,可以对想要获得的角点数量进行限制。限制方法是确定一个阈值,仅仅选取CRF值大于这个阈值的点作为角点。这个阈值根据需要的检点数量来确定。
2C#实现
Harris角点检测算法的具体编程步骤如下:
(1)对灰度图像I的每一点,计算其在x和y方向上的一
阶导数,以及二者的乘积。具体操作时,采取类似卷积的方式,分别使用(5)式中的模板wx(x方向)和模板wy(y方向)在图像上移动,并在每个位置计算对应中心像素的梯度值,得到x方向和y方向的两幅梯度图像。计算每个像素位置对应的
x方向和y方向梯度的乘积,得到1幅新的图像。三幅图像中
的每个像素对应的属性值分别代表Ix,Iy和IxIy

。
(5)
核心代码如下:
//----------------------------------//第一步:利用差分算子对图像进行滤波
//--------------------------------//定义水平方向差分算子,并求Ixx、Iyy、Ixydouble[,]Ix=newdouble[height,width];double[,]Iy=newdouble[height,width];double[,]Ixx=newdouble[height,width];double[,]Iyy=newdouble[height,width];double[,]Ixy=newdouble[height,width];filter=newCorrelation(xKernel);Ix=filter.CorrelationMatrix(scr);filter=newCorrelation(yKernel);
2010.19
11
Harris角点检测的C#实现及应用_专业资料。用C≠≠语言实现了Harris角点检测算法实现程序,并结合图例分析了该算法各种参数的设置。… … GAHCN 啊A EPOESN………....
Harris角点检测的C#实现及应用_专业资料。用C#语言实现了Harris角点检测算法程序,并结合图例分析了该算法各种参数的设置。… P0R啊_UG . …一……… ? BB^ AGA...
Harris角点检测在列车滑动监测系统中的应用_专业资料。您的论文得到两院院士关注 ...Harris 角点检测 1页 免费 Harris角点检测的C_实现... 3页 1下载券 harris...
Harris角点检测算法的实现及应用效果分析_专业资料。Harris角点检测算法是一种非常有效的图像角点提取算法,提取的角点稳定可靠、均匀而且合理。用C#语言实现了Harris角...
harris 检测器 最终将实现四种角点检测算法 包括经典的 harris、基于 canny 边缘...关于算法的梗概介绍到此 更加详细的介绍请参见 harris 的原文: C. Harris and ...
harris角点检测原理 3页 1下载券 Harris角点检测的C_实现... 3页 1下载券...一个好的角点沿着任意方向移动都将导致明显的图像 灰度变化,即:R具有大的正...
harris角点检测原理 3页 1下载券 Harris角点检测的C_实现... 3页 1下载券...1 >> ?2 "Flat"
harris角点检测原理步骤说明_计算机软件及应用_IT/计算机_专业资料。一、Harris ...Mikolajczyk and C. Schmid, Scale and Affine invariant interest point ...
Harris角点检测算法原理及其MATLAB编程实现_计算机软件及应用_IT/计算机_专业资料。...C 2 (7) Harris 角点检测实现步骤如下: 1) 求出 I(x,y)在 x、y 方向...
Harris角点检测算法_计算机软件及应用_IT/计算机_专业资料。Harris 角点检测算法...Harris 和MikeStephens 在1988 年提出, 该算法是在Moravec 算法的基础上发展...

我要评论