高斯(正态)噪声图像

clc,clear,close all
warning off
feature jit off
im = imread('coloredChips.png');
Z1 = imnoise(im(:,:,1),'gaussian',0,0.01);
im(:,:,1) = im(:,:,1) + Z1;  % R
im(:,:,2) = im(:,:,2) + Z1;  % G
im(:,:,3) = im(:,:,3) + Z1;  % B
figure('color',[1,1,1]),
subplot(121); imshow(im);title('加高斯(正态)噪声图像')
subplot(122); imhist(Z1); title('加高斯(正态)噪声图像直方图')
 
 
<pre name="code" class="cpp">clc,clear,close all
warning off
feature jit off
im = imread('coloredChips.png');
Z1 = imnoise_gaussian(size(im,1),size(im,2),100,25);
Z1 = uint8(Z1);   % 类型转换
figure('color',[1,1,1]),
im(:,:,1) = im(:,:,1) + Z1;  % R
im(:,:,2) = im(:,:,2) + Z1;  % G
im(:,:,3) = im(:,:,3) + Z1;  % B
subplot(121); imshow(im);title('加高斯(正态)噪声图像')
subplot(122); imhist(Z1); title('加高斯(正态)噪声图像直方图')


 
 

function R = imnoise_gaussian(M, N, a, b)
% input:
%       gaussian,噪声的类型;
%       M,N:输出噪声图像矩阵的大小
%       a,b:各种噪声的分布参数
% output:
%       R: 输出的噪声图像矩阵,数据类型为double型
% 设定默认值
if nargin == 1
   a = 0; b = 1;
   M = 1; N = 1;
elseif nargin == 3
   a = 0; b = 1;
end
   % 产生高斯分布噪声--白噪声
   R = a + b*randn(M, N);
end


你可能感兴趣的:(高斯(正态)噪声图像)