如何使用 Keras 为分类问题加载图像
How to load images for classification problem using Keras
我正在使用 Keras 框架处理图像 class化问题。这是二进制 class 化问题,我有 2 个文件夹 training set 和 test set 其中包含 class是的。我没有为每个 class(比如猫与狗)单独的文件夹。 Keras ImageDataGenerator 在我们为每个 class(cat 文件夹和 dog 文件夹)有单独的文件夹时工作。但是我有一个文件夹 training set 中的所有图像,我不明白如何进一步进行。请建议如何加载图像。
我还有 2 个 CSV 文件 - train.csv 和 test.csv。 train.csv 包含 2 列,即 image_id 和 class_name。 test.csv 包含 image_id。请注意,image_id 与图像文件夹中的文件名匹配。
ImageDataGenerator
的最新版本有一个名为 flow_from_dataframe
的方法,它完全符合您的要求。
基本上,它的使用方法是首先将 CSV 文件加载到 pandas DataFrame
,实例化一个 ImageDataGenerator
,然后使用三个重要参数调用 flow_from_dataframe
:
directory
:您的数据所在的文件夹。
x_col
:DataFrame
中的列包含 directory
中与您的 training/testing 数据相对应的文件名。
y_col
:DataFrame
中的列对应生成器输出的标签。
然后您可以像使用任何其他生成器一样使用此生成器,方法是调用 fit_generator
。更多信息和示例可用 here.
我正在使用 Keras 框架处理图像 class化问题。这是二进制 class 化问题,我有 2 个文件夹 training set 和 test set 其中包含 class是的。我没有为每个 class(比如猫与狗)单独的文件夹。 Keras ImageDataGenerator 在我们为每个 class(cat 文件夹和 dog 文件夹)有单独的文件夹时工作。但是我有一个文件夹 training set 中的所有图像,我不明白如何进一步进行。请建议如何加载图像。
我还有 2 个 CSV 文件 - train.csv 和 test.csv。 train.csv 包含 2 列,即 image_id 和 class_name。 test.csv 包含 image_id。请注意,image_id 与图像文件夹中的文件名匹配。
ImageDataGenerator
的最新版本有一个名为 flow_from_dataframe
的方法,它完全符合您的要求。
基本上,它的使用方法是首先将 CSV 文件加载到 pandas DataFrame
,实例化一个 ImageDataGenerator
,然后使用三个重要参数调用 flow_from_dataframe
:
directory
:您的数据所在的文件夹。x_col
:DataFrame
中的列包含directory
中与您的 training/testing 数据相对应的文件名。y_col
:DataFrame
中的列对应生成器输出的标签。
然后您可以像使用任何其他生成器一样使用此生成器,方法是调用 fit_generator
。更多信息和示例可用 here.