function [Y,NOISE] = noisegen(X,SNR)
% noisegen add white Gaussian noise to a signal.
% [Y, NOISE] = NOISEGEN(X,SNR) adds white Gaussian NOISE to X.  The SNR is in dB.
NOISE=randn(size(X));
NOISE=NOISE-mean(NOISE);
signal_power = 1/length(X)*sum(X.*X);
noise_variance = signal_power / ( 10^(SNR/10) );
NOISE=sqrt(noise_variance)/std(NOISE)*NOISE;
Y=X+NOISE;

相关文章:

  • 2022-12-23
  • 2021-10-06
  • 2021-07-28
  • 2021-11-10
  • 2022-01-10
  • 2022-01-25
  • 2022-02-18
  • 2022-12-23
猜你喜欢
  • 2021-12-13
  • 2022-12-23
  • 2021-11-25
  • 2021-12-12
  • 2021-05-21
  • 2021-12-13
  • 2022-12-23
相关资源
相似解决方案