Canny 算法快速实现 opencv

你说的曾经没有我的故事 提交于 2020-03-21 10:53:36

一. 算法原理:

可参考:https://www.cnblogs.com/wojianxin/p/12533526.html      https://www.jianshu.com/p/ff4c1a6a68d8

二. opencv 函数 cv.Canny 快速实现 Canny 边缘检测算法(必须先搞懂算法流程,才能正确使用该函数):


opencv 官方文档 函数说明  ↑
 

参数说明,有不懂的参数可参考第一部分的链接。 ↑

三. 使用函数快速进行边缘检测

 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()

 

四. 实验结果:


Canny 边缘检测算法输出结果 ↑
 

五. 本文章内容主要摘自 opencv 官方文档

https://docs.opencv.org/3.1.0/da/d22/tutorial_py_canny.html

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!