Как преобразовать папку с изображениями в файл h5? - PullRequest
0 голосов
/ 25 февраля 2020

Как конвертировать папку с изображениями в файл h5? или существует другой тип формата файла для ввода набора данных в модель CNN?

Заранее спасибо.

1 Ответ

1 голос
/ 26 февраля 2020

Вы можете сохранить каждый файл (т. Е. Изображение) как набор данных HDF5 с типом данных opaque. Кроме того, для каждого набора данных вы можете связать один или несколько атрибутов для описания файла (например, метка времени создания).

Используя HDFql в Python, это можно реализовать следующим образом:

import HDFql

HDFql.execute("CREATE FILE images.h5") # create HDF5 file named 'images.h5'

HDFql.execute("USE FILE images.h5") # use (i.e. open) HDF5 file 'images.h5'

HDFql.execute("SHOW FILE my_directory/") # get files (i.e. images) stored in directory 'my_directory' and populate cursor with result

my_cursor = HDFql.Cursor()

i = 1
while HDFql.cursor_next() == HDFql.SUCCESS: # loop through cursor

   file_name = HDFql.cursor_get_char()

   HDFql.cursor_use(my_cursor)

   HDFql.execute("SHOW FILE SIZE my_directory/%s" % file_name)

   file_size = HDFql.cursor_get_bigint()

   HDFql.cursor_use_default()

   dataset_name = "dataset_%04d" % i

   HDFql.execute("CREATE DATASET %s AS OPAQUE(%d) VALUES FROM BINARY FILE %s" % (dataset_name, file_size, file_name)) # create HDF5 dataset and write data from file into it

   i = i + 1
...