Python cv.Canny()方法參數與使用方法

函數原型與參數詳解

OpenCV提供瞭cv.Canny()方法,該方法將輸入的原始圖像轉換為邊緣圖像。

該方法的原型為:

cv.Canny(image, threshold1, threshold2[, edges[, apertureSize[, L2gradient]]]) -> 	edges
cv.Canny(dx, dy, threshold1, threshold2[, edges[, L2gradient]]) -> edges
  • image參數是array格式的輸入圖像。
  • threshold1與threshold2分別是我們的下界閾值與上界閾值。
  • apertureSize是用於查找圖像梯度的Sobel核的大小,默認為3。
  • L2gradient指定瞭求梯度幅值的公式,是一個佈爾型變量,默認為False。當它為True時,使用L2,否則使用L1。

下面是具體代碼:

def canny_detect(image_path, show=True):
    # 讀取圖像
    image = cv2.imread(image_path, 0)
    # 獲取結果
    edges = cv2.Canny(image, 100, 200)
    if show:
        # 繪制原圖
        plt.subplot(121)
        plt.imshow(image, cmap='gray')
        plt.title('Original Image')
        plt.xticks([])
        plt.yticks([])

        # 繪制邊緣圖
        plt.subplot(122)
        plt.imshow(edges, cmap='gray')
        plt.title('Edge Image')
        plt.xticks([])
        plt.yticks([])
        plt.show()
    return edges
canny_detect('images/2.jpeg')

效果

到此這篇關於Python cv.Canny()方法參數與使用方法的文章就介紹到這瞭,更多相關Python cv.Canny()方法內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: