一、何為圖像噪聲?噪聲是妨礙人的感覺器官所接受信源信息理解的因素,是不可預測只能用概率統計方法認識的隨機誤差。
舉個例子:

從這個圖中,我們可以觀察到噪聲的特點:1>位置隨機 2>大小不規則。我們將這種噪聲稱為隨機噪聲(random noise),這是一種非常常見的噪聲類型。
二、噪聲的類型
噪聲可以借用隨機過程以及概率密度函數(Probability Density Function,PDF)來描述,通常可采用其數組特征,即均值,方差,相關函數等。按照概率密度函數分為高斯噪聲、瑞利噪聲、伽馬噪聲、指數分布噪聲、均勻分布噪聲、脈沖噪聲、泊松噪聲等。有的噪聲與圖像信號的強度不相關,如圖像傳輸過程引入的信道噪聲、攝像機掃描噪聲等,這種噪聲稱為加性噪聲(additive noise)。常見的加性噪聲按照概率密度函數特征分為短拖尾加性噪聲(如均勻分布噪聲)、中拖尾加性噪聲(高斯分布噪聲)、長拖尾加性噪聲(如指數分布噪聲)、脈沖噪聲(如椒鹽噪聲、隨機數脈沖噪聲等)。
有的噪聲與圖像信號有關,往往隨着圖像信號的變化而變化,如光照變化引起的噪聲、飛機掃描圖像中的噪聲、電視掃描光柵中的相干噪聲、斑點噪聲等。這種噪聲稱為乘性噪聲(multiplicative noise)。
matlab向圖中添加噪聲的指令:
I1=imnoise(I,type,parameters);
其中,當type為gaussian,所加入噪聲是parameters為m(均值)、v(方差)的高斯噪聲,這是最普通的噪聲。
當type為localvar時,所加入噪聲是parameters為0(均衡)、v(方差)的高斯噪聲。
當type為poission時,所加入的是無參數的泊松噪聲,在照度非常小時出現,或在高倍電子放大線路中出現。
當type為salt&pepper時,所加入的噪聲是parameters為d(密度)的椒鹽噪聲。
當type為speckle時,所加入的噪聲是parameters為0(均值)、v(方差)的均勻分布噪聲(斑點噪聲)。
例子1:向圖像中加入椒鹽噪聲matlab示例。
I=imread('eight.tif');
J=imnoise(I,'salt & pepper',0.02);
subplot(121),imshow(I),title('原始圖像');
subplot(122),imshow(J),title('加入椒鹽噪聲的圖像');
例子2:利用多幀圖像平均法,對受零均值隨機高斯噪聲干擾的圖像進行平滑處理
I=imread('eight.tif');
[m,n]=size(I);
I1=zeros(m,n);
for i=1:16
I2(:,:,i)=imnoise(I,'gaussian',0,0.01);%由原始圖像疊加隨機高斯噪聲生成1-16幀圖像
I1=I1+double(I2(:,:,i));%多幀帶有隨機噪聲的圖像疊加
if or(or(i==1,i==4),or(i==8,i==16));
figure,imshow(uint8(I1/i))%取平均並顯示結果
end
end

分別顯示施加噪聲后的圖像和疊加平均后的圖像,可以發現疊加平均圖像的數量級越多,噪聲消除效果越好,對16幀圖像取平均后幾乎消除了所有噪聲。
三、圖像平滑消除噪聲
對於只有一幀帶有噪聲的圖像是無法用上述方法消除噪聲的,此時又該怎么辦呢?根據噪聲的特點可以知道噪聲的灰度與其周圍的灰度之間有明顯的灰度差,因此造成了視覺障礙。此時消除噪聲的方法要利用圖像平滑(image smoothing),簡稱平滑(smoothing),因此如何把邊緣部分與噪聲部分區分開,只消除噪聲是圖像平滑的關鍵所在。
圖像平滑的方法可分為頻率域法(頻率法)和空間域法(空域法)兩類。頻域法的處理基礎是傅里葉變換和低通濾波技術,空域法的處理基礎是模板卷積。
(1)低通濾波(lowpass filter)
低通濾波屬於頻域平滑濾波法,通過濾除高頻成分,保留低頻成分,在頻域中實現平滑處理。其濾波公式為G(U,V)=H(U,V)F(U,V),其中F(U,V)是原始圖像頻譜,G(U,V)是平滑圖像頻譜,H(U,V)是傳遞(轉移)函數。
步驟:將原始圖像f(x,y)進行傅里葉變換,把圖像從空間域變換到頻率域,得到圖像頻譜F(U,V),再通過傳遞函數H(U,V)用低通濾波公式改變F(U,V),最后對濾波處理后的頻譜G(U,V)進行傅里葉反變換,即可得到過濾后的圖像g(x,y)。
1.理想低通濾波器(Ideal Low-Pass Filter,ILPF)的傳遞函數

D0是截止頻率,D(u,v)=(u^2+v^2)^(1/2)為頻率平面原點到點(u,v)的距離。其特點是物理上不可實現,有抖動現象,濾除高頻成分使圖像變模糊。

2.巴特沃斯低通濾波器(Butterworth Low-Pass Filter,BLPF)具有如下傳遞函數

與理想低通濾波器不同,該濾波器的傳遞函數不是在D0處突然不連續,而是平滑過渡。當H(U,V)降為最大值的1/2時,D(U,V)=D0。n為階數,階數越大,傳遞函數越陡峭。

3.指數形低通濾波器(Exponential Low-Pass Filter,ELPF)具有如下傳遞函數:

當D(U,V)=D0時,H(u,v)降為最大值的1/(2^(1/2))時的頻率可作為截止頻率。

4.梯形低通濾波器(Trapezoidal Low-Pass Filter,TLPF)具有如下傳遞函數:


例子:巴特沃斯低通濾波器
%巴特沃斯低通濾波器
I=imread('eight.tif');
I1=imnoise(I,'salt & pepper');
figure,imshow(I1);
f=double(I1);
g=fft2(f);%傅里葉變換
g=fftshift(g);%直流分量移到頻譜中心
[M,N]=size(g);%計算圖像的高和寬
d0=50;nn=2;%截止頻率為50的二階巴特沃斯低通濾波器
m=round(M/2);n=round(N/2);%數據取整
for i=1:M
for j=1:N
d=sqrt((i-m)^2+(j-n)^2);%計算頻率平面原點到各點的距離
h=1/(1+0.414*(d/d0)^(2*nn));%傳遞公式
result(i,j)=h*g(i,j);%濾波公式
end
end
result=ifftshift(result);%直流分量移回到左上角
I2=ifft2(result);%傅里葉反變換
I3=uint8(real(I2));%取幅值並轉換成8位無符號整數
figure,imshow(I3);
