matlab中awgn加噪
时间: 2023-10-16 21:29:23 浏览: 168
matlab 白噪声.rar_awgn函数_matlab中awgn函数_噪声产生_白噪声_高斯白噪声
在MATLAB中,可以使用 `awgn` 函数来向信号添加高斯白噪声(AWGN),其语法如下:
```
y = awgn(x, snr, signalpower)
```
其中,`x` 表示原始信号,`snr` 表示信噪比(以分贝为单位),`signalpower` 表示信号功率。具体来说,该函数会生成一个零均值、方差为 `signalpower / (10^(snr/10))` 的高斯白噪声序列,并将其加到原始信号 `x` 中,返回加噪后的信号 `y`。
例如,以下代码演示了如何向一个长度为 100 的正弦波信号添加信噪比为 10 dB 的高斯白噪声:
```
t = linspace(0, 1, 100);
x = sin(2*pi*5*t); % 5 Hz 正弦波信号
y = awgn(x, 10, 'measured'); % 添加 10 dB 的 AWGN
plot(t, x, t, y);
legend('原始信号', '加噪后的信号');
```
运行上述代码后,应该会得到一个带噪声的正弦波信号的图形。
阅读全文