我们之所以在进行图像分析的过程中要进行检测脚点 是因为角点更具有特性
下面我们先向大家介绍一下Harris所需要用到的函数
cv2.cornerHarris()
img:数据类型为float32的输入图像
blcokSize 角点检测中指定区域的大小
ksize Sobel求导中使用的窗口大小
k 取值参数为[0,04,0.06]
之后我们向大家展示一下相关的代码块
img cv2.imread( E:AnacondaAnaconda3.8JJiaodian.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)#对应的顺序img,blocksize,sobel,k print( dst.shape ,dst.shape)
打印出的图像shape值如下所示
BGR2GRAY转化为但一通道
img[dst 0.0001*dst.max()] [0,0,255] #角点检测不设固定值 与最大值 及角点 进行比较 cv2.imshow( dst ,img) cv2.waitKey(0) cv2.destroyAllWindows()
0.0001是指当测到的角点值大于角点最大值的0.0001倍时视为角点保存下来。
得到的结果如图所示
下一章向大家介绍特征匹配算法



