如何在 HDF5 中一个一个地存储组数组?

How to store array of groups in HDF5, one by one?

我找不到合适的 documentation/examples 来完成我的任务。我想存储每个包含的组(?):

而且我想一个一个地做这个。 IE。我将执行一些预处理以获得组的组件,然后我想在继续下一个组件之前存储这些组件。要记住的一件事是,我不知道最终会编写多少这样的组。我的想法是每次都直接在 root 下创建一个新组,按当前计数命名,但我觉得有一种更优雅的方法可以解决这个问题。有什么建议吗?

编辑:我意识到我只添加了 C++ 标记,并没有在文本中提及它。我在这方面坚持使用 C++,无法使用 python.

EDIT2:稍后将由 caffe 中的 hdf5 层使用

我觉得你最初的想法完全没问题。只需将它们命名为 foo1、...、foo42,还可以将包含组总数的属性添加到根(并在每次添加组时更新)。

事实证明我不需要太费心,因为 HDF5 的 C++ API 不支持图像。