如何在Python中创建HDF5图像数据文件

2024-04-23 16:01:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试创建一个HDF5图像文件

我试着使用tables、numpy和PIL库

import numpy as np
import tables
import cv2
import os
from PIL import Image

directory = os.path.join("new_images")
data_directory = os.path.join("CatFace_Dataset_HDF")
# create folder for hdf file

data = []
for file in os.listdir(directory):
   print("file",file)
   im = Image.open(os.path.join(directory,file))
   data.append(np.array(im))
data = np.asarray(data)
shape = (len(os.listdir(directory)),32,32,3)
atom = tables.UInt8Atom()
#filters = tables.Filters(complevel=5, complib='zlib')
# create hdf file
h5file = tables.open_file(os.path.join(data_directory,"CatFace_Dataset.hdf"), 'w')
gcolumns = h5file.create_group(h5file.root, "Data", "Data")
h5file.create_carray(gcolumns, 'Catfaces', atom, shape, obj=shape)
#print(h5file.create_carray)
#h5file.create_carray[10:60, 20:70] = np.ones((50, 50))
print("atom=", atom)
h5file.close()

正在创建文件,出现以下错误。求救 raise TypeError('shape参数与obj.shape'不匹配) TypeError:形状参数与obj.shape不匹配


Tags: pathimporttablesdataoscreatenpdirectory