使用 Python 将 .h5 文件转换为 .jpg

Convert .h5 file to .jpg with Python

我目前有一个包含灰度图像的 .h5 文件。我需要将其转换为 .jpg。

有人有这方面的经验吗?

注意:我可以将 h5 文件转换为 numpy 数组,然后使用 pypng 等外部库将其转换为 png。但我想知道是否有更有效的方法来转换为图像,最好是 .jpg。

主要成分:

h5py 读取h5文件。 确定图像格式并使用 PIL。

让我们假设它是 RGB 格式 (https://support.hdfgroup.org/products/java/hdfview/UsersGuide/ug06imageview.html)

假设你的图片位于Photos/Image1那么你就可以了。

import h5py
import numpy as np
from PIL import Image

hdf = h5py.File("Sample.h5",'r')
array = hdf["Photos/Image 1"][:]
img = Image.fromarray(array.astype('uint8'), 'RGB')
img.save("yourimage.thumbnail", "JPEG")
img.show()