没有子文件夹的Keras图像

时间:2017-10-04 18:48:41

标签: python tensorflow deep-learning keras

我是深度学习的新手。我有这个问题:我正在尝试用this data训练一个网络。一切都在一个文件夹中,标签在不同的mat文件中。

我知道我可以用scipy.io读取数据。但是如何在一个文件夹中获得火车X?如果我使用内置的flow_from_directory它没有显示图像,因为每个类都应该拥有它自己的文件夹。

如何只用一个文件夹创建X?现在它显示Found 0 images belonging to 0 classes

只有一个带图像的文件夹。所有图像都在1个文件夹中。我的意思是没有类文件夹。使用flow_from_directory你应该有像汽车/奔驰,汽车/宝马,汽车/奥迪这样的东西,但我的数据没有子文件夹。

所以我的问题是有没有其他方法来创建X数据?

2 个答案:

答案 0 :(得分:5)

将类设置为None并将所有图像放入图像文件夹的一个子文件夹中。

例如:

  • flow_from_directory(directory = "/path/to/your/images/", class_mode="None", …)
  • 将您的图片放入/path/to/your/images/data

答案 1 :(得分:1)

您发布的link也会向{一个devkit显示a download link,包括用于训练图像的类标签和所有图像的边界框

您可以在那里找到所需的信息,以便将您的数据集转换为flow_from_directory()所需的所需文件夹结构。

来自README.md

-cars_meta.mat:
  Contains a cell array of class names, one for each class.

-cars_train_annos.mat:
  Contains the variable 'annotations', which is a struct array of length
  num_images and where each element has the fields:
    bbox_x1: Min x-value of the bounding box, in pixels
    bbox_x2: Max x-value of the bounding box, in pixels
    bbox_y1: Min y-value of the bounding box, in pixels
    bbox_y2: Max y-value of the bounding box, in pixels
    class: Integral id of the class the image belongs to.
    fname: Filename of the image within the folder of images.