numpy.fft.fft2#
- fft.fft2(a, s=None, axes=(-2, -1), norm=None, out=None)[source]#
- 计算二维离散傅里叶变换。 - 此函数通过快速傅里叶变换 (FFT) 计算 M 维数组中任意轴上的 n 维离散傅里叶变换。默认情况下,变换是在输入数组的最后两个轴上计算的,即进行二维 FFT。 - 参数:
- a类数组
- 输入数组,可以是复数 
- s整数序列,可选
- 输出的形状(每个变换轴的长度)( - s[0]指轴 0,- s[1]指轴 1,依此类推)。这对应于- fft(x, n)中的- n。沿每个轴,如果给定形状小于输入形状,则输入将被裁剪。如果大于输入形状,则输入将用零填充。- 2.0 版本变更: 如果为 - -1,则使用整个输入(不填充/裁剪)。- 如果未给出 s,则使用由 axes 指定的轴的输入形状。 - 自 2.0 版本弃用: 如果 s 不为 - None,则 axes 也不能为- None。- 自 2.0 版本弃用: s 必须只包含 - int类型的值,而不是- None。目前- None值表示在相应的 1-D 变换中使用了- n的默认值,但此行为已被弃用。
- axes整数序列,可选
- 计算 FFT 的轴。如果未给出,则使用最后两个轴。axes 中的重复索引意味着对该轴的变换将执行多次。单个元素的序列表示执行一维 FFT。默认值: - (-2, -1)。- 自 2.0 版本弃用: 如果指定了 s,则要变换的相应 axes 不能为空 - None。
- norm{“backward”, “ortho”, “forward”},可选
- 归一化模式(参见 - numpy.fft)。默认值为 “backward”。指示正向/反向变换对的哪个方向被缩放以及使用何种归一化因子。- 1.20.0 版本新增: 添加了“backward”、“forward”值。 
- out复数 ndarray,可选
- 如果提供,结果将放入此数组中。它应具有所有轴的适当形状和 dtype(因此只有最后一个轴的 - s可以不等于该轴的形状)。- 2.0.0 版本新增。 
 
- 返回:
- out复数 ndarray
- 沿 axes 指示的轴(如果未给出 axes 则为最后两个轴)变换后的截断或零填充输入。 
 
- 抛出:
- ValueError
- 如果 s 和 axes 长度不同,或者未给出 axes 且 - len(s) != 2。
- IndexError
- 如果 axes 的某个元素大于 a 的轴数。 
 
 - 另请参见 - 注意 - fft2只是- fftn的一个特例,它使用了不同的 axes 默认值。- 输出类似于 - fft,在变换轴的低阶角包含零频率项,在这些轴的前半部分包含正频率项,在轴的中间包含奈奎斯特频率项,在轴的后半部分包含负频率项,按负频率递减的顺序排列。- 有关详细信息和绘图示例,请参见 - fftn,有关所使用的定义和约定,请参见- numpy.fft。- 示例 - >>> import numpy as np >>> a = np.mgrid[:5, :5][0] >>> np.fft.fft2(a) array([[ 50. +0.j , 0. +0.j , 0. +0.j , # may vary 0. +0.j , 0. +0.j ], [-12.5+17.20477401j, 0. +0.j , 0. +0.j , 0. +0.j , 0. +0.j ], [-12.5 +4.0614962j , 0. +0.j , 0. +0.j , 0. +0.j , 0. +0.j ], [-12.5 -4.0614962j , 0. +0.j , 0. +0.j , 0. +0.j , 0. +0.j ], [-12.5-17.20477401j, 0. +0.j , 0. +0.j , 0. +0.j , 0. +0.j ]])