【问题标题】:Tensorflow load image dataset with image labelsTensorFlow 加载带有图像标签的图像数据集
【发布时间】:2020-12-08 14:45:34
【问题描述】:

我正在尝试找到一种简单的方法将我的数据放入 TensorFlow 数据集,而无需之前加载它并将其作为 NumPy 数组处理。

在这种情况下,我正在研究一个分割模型,我的数据是结构化的,所以一个目录有训练数据图像,另一个目录有“掩码”,基本上也是图像。

使用tf.keras.preprocessing.image_dataset_from_directory,我可以加载图像数据集,它会将标签设置为目录的名称,或者让我自己通过函数参数设置它们,但它不允许我设置参数,所以它需要来自不同目录的标签。我正在阅读文档,但我没有看到一种简单的方法来加载这些类型的数据集,其中标签本身就是图像。

【问题讨论】:

    标签: python tensorflow tensorflow-datasets


    【解决方案1】:

    这是在 Keras 中执行此操作的一种可能方式:

    train_generator_images = image_data_generator_train.flow_from_dataframe(
        dataframe=train,
        directory='..//VOCdevkit/VOC2009/JPEGImages',
        x_col='filename',
        class_mode=None,
        color_mode="rgb",
        target_size=(image_size[1],image_size[0]),
        batch_size=batchSize,
        seed=seed)
    
    train_generator_mask = mask_data_generator_train.flow_from_dataframe(
        dataframe=train,
        directory='..//VOCdevkit/VOC2009/SegmentationClass',
        x_col='segmentation',
        class_mode=None,
        color_mode="grayscale",
        target_size=(image_size[1],image_size[0]),
        batch_size=batchSize,
        seed=seed)
    
    train_generator = zip(train_generator_images, train_generator_mask)
    

    这里重要的是设置相同的种子,以便图像和标签匹配。 我从我的一个旧项目中复制了它,所以它可能不是最新的。

    【讨论】:

      猜你喜欢
      • 2016-03-24
      • 2022-12-23
      • 2020-09-23
      • 1970-01-01
      • 2020-12-24
      • 2017-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多