OpenCV图像特征harris角点检测
一痴傻人 人气:0概念
第一步:计算一个梯度 Ix,Iy
第二步:整合矩阵,计算特征值
第三步:比较特征值的大小
第四步: 非极大值抑制,把真正的角点留下来,角点周围的过滤掉
代码实现
import cv2 import numpy as np img =cv2.imread('pie.png') 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)
img[dst>0.01*dst.max()]=[0,0,255] cv2.imshow('dst',img) cv2.waitKey(0) cv2.destroyAllWindows()
加载全部内容