【发布时间】:2021-01-28 15:26:29
【问题描述】:
我有兴趣在 NumPy 中创建 2D 汉宁、汉明、布莱克曼等窗口。我知道 NumPy 中存在现成的函数,用于它的一维版本,例如 np.blackman(51)、np.hamming(51)、np.kaiser(51)、np.hanning(51) 等。
如何创建它们的 2D 版本?我不确定以下解决方案是否正确。
window1d = np.blackman(51)
window2d = np.sqrt(np.outer(window1d,window1d))
---编辑
担心的是np.sqrt 只期望正值,而np.outer(window1d,window1d) 肯定会有一些负值。一种解决方案是放弃np.sqrt
有什么建议可以将这些一维函数扩展到二维吗?
【问题讨论】:
标签: numpy signal-processing fft dft