首页 > 解决方案 > 将图像和相应的掩码馈送到 R 中的 unet,运行 Keras

问题描述

我还是这个领域的新手,正在努力学习。所以我试图弄清楚如何将图像和相应的掩码提供给 R 中的 unet。

我找到了以下示例:Keras | 图像数据预处理

我可以按照以下步骤在 R 中实施,直到遇到一些麻烦

# we create two instances with the same arguments
data_gen_args = dict(featurewise_center=True,
                     featurewise_std_normalization=True,
                     rotation_range=90,
                     width_shift_range=0.1,
                     height_shift_range=0.1,
                     zoom_range=0.2)
image_datagen = ImageDataGenerator(**data_gen_args)
mask_datagen = ImageDataGenerator(**data_gen_args)
# Provide the same seed and keyword arguments to the fit and flow methods
seed = 1
image_datagen.fit(images, augment=True, seed=seed)
mask_datagen.fit(masks, augment=True, seed=seed)
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)
model.fit(
    train_generator,
    steps_per_epoch=2000,
    epochs=50)

我有两个问题:

  1. 我必须使数据生成与图像/掩码相匹配才能使用特征转换(将图像和掩码一起转换(Keras 示例))。我的问题是:加载多个图像并更改为数组的有效方法是什么?keras::image_load() %>% keras::image_to_array() 加载单个图像。或者我应该写一个 for 循环?
  2. R中是否有类似于python中的zip的功能?或者我应该以什么格式尝试将图像和相应的掩码(生成器)组合起来以适应模型。

谢谢您的帮助

标签: rkerasimage-preprocessing

解决方案


推荐阅读