如何在信号中添加高斯白噪声 现在,我正在使用awgn功能,但它不起作用 我给出的参数不正确吗?
EDITED
x = -2:.002:2;
% Initail variables
M = 0;
V = 500*10^(-6);
% Creating a singal
T = -pi + (pi+pi)*rand(1,1);
S = (13.5)*cos(2*pi*x+T);
% Creating Noise singal
W = M+sqrt(V)*rand(1,2500);
% Adding Noise to signal // This doesn't work
SW = awgn(S,W,'measured');
% or this doesn't work too
SW = S + W;
提前致谢。
答案 0 :(得分:1)
来自Matlab手册
y = awgn(x,snr)将白高斯噪声添加到矢量信号x。 标量 snr指定每个样本的信噪比,单位为dB。
答案 1 :(得分:1)
您的矢量大小不同。 S
为1x2001,W
为1x2500。尝试
W = M + sqrt(V)*rand(size(S));
然后你可以通过
添加信号SW = S + W;
正如Kostya已经写过的那样,如果你知道所需的SNR,就可以使用awgn
。