猿问

如何将一张图片转成Dataarray之类的MNIST

我正在编写一个神经网络,它能够从 MNIST 数据库中确定数字。我用 tkinter 制作了一个 GUI,我可以在其中绘制数字。我设法用一些 Stackoverflow 代码阅读了这些内容。但问题是,我的神经网络只是取一个有 784 个值的数组(我正在用 28x28 的枕头调整图片的大小),就像数据库中的图片已保存一样,但我得到 2352 个值(我猜它正在取每个rgb值并保存。我只需要将这3个值组合成一个值,那我该怎么做呢?


一张图片的数组:


  [[[253 253 253]

  [254 254 254]

  [254 254 254]

  ...

  [254 254 254]

  [254 254 254]

  [253 253 253]]]

我需要的数组(我知道我可以用 .tolist() 来安排它,但我首先需要 784 个值):


0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,.......121,254,207,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

顺便说一句:我知道稍后我必须反转数字,但我目前正在为 rgb 值而苦苦挣扎。


慕侠2389804
浏览 84回答 1
1回答

眼眸繁星

用枕头调整图像大小后将其转换为灰度。如果您调整大小的图像是imgimg = img.convert('L')您现在将拥有尺寸为 28x28 的图像仅供参考:用于将 rgb 转换为灰度的公式是 L = 0.2989*r + 0.5870*g + 0.1140*b
随时随地看视频慕课网APP

相关分类

Python
我要回答