Keras 加载彩色图像

Keras loading color images

我有 3 个带有彩色图像的文件夹。文件夹名称是里面图片的标签。

cls1
  |____img_0.png
  |____ ...
  |____img_n.png
cls2
  |____img_0.png
  |____ ...
  |____img_n.png   
cls3
  |____img_0.png
  |____ ...
  |____img_n.png

我想使用 Keras 库创建用于分类的卷积神经网络,但我找不到如何从彩色图像创建数据集。 你能帮帮我吗?

请考虑这个gist of pre-trained VGG-16 model with example usage,我觉得它很说明问题:

总结:

  1. 使用 OpenCV 或 scikit-image 等加载图像 (L58)
  2. 调整大小 and/or 裁剪图像以适合输入大小(VGG-16 为 224*224)(L58)
  3. 对每张图片计算并减去平均值(L59~L61)
  4. 交换高度和宽度尺寸之前的颜色尺寸 (L62)
  5. 如果您使用 scikit-image,您需要交换 3 个颜色通道,因为 OpenCV 将图像加载为 BGR 通道,而 scikit-image 将其加载为 RGB 个频道。
  6. 添加批量大小维度 (L63)
  7. 将它们打乱、划分和连接(沿着维度 0)以形成训练数据 X_train、测试数据 X_test 等,以及基本事实 Y_trainY_test
  8. 如果您的数据集太大而无法放入内存,请改用生成器和函数 fit_generator 进行训练。 (Keras 还有 evaluate_generatorpredict_generator
  9. 您现在可以开始训练了。