fourier_shift#
- scipy.ndimage.fourier_shift(input, shift, n=-1, axis=-1, output=None)[Quelle]#
Mehrdimensionaler Fourier-Verschiebungsfilter.
Das Array wird mit der Fourier-Transformation einer Verschiebungsoperation multipliziert.
- Parameter:
- inputarray_like
Das Eingabearray.
- shiftfloat oder Sequenz
Die Größe der für das Filtern verwendeten Box. Wenn eine Gleitkommazahl,
shiftist für alle Achsen gleich. Wenn eine Sequenz,shiftmuss einen Wert für jede Achse enthalten.- nint, optional
Wenn n negativ ist (Standard), wird angenommen, dass die Eingabe das Ergebnis einer komplexen FFT ist. Wenn n größer oder gleich Null ist, wird angenommen, dass die Eingabe das Ergebnis einer realen FFT ist, und n gibt die Länge des Arrays vor der Transformation entlang der Richtung der realen Transformation an.
- axisint, optional
Die Achse der realen Transformation.
- outputndarray, optional
Wenn angegeben, wird das Ergebnis der Verschiebung des Inputs in diesem Array platziert.
- Rückgabe:
- fourier_shiftndarray
Der verschobene Input.
Beispiele
>>> from scipy import ndimage, datasets >>> import matplotlib.pyplot as plt >>> import numpy.fft >>> fig, (ax1, ax2) = plt.subplots(1, 2) >>> plt.gray() # show the filtered result in grayscale >>> ascent = datasets.ascent() >>> input_ = numpy.fft.fft2(ascent) >>> result = ndimage.fourier_shift(input_, shift=200) >>> result = numpy.fft.ifft2(result) >>> ax1.imshow(ascent) >>> ax2.imshow(result.real) # the imaginary part is an artifact >>> plt.show()