假设我有这样的3-d numpy数组:
arr = np.random.randn(14,10,10)
我需要调整它以适应(14, 20, 20)
的形状。这意味着第一个维度使用插值方法分别从(10, 10)
调整为(20, 20)
。
我怎么能这样做?
对于这些任务,一个方便的工具是scipy.ndimage.interpolation.zoom
这将是resizing
数组并使用spline interpolation进行插值。为了使用它,你需要提供一个缩放因子,在这种情况下应该是[1,2,2]
。这将指定您希望沿最后两个轴的缩放系数2
:
from scipy.ndimage import interpolation
arr = np.random.randn(14,10,10)
new_arr = interpolation.zoom(arr,[1,2,2])
print(new_arr.shape)
# (14, 20, 20)