scipy.ndimage.
fourier_ellipsoid#
- scipy.ndimage.fourier_ellipsoid(input, size, n=-1, axis=-1, output=None)[源代码]#
多维椭球傅里叶滤波器。
该数组与给定大小的椭球的傅里叶变换相乘。
- 参数:
- inputarray_like
输入数组。
- sizefloat 或 sequence
用于滤波的框的大小。如果为浮点数,则所有轴的size相同。如果为序列,则size必须包含每个轴的一个值。
- nint,可选
如果n为负数(默认),则假定输入是复数fft的结果。 如果n大于或等于零,则假定输入是实数fft的结果,并且n给出沿实数变换方向变换之前的数组长度。
- axisint,可选
实数变换的轴。
- outputndarray,可选
如果给定,则滤波输入的输出将放置在此数组中。
- 返回:
- fourier_ellipsoidndarray
滤波后的输入。
注意
此函数针对秩为 1、2 或 3 的数组实现。
示例
>>> 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()