如何重塑包含图像数据的数组

时间:2018-10-26 03:24:10

标签: python image machine-learning deep-learning conv-neural-network

我的numpy数组X_train中有4554张图像,其形状如下。

print(np.shape(X_train))
(4554,) # TOtal numbe of images
X_train[0].shape
(120, 120, 4) # Each image is 120x120 with 4 channels.

现在,我想将数组重塑为(4554, 120, 120, 4),以便在打印时

print(np.shape(X_train)

它的形状为(4554, 120, 120, 4),而不是(4554,)

我尝试了以下重塑方法,但它给了我错误。

X_train=X_train.reshape((X_train.shape[0],X_train[0].shape))

错误:TypeError:“元组”对象不能解释为整数

1 个答案:

答案 0 :(得分:2)

您正在寻找numpy.stack()方法。

如果您有3D矩阵的列表,则可以像这样制作4D矩阵:

numpy.stack(your_list_of_training_data, axis=0)

有关说明,请参见此处的文档:https://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.stack.html