10 harris 角点检测

1.harris 角点检测原理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
R的取值为多少的时候认为是角点,还要自行设定阈值通过额外的代码来进行判断,在后面的代码有显示。
有时候在角点周围的一小片区域算出来的R值可能都比较大,这时候最后还要进行非极大值抑制

2.opencv函数调用

求出每个点的角分数
在这里插入图片描述
ksize一般取(3,3)
k的取值对应的前面角点相应R值里面的a

import cv2 
import numpy as np

img = cv2.imread('test_1.jpg')
print ('img.shape:',img.shape)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# gray = np.float32(gray)
dst = cv2.cornerHarris(gray, 2, 3, 0.04)
print ('dst.shape:',dst.shape)
#上面部分的代码求出了dst,即每个点的R也就是角分数,下面要设置阈值,满足条件的点才是角点
img[dst>0.01*dst.max()]=[0,0,255]   #大于最大角分数1%的点标红为角点,多少可以自己设置
cv2.imshow('dst',img) 
cv2.waitKey(0) 
cv2.destroyAllWindows()

图片部分效果如下
在这里插入图片描述
教程来自:https://www.bilibili.com/video/BV1oJ411D71z?p=2

更详细的内容:(具有SubPixel准确度的角落)https://blog.csdn.net/u014403318/article/details/80562785

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值