cv2.bilateralFilter 雙邊濾波


雙邊濾波是一種非線性的濾波方法,是結合圖像的空間鄰近度和像素值相似度的一種折衷處理,同時考慮空間與信息和灰度相似性,達到保邊去噪的目的,具有簡單、非迭代、局部處理的特點。之所以能夠達到保邊去噪的濾波效果是因為濾波器由兩個函數構成:一個函數是由幾何空間距離決定濾波器系數,另一個是由像素差值決定濾波器系數.
 
1 Python: cv2.bilateralFilter(src, d, sigmaColor, sigmaSpace[, dst[, borderType]]) → dst

 

 
參數解釋:
  • src:輸入圖像
  • d:過濾時周圍每個像素領域的直徑
  • sigmaColor:在color space中過濾sigma。參數越大,臨近像素將會在越遠的地方mix。
  • sigmaSpace:在coordinate space中過濾sigma。參數越大,那些顏色足夠相近的的顏色的影響越大。
 
使用方法:
1 import cv2 as cv
 2 import numpy as np
 3 cv.namedWindow("image")
 4 cv.createTrackbar("d","image",0,255,nothing)
 5 cv.createTrackbar("sigmaColor","image",0,255,nothing)
 6 cv.ctrateTrackbar("sigmaSpace","image",0,255,nothing)
 7 img = cv.imread("test.jpg",0)
 8 while(1):
 9     d = cv.getTrackbarPos("d","image")
10     sigmaColor = cv.getTrackbarPos("sigmaColor","image")
11     sigmaSpace = cv.getTrackbarPos("sigmaSpace","image")
12     out_img = cv.bilateralFilter(img,d,sigmaColor,sigmaSpace)
13     cv.imshow("out",out_img)
14     k = cv.waitKey(1) & 0xFF
15     if k ==27:
16         break
17 cv.destroyAllWindows()

來源:https://www.cnblogs.com/aoru45/p/9763999.html

 
 
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM