1. 程式人生 > >OpenCV學習筆記-邊緣保留濾波EPF

OpenCV學習筆記-邊緣保留濾波EPF

進行邊緣保留濾波通常用到兩個方法:1、高斯雙邊濾波具體程式碼:
#高斯雙邊濾波
def bilateral_demo(img):
    dst = cv.bilateralFilter(src=img,d=0,sigmaColor=100,sigmaSpace=15)
    '''
    高斯雙邊模糊,相當於磨皮操作
    src:原影象
    d: 畫素的領域直徑,可有sigmaColor和sigmaColor計算得到
    sigmaColor: 顏色空間的標準方差,一般越大越好
    sigmaSpace: 座標空間的標準方差(畫素單位),一般越小越好
    '''
cv.imshow('bilateal_dome',dst)
    kennel = np.array([[0
, -1, 0], [-1, 5, -1], [0, -1, 0]], np.float32) # 固定寫法 表示銳化操作,可以使影象更立體 dst1 = cv.filter2D(dst, -1, kennel) # -1 就表示和原圖一樣 cv.imshow('sharpening_dome',dst1)
2、均值偏移濾波具體程式碼:
#均值偏移濾波
def mean_shift_demo(img):
    dst = cv.pyrMeanShiftFiltering(src=img,sp=15,sr=20)
    '''
    均值偏移濾波處理,想當與把圖片轉油畫的操作
    src: 原影象
sp:空間窗的半徑(The spatial window radius) sr: 色彩窗的半徑(The color window radius) 通過均值遷移來進行邊緣保留濾波有時會導致影象過度模糊 ''' cv.imshow('mean_shift_demo',dst)
具體原理還沒弄懂,具體理論部分可以看看這幾個大神的部落格:https://blog.csdn.net/jia20003/article/details/52744157https://blog.csdn.net/jia20003/article/details/8214567https://blog.csdn.net/LG1259156776/article/details/51816875