Keras:无法访问on_batch_end回调中的训练图像



我正在使用Keras和TensorFlow后端训练CNN,使用imgaug进行图像增强。

我还使用Tensorboard来可视化训练进度和结果。

由于imgaug正在对输入图像应用(随机(转换,我想将(一些(增强图像发送到Tensorboard,这样我就可以将它们可视化,并验证一切是否正确(例如:检查我是否应用了过大的翻译,或过多地模糊图像(。

为此,我创建了一个自定义Keras回调,并试图在on_batch_end方法中输入我的逻辑。我可以将图像发送到tensorboard,但找不到可以访问增强输入图像的位置。关于如何做到这一点,有什么建议吗?

提前感谢

最好通过简单地从生成器中获取图像来完成外部训练。

如果是常规generator:

for i in range(numberOfBatches):
x,y = next(generator)
#plot, print, etc. with the batches    

如果是keras.utils.Sequence:

for i in range(len(generator)):
x,y = generator[i]
#plot, print, etc. with the batches    

最新更新