A. 怎樣用matlab給一維圖像添加雜訊
Matlab中為圖片加雜訊的語句:
1、J
=
imnoise(I,type);
2、J
=
imnoise(I,type,parameters);
其中,I為原圖象的灰度矩陣,J為加雜訊後圖象的灰度矩陣;
也可以使用WGN,產生高斯白雜訊;
語句如下:
1、y
=
wgn(m,n,p)
產生一個m行n列的高斯白雜訊的矩陣,p以dBW為單位指定輸出雜訊的強度。
2、y
=
wgn(m,n,p,imp)
以歐姆(Ohm)為單位指定負載阻抗。
3、y
=
wgn(m,n,p,imp,state)
重置RANDN的狀態。
B. 請簡述如何在實現圖像銳化的同時,有效抑制雜訊的增加
通常需要銳化的圖像,經過銳化後,我們發現輪廓會變得清晰,但是輪廓內部或外部就會出現雜訊,具體來說,就是銳化需要處理的多數是輪廓部分,而不需要銳化的內部和外部反而因為銳化產生噪音。解決雜訊的辦法則是通過復制銳化前的原圖層,在銳化後將其放置在被銳化的圖層之上,選擇適當的透明度,並且使用橡皮擦(畫筆採用模糊圓形筆尖)擦掉輪廓,使下層經過銳化的輪廓明晰顯露出來,這樣,既有明晰的輪廓,又有原圖尚未產生雜訊的大部分主體,應可滿足你的需求。
C. 如何在matlab中為一幅圖像加入隨機雜訊
M=imread('dl011.jpg') %讀取MATLAB中的名為cameraman的圖像
subplot(3,3,1)
imshow(M) %顯示原始圖像
title('original')
P1=imnoise(M,'gaussian',0.02) %加入高斯躁聲
subplot(3,3,2)
imshow(P1) %加入高斯躁聲後顯示圖像
title('gaussian noise');
P2=imnoise(M,'salt & pepper',0.02) %加入椒鹽躁聲
subplot(3,3,3)
imshow(P2) %%加入椒鹽躁聲後顯示圖像
title('salt & pepper noise');
g=medfilt2(P1) %對高斯躁聲中值濾波
subplot(3,3,5)
imshow(g)
title('medfilter gaussian')
h=medfilt2(P2) %對椒鹽躁聲中值濾波
subplot(3,3,6)
imshow(h)
title('medfilter salt & pepper noise')
l=[1 1 1 %對高斯躁聲算術均值濾波
1 1 1
1 1 1];
l=l/9;
k=conv2(P1,l)
subplot(3,3,8)
imshow(k,[])
title('arithmeticfilter gaussian')
%對椒鹽躁聲算術均值濾波
d=conv2(P2,l)
subplot(3,3,9)
imshow(d,[])
title('arithmeticfilter salt & pepper noise')