medianBlur函数
生活随笔
收集整理的這篇文章主要介紹了
medianBlur函数
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
medianBlur函數(shù)使用中值濾波器來平滑(模糊)處理一張圖片,從src輸入,而結果從dst輸出。
且對于多通道圖片,每一個通道都單獨進行處理,并且支持就地操作(In-placeoperation)。
?
函數(shù)原型:
<span style="background-color: rgb(255, 255, 255);"><strong><span style="font-size:18px;">C++: void medianBlur(InputArray src, OutputArray dst, int ksize)</span></strong></span>參數(shù)詳解:
- 第一個參數(shù),InputArray類型的src,函數(shù)的輸入?yún)?shù),填1、3或者4通道的Mat類型的圖像;當ksize為3或者5的時候,圖像深度需為CV_8U,CV_16U,或CV_32F其中之一,而對于較大孔徑尺寸的圖片,它只能是CV_8U。
- 第二個參數(shù),OutputArray類型的dst,即目標圖像,函數(shù)的輸出參數(shù),需要和源圖片有一樣的尺寸和類型。我們可以用Mat::Clone,以源圖片為模板,來初始化得到如假包換的目標圖。
- 第三個參數(shù),int類型的ksize,孔徑的線性尺寸(aperture linear size),注意這個參數(shù)必須是大于1的奇數(shù),比如:3,5,7,9 ...
中值濾波(Median filter)是一種典型的非線性濾波技術,基本思想是用像素點鄰域灰度值的中值來代替該像素點的灰度值,該方法在去除脈沖噪聲、椒鹽噪聲的同時又能保留圖像邊緣細節(jié),.
中值濾波是基于排序統(tǒng)計理論的一種能有效抑制噪聲的非線性信號處理技術,其基本原理是把數(shù)字圖像或數(shù)字序列中一點的值用該點的一個鄰域中各點值的中值代替,讓周圍的像素值接近的真實值,從而消除孤立的噪聲點,對于斑點噪聲(speckle noise)和椒鹽噪聲(salt-and-pepper noise)來說尤其有用,因為它不依賴于鄰域內(nèi)那些與典型值差別很大的值。中值濾波器在處理連續(xù)圖像窗函數(shù)時與線性濾波器的工作方式類似,但濾波過程卻不再是加權運算。
opencv代碼:
#include "opencv2/imgproc/imgproc.hpp" #include "opencv2/highgui/highgui.hpp" #include "highgui.h" #include <stdlib.h> #include <stdio.h>using namespace cv;int main() {Mat src,dst;src = imread("D:6.jpg");medianBlur(src, dst, 5);imshow("shiyan", dst);waitKey(0);return 0; }
總結
以上是生活随笔為你收集整理的medianBlur函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 图像处理时一些卷积核子函数的生成
- 下一篇: morphologyEx函数