我如何将我的图像数据转换为类似于MNIST数据的格式

时间:2019-06-17 10:50:22

标签: r artificial-intelligence tensorflow-datasets

我是机器学习的新手,所以请接受我的新手问题。我正在尝试根据其详细的分类法训练模型来识别底栖有孔虫...以下是有孔虫外观enter image description here的示例 enter image description here 通过使用flow_images_from_directory()加载数据,我已经成功地做到了这一点。但是,我不知道如何探索通常由flow_images_from_directory生成的对象的结构。我想格式化我的数据集,类似于Fashion MNIST数据的结构。这样我们很容易修改下面的代码。我对magick软件包有一些经验

dataset_fashion_mnist()
c(train_images, train_labels) %<-% fashion_mnist$train
c(test_images, test_labels) %<-% fashion_mnist$test

这样我就可以像set这样使我更容易理解尤其是标签部分。另外,如果可能的话,我希望能够将CSV文件中的其他信息附加到数据集。我的数据已经按照以下顺序放在文件夹和子文件夹中了

data/
    train/
        ammonia/ ### 102 pictures
            ammonia001.tif
            ammonia002.tif
            ...
        elphidium/ ### 1024 pictures
            elphidium001.jpg
            elphidium002.jpg
            ...
    test/
        ammonia/ ### 16 pictures
           ammonia001.jpg
           ammonia002.jpg
            ...
       elphidium/ ### 6 pictures
           elphidium.jpg
            elphidium.jpg
            ...

任何材料的帮助或指南将不胜感激。

1 个答案:

答案 0 :(得分:0)

我将在较高级别上描述您要执行的步骤。

  1. 假设您现在已经有了一套培训和测试套件,并且所有班级都保持了合理的平衡
  2. 加载图像并提取像素值,将其规格化,使其介于0到1之间
  3. 如果图像的尺寸不同,则应填充它们,使它们的尺寸都相同
  4. 如果您未使用需要2D结构的方法(例如CNN),则还应该展平像素值
  5. 将图像(以像素形式)与班级标签关联
  6. 现在您有了一组固定大小的像素形式的图像及其相关的类标签。然后,您可以将其输入到您正在使用的任何模型中

希望这会有所帮助,让我知道您是否感到困惑

旁注:从您的样本看来,您的数据集似乎严重偏斜-有很多phi示例,但没有很多氨示例。以后可能会导致问题。通常,您希望各个类之间的示例数量均衡。