Non-zero Gaussian noise in image processing
1 次查看(过去 30 天)
显示 更早的评论
How can i Generate Gaussian Noise with a non zero meadian?
i found this code put i do not understand the division by 256.
where (I) is the cameraman image.
%Generating Gaussian Noise
mean= 40/256; Std= 20; var=(Std/256)^2;
G=imnoise(I,'gaussian',mean,var);
imshow(G)
title ('Image with Gaussian Noise')
1 个评论
DGM
2024-6-4
The parameter inputs to imnoise() are expected to be in unit-scale (0 to 1), regardless of the class of the input image. Consequently, if you specify your parameters in uint8-scale (0 to 255) for no good reason, you'll have to normalize them by dividing by 255, not 256.
The whole point is that the parameter scale is independent of the class of the image. Unless they're being derived from uint8-scale data (and they plainly are not), I see no reason for them to be in uint8-scale, or any scale presumptive of the image class. Just specify them in unit-scale, as imnoise() expects.
% parameters in unit-scale
mu = 0.157;
sig = 0.078;
% the image
inpict = imread('cameraman.tif');
% the image with noise
outpict = imnoise(inpict,'gaussian',mu,sig^2);
imshow(outpict)
title ('Image with Gaussian Noise')
回答(1 个)
Matt J
2021-4-26
As an example,
mu=0.1;sigma=0.3;
J = imnoise(imread('cameraman.tif'),'gaussian',mu,sigma^2);
imshow(J)
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!