美文网首页
1.12 openCV-python 图像梯度

1.12 openCV-python 图像梯度

作者: wangsb_2020 | 来源:发表于2020-04-06 15:41 被阅读0次

    图像梯度

    梯度简单来说就是求导,openCV提供了三种不同的梯度滤波器;Sobel/Scharr/Laplacian

    import cv2.cv2
    import numpy as np
    import matplotlib.pyplot as plt
    img = cv2.imread('lufei.jpg')
    
    #cv2.CV_64F 输出图像的深度(数据类型)
    laplacian = cv2.Laplacian(img, cv2.CV_64F)
    #参数1,0为只在x方向求一阶导数,最大可以求2介导数
    sobelx = cv2.Sobel(img, cv2.CV_64F,1,0,ksize=5)
    # 参数0,1为只在y方向求一阶导数,最大可以求二阶导数
    sobely = cv2.Sobel(img,cv2.CV_64F,0,1,ksize=5)
    
    plt.subplot(2,2,1),plt.imshow(img,cmap='gray')
    plt.title('Original'), plt.xticks([]),plt.yticks([])
    plt.subplot(2,2,2), plt.imshow(laplacian, cmap='gray')
    plt.title('Laplacian'), plt.xticks([]), plt.yticks([])
    plt.subplot(2,2,3), plt.imshow(sobelx, cmap='gray')
    plt.title('Sobel X'), plt.xticks([]), plt.yticks([])
    plt.subplot(2,2,4), plt.imshow(sobely, cmap='gray')
    plt.title('Sobel Y'), plt.xticks([]), plt.yticks([])
    plt.show()
    
    image.png

    相关文章

      网友评论

          本文标题:1.12 openCV-python 图像梯度

          本文链接:https://www.haomeiwen.com/subject/ivdbphtx.html