clc,clear,close all
warning off
feature jit off
im = imread('coloredChips.png');
Z1 = imnoise_gamma(size(im,1),size(im,2),1,0.1);
Z1 = im2uint8(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_gamma(M, N, a,b)
% input:
% 伽马gamma分布,噪声的类型;
% M,N:输出噪声图像矩阵的大小
% a,b:各种噪声的分布参数
% output:
% R: 输出的噪声图像矩阵,数据类型为double型
% 设定默认值
% 产生伽玛分布噪声
if nargin <= 3
a = 2; b = .5;
end
c=0.1;
R = zeros(M, N);
for i = 1:M
for j=1:N
x= rand;
if x>c
R(i,j) = b.^a./(gam(a)) .*(x-c).^(a-1).*exp(-b