引言
圖像是用各種觀測系統(tǒng)以不同形式和手段觀測客觀世界而獲得的,可以直接或間接作用于人眼并進(jìn)而產(chǎn)生視知覺的實體,,是人類感知世界的視覺基礎(chǔ),,是人類獲取信息、表達(dá)信息和傳遞信息的重要手段,。研究表明,,人類獲取的視覺圖像信息在人類接受的信息中的比重達(dá)到75%,“百聞不如一見”便是非常形象的例子之一,。在高度信息化條件下的今天,,數(shù)字圖像越來越得到普及和應(yīng)用。
然而,,人們在獲取和傳輸數(shù)字圖像的同時,,難免于圖像數(shù)據(jù)被外界噪聲所污染,,妨礙了人們對圖像信息的理解,。由此,圖像去噪技術(shù)應(yīng)運而生,。圖像去噪,,即在盡可能地不損失原圖像細(xì)節(jié)的前提下,去除圖像中無關(guān)的噪點?,F(xiàn)有的圖像去噪方法[11很多,,如:
1 均值濾渡器
均值濾波器是一種典型的線性去噪方法,因為其運算簡單快速,,同時又能夠較為有效地去除高斯噪聲,。因而適用面較廣。
許多濾除噪聲方法都是在此基礎(chǔ)上發(fā)展而來的,。其缺點是嚴(yán)重破壞了圖像的邊緣,,模糊了圖像。
2 低通濾波器
低通濾波器,,信號或圖像的能量大部分集中在幅度譜的低頻和中頻段是很常見的,;而在較高頻段,感興趣的信息常被噪聲所淹沒,。因此,。一個能降低高頻成分幅度的濾波器就能減弱噪聲的看的見的影響,。這是一種頻域處理法。在分析圖像信號的頻率特性時,,一幅圖像的邊緣,、跳躍部分以及顆粒噪聲代表圖像信號的高頻分量,而大面積的背景區(qū)則代表低頻分量,。用濾渡的方法濾除其高頻部分就能去掉噪聲,,使圖像得到平滑。但同時,,有用的高頻成分也濾除了,。因此這種處理是以犧牲清晰度為代價的。
3 中值濾波器
中值濾波器是一種消除噪聲的非線性處理方法,,它是由Tueky在1971年提出的,。它的基本原理是把數(shù)字圖像或數(shù)字序列中一點的值用該點的一個鄰近各點值的中值代替。中值定義如下:對一個數(shù)字序列的元素進(jìn)行排序,,如果元素個數(shù)為奇數(shù),,則取排序后序列的中間值。如果序列元素個數(shù)為偶數(shù),,則取排序后序列的中間兩個值的均值,。
把一個點的特定長度或形狀的領(lǐng)域稱作窗口。在一維情況下,,中值濾波器是一個含有奇數(shù)個像素的滑動窗口,。窗口正中問那個像素的值用窗口內(nèi)各像素值的中值代替。
該濾波器是一種典型的非線性處理方法,。它的優(yōu)勢在對圖像中脈沖噪聲消除極為有效,,且能夠較好地保護(hù)圖像邊緣信息。
弱點是因為涉及大量排序運算,,運算速度較慢,,對圖像的實時處理有影響。圖像一般要傳化成數(shù)字圖像后才可以使用計算機對其進(jìn)行各種處理,。數(shù)字圖像,,是以數(shù)字的形式而存在的。利用MATLAB(矩陣實驗室)進(jìn)行處理時,,我們簡單地理解它為一定大小的數(shù)字矩陣,。矩陣中的每個效字代表圖像的一個像索點。由此可以知道,,對數(shù)字圖像的處理,,實際上就是對一個數(shù)字矩陣的運算處理。
為了研究方便,,我們的方法是人工的給原圖像添加噪聲·主要是不同強度的正態(tài)分布隨機噪聲和脈沖噪聲,。在MATLAB中,,正態(tài)分布噪聲是由randn函數(shù)實現(xiàn)的,而脈沖噪聲,,即平常所說的椒鹽噪聲,,是由imnoise(Io,’saIt 8L pepper,,i)實現(xiàn)的,。其中Io是原圖像矩陣,i取值,。至1之間,,表示噪聲的強度。
通過研究,,發(fā)現(xiàn)一種新的改進(jìn)的均值濾波器[2],。在考慮如何對圖像的噪聲進(jìn)行處理時,難以避免的,,需要面臨噪聲點的檢測問題,。因為一張含噪圖像中,只有一部分的像素受到了噪聲的污染,,而其余的像素仍保持原值,。無條件地對所有的像素點進(jìn)行濾波,顯然在去除噪點的同時,,使原圖像發(fā)生了失真,。所以為了更有針對性地處理圖像中的躁點,最好的做法就是先對噪聲進(jìn)行檢測,。然后利用非噪聲點的平均值來代替每個像素的灰度,,而不是上面?zhèn)鹘y(tǒng)方法中的盲目運算。其計算公式為:
式中,,S為(x,y)點領(lǐng)域中坐標(biāo)的*,,但不包括其本身,,M為*內(nèi)坐標(biāo)點的點數(shù)。下面通過實例來驗證這種方法的優(yōu)越性:
采用尺寸大小為162×120的圖像文件shoes.jpg,。使用im-眥d函數(shù)將其載人到MATLAB中,,為了簡便。我們先用瑁b29ray函數(shù)將其轉(zhuǎn)換為單維的灰度圖像,,灰度范圍[o,,255]
(見圖1),。在原圖基礎(chǔ)上加入噪聲密度為o.2的脈沖噪聲,,可以用imnoise函數(shù)加入椒鹽噪聲,,也可以用randn加入正態(tài)分布的隨機噪聲,這樣就得到了含噪的圖像,。芝麻鹽狀的雪*點隨機地分布在圖像矩陣巾(見圖2),。
一般來說,圖像中像素的灰度值是連續(xù)漸變的,。
而如果存在噪點,,那么在原圖像素和噪點之間的灰度值會發(fā)生突然的變化?;诖?,首先取待檢測點的上、下,、左,、右四個鄰域大小為3×3,計算各鄰域的平均值,,如果四個鄰域的均值都與待檢測點的差的絕對值大于既定的閾值,,則判斷該點為噪點,反之,,有一個鄰域的均值與待測點的差小于閾值,。則判斷該點為正常像素點。其中,;闋值是我們根據(jù)圖像的含噪情況人為設(shè)定的一個值,,一般在100和200之問。同時,。建立與待檢測圖像大小相同的矩陣,,稱為噪聲標(biāo)識矩陣。其中的點與原圖像矩陣中的點一一對應(yīng),。并預(yù)設(shè)該矩陣中的值全為1,,如果一像素被判斷為噪聲,則置標(biāo)識矩陣中相應(yīng)元素為o.這樣,,就可以實現(xiàn)前面判斷過程所得出的結(jié)果被后續(xù)的檢測所使用,,已經(jīng)被判定為噪聲的像素不再參與領(lǐng)域均值的計算。
這樣,,我們就可以用一個循環(huán),,來對圖像矩陣中的每個像素逐個進(jìn)行判斷,方便地檢測到了噪聲點,。
接下來,,就可以利用中值濾波的方法,去除圖像中的噪點了,,將預(yù)先判斷為噪點的圖像矩陣中的點,,如(a,。b)=(70.S5)的點的值是230,與鄰域點的均值的差大于兩值150,。因此翔斷它是一個噪點,。這樣,我們就用它鄰域內(nèi)的八個點中有效的點來取均值代入,。依次執(zhí)行,,挨個計算、代人,。這樣就得到了一個新的圖像數(shù)據(jù)矩陣,,最后我們用i眥Ilow函數(shù)顯示處理后的圖像(見圖3)??梢钥吹?。效果非常明顯。
4 結(jié)語
去噪后的圖像不僅噪聲強度受到限制,,而且圖像細(xì)節(jié)得到了最大限度的保持,,解決了妨礙人們獲取圖像信息的同胚。在航空航天,、通信工程,、生物醫(yī)學(xué)、軍事公安,、文化藝術(shù)等領(lǐng)域都具有一定意義,。