将 hdf5 转换为文件夹中组织的原始格式

2024-03-25

我使用脚本使图像与图集匹配。该脚本输入是.raw图像组织在文件夹中,例如:

imageFolder
-- folder1
---- image1.raw
---- image2.raw
-- folder2
---- image1.raw
---- image2.raw

我有一个图像hdf5我想将其转换为前面介绍的多个文件。这个组织看起来像hdf5,不是吗?

我想知道是否可以在 Python 中做到这一点。如果是,我应该使用哪个包? 我在看h5py但我没有找到导出到原始并保持层次结构的函数。


飞腾,你可以用.visititems()递归调用函数(def)来导出数据。您可以查询对象类型和名称。组名称将是您的文件夹名称,数据集名称将是您的文件名。附件是一个非常简单的示例,展示了如何使用.visititems()。如果您不熟悉 h5py 和/或 HDF5 结构,它有一些打印语句(已注释掉),可以输出更多信息。这应该可以帮助您开始。

import h5py

def print_grp_name(grp_name, object):

#  print ('object = ' , object)
#  print ('Group =', object.name)

  try:
    n_subgroups = len(object.keys())
    #print ('Object is a Group')
  except:
    n_subgroups = 0
    #print ('Object is a Dataset')
    dataset_list.append (object.name)

#  print ('# of subgroups = ', n_subgroups )

if __name__ ==  '__main__' :  
    with h5py.File(your-filename-here,'r') as h5f:

        print ('visting group = ', h5f)
        dataset_list = []
        h5f.visititems(print_grp_name)

    print (dataset_list)    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 hdf5 转换为文件夹中组织的原始格式 的相关文章

随机推荐