【发布时间】:2019-05-03 04:27:30
【问题描述】:
我在一个 numpy 数组中加载了一个 100x100 的 rgb 图像。然后我将其转换为 30000x1 的 numpy 数组以通过机器学习模型。这个模型的输出也是一个 30000x1 的 numpy 数组。如何将此数组转换回 100x100 3 元组的 numpy 数组,以便打印生成的 rgb 图像?
如果初始数组为[r1 g1 b1],[r2 g2 b2],...,[],则展开为[r1 g1 b1 r2 g2 b2 ...]。我需要它以[r1 g1 b1],[r2 g2 b2],...,[] 的形式返回。
我用来将图像加载为数组的方法:
im=img.resize((height,width), Image.ANTIALIAS);
im=np.array(im);
im=im.ravel();
我已经尝试过 .reshape((100,100,3)) 并且得到了黑色输出图像。机器学习模型是正确的,不是得到黑色输出的原因。
【问题讨论】:
-
您的
reshape似乎是正确的(尝试使用初始数组)。你是怎么转成RGB的,可能问题出在哪里? -
我没有将图像转换为 RGB。我正在将 RGB 图像加载到
img数组中并将其重塑为 100x100 并将其存储在im -
我指的是输出。根据您的问题:“我已经尝试过 .reshape((100,100,3)) 并且我得到了黑色输出图像。” - 因此我的问题是,如何 你是如何转换回 RGB 图像的?您是否尝试过重塑和显示您的原始数组,中间没有机器学习部分?