scipy.ndimage.

fourier_ellipsoid#

scipy.ndimage.fourier_ellipsoid(input, size, n=-1, axis=-1, output=None)[Quelle]#

Mehrdimensionaler Fourier-Ellipsoidfilter.

Das Array wird mit der Fourier-Transformation eines Ellipsoids gegebener Größen multipliziert.

Parameter:
inputarray_like

Das Eingabearray.

sizefloat oder Sequenz

Die Größe der für die Filterung verwendeten Box. Wenn ein Float, ist size für alle Achsen gleich. Wenn eine Sequenz, muss size 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 Filterung der Eingabe in diesem Array platziert.

Rückgabe:
fourier_ellipsoidndarray

Die gefilterte Eingabe.

Hinweise

Diese Funktion ist für Arrays vom Rang 1, 2 oder 3 implementiert.

Beispiele

>>> from scipy import ndimage, datasets
>>> import numpy.fft
>>> import matplotlib.pyplot as plt
>>> 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_ellipsoid(input_, size=20)
>>> result = numpy.fft.ifft2(result)
>>> ax1.imshow(ascent)
>>> ax2.imshow(result.real)  # the imaginary part is an artifact
>>> plt.show()
../../_images/scipy-ndimage-fourier_ellipsoid-1.png