查看: 1722|回复: 2|关注: 0

[已解决] 高斯白噪声

[复制链接]

新手

17 麦片

财富积分


050


5

主题

24

帖子

0

最佳答案
宋老师,我用您在第五章中给出的Gnoisegen函数和MATLAB自带的awgn函数分别对信号添加同样信噪比的噪声,为什么得到的信号波形差别这么大呢?前者的信噪比明显比后者大。下面附上代码和图:
load chirp;
N=length(y);
t=(0:N-1)/Fs;
y1=awgn(y,15);
[y2,n2]=Gnoisegen(y,15);
figure(1)
subplot(311),plot(t,y);  %原始语音信号
subplot(312),plot(t,y1);   %用awgn添加噪声得到的信号
subplot(313),plot(t,y2);   %用Gnoisegen添加噪声得到的信号


QQ图片20190722171910.png
回复主题 已获打赏: 0 积分

举报

论坛优秀回答者

17

主题

5407

帖子

1153

最佳答案
  • 关注者: 712
发表于 2019-7-22 19:49:59 | 显示全部楼层 |此回复为最佳答案
LZ用两种方法对信号加了15dB信噪比,但实际上结果是否加了15dB呢? 我在书上有一个检查信噪比的程序,可以在LZ的程序中增加这样两语句来检查:
snr1=SNR_singlech(y,y1)
snr2=SNR_singlech(y,y2)
给出的结果是这样的
snr1 =0.6736    snr2 =15.0000
snr1的值接近0dB,这就是为什么“前者的信噪比明显比后者大”的原因。
为什么会出现这样的结果,这是由于LZ没有正确的使用awgn函数,应把该语句改为
y1=awgn(y,15,'measured');
这样两种方法的结果就差不多了。
回复此楼 已获打赏: 0 积分

举报

新手

17 麦片

财富积分


050


5

主题

24

帖子

0

最佳答案
 楼主| 发表于 2019-7-22 21:10:32 | 显示全部楼层
songzy41 发表于 2019-7-22 19:49
LZ用两种方法对信号加了15dB信噪比,但实际上结果是否加了15dB呢? 我在书上有一个检查信噪比的程序,可以在 ...

原来是这样,谢谢宋老师!
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表