我正在使用带有TensorFlow后端的Keras训练CNN,并使用imgaug进行图像增强。
我也在使用Tensorboard可视化培训进度和结果。
由于imgaug将(随机)转换应用于输入图像,因此我想将(部分)增强图像发送到Tensorboard,以便我可以对其进行可视化并验证是否正确(例如:检查是否我正在应用太大的翻译,或者图像太模糊了。
为此,我创建了一个自定义的Keras回调,并尝试在on_batch_end方法中输入我的逻辑。我可以将图像发送到tensorboard,但是找不到在哪里可以访问增强的输入图像。有关如何实现这一目标的任何提示?
预先感谢
答案 0 :(得分:0)
通过从生成器中获取图像,更好地进行外部培训。
如果是常规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