一. 算法原理:
可参考:https://www.cnblogs.com/wojianxin/p/12533526.html https://www.jianshu.com/p/ff4c1a6a68d8
二. opencv 函数 cv.Canny 快速实现 Canny 边缘检测算法(必须先搞懂算法流程,才能正确使用该函数):
三. 使用函数快速进行边缘检测
1 import cv2 2 3 import numpy as np 4 5 from matplotlib import pyplot as plt 6 7 img = cv2.imread('../head_g.jpg',0) 8 9 # 80以下被归为0,200以上被归为255 10 11 edges = cv2.Canny(img,80,200) 12 13 plt.subplot(121),plt.imshow(img,cmap = 'gray') 14 15 # plt.xticks([]) 不显示x轴 16 17 plt.title('Original Image'), plt.xticks([]), plt.yticks([]) 18 19 plt.subplot(122),plt.imshow(edges,cmap = 'gray') 20 21 plt.title('Edge Image'), plt.xticks([]), plt.yticks([]) 22 23 plt.show()
四. 实验结果:
五. 本文章内容主要摘自 opencv 官方文档