Harris角点检测和Shi-Tomasi角点检测

文章目录

  • 什么是角点?
  • Harris角点的基本思想
  • Harris角点特征的数学表达
  • Harris角点的性质
  • Harris算法具体步骤
  • Tshi-Tomasi角点检测和Harris的区别

什么是角点?

  1. 两条边缘的交点
  2. 灰度梯度局部最大值对应的点(梯度方向和幅值都有着很大变化)
    Harris角点检测和Shi-Tomasi角点检测_第1张图片

Harris角点的基本思想

Harris想象有一个滑动窗口,在图像的任意方向上滑动,比较滑动前后像素灰度的变化程度,来判断是否存在角点
Harris角点检测和Shi-Tomasi角点检测_第2张图片

Harris角点特征的数学表达

Harris角点检测和Shi-Tomasi角点检测_第3张图片
其中w是窗口函数,可以是加权函数,也可以是高斯函数
Harris角点检测和Shi-Tomasi角点检测_第4张图片
将E展开之后得到
Harris角点检测和Shi-Tomasi角点检测_第5张图片
一阶可以近似为
在这里插入图片描述
推导成矩阵的形式
Harris角点检测和Shi-Tomasi角点检测_第6张图片
近似的,有
Harris角点检测和Shi-Tomasi角点检测_第7张图片
其中,M为2*2的矩阵
Harris角点检测和Shi-Tomasi角点检测_第8张图片
二次项可以看成一个椭圆函数,对M进行特征值分析:
Harris角点检测和Shi-Tomasi角点检测_第9张图片
根据λ1,λ2的值我们可以把其分为三类:

  1. λ1,λ2都很小且近似,E在所有方向接近于常数;
  2. λ1>>λ2,或者λ2>>λ1, E将在某一方向上很大;
  3. λ1,λ2都很大且近似,E将在所有方向上很大;
    Harris角点检测和Shi-Tomasi角点检测_第10张图片
    Harris角点检测和Shi-Tomasi角点检测_第11张图片
    最后根据角点响应值计算R所属区间
    在这里插入图片描述
    Harris角点检测和Shi-Tomasi角点检测_第12张图片
    不同的k值形状不同,一般取0.04-0.06
    Harris角点检测和Shi-Tomasi角点检测_第13张图片
    Harris角点检测和Shi-Tomasi角点检测_第14张图片
    Harris角点检测和Shi-Tomasi角点检测_第15张图片
    可以看到当k=0.05时,R的等高线图很接近与下面这幅图
    Harris角点检测和Shi-Tomasi角点检测_第16张图片

Harris角点的性质

对于灰度放射变化来说,具有部分的不变性。
Harris角点检测和Shi-Tomasi角点检测_第17张图片
但是当图像几何尺度变化之后,原来的边缘点可能会被判断成为角点。
Harris角点检测和Shi-Tomasi角点检测_第18张图片
Harris角点检测和Shi-Tomasi角点检测_第19张图片

Harris算法具体步骤

1.计算图像x,y方向的梯度Ix,Iy
在这里插入图片描述
2.计算每个像素点的梯度平方
在这里插入图片描述
3.计算梯度在每个像素点的和
在这里插入图片描述

4.定义在每个像素点的矩阵H,也就是前面的M
在这里插入图片描述
5.计算每个像素的角点响应
在这里插入图片描述
6.设置阈值找出可能点并进行非极大值抑制

Tshi-Tomasi角点检测和Harris的区别

主要的区别就是角点检测的打分公式
Harris角点检测的打分公式为:Harris角点检测
R = λ1λ2 - k(λ1 + λ2)²
Harris角点检测和Shi-Tomasi角点检测_第20张图片
但是Shi-Tomasi使用的打分函数为:
R = min(λ1, λ2)
如果打分超过阈值,我们就认为它是一个角点。我们可以把它绘制到λ1~λ2空间中,就会得到下图:
Harris角点检测和Shi-Tomasi角点检测_第21张图片

参考博客
[图文]Harris角点检测 - 百度文库
https://wenku.baidu.com/view/f61bc369561252d380eb6ef0.html
OpenCV学习笔记-Shi-Tomasi角点检测 - 云中寻雾的博客 - CSDN博客
https://blog.csdn.net/qq_36387683/article/details/80550964
Harris Corner(Harris角检测) - klitech - 博客园
https://www.cnblogs.com/klitech/p/5779600.html
学习笔记 2.1 — Harris角点检测与特征匹配【含实例】 - Yebin的博客 - CSDN博客
https://blog.csdn.net/weixin_41923000/article/details/88631944

你可能感兴趣的:(OpenCV)