openCV學習筆記(4)--cvSmooth函數

openCV平滑函數

 

註解:

(1)可能大家啊對CvArr的理解不是很深刻,可以將其看做C++中的基類,當然也包括IplImage

(2)smooth支持的類型:

CV_BLUR 簡單模糊 對每個像素param1,param2求和,並縮放1/(param1*param2),亦即求簡單平均值

CV_BLUR_NO_SCALE 簡單無縮放變化的模糊 對每個像素param1,param2求和 特別說明的是輸入圖像和結果圖像必須有不同的數值精度,以保證不會發生

溢出,如果源圖像是8u,則結果圖像必須是16s或者32s

CV_MEDIAN 中值模糊 取中心像素的正方形領域類的每個像素的值用中間值代替

CV_GAUSSIAN 高斯模糊 param3爲零時,高斯卷積核sigma通過以下公式計算

sigma(x) = (n(x)/2-1)*0.30+0.80,n(x)= param1

sigma(y) = (n(y)/2-1)*0.30+0.80,n(y)= param2

如果第四個參數指定,則第三個和第四個參數分別表示sigma的水平方向和垂直方向的值

如果第三個,第四個參數已經指定,而前兩個參數爲0,那麼窗口的尺寸由sigma確定

速度較慢但最有效

CV_BILATERAL 雙向濾波 因爲高斯模糊是在圖像在空間內的像素是緩慢變化的,但隨機的兩個點可能形成很大的

像素差,高斯濾波在保留信號的條件下減少噪聲,但在接近邊緣的地方無效,雙向濾波可以解決這個問題,但需要更多的時間代價,

其需要兩個參數,param1表示空域中所使用的高斯核的寬度,param2表示顏色域高斯核的高度

發佈了41 篇原創文章 · 獲贊 9 · 訪問量 23萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章