python numpy 函数_Python 入门教程:关于 numpy 窗函数 Blackman

倾国倾城展容颜,毒地,诺基亚6300免费游戏

布莱克曼窗(Blackman window):它是通过使用余弦求和的前三个项形成的圆锥。 它被设计为具有尽可能接近的最小泄漏。 它接近最佳,仅比Kaiser窗口(Kaiser window)差一点。

参数(numpy.blackman):

M:int输出窗口中的点数。

如果为零或更少,则返回一个空数组。

返回值:

out:数组

最大值标准化为1的窗口(仅当样本数为奇数时才显示1)。

示例:

import numpy as np

print(np.blackman(12))

输出:

[ -1.38777878e-17 3.26064346e-02 1.59903635e-01 4.14397981e-01

7.36045180e-01 9.67046769e-01 9.67046769e-01 7.36045180e-01

4.14397981e-01 1.59903635e-01 3.26064346e-02 -1.38777878e-17]

绘制窗口及其频率响应(需要SciPy和matplotlib):

代码:对于窗口:

import numpy as np

import matplotlib.pyplot as plt

from numpy.fft import fft, fftshift

window = np.blackman(51)

plt.plot(window)

plt.title("www.linuxidc.com")

plt.ylabel("Amplitude")

plt.xlabel("Sample")

plt.show()

输出:

代码:对于频率:

import numpy as np

import matplotlib.pyplot as plt

from numpy.fft import fft, fftshift

window = np.blackman(51)

plt.figure()

A = fft(window, 2048) / 25.5

mag = np.abs(fftshift(A))

freq = np.linspace(-0.5, 0.5, len(A))

response = 20 * np.log10(mag)

response = np.clip(response, -100, 100)

plt.plot(freq, response)

plt.title("www.linuxidc.com")

plt.ylabel("Magnitude [dB]")

plt.xlabel("Normalized frequency [cycles per sample]")

plt.axis('tight')

plt.show()

输出:

更多Python相关信息见Python 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=17

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址:https://www.linuxidc.com/Linux/2019-12/161769.htm

在Python中操作PDF文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值