我已经使用tensorflow打包的数据集(例如MNIST,IMDB)来研究tensorflow的工作。但是,在实际应用中,我们必须自行预处理和准备数据集。假设我正在使用图像数据集,所以我想将它们预处理为可以输入到张量流模型中的格式。如何将图像数据集预处理为张量流格式?
答案 0 :(得分:0)
在处理图像时,通常将使用生成器。
生成器是一个输出(u,v)
的函数,其中u
是样本,v
是标签。
有关如何执行此操作的示例,请参见How to train TensorFlow network using a generator to produce inputs?。
在构建用于处理图像的生成器函数时,请记住,每个图像只是一个数组,对于灰度,(x,y)
,对于彩色图像,(x,y,channels)
。
因此,您的生成器功能将需要从磁盘读取一批图像,并将它们转换为数组。有很多工具可以处理此问题:opencv,scipy,PIL。
加载图像后,您可以对它们进行任何喜欢的操作(使用这些工具或其他工具),通常您需要重塑图像以适合您的模型。
最后,您将需要输出一对([batch_size,x,y,channels], [batch_size,labels])
。