Python Can';t从tf.data.Dataset.from_生成器读取数据

Python Can';t从tf.data.Dataset.from_生成器读取数据,python,tensorflow,deep-learning,Python,Tensorflow,Deep Learning,我希望使用tf.data.Dataset.from_generator来帮助我生成输入数据流 dataset = tf.data.Dataset.from_generator(sample_generator, output_types=(tf.float32, tf.float32, tf.float32), output_sha

我希望使用tf.data.Dataset.from_generator来帮助我生成输入数据流

dataset = tf.data.Dataset.from_generator(sample_generator,
                                         output_types=(tf.float32, tf.float32, tf.float32), 
                                         output_shapes=(tf.TensorShape([size_image, size_image, 3]),tf.TensorShape([size_image,size_image,3]), tf.TensorShape([size_gt, size_gt])))
样本_生成函数可以生成三个具有所提出形状的numpy阵列

上面提到的部分没有问题。 然而,tf.data.Dataset.from_生成器只能生成数据流,我需要将生成的数据馈送到网络

代码如下:

dataset = dataset.map(transform_fn, num_parallel_calls=self.config['prefetch_threads']) # transform_fn just returns the input

dataset = dataset.prefetch(self.config['prefetch_capacity'])
dataset = dataset.repeat()
dataset = dataset.batch(self.config['batch_size'])
迭代器是

self.iterator = self.dataset_tf.make_one_shot_iterator()

self.iterator.get_next()
谢谢

问题已经解决了。 from_generator更改为生成元数据,例如,所需文件的名称/路径

然后,使用 tf.Py_func 以普通/简单的方式预处理数据。 我只想说:“tf.Pyfunc太方便了!” 谢谢