numpy — укажите данные шага памяти при сохранении буфера через API C / C ++ HDF5

Я использовал HDF5 из Python, через h5pyНемного — я избалован его плавной интеграцией с NumPy. Теперь, из C / C ++ — земли, я пытаюсь сохранить и загрузить данные изображений в хранилища HDF5, и у меня возникают проблемы с выяснением, как задать шаг данных изображения.

Чтение и запись данных измерений — форма матрицы в Python — проста; Я читаю это так:

constexpr std::size_t NDIMS = 3;
hid_t space_id = H5Dget_space(dataset_id);
hsize_t dims[NDIMS];
H5Sget_simple_extent_dims(space_id, dims, NULL);

… и напишите это аналогично (для экземпляра изображения input):

constexpr std::size_t NDIMS = 3;
hsize_t dims[NDIMS] = { static_cast<hsize_t>(input.dim(0)),
static_cast<hsize_t>(input.dim(1)),
static_cast<hsize_t>(input.dim(2)) };
/// first arg here is rank (aka NDIMS)
hid_t space_id      = H5Screate_simple(NDIMS, dims, NULL);

… Примеры кода HDF5, которые я могу найти, являются либо совершенно тривиальными примерами, когда записываемые или считываемые данные очень малы и имеют известный размер, либо чрезвычайно продвинутыми и превышающими мой текущий уровень оплаты, например, например. h5py или же tables источник. Я ищу простой пример того, как одна матрица отображает данные о шагах в API HDF5.

0

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]