python 写matlab中的加性高斯白噪声AWGN

定义 
原始信号:x 
噪声信号:n 
信噪比:SNR

信号长度:N

python 写matlab中的加性高斯白噪声AWGN_第1张图片

 

 

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

t = np.arange(0, 1000000) * 0.1
x = np.sin(t)
n = wgn(x, 6)
xn = x+n # 增加了6dBz信噪比噪声的信号

 

转载于:https://www.cnblogs.com/skykill/p/7474136.html

你可能感兴趣的:(python 写matlab中的加性高斯白噪声AWGN)