Я работаю над проектом, который должен иметь возможность хранить изображения (среди ряда других наборов данных) в файле HDF5.
C HDF API предоставляет ряд специфичных для изображения функций для хранения данных в файле HDF5. В частности, изображения, сохраненные с использованием этих функций, можно просмотреть с помощью инструмента HDFView из группы HDF.
Тем не менее, поиск C ++ API документация, кажется, что нет интерфейса, который соответствует версии C.
Есть ли удобный способ записи изображений в файл HDF5 через C ++?
Специфичные для изображения функции находятся в «высокоуровневых» интерфейсах HDF5, которые существуют только для API C и Fortran (кроме интерфейса таблицы пакетов по некоторым причинам).
Вы можете использовать интерфейс C в C ++, вам просто нужно получить HDF5 ID объекта, который вы хотите передать, например:
H5File file;
auto file_id = file.getId();
H5IMmake_image_8bit(file_id, "Image1", width, height, data);
Других решений пока нет …