【发布时间】:2014-02-21 21:14:36
【问题描述】:
我在 MATLAB 2008 R2 中的信号上添加了一些高斯白噪声
noisedSignal = awgn(signal, 25);% 25 is the SNR
但是当我在noisedSignal 中计算 SNR 时
snr = GetSNR(noisedSignal, noisedSignal-signal);
和
function SNR = GetSNR(signal, errorSignal)
SNR = 20 * log10(sqrt(mean(signal.^2))/sqrt(mean(errorSignal.^2)));
end
计算出的SNR 是 1.1818,不是 25。我错过了什么?
【问题讨论】:
-
我无法重现您的结果。我可以用你的代码得到~25。
-
你的输入信号是什么@lennon310