如何给信号加高斯白噪声
答案:1 悬赏:40 手机版
解决时间 2021-11-10 18:33
- 提问者网友:人傍凄凉立暮秋
- 2021-11-09 20:12
如何给信号加高斯白噪声
最佳答案
- 五星知识达人网友:旧脸谱
- 2021-11-09 21:09
MATLAB中,论证加噪信号经FRFT变换、滤波后,有效滤除噪声中需要给信号加入高斯白噪声,不要以为轻易的产生一个随机矩阵直接加到信号中就可以喽。那样的噪声大小既不可控,又没有意义。下面是给信号xt加入信噪比为-10db的MATLAB程序段:SNR_db=-10;SNR=10^(SNR_db/10);%%%%%%%给LFM信号加高斯白噪声%%%%%%%%计算信号能量sigpower=0;for i=1:length(xt)sigpower=sigpower+xt(1,i).^2;end%生成噪声noisepower=sigpower/SNR;%所需噪声能量noise=randn(1,length(xt));%产生均值为零,方差为一的随机高斯序列noise=noise-repmat(mean(mean(noise)),1,length(xt));%让均值更接近于零%噪声校正AWGNpower=0;for i=1:length(xt)AWGNpower=AWGNpower+noise(1,length(xt)).^2;%生成噪声的能量endK=noisepower/AWGNpower;%所需噪声能量与实际生成噪声能量的比值k=sqrt(K);%校正生成噪声加权值snr=10*log10(sigpower/sum((k*noise).^2));%实际输出信噪比
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯