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

4

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

有人有此方面的经验吗?

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

1个回答

5

关键要素:

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

假设图像为RGB格式(https://support.hdfgroup.org/products/java/hdfview/UsersGuide/ug06imageview.html

假设您的图像位于Photos/Image 1,那么可以执行以下操作。

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()

数组 = hdf["Photos/Image 1"][:] h5py 将数据集加载为 numpy 数组。不需要那个 array(list(...))) 的操作。 - hpaulj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接