【影像處理】雜訊與濾波Noise and Filter - Jason Chen's Blog

文章推薦指數: 80 %
投票人數:10人

一、雜訊Noise 在電子學裡面來講,雜訊就是在訊號傳遞的過程中,會受到一些外在能量影響所產生訊號( 如雜散電磁場) 的干擾,這些這些由外在能量產生的 ... JasonChen'sBlog Home About Press Contact Home About Press Contact 【影像處理】雜訊與濾波NoiseandFilter 1/14/2019 0評論   一、雜訊Noise 在電子學裡面來講,雜訊就是在訊號傳遞的過程中,會受到一些外在能量影響所產生訊號( 如雜散電磁場) 的干擾,這些這些由外在能量產生的訊號即雜訊。

而這樣的外在能量,可能是來自系統內部的;也可能是來自系統外部的。

所以EE [註一] 領域的,特別是在搞PCBLayout的都要去注意EMI、EMC[註二]的問題。

雜訊可以說是無所不在!可能來自外太空、大氣層或者人為的雜訊,甚至是熱雜訊。

所以說對於雜訊的處理,基本上是每個搞訊號系統、訊號處理的人必須面對到的問題。

換個生活一點的例子來講,像是傳統無線電對講機、收音機聽到「唦唦唦」的吵雜聲;或者傳統老舊電視中看到 「黑白閃爍」的雪花,那些都是受到雜訊干擾的表現。

雜訊的種類有非常多,像是:Gaussiannoise、Rayleighnoise、Gammanoise、Exponentialnoise、Uniformnoise、Impulse(Salt-and-Pepper)noise... 接下來我們會只會針對在影像處理上最常遇到的兩種雜訊(Gaussiannoise、Impulsenoise)做介紹。

1-1.高斯雜訊GaussianNoise ​ 所謂的高斯雜訊,就是你將雜訊轉換到frequencydomain來看,它分佈的狀態是會呈現所謂的高斯分佈(Gaussiandistribution),也稱做常態分佈,參見下圖: 任何電子與電洞只要溫度在絕對零度K以上,就會產生振動,振動的電子就會產生訊號,而這些訊號的頻率與振幅是隨機的,即稱作熱雜訊ThermalNoise。

然後我們可以發現,熱雜訊在frequencydomain的分佈恰好是呈現高斯分佈的,也就是我們要討論的高斯雜訊。

接著我們來看一下,高斯雜訊在影像的表現是如何。

參見下圖,左邊是一張原始的乾淨影像,右邊則是受到了高斯雜訊干擾的結果。

ByMe-Ownwork,CCBY-SA3.0,https://commons.wikimedia.org/w/index.php?curid=10114819 ​1-2.鹽與胡椒雜訊Impulse(Salt-and-Pepper)Noise 今天你的sensor在sensing的過程中,突然被一個脈波(pulse)干擾到,很可能就會產生所謂的Impulsenoise。

而在影像上這種雜訊通常會以極值(0或255)出現,即一個小黑點(0)或小白點(255),看起來就像有人在你的影像上灑上了鹽(白)與胡椒(黑),所以又稱鹽與胡椒(Salt-and-Pepper)雜訊。

在影像中的表現請參見下圖,左邊是一張原始的乾淨影像,右邊則是受到了鹽與胡椒雜訊干擾的結果。

一比較下來你應該不難發現,人眼對於像於Impulsenoise真的很敏感,受到Impulsenoise干擾的影像在人眼看來真的是相當討厭的。

反而Gaussiannoise你也是看的出來它有被雜訊干擾,但就不會像鹽與胡椒那樣討厭。

當然無論如何我們都希望,我們所擷取到的影像能越接近真實情況越好!既然產生雜訊的問題是在所難免的,那麼把雜訊從影像過濾掉的技術自然也孕育而生,就是接下來我們要介紹的"濾波器Filter"。

二、濾波器Filter 濾波器Filter一詞不僅僅只會出現在影像處理中,就像前面所提到雜訊在電子/訊號的世界基本上是無所不在的,所以像在EE領域為了處理雜訊也發展出很多不同的濾波技術,常見的如:高通濾波器(HighPassFilter)、低通濾波器(LowPass Filter)、帶通濾波器(BandPass Filter)、帶拒濾波器(BandReject Filter)等等。

接續我們在前一段所提到的,在影像裡面最常出現的就是高斯雜訊Gaussian跟鹽與胡椒雜訊Impulse。

既然是雜訊,那麼我們應該還是可以透過數學原理,來設計一個對應的濾波器將它給剔除。

2-1.算術平均濾波器 ArithmeticMeanFilter 我們透過觀察高斯分佈的曲線可以發現一個重點! 雖然高斯雜訊附加上去的值每次都是隨機產生的,但是它的期望值在0! 既然如此在數學上,最簡單的方式我們可以透過做平均來將它給消除掉。

這樣做雖然看似很美好,但是有的時候我手頭上就只有一張影像啊~根本沒有辦法像上面講的那樣平均多張影像來去除高斯雜訊。

如果只有一張影像的話也沒關係,我們還是可以利用上面提到平均的原理來去除雜訊。

既然沒有多個自己可以平均,那我們就找找周邊的鄰居吧! 我們可以開一個 Neighborhood以3*3為例的話就是抓周邊的八個鄰居加自己共九個點做平均,基於利用平均消除高斯雜訊的原理,這樣做確實也能消除高斯雜訊對於影像的影響,但是卻也有一個很嚴重的副作用就是會讓影像變模糊。

e.g. 2-2.中值濾波器MedianFilter 前面提到ImpulseNoise有一個很重要的特點就是,它一般會以極值(0或255)出現,所以說我們只要將影像中的極值給去除問題就解決了。

但是卻會有另一個問題產生,如果它在影像中本來是就黑的(0)或白的(255)地方,你把它給去除這樣不就大錯特錯了嗎,加上就算它真的是Impulsenoise你也打算將它給剔除,那麼該點的數值你又該補多少進去呢? 一般來說,自然影像中每個像數點(pixel)跟周邊的鄰點是存在一定相依關係的,即灰階值會很接近。

所以這時候我們利用中值濾波器MedianFilter,透過將周邊Neighborhood的資料撈進來做排序,然後用排序後正中間的那個值做輸出。

這樣就一次解決濾掉極值跟找什麼數值補的問題。

e.g. 2-3.Alpha-修整平均濾波器Alpha-TrimmedMeanFilter 假設今天一張影像如果同時受到GaussianNoise與ImpulseNoise的影響,那麼使用平均濾波器或中值濾波器來處理的效果都不太好,平均濾波器不太能處理Impulsenoise;而中值濾波器沒辦法過濾Gaussiannoise造成的影響。

這時候我們就可以使用結合了上述兩種濾波器的Alpha-TrimmedMeanFilter。

它的概念就是,我們可以設定要過濾幾筆資訊d,然後將Neighborhood裡的資訊排序後,前d/2與後d/2剔除不計,剩下的做平均。

這樣一來就可以排除Impulsenoise造成的影響,並利用平均的原理消除Gaussiannoise。

左上的圖為SourceImage加上Gaussiannoise與Impulsenoise的結果; 左下的圖為針對左上的圖使用MedianFilter進行濾波後的結果; 右上的圖為針對左上的圖使用ArithmeticMeanFilter 進行濾波後的結果; 右下的圖為針對左上的圖使用Alpha-TrimmedMeanFilter ​進行濾波後的結果。

最後我們實作驗證出來的結果,基本上跟我們前面描述的理論是一致的! 今天這篇這先寫到這邊了,感謝各位看官們收看。

【程式碼下載】 [註一]EE:電機工程 ElectricalEngineering或 電子工程 ElectronicEngineering。

[註二] EMI​ ​(Electro-MagneticInterference)、​EMS(Electro-MagneticSusceptibility);EMI+EMS=EMC。

0評論 發表回覆。

JasonChen 如果說懷才就像懷孕,時間久了才能讓人看出來。

那麼還有另一個相似的點就是..在開花結果之前,都要先給人幹到不要不要的Q_Q 文章分類 全部 介紹 分享 加密貨幣Cryptocurrency 影像處理DIP 教學 消息 演算法Algorithm 物聯網IoT 資料科學DataScience 遊戲Game 閒聊 封存檔 三月2022 八月2021 七月2021 六月2021 五月2021 四月2021 三月2021 二月2021 一月2021 十二月2020 十一月2020 十月2020 九月2020 八月2020 七月2020 四月2020 三月2020 二月2020 一月2020 十二月2019 十一月2019 十月2019 九月2019 八月2019 七月2019 六月2019 五月2019 四月2019 三月2019 二月2019 一月2019 十二月2018 十一月2018 十月2018 九月2018 八月2018 七月2018 六月2018 五月2018 四月2018 三月2018 二月2018 一月2018 十二月2017 十一月2017 十月2017 RSS訂閱 提供者 使用自訂式範本建立您的專屬獨特網站。

開始吧



請為這篇文章評分?