我试图将一个3D数组缩放到64x64x64(从一个更大的,非立方体大小),保持纵横比。在
我在二维数组中也做过同样的事情:
pad = Input.size[1]-Input.size[0]
padLeft = math.ceil(pad/2)
padRight = math.floor(pad/2)
if(pad > 0):
paddedInput = np.pad(Input, ((0,0), (padLeft,padRight)), 'constant', constant_values=(0,0))
else:
paddedInput = np.pad(Input, ((math.fabs(padLeft),math.fabs(padRight)), (0,0)), 'constant', constant_values=(0,0))
Output = misc.imresize(paddedInput,(InputHeight,InputHeight))
有没有办法在N(=3)维上实现同样的目标?在
编辑:我尝试转换为3D:
^{pr2}$这是运行,但得到填补的维度是填补他们需要的两倍数量。。。在
答案是使用pad然后numpy.ndarray.resize大小():
在同一行上执行pad可以修复任何错误。在
看看
scipy.ndimage
中的zoom。这里提供了沿每个轴的缩放因子,而不是最终的立方体大小,但这很容易计算出来。在相关问题 更多 >
编程相关推荐