python-重新采样并调整numpy数组的大小

我想按照这里的建议重新采样一个numpy数组Resampling a numpy array representing an image,但是这种重新采样将以一个因素进行,即

x = np.arange(9).reshape(3,3)
print scipy.ndimage.zoom(x, 2, order=1)

将创建(6,6)的形状,但是如何在(4,6),(6,8)或(6,10)形状内重新采样数组以使其达到最佳近似度?

解决方法:

而不是将单个数字传递给zoom参数,而是给出一个序列:

scipy.ndimage.zoom(x, zoom=(1.5, 2.), order=1)
#array([[0, 0, 1, 1, 2, 2],
#       [2, 2, 3, 3, 4, 4],
#       [4, 4, 5, 5, 6, 6],
#       [6, 6, 7, 7, 8, 8]])

使用序列(2.,2.75)和(2.,3.5),您将分别获得形状为(6,8)和(6,10)的输出数组.

上一篇:可以在Scipy中的Mann-Whitney U检验中指定替代假设吗?


下一篇:Matlab中的稀疏矩阵向量乘法是否比Python中更快?