當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python SciPy fft.ifft2用法及代碼示例

本文簡要介紹 python 語言中 scipy.fft.ifft2 的用法。

用法:

scipy.fft.ifft2(x, s=None, axes=(-2, -1), norm=None, overwrite_x=False, workers=None, *, plan=None)#

計算二維離散傅裏葉逆變換。

此函數通過快速傅裏葉變換 (FFT) 在 M-D 數組中的任意數量的軸上計算二維離散傅裏葉變換的逆。換句話說,ifft2(fft2(x)) == x 在數值精度範圍內。默認情況下,逆變換是在輸入數組的最後兩個軸上計算的。

輸入,類似於 ifft ,應該以與 fft2 返回相同的方式排序,即它應該在兩個軸的低階角具有零頻率項,正頻率項在這些軸的前半部分,軸中間的奈奎斯特頻率項和兩個軸的後半部分的負頻率項,按負頻率遞減的順序。

參數

x array_like

輸入數組,可以很複雜。

s 整數序列,可選

輸出的形狀(每個軸的長度)(s[0]指軸 0,s[1]到軸 1 等)。這對應於n為了ifft(x, n).沿著每個軸,如果給定的形狀小於輸入的形狀,則裁剪輸入。如果它更大,則用零填充輸入。如果s未給出,輸入沿指定軸的形狀用來。請參閱有關問題的注釋scipy.fft.ifft零填充。

axes 整數序列,可選

計算 FFT 的軸。如果未給出,則使用最後兩個軸。

norm {“backward”, “ortho”, “forward”},可選

標準化模式(參見 fft )。默認為“backward”。

overwrite_x 布爾型,可選

如果為真,則內容x可以銷毀;默認為假。看scipy.fft.fft更多細節。

workers 整數,可選

用於並行計算的最大工作線程數。如果為負,則該值從 os.cpu_count() 環繞。有關詳細信息,請參閱 fft

plan 對象,可選

此參數保留用於傳遞下遊 FFT 供應商提供的預先計算的計劃。它目前未在 SciPy 中使用。

返回

out 複雜的ndarray

截斷或補零的輸入,沿軸指示的軸轉換,如果未給出軸,則沿最後兩個軸轉換。

拋出

ValueError

如果s有不同的長度,或沒有給出和len(s) != 2.

IndexError

如果軸的某個元素大於 x 的軸數。

注意

ifft2隻是scipy.fft.ifftn具有不同的默認值.

有關詳細信息和繪圖示例,請參見 ifftn ,有關使用的定義和約定,請參見 fft

零填充與 ifft 類似,是通過沿指定維度向輸入附加零來執行的。盡管這是常見的方法,但它可能會帶來令人驚訝的結果。如果需要另一種形式的零填充,則必須在調用 ifft2 之前執行。

例子

>>> import scipy.fft
>>> import numpy as np
>>> x = 4 * np.eye(4)
>>> scipy.fft.ifft2(x)
array([[1.+0.j,  0.+0.j,  0.+0.j,  0.+0.j], # may vary
       [0.+0.j,  0.+0.j,  0.+0.j,  1.+0.j],
       [0.+0.j,  0.+0.j,  1.+0.j,  0.+0.j],
       [0.+0.j,  1.+0.j,  0.+0.j,  0.+0.j]])

相關用法


注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.fft.ifft2。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。