在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%被噪音破坏。这有什么不同?我在这里错过了什么吗?
答案 0 :(得分:2)
我看到的主要问题是imnoise
函数需要将图像缩放到间隔[0,1]
(另请参阅此answer)。考虑到这一点,方差100是没有意义的。你应该在图像旁边缩放方差,希望一切都有意义。