什么是matlab的等价物';python中的smooth3函数?
我在python中找不到与matlab的smooth3等价的东西。如何在python中执行3d平滑?最好使用它。它有大量的功能,并且可以很好地控制内存使用(例如,您可以就地执行所有这些操作,而无需复制)什么是matlab的等价物';python中的smooth3函数?,python,matlab,numpy,Python,Matlab,Numpy,我在python中找不到与matlab的smooth3等价的东西。如何在python中执行3d平滑?最好使用它。它有大量的功能,并且可以很好地控制内存使用(例如,您可以就地执行所有这些操作,而无需复制) smooth3d的默认过滤器的等效值为(“3”是过滤器的大小。3是matlab的默认值) smooth3(数据“高斯”)的等价物是 请注意,scipy.ndimage的函数适用于任何维度数据。为了便于可视化,我将在下面展示一个2D示例,但是1D、3D、4D、10D等的函数调用是相同的 impor
smooth3d
的默认过滤器的等效值为(“3”是过滤器的大小。3是matlab的默认值)
smooth3(数据“高斯”)的等价物是
请注意,scipy.ndimage
的函数适用于任何维度数据。为了便于可视化,我将在下面展示一个2D示例,但是1D、3D、4D、10D等的函数调用是相同的
import numpy as np
import scipy.ndimage as ndimage
import matplotlib.pyplot as plt
raw_data = np.random.random((30,30))
fig, axes = plt.subplots(ncols=3)
axes[0].imshow(raw_data, interpolation='nearest')
axes[0].set(title='Raw Data', xticks=[], yticks=[])
axes[1].imshow(ndimage.uniform_filter(raw_data, 3), interpolation='nearest')
axes[1].set(title='Uniform Filter', xticks=[], yticks=[])
axes[2].imshow(ndimage.gaussian_filter(raw_data, 3), interpolation='nearest')
axes[2].set(title='Gaussian Filter', xticks=[], yticks=[])
fig.tight_layout()
plt.show()
您可以使用三维高斯曲线进行卷积。请参见[此处][1]如何做到这一点。。。[1]: