我已经阅读了关于TensorFlow的CNN教程,我正在尝试为我的项目使用相同的模型.现在的问题是数据读取.我有大约25000张图像用于培训,大约5000张用于测试和验证.文件是png格式,我可以读取它们并将它们转换为numpy.ndarray.
教程中的CNN示例使用队列从提供的文件列表中获取记录.我试图通过将我的图像重塑为一维数组并在其前面附加标签值来创建我自己的二进制文件.所以我的数据看起来像这样
[[1,12,34,24,53,...,105,234,102],
[12,112,43,24,52,...,115,244,98],
....
]
Run Code Online (Sandbox Code Playgroud)
上述数组的单行长度为22501,其中第一个元素是标签.
我将文件转储到使用pickle并尝试使用tf.FixedLengthRecordReader从文件中读取以从文件中读取,如示例中所示
我正在做与cifar10_input.py中给出的相同的事情来读取二进制文件并将它们放入记录对象中.
现在,当我从文件中读取标签和图像值不同时.我可以理解这是因为pickle还在二进制文件中转储大括号和括号的额外信息,并且它们更改了固定长度的记录大小.
上面的示例使用文件名并将其传递给队列以获取文件,然后将队列传递给文件中的单个记录.
我想知道我是否可以将上面定义的numpy数组而不是文件名传递给某些阅读器,它可以从该数组而不是文件中逐个获取记录.