肖梓涵
(廣州大學(xué)附屬中學(xué),廣州 510006)
數(shù)字圖像處理技術(shù)出現(xiàn)后,人們可以利用它對(duì)圖像根據(jù)自己的需要進(jìn)行修改和美化,這使得圖片成為了像素的集合,人們可以完全控制圖片的顯示效果,對(duì)許多行業(yè)有很大的影響。
不論是電腦生成的圖像還是使用照相機(jī)拍攝的圖像,都或多或少的存在噪音。噪音就是圖像中有干擾作用的像素點(diǎn),會(huì)影響圖像的質(zhì)量。所以對(duì)圖像進(jìn)行處理的第一步,就是要對(duì)圖像進(jìn)行去噪處理。噪聲的類型有很多種,去噪的方法也有很多種,本文將介紹常見(jiàn)的幾種噪聲和去噪方法,并且通過(guò)編程實(shí)現(xiàn)去噪算法,對(duì)比去噪前后的圖片直觀地分析出不同去噪方法適用的噪聲類型。
在圖像領(lǐng)域中,圖像上斑斑點(diǎn)點(diǎn)的噪點(diǎn)雖然不會(huì)對(duì)圖像產(chǎn)生非常大的影響,但是同樣會(huì)影響圖像的展示效果。圖像的噪聲主要來(lái)自兩個(gè)方面,一是來(lái)源于圖像獲取過(guò)程中,比如拍照時(shí)由于環(huán)境和人為因素產(chǎn)生噪聲;二是來(lái)源于圖像的保存或是傳輸過(guò)程中,比如傳輸介質(zhì)或設(shè)備的質(zhì)量原因產(chǎn)生噪聲。
以下是較為常見(jiàn)的幾種噪聲:
(1)高斯噪聲:高斯噪聲是指其概率密度函數(shù)服從高斯分布,也就是正態(tài)分布的一種噪聲。當(dāng)圖像傳感器長(zhǎng)期工作,溫度過(guò)高或是圖像傳感器在拍攝時(shí)環(huán)境亮度不均勻時(shí)都有可能會(huì)產(chǎn)生高斯噪聲。
(2)脈沖噪聲:脈沖噪聲也被常常稱為椒鹽噪聲,它是由圖像傳感器,傳輸信道,解碼處理等產(chǎn)生的亮暗點(diǎn)噪聲。 椒鹽噪聲 這個(gè)名稱十分貼切,白色亮點(diǎn)是 鹽 噪聲,黑色暗點(diǎn)是 胡椒 噪聲,兩者同時(shí)出現(xiàn),在圖像上呈現(xiàn)出黑白相間的雜點(diǎn)。
去噪的思路分為兩種,一是找到噪聲的具體位置,將其用附近的背景色替換;二是遍歷圖像中的每一個(gè)像素,用特定的方式處理每個(gè)像素,使得噪聲與背景色融合起來(lái)。如果采用第一種方式,希望通過(guò)附近的背景色去直接替換噪點(diǎn),需要精準(zhǔn)的判斷噪點(diǎn)的具體位置。但是尋找噪聲的位置這個(gè)過(guò)程不是由人眼去執(zhí)行的,而是交由機(jī)器去處理的,所以很難找到每個(gè)噪點(diǎn)的具體位置。而采用第二種方式,遍歷每個(gè)元素,不需要去判斷該元素是否是噪聲,只需要按照規(guī)定的算法執(zhí)行即可。對(duì)比以上兩種方式,第二種方式通用性更強(qiáng),所以大部分去噪技術(shù)采用的方案都是使噪點(diǎn)與背景色融合。以下是常見(jiàn)的去噪技術(shù):
(1)均值去噪:均值去噪的原理是使模板范圍內(nèi)中心值等于模板范圍內(nèi)所有元素值的平均值。這樣的處理會(huì)將噪點(diǎn)與背景色融合起來(lái)。
(2)加權(quán)均值去噪:實(shí)質(zhì)還是均值去噪,但是不同之處是加權(quán)均值去噪考慮了元素之間的距離對(duì)中心元素的值產(chǎn)生的作用不同,所以在計(jì)算平均值時(shí)加了權(quán)重的概念。[1]
(3)中值去噪:中值去噪的原理是使模板范圍內(nèi)中心值等于模板范圍內(nèi)所有元素的中位數(shù),這樣同樣可以起到將噪點(diǎn)與背景色融合的作用。
均值去噪是將模板范圍內(nèi)元素均值賦給中間元素,這樣在遍歷圖像的像素時(shí),當(dāng)噪聲位于模板中間時(shí),它就會(huì)被模板中像素的平均值所代替。這樣,就可以達(dá)到去噪的目的[2]。模板是常見(jiàn)的3*3九宮格模板,如表1所示:
表1 去噪模板
表格中的數(shù)字代表求均值時(shí)元素的權(quán)重,由于該均值去噪算法不考慮權(quán)重,所以都賦值為1。當(dāng)遍歷到圖像中的某個(gè)區(qū)域如表2所示:
表2 圖像區(qū)域
其中,中心元素為噪聲,對(duì)其使用均值去噪算法,中心像素的值為:
可以看出,中心噪聲被融合進(jìn)背景色。
使用MATLAB進(jìn)行實(shí)現(xiàn)的代碼如下:
加權(quán)均值去噪算法和均值去噪算法類似,不同的是,加權(quán)均值去噪算法考慮了模板中其他點(diǎn)與中心點(diǎn)距離不同影響也不同這一因素。所以給不同距離的元素賦予了不同的權(quán)值,這樣在求平均值時(shí)可能會(huì)更加合理。
但是加權(quán)均值去噪算法未必一定要優(yōu)于均值去噪算法,因?yàn)闄?quán)值的確定是個(gè)很大的問(wèn)題,如果權(quán)值設(shè)置的不合理,可能會(huì)影響到去噪的效果。
加權(quán)均值去噪算法最常見(jiàn)的模板就是四鄰域權(quán)值模板,也就是給3*3模板中,中心元素對(duì)自己影響最大,權(quán)值賦予4,中心元素上下左右四個(gè)元素權(quán)值賦予2,其他四個(gè)元素權(quán)值賦予模板如表3所示:
表3 去噪模板
表格中的數(shù)字代表求均值時(shí)元素的權(quán)重,當(dāng)遍歷到圖像中的某個(gè)區(qū)域如表4所示:
表4 圖像區(qū)域
其中,中心元素為噪聲,對(duì)其使用均值去噪算法,中心像素的值為:
由結(jié)果可以看出,對(duì)于以上圖像區(qū)域,加權(quán)均值去噪算法去噪效果沒(méi)有均值去噪算法好,但是加權(quán)的思想是一個(gè)很大的進(jìn)步。
使用MATLAB進(jìn)行實(shí)現(xiàn)的代碼如下:
中值去噪算法的思路也很簡(jiǎn)單,就是將模板內(nèi)的中位數(shù)賦值給中心元素,原理是在一個(gè)模板中,排在中間的元素基本不可能是噪聲,因?yàn)槿绻窃肼?,那說(shuō)明模板中大多數(shù)元素是噪聲,這種情況比較少見(jiàn)。
使用MATLAB進(jìn)行實(shí)現(xiàn)的代碼如下:
圖1 椒鹽噪聲原圖
圖2 均值去噪效果圖
圖3 加權(quán)均值去噪效果圖
圖4 中值去噪效果圖
從圖1~圖4可以看出,對(duì)于椒鹽噪聲,以上三種去噪方式,使用均值去噪和加權(quán)均值去噪后,還有部分噪聲未去除,而使用中值去噪基本去除了噪聲,去噪效果較好。
圖5 高斯噪聲原圖
圖6 均值去噪效果圖
圖7 加權(quán)均值去噪效果圖
圖8 中值去噪效果圖
從圖5~圖8可以看出,對(duì)于高斯噪聲,以上三種去噪方式,使用均值去噪和中值去噪后,中部的噪聲比較明顯,而使用均值去噪效果較好。
本文研究的去噪技術(shù)屬于處理數(shù)字圖像過(guò)程中預(yù)處理階段的一個(gè)步驟[3]。雖然原理和內(nèi)容不是很多,但是深究起來(lái)還是有很多值得挖掘的地方。比如說(shuō)加權(quán)均值去噪算法的權(quán)值思想就非常值得我們?nèi)ゼ?xì)細(xì)品味。
使用MATLAB軟件編碼實(shí)現(xiàn)了三種常見(jiàn)的去噪算法后,可以明顯的看出,對(duì)于不同種類的圖像噪聲而言,適用的去噪算法是不同的。椒鹽噪聲由于只是黑白兩色的噪點(diǎn),所以在使用均值去噪方法時(shí)容易拉高或拉低均值,但是在中值去噪算法中卻能夠被排列在數(shù)列的兩端,基本不會(huì)影響中位數(shù)的選擇,所以更優(yōu)。高斯噪聲由于是服從正態(tài)分布的一種噪聲,所以在某一個(gè)區(qū)域中會(huì)存在多個(gè),這樣在使用中值去噪時(shí)就會(huì)影響到中位數(shù)的選擇,而使用均值去噪時(shí),噪聲的值最終都被求了均值,效果更優(yōu)。
通過(guò)對(duì)數(shù)字圖像處理去噪技術(shù)的研究,我認(rèn)為技術(shù)不分高低,而分深淺,去噪技術(shù)深入研究后就是研究數(shù)學(xué)的問(wèn)題。技術(shù)之間也未必一定有好壞之分,在不同的場(chǎng)景下,根據(jù)實(shí)際情況選擇合適的技術(shù)才是更重要的。
[1] 楊晨.基于方法噪聲的非局部均值圖像去噪[D].西安電子科技大學(xué),2013.
[2] 駱歡.基于部分頻譜數(shù)據(jù)圖像重構(gòu)的去噪算法[D].上海交通大學(xué),2009.
[3] 張旭.數(shù)字濾波技術(shù)在醫(yī)學(xué)圖像去噪處理中的應(yīng)用研究[D].中北大學(xué),2005.