1、何爲圖像噪聲?噪聲是妨礙人的感受器官所接受信源信息理解的因素,是不可預測只能用機率統計方法認識的隨機偏差。數組
舉個例子:dom
從這個圖中,咱們能夠觀察到噪聲的特色:1>位置隨機 2>大小不規則。咱們將這種噪聲稱爲隨機噪聲(random noise),這是一種很是常見的噪聲類型。函數
2、噪聲的類型ui
噪聲能夠借用隨機過程以及機率密度函數(Probability Density Function,PDF)來描述,一般可採用其數組特徵,即均值,方差,相關函數等。按照機率密度函數分爲高斯噪聲、瑞利噪聲、伽馬噪聲、指數分佈噪聲、均勻分佈噪聲、脈衝噪聲、泊松噪聲等。有的噪聲與圖像信號的強度不相關,如圖像傳輸過程引入的信道噪聲、攝像機掃描噪聲等,這種噪聲稱爲加性噪聲(additive noise)。常見的加性噪聲按照機率密度函數特徵分爲短拖尾加性噪聲(如均勻分佈噪聲)、中拖尾加性噪聲(高斯分佈噪聲)、長拖尾加性噪聲(如指數分佈噪聲)、脈衝噪聲(如椒鹽噪聲、隨機數脈衝噪聲等)。3d
有的噪聲與圖像信號有關,每每隨着圖像信號的變化而變化,如光照變化引發的噪聲、飛機掃描圖像中的噪聲、電視掃描光柵中的相干噪聲、斑點噪聲等。這種噪聲稱爲乘性噪聲(multiplicative noise)。blog
matlab向圖中添加噪聲的指令:ip
I1=imnoise(I,type,parameters);it
其中,當type爲gaussian,所加入噪聲是parameters爲m(均值)、v(方差)的高斯噪聲,這是最普通的噪聲。io
當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幀圖像取平均後幾乎消除了全部噪聲。
3、圖像平滑消除噪聲
對於只有一幀帶有噪聲的圖像是沒法用上述方法消除噪聲的,此時又該怎麼辦呢?根據噪聲的特色能夠知道噪聲的灰度與其周圍的灰度之間有明顯的灰度差,所以形成了視覺障礙。此時消除噪聲的方法要利用圖像平滑(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);