H5也叫HDF5,全称是Hiearchical Data Format,5是版本号。HDF5适用于单机大规模数据应用,比如神经网络训练等,可以存储不同类型的图像和数码数据的文件格式,并且可以在不同类型的机器上传输,同时还有统一处理这种文件格式的函数库。
写h5
- 导入需要的库
from scipy import misc
import h5py
import matplotlib.pyplot as plt
- 打开图片,保存为h5
# 写一个h5
image_size = (64, 64)
X = misc.imresize(misc.imread('lenna.jpg'), image_size)
h = h5py.File('pic2.h5', 'w')
h.create_dataset('lenna', data=X, compression='gzip')
h.close()
print("ok")
- 运行结果
ok
生成的h5文件是这样的
读h5
- 导入需要的库
import h5py
import matplotlib.pyplot as plt
- 读取h5
# 读取h5
h2 = h5py.File('pic2.h5', 'r')
train_set_data = h2['lenna'][:]
plt.imshow(train_set_data)
plt.show()
h2.close()
- 运行结果
写h5的create_dataset()
还有很多参数可以调节,如shape,maxshape,dtype等。这只是最简单的一种方法。加上循环可以将文件夹内的图像存入