matlab添加随机高斯噪声
时间: 2023-06-10 14:02:39 浏览: 140
可以使用matlab内置函数imnoise来添加随机高斯噪声。代码示例如下:
```matlab
% 读入图像
img = imread('lena.png');
% 添加高斯噪声
noisy_img = imnoise(img, 'gaussian', 0, 0.01);
% 显示图像
subplot(121); imshow(img); title('Original Image');
subplot(122); imshow(noisy_img); title('Noisy Image');
```
其中,第二个参数为添加的噪声类型,'gaussian'即为高斯噪声;第三个参数为噪声的均值,默认为0;第四个参数为噪声的方差,即产生噪声的强度,默认为0.01。可以根据需要调整这些参数。
相关问题
MATLAB随机高斯噪声
要在MATLAB中生成随机高斯噪声,你可以使用 `randn` 函数。 `randn` 函数生成符合标准正态分布(均值为0,方差为1)的随机数。如果需要生成特定均值和方差的高斯噪声,可以通过线性变换来实现。
下面是一个示例代码,演示如何生成均值为mu,方差为sigma的高斯噪声:
```matlab
% 指定均值和方差
mu = 0; % 均值
sigma = 1; % 方差
% 生成高斯噪声
noise = mu + sigma * randn(100, 1); % 生成100个样本的高斯噪声
% 绘制直方图查看分布
histogram(noise, 'Normalization', 'pdf');
```
在这个示例中,我们使用 `mu + sigma * randn(100, 1)` 生成了一个具有100个样本的高斯噪声。你可以根据需要修改样本数量和指定的均值和方差。
最后,我们使用 `histogram` 函数绘制了生成的噪声的直方图,以查看其分布情况。通过修改 `mu` 和 `sigma` 的值,你可以生成不同均值和方差的高斯噪声。
matlab生成高斯随机噪声
在Matlab中,可以使用randn函数生成高斯随机噪声。代码如下:
```
% 生成高斯随机噪声
mu = 0; % 均值
sigma = 1; % 标准差
noise = mu + sigma * randn(1, N); % 生成N个随机数
```
其中,mu是高斯分布的均值,sigma是标准差,N是生成随机数的个数。在代码中,使用randn函数生成N个均值为0,标准差为1的随机数,然后将其乘以sigma并加上mu,即可得到均值为mu,标准差为sigma的高斯随机噪声。
阅读全文