pip安装opencv-python==3.4.2.16 pip安装opencv-contrib-python==3.4.2.16
<强> 强>
<>强克里斯·哈里斯强>(<强>克里斯·哈里斯)和迈克·史蒂芬斯(Mike Stephens) 强>在1988年的论文<强>《组合式拐角和边缘检测器》强>中做了一次尝试找到这些拐角的尝试,所以现在将其称为哈里斯拐角检测器。
<强>函数:cv2.cornerHarris() 强>,<强> cv2.cornerSubPix() 强>
示例代码
进口cv2 进口numpy np 文件名=' molecule.png ' img=cv2.imread(文件名) 灰色=cv2.cvtColor (img cv2.COLOR_BGR2GRAY) 灰色=np.float32(灰色) dst=cv2.cornerHarris(灰色,2、3、0.04) #结果是扩张标志着角落,不重要 dst=cv2.dilate (dst,没有) #阈值的最优值,而异alt=" OpenCV哈里斯(Harris)角点检测的实现">输出图
<强>亚像素精度的角落强>
进口cv2 进口numpy np 文件名=' molecule.png ' img=cv2.imread(文件名) 灰色=cv2.cvtColor (img cv2.COLOR_BGR2GRAY) #发现哈里斯角落 灰色=np.float32(灰色) dst=cv2.cornerHarris(灰色,2、3、0.04) dst=cv2.dilate (dst,没有) ret, dst=cv2.threshold (dst, 0.01 * dst.max(), 255年,0) dst=np.uint8 (dst) #找到重心 受潮湿腐烂、标签数据,重心=cv2.connectedComponentsWithStats (dst) #定义标准停止和细化的角落=(cv2标准。TERM_CRITERIA_EPS + cv2。100年TERM_CRITERIA_MAX_ITER, 0.001) 角落=cv2.cornerSubPix(灰色,np.float32(重心),(5),(1,1),标准) #现在画 res=np.hstack((质心,角落)) res=np.int0 (res) img (res (: 1), res [: 0]]=[0, 0255) img (res (: 3), res[: 2]]=[0] 0255年 cv2.imwrite (subpixel5.png, img)输出图
https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_feature2d/py_features_harris/py_features_harris.html harris-corners
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
OpenCV哈里斯(Harris)角点检测的实现