matlab中给信号增加噪声
时间: 2023-08-06 12:16:59 浏览: 70
MATLAB-给图像添加噪声matlab.m
在 Matlab 中,您可以使用 `awgn` 函数为信号添加各种类型的噪声,包括高斯白噪声、脉冲噪声、均匀噪声等等。该函数的语法如下:
```matlab
noisy_signal = awgn(signal, snr, 'noise_type');
```
其中,`signal` 是原始信号,`snr` 是信噪比(Signal-to-Noise Ratio),`noise_type` 是噪声类型。常见的噪声类型包括:'gaussian'(高斯白噪声)、'poisson'(脉冲噪声)、'salt & pepper'(椒盐噪声)等等。
例如,如果您想要将信噪比设置为20 dB,并在信号中添加高斯白噪声,可以使用以下代码:
```matlab
signal = randn(1, 1000); % 生成长度为1000的随机信号
snr = 20; % 设置信噪比(dB)
noisy_signal = awgn(signal, snr, 'gaussian'); % 添加高斯白噪声
```
这将生成一个长度为1000的随机信号,将信噪比设置为20 dB,并将高斯白噪声添加到信号中。最终的带噪声信号将保存在 `noisy_signal` 中。
如果您想要添加其他类型的噪声,只需要将 `'gaussian'` 替换为相应的噪声类型即可。
阅读全文