目录
1 理论部分
1.1 简单来说
我们一个图由三个主要部分构成
- A区域(平面),大部分图像由此构成,A区域的像素值与临近区域的像素值相似
- B区域(边界),在一个方向上与临近区域相似,在另一个方向上与临近区域区别较大,像我们上面这个图就是x方向与临近区域相似,y方向与临近区域区别较大
- C区域(角点),在两个方向上都与临近区域区别较大
我们的角点检测是这样实现的
下面这张图依次代表被检测区域为平面,边界,角点,我们拿到区域后会向四周移动区域,此时会得到移动次数组值,我们用移动后的新值-原图的老值会得到一组数,我们用这一组数来判定区域为平面,边界还是角点
1.2 详细来说
详细来说的理论部分可以通过视频了解一下
- 入 是变化的方向
2 代码实现 cornerHarris()
这个函数返回值为每个像素点对应的R值的集合,根据每一张图不同R值也会不同
k是这个图中的α
conrnerHarris会把所有的结果都计算出来,我们先显示角点,我们判定 计算出来每个像素的R值>本张图中最大R值*0.01 为角点
- 如果我们缩小判定范围那么角点也会减少
我们也可以显示出边界