我将 RGB 图像(32 x 32 x 3)保存为 3D numpy 数组,我将其用作神经网络的输入(使用 tensorflow)。为了将它们用作输入,我使用 reshape(1,-1) 将它们 reshape 为一维 np 数组 (1 x 3072)。当我完成训练我的网络时,我想重新调整输出,但使用 reshape(32,32,3) 似乎没有提供所需的结果。
这是正确的方法吗?我如何确定每个数据都会回到正确的位置?
最佳答案
如果您要创建一维数组,请使用 .reshape(-1),这将创建数组的线性版本。如果您使用 .reshape(32,32,3),这将创建一个由 32 个 32×3 数组组成的数组,这是所描述的原始格式。使用“-1”创建一个与组合嵌套数组中元素数量相同大小的线性数组。
关于Python:如何将 3D 图像(np 数组) reshape 为 1D,然后将它们正确地 reshape 为 3D?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44009244/