OpenCV学习笔记14-Canny边缘检测

Canny边缘检测函数:

cv2.Canny(image, minVal, maxVal[,edges[,apertureSize[,L2gradient]]])

其中:

  • image:输入图像;
  • minVal:最小阈值;
  • maxVal:最大阈值;
  • apertureSize:计算图像梯度的Sobel卷积核的大小,默认值为 3;
  • L2gradient:用来设定求梯度大小的方程,默认False。

注:两个阈值minVal 和 maxVal的作用是确定哪些边界是真正的边界。当图像的灰度梯度高于 maxVal 时被认为是真的边界,低于 minVal 的边界会被抛弃。如果介于两者之间的话,就要看这个点是否与某个被确定为真正的边界点相连,如果是就认为它也是边界点,如果不是就抛弃。


import numpy as np
import cv2
from matplotlib import pyplot as plt

img = cv2.imread('1.png',0)
edges = cv2.Canny(img, 100, 200)  #边缘检测

plt.subplot(121), plt.imshow(img, cmap='gray'), plt.title('Original')
plt.xticks([]), plt.yticks([])
plt.subplot(122), plt.imshow(edges, cmap='gray'), plt.title('Edge')
plt.xticks([]), plt.yticks([])

plt.show()

OpenCV学习笔记14-Canny边缘检测_第1张图片


你可能感兴趣的:(opencv学习笔记,opencv)