Matlab初入门之高斯滤波

M=imread("C:\Users\user\Desktop\color.jpg"); %读取图像
[ROW,COL, DIM] = size(M);%保存图像尺寸
subplot(3,3,1),imshow(M),title('original');%显示原始图像
P1=imnoise(M,'gaussian',0.05); %加入高斯躁声
subplot(3,3,2),imshow(P1),title('gaussian noise');%加入高斯躁声后显示图像
P1=im2double(P1);
guss_filter_img=P1;
for r = 2:1:ROW-1
    for c = 2:1:COL-1
        for d =1:3
        guss_filter_img(r,c,d) =(P1(r-1, c-1,d) + P1(r-1, c,d)*2 + P1(r-1, c+1,d) +...
        P1(r, c-1,d)*2 + P1(r, c,d)*4 + P1(r, c+1,d)*2+...
        P1(r+1, c-1,d) + P1(r+1, c,d)*2 + P1(r+1, c+1,d))/ 16;
        end
    end
end
subplot(3,3,3),imshow(guss_filter_img),title('guss_img');

对于其中的imnoise来说:

二、常见噪声的分类

1、高斯噪声

高斯噪声是指其概率密度函数服从高斯分布(即正态分布)的一类噪声。若一个噪声,其幅度分布服从高斯分布,且其功率谱密度又是均匀分布,则称为高斯白噪声。高斯白噪声的二阶矩不相关,一阶矩为常数,是指先后信号在时间上的相关性。高斯噪声的噪声信号随机分布,没有规律。

2、泊松噪声

泊松噪声是指其概率密度函数服从泊松分布的一类噪声,泊松分布适合于描述单位时间内随机事件发生的次数的概率分布。泊松噪声一般在亮度很小或者高倍电子放大线路中出现。

3、椒盐噪声

椒盐噪声又称脉冲噪声,其随机改变一些像素值,在二值图像上表现为使一些像素点变白,一些像素点变黑。椒盐噪声是由图像传感器,传输信道,解码处理等产生的黑白相间的亮暗点噪声,往往由图像分割引起,老式电视机常常出现的“雪花”即为椒盐噪声。

4、斑点/乘性噪声

根据相干原理进行成像的系统中普遍存在的一类噪声,如超声、雷达、SAR等。噪声原理是反射表面在波长尺度上是粗糙的,因此反射波存在明显的散射效应,导致所成的像出现斑点。

三、imnoise()函数基本调用格式

语法参数说明

J = imnoise(I,type)按照给定类型添加图像噪声给图像I

J = imnoise(I,type,parameters)按照给定类型添加图像噪声给图像I,parameters泛指可以添加的参数,类型不同,参数不同

J = imnoise(I,‘gaussian’,m,v)添加高斯白噪声给图像I,均值为m,方差为v。默认m = 0,v = 0.01

J = imnoise(I,‘localvar’,V)将均值为0,局部方差为V的高斯噪声添加到图像I上,其中V是与I大小相同的一个数组

J = imnoise(I,‘localvar’,h,v)在图像的不同亮度值上叠加不同方差的高斯噪声,h为在[0,1]之间的向量,表示图像的亮度值,v为一个长度和h相同,表示与h中亮度对应的高斯噪声的方差

J = imnoise(I,‘poisson’)添加泊松噪声给图像I

J = imnoise(I,‘salt & pepper’,d)添加椒盐噪声给图像I,噪声密度为d。默认d=0.05

J = imnoise(I,‘speckle’,v)添加斑点/乘性噪声给图像I,方差为v。默认v=0.04

I = imread('pout.tif');
figure(1),imshow(I);
title('Original image');
figure(2),
J = imnoise(I,'gaussian',0,0.03);   % 添加高斯白噪声,均值0,方差0.03
subplot(221),imshow(J);
title('Gaussian');
K = imnoise(I,'salt & pepper',0.03);% 添加椒盐噪声,噪声密度0.03
subplot(222),imshow(K);
title('Salt & Pepper');
L = imnoise(I,'poisson');           % 添加泊松噪声
subplot(223),imshow(L);
title('Poisson');
M = imnoise(I,'speckle',0.03);      % 添加斑点/乘性噪声,方差为0.03
subplot(224),imshow(M);
title('Speckle');
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值