Как построить набор данных с h5py? - PullRequest
0 голосов
/ 26 марта 2020

У меня есть следующий набор данных:

категория класса: 1,2,3 каждый класс содержит изображения RGB 320x240

dataset
   |---- training_set
         |---- 1
               |--- rgb_1.png
               |--- rgb_2.png
         |---- 2
               |--- rgb_1.png
               |--- rgb_2.png
         |---- 3
               |--- rgb_1.png
               |--- rgb_2.png
   |---- test_set
         |---- 1
               |--- rgb_1.png
               |--- rgb_2.png 
         |---- 2
               |--- rgb_1.png
               |--- rgb_2.png
         |---- 3
               |--- rgb_1.png
               |--- rgb_2.png

Потому что, когда я тренирую модель В Google Colab это очень медленнее, чем мой компьютер, я думаю, потому что набор данных находится на диске Google, поэтому я пытаюсь найти другое решение для создания набора данных с использованием h5py.

Пожалуйста, как построить этот набор данных с помощью h5py?

1 Ответ

0 голосов
/ 27 марта 2020

Краткий ответ: create_dataset(). Все, что вам нужно, находится по ссылке, предоставленной @jakub. Чтобы заполнить набор данных, вам нужно создать массив NumPy из вашего изображения. Я не знаю лучший способ сделать это. Вам нужно будет понять эту часть. Для моего примера я использовал cv2.imread().

Вы можете начать с этого простого кода:

import h5py, cv2
import numpy as np
# Create an array for image data
img_arr = cv2.imread(imgFile)
# returns a np array 
with h5py.File('imagedata.h5','w') as h5f :
    dset = h5f.create_dataset("image1", data=img_arr)
...