python序列中添加高斯噪声

1 def wgn(x, snr):
2   snr = 10**(snr/10.0)
3   xpower = np.sum(x**2)/len(x)
4   npower = xpower / snr
5   return np.random.randn(len(x)) * np.sqrt(npower)

wgn是获得原始信号为x,相对于原始信号信噪比是snr dB的高斯噪声

voice= [......]     #voice 为一个声音序列
n = wgn(voice, 6)
voice= np.array(voice)
n = np.array(n)
voice_withnoise= voice+n
plt.plot(voice_withnoise)
plt.show()

 

转载于:https://www.cnblogs.com/wqpkita/p/7128323.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值