源代码:
%噪声抑制
% --- Executes on button press in Noise.
function Noise_Callback(hObject, eventdata, handles)
global x
global p
y=rgb2gray(x);
p = imnoise(y,'salt & pepper',0.1); %加10%的椒盐
axes(handles.axes1);
imshow(p);
g=medfilt2(p);
axes(handles.axes2);
imshow(g);
imnoise用法:
在MATLAB中,使用函数imnoise函数来使用噪声污染一幅图像:
g = imnoise(f, type, parameters)
输出:g是被污染的图像
输入:f是输入的原图像,type是加入的噪声类型,parameters是噪声的一些参数:
g=imnoise(f,‘gaussian’,m,var)是将均值为m,方差为var的高斯噪声加到图像f上。m的默认值是0、var默认值是0.01。
g=imnoise(f,‘salt & pepper’,d)用椒盐噪声污染图像f,其中d是噪声密度(即包含噪声值的图像区域的百分比)。因此,大约有d*numel(f)个像素受到污染,默认的噪声密度为0.05。
g=imnoise(f,‘speckle’,var)用方程g=f + n*f将乘性噪声添加到图像f上,其中n是均值为0、方差为var的均匀分布的随机噪声。var的默认值为0.04。