如何使用tf.data.Dataset.from_tensor_slices和map加载np.array

时间:2019-11-08 20:09:12

标签: python arrays numpy tensorflow tensor

我正在执行Pix2Pix的实现,但是从矢量执行类似于vec2pix的操作,我将矢量设置为file.npy格式,并尝试将其与图像一起加载到张量中,

train_dataset = tf.data.Dataset.from_tensor_slices(tr_urls)

其中tr_urls是数组的名称,并且

train_dataset = train_dataset.map(load_train_image)

其中load_train_image是加载图像的功能,但这是我遇到问题的地方,

如何加载np.array作为张量?并且,

np.array的名称类似于image_name_0.npy,图像的名称为image_name.jpg,在train_dataset上,我所有的名称均为np.array格式,但是在功能映射中,它是张量而不是字符串,如何将名称从* _0.npy更改为* .jpg?

我尝试过

inimg = tf.cast(tf.io.read_file(INPATH + '\\' + filename), tf.float32)

inimg = tf.numpy_function(np.load, [INPATH + '\\' + filename], [tf.float32])

我用来加载图像的代码可以正常工作,但是我无法编辑要加载图像的数组的名称。

首先,地图功能正确完成,但是当我尝试遍历张量时,

UnimplementedError: Cast string to float is not supported
 [[{{node Cast}}]] [Op:MakeIterator]

0 个答案:

没有答案