scipy.fft.

ifft2#

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

Berechnet die 2-dimensionale diskrete inverse Fouriertransformation.

Diese Funktion berechnet die Inverse der 2-dimensionalen diskreten Fouriertransformation über eine beliebige Anzahl von Achsen in einem M-dimensionalen Array mittels der Fast Fourier Transform (FFT). Mit anderen Worten, ifft2(fft2(x)) == x bis auf numerische Genauigkeit. Standardmäßig wird die inverse Transformation über die letzten beiden Achsen des Eingabearrays berechnet.

Die Eingabe sollte, analog zu ifft, in derselben Reihenfolge geordnet sein, wie sie von fft2 zurückgegeben wird, d.h. sie sollte den Term für die Nullfrequenz in der unteren Ecke der beiden Achsen, die positiven Frequenzterme in der ersten Hälfte dieser Achsen, den Term für die Nyquist-Frequenz in der Mitte der Achsen und die negativen Frequenzterme in der zweiten Hälfte beider Achsen, in der Reihenfolge abnehmend negativer Frequenzen, enthalten.

Parameter:
xarray_like

Eingabearray, kann komplex sein.

sSequenz von ganzen Zahlen, optional

Form (Länge jeder Achse) der Ausgabe (s[0] bezieht sich auf Achse 0, s[1] auf Achse 1 usw.). Dies entspricht n für ifft(x, n). Entlang jeder Achse wird die Eingabe abgeschnitten, wenn die angegebene Form kleiner als die des Inputs ist. Wenn sie größer ist, wird die Eingabe mit Nullen aufgefüllt. Wenn s nicht angegeben ist, wird die Form des Inputs entlang der von axes angegebenen Achsen verwendet. Siehe Hinweise zu Problemen mit der Null-Auffüllung bei ifft.

axesSequenz von ganzen Zahlen, optional

Achsen, über die die FFT berechnet werden soll. Wenn nicht angegeben, werden die letzten beiden Achsen verwendet.

norm{“backward”, “ortho”, “forward”}, optional

Normalisierungsmodus (siehe fft). Standard ist „backward“.

overwrite_xbool, optional

Wenn True, kann der Inhalt von x zerstört werden; Standard ist False. Weitere Einzelheiten finden Sie unter fft.

workersint, optional

Maximale Anzahl von Workern, die für die parallele Berechnung verwendet werden sollen. Wenn negativ, wickelt sich der Wert von os.cpu_count() ab. Weitere Einzelheiten finden Sie unter fft.

planobject, optional

Dieses Argument ist für die Übergabe eines vorab berechneten Plans von nachgelagerten FFT-Anbietern reserviert. Es wird derzeit in SciPy nicht verwendet.

Hinzugefügt in Version 1.5.0.

Rückgabe:
outcomplex ndarray

Der abgeschnittene oder mit Nullen aufgefüllte Input, transformiert entlang der von axes angegebenen Achsen oder der letzten beiden Achsen, wenn axes nicht angegeben ist.

Löst aus:
ValueError

Wenn s und axes unterschiedliche Längen haben oder axes nicht angegeben ist und len(s) != 2.

IndexError

Wenn ein Element von axes größer ist als die Anzahl der Achsen von x.

Siehe auch

fft2

Die Vorwärts-FFT der 2. Ordnung, deren Inverse ifft2 ist.

ifftn

Die Inverse der N-D FFT.

fft

Die 1-dimensionale FFT.

ifft

Die 1-dimensionale inverse FFT.

Hinweise

ifft2 ist nur ifftn mit einem anderen Standardwert für axes.

Siehe ifftn für Details und ein Plot-Beispiel, und fft für Definition und verwendete Konventionen.

Null-Auffüllung, analog zu ifft, erfolgt durch Anhängen von Nullen an den Input entlang der angegebenen Dimension. Obwohl dies der übliche Ansatz ist, kann er zu überraschenden Ergebnissen führen. Wenn eine andere Form der Null-Auffüllung gewünscht ist, muss diese vor dem Aufruf von ifft2 durchgeführt werden.

Beispiele

>>> 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]])