如何将Python列表转换为numpy数组以输入TensorFlow

我正在尝试为这个数据集创建一个深度学习模型。由于我在使用台式电脑,我只从第一个训练集中选取了3000张图片,这些图片存放在外部驱动器的一个文件夹中。我使用以下Python代码从文件夹中获取图片列表:

from PIL import Imageimport globimage_list = []for filename in glob.glob('/Volumes/G-DRIVE mobile USB-C/traan/*.jpeg'): #假设是jpeg格式    im=Image.open(filename)    image_list.append(im)print(image_list)

打印出来的列表看起来像这样:

[<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=3888x2592 at 0x1087337D0>, <PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=3888x2592 at 0x108733850>, ...

如何将这个列表转换成可以输入TensorFlow模型的形式,就像这个教程中的那样?


回答:

首先,你需要将你的列表转换为numpy数组,

import numpy as npimages_list = np.stack(image_list) # 假设所有图片具有相似的形状,即(height, width, 3),images_list现在具有形状(num_images, height, width, channel)

然后,你可以使用这个张量,或这个张量的一部分,通过占位符来训练你的模型

images = tf.placeholder(tf.float32, [None, height, width, channel])...sess.run(train_op, feed_dict={images:images_list})

Related Posts

在使用k近邻算法时,有没有办法获取被使用的“邻居”?

我想找到一种方法来确定在我的knn算法中实际使用了哪些…

Theano在Google Colab上无法启用GPU支持

我在尝试使用Theano库训练一个模型。由于我的电脑内…

准确性评分似乎有误

这里是代码: from sklearn.metrics…

Keras Functional API: “错误检查输入时:期望input_1具有4个维度,但得到形状为(X, Y)的数组”

我在尝试使用Keras的fit_generator来训…

如何使用sklearn.datasets.make_classification在指定范围内生成合成数据?

我想为分类问题创建合成数据。我使用了sklearn.d…

如何处理预测时不在训练集中的标签

已关闭。 此问题与编程或软件开发无关。目前不接受回答。…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注