图像复原与重建:噪声模型及MATLAB实现

图像的退化往往伴随着噪声,几种常见的噪声的概率密度函数,probability density function,简称PDF。

malab代码如下:

clear;
x=-4:0.1:4;
subplot(3,2,1);
y1=normpdf(x,0,1);
plot(x,y1);
title('高斯噪声'); 

subplot(3,2,2);   
y2=unifpdf(x,-3,3);
plot(x,y2);
title('均匀噪声');

subplot(3,2,3);
y3=zeros(size(x));
y3(1)=0.5;
y3(end)=0.5;
plot(x,y3);
title('椒盐噪声'); 
    
subplot(3,2,4);        
y4=raylpdf(x,2);       
plot(x,y4);
title('瑞利噪声');        
        
subplot(3,2,5);       
y5=exppdf(x,1);  
plot(x,y5);
title('指数噪声');          
        
subplot(3,2,6);  
y6=gampdf(x,2,4);       
plot(x,y6);
title('伽马噪声');

绘图结果


为图像添加上述噪声的matlab代码如下

clc;
clear;
f=imread('C:\Program Files\MATLAB\R2013a\bin\work\图像复原\Penguins.jpg');
subplot(2,4,1);
imshow(f);
title('彩色图像');
image_gray=rgb2gray(f);%得到灰度图像
%figure;
subplot(2,4,2);
imshow(image_gray);%显示灰度图像
title('灰度图像');
%添加高斯噪声
[M,N]=size(image_gray);
R=normrnd(3,12,M,N);%得到高斯分布的随机数
image_noise=double(image_gray)+R;%添加噪声后的图像
image_noise=uint8(round(image_noise));
subplot(2,4,3);
imshow(image_noise);%显示灰度图像
title('含高斯噪声图像');

%添加均匀噪声
R=unifrnd(-20,23,M,N);%得到均匀分布的随机数
image_noise=double(image_gray)+R;%添加噪声后的图像
image_noise=uint8(round(image_noise));
subplot(2,4,4);
imshow(image_noise);%显示灰度图像
title('含均匀噪声图像');

%添加椒盐噪声
image_noise=imnoise(image_gray,'salt & pepper',0.02);%添加噪声后的图像
subplot(2,4,5);
imshow(image_noise);%显示灰度图像
title('含椒盐噪声图像');

%添加瑞利噪声
R=raylrnd(30,M,N);%得到瑞利分布的随机数
image_noise=double(image_gray)+R;%添加噪声后的图像
image_noise=uint8(round(image_noise));
subplot(2,4,6);
imshow(image_noise);%显示灰度图像
title('含瑞利噪声图像');

%添加指数噪声
R=exprnd(14,M,N);%得到指数分布的随机数
image_noise=double(image_gray)+R;%添加噪声后的图像
image_noise=uint8(round(image_noise));
subplot(2,4,7);
imshow(image_noise);%显示灰度图像
title('含指数噪声图像');

%添加伽马噪声
R=gamrnd(3,10,M,N);%得到伽马分布的随机数
image_noise=double(image_gray)+R;%添加噪声后的图像
image_noise=uint8(round(image_noise));
subplot(2,4,8);
imshow(image_noise);%显示灰度图像
title('含伽马噪声图像');
效果如下图

  • 4
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值