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