使用TensorFlow'的图像摘要;s数据集API

使用TensorFlow'的图像摘要;s数据集API,api,tensorflow,dataset,summary,tensorboard,Api,Tensorflow,Dataset,Summary,Tensorboard,我正在使用加载和预处理图像。我想将预处理图像的摘要添加到Tensorboard 推荐的方法是什么 到目前为止,我的代码如下所示: def get_data(): dataset=FixedLengthRecordDataset(…) dataset=dataset.map(dataset\u解析器,…) 如果是大学培训: dataset=dataset.map(对列车进行预处理,…) #做洗牌,分批。。。 返回数据集 列车的def预处理(图像、标签): #做预处理。。。 image=tf.ima

我正在使用加载和预处理图像。我想将预处理图像的摘要添加到Tensorboard

推荐的方法是什么

到目前为止,我的代码如下所示:

def get_data():
dataset=FixedLengthRecordDataset(…)
dataset=dataset.map(dataset\u解析器,…)
如果是大学培训:
dataset=dataset.map(对列车进行预处理,…)
#做洗牌,分批。。。
返回数据集
列车的def预处理(图像、标签):
#做预处理。。。
image=tf.image.random\u flip\u left\u right(图像)
#添加摘要
tf.summary.image('preprocessed_image',tf.expand_dims(image,0))
返回图像、标签
preprocess\u for\u train
中,我的图像列在
SUMMARIES
集合中,但当返回到外部函数时,它不再是图形的一部分。我认为这是因为
map
使用了不同的线程,因此引用了
tf.Graph
的不同实例


由于这不起作用,我还有什么其他选项可以在Tensorboard中显示我的图像?

我发现了一种方法,可以使用迭代器的输出将预处理的图像添加到Tensorboard中:

train\u dataset=get\u data()
迭代器=迭代器。从_结构(列_数据集.输出_类型,列_数据集.输出_形状)
#批次包括[图像、标签]
next\u batch=iterator.get\u next()
tf.summary.image('preprocessed_image',next_batch[0])
但是,在运行summary_op时,这将再次调用next_batch。它有助于调试图像预处理,但不是真正培训的解决方案。此外,只能观察到完全预处理的图像,而不能观察中间预处理阶段