Пользовательский генератор данных Keras из массива numpy

#python #python-3.x #tensorflow #keras

#python #python-3.x #тензорный поток #keras

Вопрос:

У меня есть две переменные numpy, которые содержат image and label данные соответственно. Существует 500 labeled image форма каждого image is 240 x 240.

 import numpy as np
images = np.random.randint(4, size=(500,240,240))
labels =  np.random.rand(500,240,240)
  

Как я могу настроить генератор Keras для обучения модели?Заранее спасибо за вашу помощь.

Ответ №1:

Вы можете сделать это легко, если хотите внести небольшие изменения в свои изображения. По сути, вам нужно добавить еще одно измерение images (измерение канала).

 import numpy as np
import tensorflow as tf

images = np.expand_dims(np.random.randint(4, size=(500,240,240)),-1)
labels =  np.random.rand(500,240,240)

gen = tf.keras.preprocessing.image.ImageDataGenerator()
res = gen.flow(images, labels)
x, y = next(res)

  

Вы можете опубликовать обработку и удалить это измерение, создав другой генератор, который выдает данные генератора Keras и удаляет это измерение.