Canny 边缘检测

追风赶月莫停留,平芜尽处是春山。这篇文章主要讲述Canny 边缘检测相关的知识,希望能为你提供帮助。
Canny 边缘检测 在 OpenCV 中,使用函数:cv2.Canny()

cv2.Canny(image, threshold1, threshold2[, edges[, apertureSize[, L2gradient ]]])

参数解释
  • image:源图像
  • threshold1:阈值1
  • threshold2:阈值2
  • apertureSize:可选参数,Sobel算子的大小,默认值为 3
  • L2gradient,它可以用来设定求梯度大小的方程。如果设为 True,就会使用方程:Edge?Gradient(G)=Gx2+Gy2E d g e_{-} \\text {Gradient}(G)=\\sqrt{G_{x}^{2}+G_{y}^{2}}Edge??Gradient(G)=Gx2?+Gy2? ?,否则使用方程:KaTeX parse error: Expected \'}\', got \'_\' at position 12: \\text {Edge_?Gradient}(G)=\\l…代替,默认值为 False。
def nothing(x): pass img = cv2.imread(\'lena.jpg\') cv2.namedWindow(\'edges\',cv2.WINDOW_NORMAL) cv2.createTrackbar(\'minVal\',\'edges\',0,255,nothing) cv2.createTrackbar(\'maxVal\',\'edges\',0,255,nothing)while(1): minval=cv2.getTrackbarPos(\'minVal\',\'edges\') maxval=cv2.getTrackbarPos(\'maxVal\',\'edges\') edges = cv2.Canny(img,minval,maxval) cv2.imshow(\'edges\',edges) k=cv2.waitKey(1)& 0xFF if k==27: break cv2.destroyAllWindows()

【Canny 边缘检测】
Canny 边缘检测

文章图片

参考文献:《数字图像处理》《OpenCV-python 中文教程》

    推荐阅读