MATLAB:使用imnoise和randn对高斯噪声有什么区别

时间:2016-04-13 06:15:22

标签: image matlab signals gaussian noise

在MATLAB中添加加性高斯白噪声时,可以使用预定义函数

sigma = 10; % standard deviation (STD)

g = I + sigma * randn(size(I)); %add gaussian noise with STD 10

默认值,零均值(M)和方差(V)0.01。该功能的手册是here

然而,在各种MATLAB代码中,我也看到加性高斯噪声通过以下方式添加到图像中

[![variance=sigma^2][2]][2]

哪个好。现在,我们知道方差的公式,

J = imnoise(I,'gaussian',0,100)

其中sigma是性病。因此,根据第二个代码,我有sigma = 10因此,方差(V)应该是100.使用MATLAB imnoise函数的零均值和方差100应该是这样的

{{1}}

但是,即使接近第二个代码,也不会产生损坏的图像。图像似乎100%被噪音破坏。这有什么不同?我在这里错过了什么吗?

1 个答案:

答案 0 :(得分:2)

我看到的主要问题是imnoise函数需要将图像缩放到间隔[0,1](另请参阅此answer)。考虑到这一点,方差100是没有意义的。你应该在图像旁边缩放方差,希望一切都有意义。