Загрузка пользовательского набора данных через Keras

У меня есть простая модель GAN (на основе Keras), которую я использую для создания рукописных цифровых изображений на основе набора данных MNIST. Я хочу создать аналогичный набор данных для Keras, используя необработанные данные изображения из набора данных отпечатков пальцев Sokoto Coventry (SOCOFing), который состоит из 6000 различных образцов черно-белых изображений отпечатков пальцев, и применить их к той же модели GAN. Проблема в том, что я застрял с созданием и загрузкой / обработкой настраиваемого набора данных.

Это код модели, которую я использую для MNIST:

      import os
import numpy as np
import matplotlib.pyplot as plt
from tqdm import tqdm
from keras.layers import Input
from keras.models import Model, Sequential
from keras.layers.core import Dense, Dropout
from keras.layers.advanced_activations import LeakyReLU
from keras.datasets import mnist
from tensorflow.keras.optimizers import Adam
from keras import initializers

os.environ["KERAS_BACKEND"] = "tensorflow"

np.random.seed(10)

random_dim = 100

def load_mnist_data():
    (x_train, y_train), (x_test, y_test) = mnist.load_data()
    x_train = (x_train.astype(np.float32) - 127.5)/127.5
    x_train = x_train.reshape(60000, 784)
    return (x_train, y_train, x_test, y_test)

В целях экспериментов я создал уменьшенную версию набора данных SOCOFing, содержащую всего 500 образцов. Код для генератора набора данных выглядит следующим образом:

      from PIL import Image
import os
import numpy as np

path_to_files = "./fingerprints/"    
vectorized_images_X = []
vectorized_images_Y = []

for _, file in enumerate(os.listdir(path_to_files)):
    image = Image.open(path_to_files + file)
    image_array = np.array(image)
    vectorized_images_X.append(image_array)
    vectorized_images_Y.append(image_array)
np.savez("./fingerprints.npz",DataX=vectorized_images_X,DataY=vectorized_images_Y)
import numpy as np

path = "./fingerprints.npz"
with np.load(path) as data:
    train_data = data['DataX']
    print(train_data)
    test_data = data['DataY']
    print(test_data)

Итак, теперь у меня есть файл * .npz, но я не знаю, как его внедрить в модель. Пожалуйста, порекомендуйте.

1 ответ

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

      DATA_URL = 'https://storage.googleapis.com/tensorflow/tf-keras-datasets/mnist.npz'

path = tf.keras.utils.get_file('mnist.npz', DATA_URL)
with np.load(path) as data:
  train_examples = data['x_train']
  train_labels = data['y_train']
  test_examples = data['x_test']
  test_labels = data['y_test']

Для получения более подробной информации вы можете перейти по этой ссылке .

Другие вопросы по тегам