一、雜訊 Noise
在電子學裡面來講,雜訊就是在訊號傳遞的過程中,會受到一些外在能量影響所產生訊號 ( 如雜散電磁場 ) 的干擾,這些這些由外在能量產生的訊號即雜訊。而這樣的外在能量,可能是來自系統內部的;也可能是來自系統外部的。所以EE [註一] 領域的,特別是在搞 PCB Layout 的都要去注意EMI、EMC [註二] 的問題。
雜訊可以說是無所不在!可能來自外太空、大氣層或者人為的雜訊,甚至是熱雜訊。所以說對於雜訊的處理,基本上是每個搞訊號系統、訊號處理的人必須面對到的問題。 換個生活一點的例子來講,像是傳統無線電對講機、收音機聽到「唦唦唦」的吵雜聲;或者傳統老舊電視中看到 「黑白閃爍」的雪花,那些都是受到雜訊干擾的表現。 雜訊的種類有非常多,像是:Gaussian noise、Rayleigh noise、Gamma noise、Exponential noise、Uniform noise、Impulse(Salt-and-Pepper) noise... 接下來我們會只會針對在影像處理上最常遇到的兩種雜訊( Gaussian noise、Impulse noise )做介紹。 1-1. 高斯雜訊 Gaussian Noise 所謂的高斯雜訊,就是你將雜訊轉換到frequency domain 來看,它分佈的狀態是會呈現所謂的高斯分佈(Gaussian distribution ),也稱做常態分佈,參見下圖:
任何電子與電洞只要溫度在絕對零度K 以上,就會產生振動,振動的電子就會產生訊號,而這些訊號的頻率與振幅是隨機的,即稱作熱雜訊 Thermal Noise。然後我們可以發現,熱雜訊在 frequency domain 的分佈恰好是呈現高斯分佈的,也就是我們要討論的高斯雜訊。
接著我們來看一下,高斯雜訊在影像的表現是如何。 參見下圖,左邊是一張原始的乾淨影像,右邊則是受到了高斯雜訊干擾的結果。 1-2. 鹽與胡椒雜訊 Impulse( Salt-and-Pepper) Noise 今天你的 sensor 在 sensing 的過程中,突然被一個脈波(pulse)干擾到,很可能就會產生所謂的 Impulse noise。而在影像上這種雜訊通常會以極值(0 或 255) 出現,即一個小黑點(0) 或小白點(255),看起來就像有人在你的影像上灑上了鹽(白)與胡椒(黑),所以又稱鹽與胡椒(Salt-and-Pepper)雜訊。 在影像中的表現請參見下圖,左邊是一張原始的乾淨影像,右邊則是受到了鹽與胡椒雜訊干擾的結果。 一比較下來你應該不難發現,人眼對於像於 Impulse noise 真的很敏感,受到Impulse noise 干擾的影像在人眼看來真的是相當討厭的。反而Gaussian noise 你也是看的出來它有被雜訊干擾,但就不會像鹽與胡椒那樣討厭。 當然無論如何我們都希望,我們所擷取到的影像能越接近真實情況越好!既然產生雜訊的問題是在所難免的,那麼把雜訊從影像過濾掉的技術自然也孕育而生,就是接下來我們要介紹的 " 濾波器 Filter "。 二、濾波器 Filter
濾波器 Filter 一詞不僅僅只會出現在影像處理中,就像前面所提到雜訊在電子/訊號的世界基本上是無所不在的,所以像在EE 領域為了處理雜訊也發展出很多不同的濾波技術,常見的如:高通濾波器(High Pass Filter)、低通濾波器(Low Pass Filter)、帶通濾波器(Band Pass Filter)、帶拒濾波器(Band Reject Filter) 等等。
接續我們在前一段所提到的,在影像裡面最常出現的就是高斯雜訊 Gaussian 跟 鹽與胡椒雜訊 Impulse。既然是雜訊,那麼我們應該還是可以透過數學原理,來設計一個對應的濾波器將它給剔除。 2-1. 算術平均濾波器 Arithmetic Mean Filter 我們透過觀察高斯分佈的曲線可以發現一個重點! 雖然高斯雜訊附加上去的值每次都是隨機產生的,但是它的期望值在0! 既然如此在數學上,最簡單的方式我們可以透過做平均來將它給消除掉。
這樣做雖然看似很美好,但是有的時候我手頭上就只有一張影像啊~ 根本沒有辦法像上面講的那樣平均多張影像來去除高斯雜訊。如果只有一張影像的話也沒關係,我們還是可以利用上面提到平均的原理來去除雜訊。既然沒有多個自己可以平均,那我們就找找周邊的鄰居吧!
我們可以開一個 Neighborhood 以3*3 為例的話就是抓周邊的八個鄰居加自己共九個點做平均,基於利用平均消除高斯雜訊的原理,這樣做確實也能消除高斯雜訊對於影像的影響,但是卻也有一個很嚴重的副作用就是會讓影像變模糊。e.g. 2-2. 中值濾波器 Median Filter 前面提到 Impulse Noise 有一個很重要的特點就是,它一般會以極值( 0 或 255)出現,所以說我們只要將影像中的極值給去除問題就解決了。但是卻會有另一個問題產生,如果它在影像中本來是就黑的(0)或白的(255)地方,你把它給去除這樣不就大錯特錯了嗎,加上就算它真的是Impulse noise 你也打算將它給剔除,那麼該點的數值你又該補多少進去呢? 一般來說,自然影像中每個像數點(pixel)跟周邊的鄰點是存在一定相依關係的,即灰階值會很接近。所以這時候我們利用中值濾波器 Median Filter,透過將周邊Neighborhood 的資料撈進來做排序,然後用排序後正中間的那個值做輸出。這樣就一次解決濾掉極值跟找什麼數值補的問題。e.g. 2-3. Alpha-修整平均濾波器 Alpha-Trimmed Mean Filter 假設今天一張影像如果同時受到 Gaussian Noise 與 Impulse Noise 的影響,那麼使用平均濾波器或中值濾波器來處理的效果都不太好,平均濾波器不太能處理 Impulse noise;而中值濾波器沒辦法過濾 Gaussian noise 造成的影響。這時候我們就可以使用結合了上述兩種濾波器的 Alpha-Trimmed Mean Filter。 它的概念就是,我們可以設定要過濾幾筆資訊 d,然後將Neighborhood 裡的資訊排序後,前d/2 與 後d/2 剔除不計,剩下的做平均。 這樣一來就可以排除 Impulse noise 造成的影響,並利用平均的原理消除Gaussian noise。
左上的圖為Source Image 加上 Gaussian noise 與 Impulse noise 的結果;
左下的圖為針對左上的圖使用 Median Filter 進行濾波後的結果; 右上的圖為針對左上的圖使用 Arithmetic Mean Filter 進行濾波後的結果; 右下的圖為針對左上的圖使用 Alpha-Trimmed Mean Filter 進行濾波後的結果。 最後我們實作驗證出來的結果,基本上跟我們前面描述的理論是一致的! 今天這篇這先寫到這邊了,感謝各位看官們收看。 【程式碼下載】
[註一] EE:電機工程 Electrical Engineering 或 電子工程 Electronic Engineering。
[註二] EMI (Electro-Magnetic Interference) 、EMS (Electro-Magnetic Susceptibility);EMI + EMS = EMC。
0 評論
發表回覆。 |
Jason Chen人不光是生來就擁有一切,而是靠他從學習中得到的一切來造就自己。- 歌德 文章分類
全部
封存檔
九月 2023
|