opencv幾種濾波器介紹

2021-08-02 06:55:32 字數 1230 閱讀 6769

因為平時能用到各種濾波器,但是對各種濾波器效果並不清楚,現在準備把逐漸能用到的濾波器寫下來,方便自己以後查閱。

1.中值濾波

中值濾波器是一種非線性濾波器,常用於消除影象中的椒鹽雜訊。

與低通濾波不同的是,中值濾波有利於保留邊緣的尖銳度,但它會洗去均勻介質區域中的紋理。

適用於椒鹽雜訊

椒鹽雜訊是由影象感測器,傳輸通道,解碼處理等產生的黑白相間的亮暗點雜訊。椒鹽雜訊是指兩種雜訊,一種是鹽雜訊(salt noise)鹽=白色(255),另一種是胡椒雜訊(pepper noise),椒=黑色(0)。前者是高灰度雜訊,後者屬於低灰度雜訊。一般兩種雜訊同時出現,呈現在影象上就是黑白雜點。對於彩色影象,則表現為在單個畫素bgr三個通道隨機出現的255與0,如下圖所示。

中值濾波原理

在輸入影象x(n

1,n2)中,以任一畫素為中心設定乙個確定的鄰域a,a的邊長為2n+1,(n=0,1,2,…)。將鄰域內各畫素的強度值按大小順序排列,取位於中間位置的那個值(中值)作為該畫素點的輸出值,遍歷整幅影象就可完成整個濾波過程:a=

x(i,

j),  y=

med。

函式

void medianblur( inputarray src, outputarray dst,int ksize );

引數src — 輸入影象

dst — 輸出影象, 必須與 src 相同型別

ksize — 核心大小 (只需乙個值,因為使用正方形視窗),必須為奇數。

//鹽雜訊

void salt(mat&image, int n) else if (image.type() == cv_8uc3) }}

//椒雜訊

void pepper(mat &image, int n) else if (image.type() == cv_8uc3) }}

int main()

opencv 高通濾波器

高通濾波器 高通濾波器 high pass filter,hpf 是檢測影象的某個區域,然後根據畫素與周圍畫素的亮度差值來提公升 boost 該畫素的亮度的濾波器。高通濾波器是根據畫素與鄰近畫素的亮度差值來提公升該畫素的亮度。低通濾波器 low pass filter,lpf 則是在畫素與周圍畫素的...

IIR,FIR濾波器介紹

fir 有限衝擊響應濾波器,輸入消失,輸出消失。iir 無限衝擊響應濾波器,輸入消失,輸出不消失。說的通俗點就是 fir的差分方程的輸出跟以前的輸出無關 iir差分方程的輸出跟以前的輸出有關,也就是差分方程有遞迴性。從效能上來說,iir濾波器傳輸函式的極點可位於單位圓內的任何地方,因此可用較低的階數...

OpenCV濾波器核心Kernel

在影象處理中許多濾波器 濾波函式 都會使用核 kernel 那麼什麼是核呢?核其實是一組權重,決定了如何利用某乙個點周圍的畫素點來計算新的畫素點,核也被稱為卷積矩陣,對乙個區域的畫素做調和或者卷積運算,通常基於核的濾波器被稱為卷積濾波器。opencv中的filter2d 函式,可以運用由使用者指定的...