我正在尝试使用numpy.fft.fftn
来执行多维傅里叶变换(主要是二维),但我不知道参数s
和axes
是如何工作的,即使在阅读了手册之后。你知道吗
https://www.numpy.org/devdocs/reference/generated/numpy.fft.fftn.html
如果我理解正确的话,s
只是表示每个维度中输出数组的长度,这样输出数组就被截断成所需的形状了?你知道吗
有人能解释一下“计算FFT的轴”与数学中的傅里叶变换有什么关系吗?如何理解下面代码中使用的两种傅里叶变换之间的区别?你知道吗
>>> a = np.mgrid[:3, :3, :3][0]
>>> np.fft.fftn(a, axes=(1, 2))
array([[[ 0.+0.j, 0.+0.j, 0.+0.j], # may vary
[ 0.+0.j, 0.+0.j, 0.+0.j],
[ 0.+0.j, 0.+0.j, 0.+0.j]],
[[ 9.+0.j, 0.+0.j, 0.+0.j],
[ 0.+0.j, 0.+0.j, 0.+0.j],
[ 0.+0.j, 0.+0.j, 0.+0.j]],
[[18.+0.j, 0.+0.j, 0.+0.j],
[ 0.+0.j, 0.+0.j, 0.+0.j],
[ 0.+0.j, 0.+0.j, 0.+0.j]]])
>>> np.fft.fftn(a, (2, 2), axes=(0, 1))
array([[[ 2.+0.j, 2.+0.j, 2.+0.j], # may vary
[ 0.+0.j, 0.+0.j, 0.+0.j]],
[[-2.+0.j, -2.+0.j, -2.+0.j],
[ 0.+0.j, 0.+0.j, 0.+0.j]]])
目前没有回答
相关问题 更多 >
编程相关推荐