我使用 MATLAB 的函数生成两个噪声图像imnoise()
。
如果我平均这两个噪声图像,得到的图像看起来像原始噪声图像,但只有噪声水平不同。
如果我使用框滤波执行空间平均,则结果图像中的噪声模式与原始噪声图像不同。如果应用空间平均,则噪声在空间上是相关的。
但是我无法弄清楚它背后的原理。在执行任何操作之前,每个位置的噪声都是独立同分布的。所以时间操作和空间操作不应该产生不同的结果。
MATLAB如下
width = 256;
height = 128;
image = ones(height, width, 'uint8');
image = image.*128;
image_noise0 = imnoise(image, 'gaussian', 0, 0.0005);
image_noise1 = imnoise(image, 'gaussian', 0, 0.0005);
image_noise_tem = uint8((uint16(image_noise0) + uint16(image_noise1))/2);
h = fspecial('average', 3);
image_noise_spa = imfilter(image_noise0, h);