图像处理之图像噪声和各种噪声的matlab实现 | 您所在的位置:网站首页 › matlab生成图片代码 › 图像处理之图像噪声和各种噪声的matlab实现 |
一、图像噪声的基本定义 噪声在图像上常表现为引起较强视觉效果的孤立像素点或像素块。一般噪声信号与要研究的对象不相关,其以无用的信息形式出现,扰乱图像的可观测信息。通俗的说即噪声让图像不清楚。 图像噪声按照噪声和信号之间的关系可以分为加性噪声和乘性噪声两种。假设图像的像素值为F(x,y),噪声信号为N(x,y)。如果混合叠加信号为F(x,y)+N(x,y)的形式,则这种噪声为加性噪声。如果叠加后信号为F(x,y)x[1+ N(x, y)]的形式,则这种噪声为乘性噪声。 二、图像噪声的分类 1、高斯噪声 高斯噪声是一种源于电子电路噪声和由低照明度或高温带来的传感器噪声。高斯噪声又称为正态噪声,是自然界中最常见的噪声。高斯噪声可以通过空域滤波的平滑或图像复原技术来消除。其概率密度函数为: 椒盐噪声又称为双极脉冲噪声,其概率密度函数为: 3、均匀分布噪声 4、指数分布噪声 5、伽马分布/爱尔兰噪声 6、泊松噪声 泊松噪声是指其概率密度函数服从泊松分布的一类噪声,泊松分布适合于描述单位时间内随机事件发生的次数的概率分布。泊松噪声一般在亮度很小或者高倍电子放大线路中出现。 7、斑点/乘性噪声 根据相干原理进行成像的系统中普遍存在的一类噪声,如超声、雷达、SAR等。噪声原理是反射表面在波长尺度上是粗糙的,因此反射波存在明显的散射效应,导致所成的像出现斑点。 8、瑞利噪声 三、各种噪声的matlab实现 关于imnoise函数可以看我之前写过的一篇博客:图像处理之matlab中imnoise函数用法详解 1、高斯噪声 (1)J=imnoise(I,‘gaussian’,m,v)/高斯噪声的直方图 close all; clear all; clc; % 生成均值为100的图像,uint8函数转换为图像类型, % ones(256,256)生成256*256大小的矩阵,注意乘以100是为了方便显示直方图使均值为100,否则均值将为1 I=uint8(100*ones(256,256)); % 添加高斯白噪声给图像I,均值为m,方差为v.默认m = 0,v = 0.01 J=imnoise(I,'gaussian',0,0.01); K=imnoise(I,'gaussian',0,0.03); subplot(221),imshow(J); subplot(222),imshow(K); subplot(223),imhist(J); subplot(224),imhist(K)
(1)J = imnoise(I,‘salt & pepper’,d)/椒盐噪声的直方图 close all; clear all; clc; % 生成均值为100的图像,uint8函数转换为图像类型, % ones(256,256)生成256*256大小的矩阵,注意乘以100是为了方便显示直方图使均值为100,否则均值将为1 I=uint8(100*ones(256,256)); J=imnoise(I,'salt & pepper',0.01); K=imnoise(I,'salt & pepper',0.05); subplot(221),imshow(J); subplot(222),imshow(K); subplot(223),imhist(J); subplot(224),imhist(K)(2)图像添加椒盐噪声 close all; clear all; clc; I=imread('cameraman.tif'); I=im2double(I); % J = imnoise(I,‘salt & pepper’,d),默认d=0.05 % 在添加类型为Salt & Pepper的噪声时,符号&的前面和后面必须有空格,否则系统会出错 J=imnoise(I,'salt & pepper',0.01); K=imnoise(I,'salt & pepper',0.05); % 图像中黑色的像素点为椒盐噪声,白色的像素点为盐噪声 subplot(131),imshow(I); subplot(132),imshow(J); subplot(133),imshow(K);
|
CopyRight 2018-2019 实验室设备网 版权所有 |