首页 > 解决方案 > 无法将大小为 (x,) 的数组重塑为形状 (x,y,z,1)

问题描述

我正在尝试将形状为 的 numpy ndarray 转换为形状为(2200,)的 numpy ndarray (2200,250,250,1)。每一行都包含一个图像(shape: 250,250,1)

这是我的对象:

type(x_train_left)印刷numpy.ndarray

x_train_left.shape印刷(2200,)

type(x_train_left[0])印刷numpy.ndarray

x_train_left[0].shape印刷(250, 250, 1)

但是由于某种原因,当我尝试重塑时x_train_left出现(2200,250,250,1) 以下错误:

ValueError: cannot reshape array of size 2200 into shape (2200,250,250,1)

感谢您的帮助,我搜索了重复的主题,但它们都有不同的问题。

标签: pythonnumpyreshapeshapesnumpy-ndarray

解决方案


我找到了非常简单的解决方案: np.stack(x_train_left)

然后当我尝试时:

x_train_left.shape印刷(2200, 250, 250, 1)


推荐阅读