📜  使用内置的Matlab函数增加噪声(1)

📅  最后修改于: 2023-12-03 15:22:22.385000             🧑  作者: Mango

使用内置的Matlab函数增加噪声

在Matlab中,我们可以使用内置的函数为图像添加噪声。这些函数能生成各种噪声类型,并且可以根据需要调整噪声的强度。本文将介绍Matlab中常见的几种噪声类型及其对应的函数。

1. 椒盐噪声

椒盐噪声是一种随机噪声,它在图像中产生孤立的黑色和白色像素,就像撒在图像上的椒盐一样。在Matlab中,我们可以使用imnoise函数添加椒盐噪声。

img = imread('lena.png');
noisy_img = imnoise(img, 'salt & pepper', 0.02);

上述代码将读入名为lena.png的图像,然后使用imnoise函数向其添加0.02的椒盐噪声。添加后的图像将存储在noisy_img中。

2. 高斯噪声

高斯噪声是另一种常见的随机噪声,它的强度对应于高斯分布的标准差。在Matlab中,我们可以使用imnoise函数添加高斯噪声。

img = imread('lena.png');
noisy_img = imnoise(img, 'gaussian', 0.02);

上述代码将读入名为lena.png的图像,然后使用imnoise函数向其添加0.02的高斯噪声。添加后的图像将存储在noisy_img中。

3. 乘性噪声

乘性噪声是一种特殊的噪声类型,它的强度与图像的像素强度相关。在Matlab中,我们可以使用imnoise函数添加乘性噪声,其中参数s表示噪声的标准差。

img = imread('lena.png');
noisy_img = imnoise(img, 'speckle', 0.02);

上述代码将读入名为lena.png的图像,然后使用imnoise函数向其添加0.02的乘性噪声。添加后的图像将存储在noisy_img中。

4. Poisson噪声

Poisson噪声通常用于描述粒子计数实验中的图像数据。在Matlab中,我们可以使用imnoise函数添加Poisson噪声,其中参数lambda表示泊松分布的参数。

img = imread('lena.png');
noisy_img = imnoise(img, 'poisson');

上述代码将读入名为lena.png的图像,然后使用imnoise函数向其添加Poisson噪声。添加后的图像将存储在noisy_img中。

总结

以上就是使用内置的Matlab函数增加噪声的方法。需要注意的是,生成的噪声是随机的,每次运行可能会得到不同的结果。如果需要重现相同的结果,请在添加噪声前设置随机数种子。