【问题标题】:Gaussian noise,MATLAB高斯噪声,MATLAB
【发布时间】:2016-08-17 19:02:35
【问题描述】:

目标是向图像添加均值为零且方差为 400 的加性高斯噪声。

例如,如果我想添加均值为零且方差为 0.5 的加性高斯噪声,我可以使用以下两种方法之一:

1) Matlab中的imnoise命令:

                 Noisyimg=imnoise(I,'gaussian',0,0.5) 

我的图像在哪里 其中添加了噪声,Noisyimg 是噪声图像。

2) 创建一个取自正态分布的随机数矩阵 使用 randn 指定平均值和标准差 命令。

       noisemat= a*randn(size(I))+ b;  where a=standard deviation and b=mean
       Noisyimg=noisemat+I;                   

因此,对于零均值和 0.5 的方差,

      noisemat=sqrt(0.5)*randn(size(I))+0; 

因为标准差 是方差的平方根。

但是,当我尝试应用上述两种方法来获得具有零均值和方差为 400 的加性高斯噪声的噪声图像时,最终会得到难以辨认的图像。例如,使用方法二,

      noisemat=sqrt(400)*randn(size(I))+0; 
      Noisyimg=noisemat+I;

由此产生的噪声图像与我应该获得的实际噪声图像相去甚远。我知道,因为我有我应该获得的实际噪声输出的图片。我在执行命令时是否犯了任何错误,或者我错过了一些关键点。 我附上了我试图添加高斯噪声的原始图像和添加噪声后获得的图像。
original image(I) Noisyimg

任何帮助将不胜感激!!

【问题讨论】:

  • “无法识别的图像”是什么意思?原始图像的 RMS 是多少?

标签: matlab image-processing gaussian noise


【解决方案1】:

可能有两个问题: 1.动态范围或原始图像。如果它是 [0 1],那么只有将方差为 400 的正态分布的值相加才会产生噪声。 2. 如果图像是 uint8 或 uint 16,添加 double 可能会产生不良影响。在添加噪声之前尝试将图像转换为双倍:

 Noisyimg=noisemat+double(I);

【讨论】:

  • 欣赏这个好建议:)。是的,图像最初被转换为 double 类型。原始图像是 uint8 类型,它被转换为 double 类型,范围为 [0,1] 。代码如下: a=im2double(imread('chipset1.tif'));图;imshow(a);title('原图'); b=(sqrt(400))*randn(大小(a))+0; c=a+b;数字; imshow(c,'显示范围',[])
【解决方案2】:

所以,我终于得到了我看得很远的结果。希望对你有帮助:)

关键在于要添加的高斯噪声的方差也必须相对于要添加到的图像范围进行缩放。原始图像的类型为 uint8。最初,它被转换为范围为 [0 1] 的 double 类型。

      I=im2double(imread('chipset1.tif'));
      figure;imshow(I);title('original image');

现在,当尝试添加 400 的高斯噪声时出现问题。最初,我尝试添加如下:

       Noisyimg=imnoise(I,'gaussian',0,400) 

但是,事实证明,必须先对方差进行缩放,然后才能使用它。

缩放如下:

方差 = (标准差)^2/(255)^2

因此,对于 400 的方差,标准差为 20,因此,缩放:

          var=(20)^2/(255)^2;%(since the image was of uint8 type)

          Noisyimg=imnoise(I,'gaussian',0,var)
          figure;imshow(Noisyimg);

注意 imnoise 的方差参数的变化。这种相对缩放可确保输出噪声图像正确且在范围内。

方法二也可以这样做:

          noisemat=(sqrt(var))*randn(size(I))+0;
          Noisyimg=noisemat+I;
          figure;imshow(Noisyimg);

作为旁注,这个向灰度图像添加方差为 400 的高斯噪声的问题是可用的,可以在 Rafael C.Gonzalez 和 Richard E.Woods 的数字图像处理教科书第三版第五章中引用,例 5.2。请注意,该示例中的原始图像也用于此处以及我发布的问题中,但我没有得到所需的输出。

【讨论】:

    猜你喜欢
    • 2016-02-07
    • 2013-10-14
    • 2015-02-04
    • 1970-01-01
    • 2014-08-26
    • 1970-01-01
    • 2014-09-23
    • 1970-01-01
    • 2012-12-18
    相关资源
    最近更新 更多