我正在尝试实施文档页面中描述的技术
https://keras.io/preprocessing/image/
标题下的#34;将图像和蒙版一起转换的示例"。
以下之后,
image_generator = image_datagen.flow_from_directory(
'data/images',
class_mode=None,
seed=seed)
mask_generator = mask_datagen.flow_from_directory(
'data/masks',
class_mode=None,
seed=seed)
问题出现在命令中:
# combine generators into one which yields image and masks
train_generator = zip(image_generator, mask_generator)
这会导致内存使用率上升到最大值, 然后交换也上升到最大值,此时我的 系统冻结并需要重新启动。
有没有人知道这里发生了什么?
答案 0 :(得分:0)
解决方案:问题是我使用的是Python 2,而在Python 2中,这些迭代器上的zip命令将永远迭代。任何数量的内存很快就会耗尽。使用Python 3,这不是问题。
如果您使用的是Python 2,解决方案是使用itertools.izip而不是zip。