1. 程式人生 > >影象識別與處理之Opencv——高斯濾波GaussianBlur() 11月2日暫存

影象識別與處理之Opencv——高斯濾波GaussianBlur() 11月2日暫存

高斯濾波是一種線性平滑濾波,對於除去高斯噪聲有很好的效果。

在其官方文件中形容高斯濾波為”Probably the most useful filter”,同時也指出高斯濾波並不是效率最高的濾波演算法。

高斯演算法在官方文件給出的解釋是高斯濾波是通過對輸入陣列的每個點與輸入的高斯濾波模板執行卷積計算然後將這些結果一塊組成了濾波後的輸出陣列,通俗的講就是高斯濾波是對整幅影象進行加權平均的過程,每一個畫素點的值都由其本身和鄰域內的其他畫素值經過加權平均後得到。高斯濾波的具體操作是:用一個模板(或稱卷積、掩模)掃描影象中的每一個畫素,用模板確定的鄰域內畫素的加權平均灰度值去替代模板中心畫素點的值。

在影象處理中高斯濾波一半有兩種實現方式:一種是用離散化視窗滑窗卷積,另一種是通過傅立葉變換。最常見的就是第一種滑窗實現,只有當離散化的視窗非常大,用滑窗計算量非常大的情況下會考慮基於傅立葉變換的方法。
我們在參考其他文章的時候可能會出現高斯模糊和高斯濾波兩種說法,其實這兩種說法是有一定區別的。我們知道濾波器分為高通、低通、帶通等型別,高斯濾波和高斯模糊就是一句濾波器是低通濾波器還是高通濾波器來區分的。比如低通濾波器,畫素能量低的通過,而對於畫素能量高的部分將會採取加權平均的方法重新計算畫素的值,將能量畫素的值程式設計能量較低的值,我們知道對於影象而言其高頻部分展現影象細節,所以經過低通濾波器之後整幅影象變成低頻造成影象模糊,這就被稱為高斯模糊;相反高通濾波是允許高頻通過而過濾掉低頻,這樣將低頻畫素進行銳化操作,影象變的更加清晰,被稱為高斯濾波。說白了很簡單就是:高斯濾波是指用高斯函式作為濾波函式的濾波操作, 而高斯模糊是用高斯低通濾波器。
高斯濾波在影象處理中常用來對影象進行預處理操作,雖然耗時但是數字影象用於後期應用但是其噪聲是最大的問題,噪聲會造成很大的誤差而誤差在不同的處理操作中會累積傳遞,為了能夠得到較好的影象,對影象進行預處理去除噪聲也是針對數字影象處理的無奈之舉。
高斯濾波器是一類根據高斯函式的形狀來選擇權值的線性平滑濾波器,高斯濾波器對於服從正太分佈的噪聲非常有效,一維高斯函式如下:

相關推薦

no