python-opencv函数笔记 cv2.Canny

函数原型:
cv2.Canny(image, threshold1, threshold2[, edges[, apertureSize[, L2gradient ]]])

参数 解释
image 源图像
threshold1 阈值1
threshold2 阈值2
apertureSize 可选参数,Sobel算子的大小

其中,较大的阈值2用于检测图像中明显的边缘,但一般情况下检测的效果不会那么完美,边缘检测出来是断断续续的。所以这时候用较小的第一个阈值用于将这些间断的边缘连接起来。

注意:函数返回的是二值图,包含检测出的边缘
示例

import numpy as np
import cv2 as cv
cv.namedWindow("images")
def nothing():
    pass
cv.createTrackbar("s1","images",0,255,nothing)
cv.createTrackbar("s2","images",0,255,nothing)
img = cv.imread("test/scene2.png",0)
while(1):
    s1 = cv.getTrackbarPos("s1","images")
    s2 = cv.getTrackbarPos("s2","images")
    out_img = cv.Canny(img,s1,s2)
    cv.imshow("img",out_img)
    k = cv.waitKey(1)
    if k==ord("q"):
        break
cv.destroyAllWindows()

更多参考
更多参考

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