白噪声的详细理解

在数据处理的时候,经常会遇到噪声。一般的噪声是一种功率谱密度为常数的随机信号或随机过程,即白噪声。白噪声的由来是由于白光是由各个频率的单色光混合而成,因为此信号的平均功率谱性质成为“白”,此信号也就是白噪声。理想的白噪声具有无限带宽,因而其能量是无限大,这在现实世界是不可能存在的。实际上,人常常将有限带宽的平整信号视为白噪声,以方便进行数学分析。白噪声具有以下特点:

  • 数学期望为0:
    μ n = E { n ( t ) } = 0 \mu_n=E\{n(t)\}=0 μn=E{n(t)}=0
# 代码测试:
import numpy as np
noise = np.random.rand(0, 1, 100000)
mean = np.mean(noise)
print(mean)
0.004019681758208514  # 这里之所以不为0,即上文说的,只要带宽足够,就是理想的白噪声。
  • 自相关函数为狄拉克函数
    r n n = E { n ( t ) n ( t − τ ) } = δ ( τ ) r_{nn} = E\{n(t)n(t-\tau)\}=\delta(\tau) rnn=E{n(t)n(tτ)}=δ(τ)
# 代码测试
import imageio
import numpy as np

nums = np.arange(10, 100000, 1000)
for num in nums:
	noise = np.random.normal(0, 1, num)
	corr = np.correlate(noise, noise, mode='full')
	plt.plot(corr)
	plt.savefig('figs/fig%d.png'%num)
	plt.close()

with imageio.get_write('mygif.gif', mode='I') as writer:
	for num in nums:
		image = imageio.imread('figs/fig%d/png%num)
		write.append_data(image)

图像结果:
在这里插入图片描述上图是狄拉克函数。

  • 功率谱密度是平的
import matplotlib.pyplot as plt
noise = np.random.rand(0, 1, 100000)
plt.psd(noise, 1000)
plt.savefig('image.png', dpi=300)

结果如下:
在这里插入图片描述

  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星空下0516

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值