jax.numpy.fft.ifft2#

jax.numpy.fft.ifft2(a, s=None, axes=(-2, -1), norm=None)[原始碼]#

計算二維反離散傅立葉變換。

JAX 實作的 numpy.fft.ifft2()

參數:
  • a (ArrayLike) – 輸入陣列。必須具有 a.ndim >= 2

  • s (Shape | None | None) – 長度為 2 的整數序列 (選用)。指定每個指定軸中輸出的尺寸。如果未指定,則預設為 a 沿指定 axes 的尺寸。

  • axes (Sequence[int]) – 長度為 2 的整數序列 (選用),預設值為 (-2,-1)。指定計算變換的軸。

  • norm (str | None | None) – 字串,預設值為 “backward”。正規化模式。「backward」、「ortho」和「forward」受到支援。

傳回:

一個陣列,包含 a 沿給定 axes 的二維反離散傅立葉變換。

傳回類型:

Array

參見

範例

jnp.fft.ifft2 預設沿最後兩個軸計算變換。

>>> x = jnp.array([[[1, 3],
...                 [2, 4]],
...                [[5, 7],
...                 [6, 8]]])
>>> with jnp.printoptions(precision=2, suppress=True):
...   jnp.fft.ifft2(x)
Array([[[ 2.5+0.j, -1. +0.j],
        [-0.5+0.j,  0. +0.j]],

       [[ 6.5+0.j, -1. +0.j],
        [-0.5+0.j,  0. +0.j]]], dtype=complex64)

s=[2, 3] 時,沿 axes (-2, -1) 的變換維度將為 (2, 3),而沿其他軸的維度將與輸入的維度相同。

>>> with jnp.printoptions(precision=2, suppress=True):
...   jnp.fft.ifft2(x, s=[2, 3])
Array([[[ 1.67+0.j  , -0.08+1.01j, -0.08-1.01j],
        [-0.33+0.j  , -0.08-0.14j, -0.08+0.14j]],

       [[ 4.33+0.j  ,  0.58+2.17j,  0.58-2.17j],
        [-0.33+0.j  , -0.08-0.14j, -0.08+0.14j]]], dtype=complex64)

s=[2, 3]axes=(0, 1) 時,沿 axes (0, 1) 的變換形狀將為 (2, 3),而沿其他軸的維度將與輸入的維度相同。

>>> with jnp.printoptions(precision=2, suppress=True):
...   jnp.fft.ifft2(x, s=[2, 3], axes=(0, 1))
Array([[[ 2.33+0.j  ,  3.67+0.j  ],
        [ 0.33+1.15j,  0.67+1.73j],
        [ 0.33-1.15j,  0.67-1.73j]],

       [[-1.33+0.j  , -1.33+0.j  ],
        [-0.33-0.58j, -0.33-0.58j],
        [-0.33+0.58j, -0.33+0.58j]]], dtype=complex64)