我创建了一个自定义生成器,用于生成corrupted_image
和original_image
的元组。
如果我这样称呼这个生成器:
(corrupted_images_batch, orig_images_batch) = next(test_generator)
它返回预期输出,即两个批次中的64个图像。为了训练我的模型,我需要对整个批次进行迭代。
但如果我尝试做一些类似的事情:
for (corrupted_images_batch, orig_images_batch) in next(test_generator):
print(corrupted_images_batch)
我得到一个错误:ValueError: too many values to unpack (expected 2)
。
如(corrupted_images_batch, orig_images_batch) = next(test_generator)
所示,next(test_generator)
是一个2元组,因此您不能对其进行循环,将每个元素拆包为2元组。
您正在寻找的是:
for (corrupted_images_batch, orig_images_batch) in test_generator:
print(corrupted_images_batch)
通过这种方式,您可以在生成器上循环,而不仅仅是生成下一个元素。