【发布时间】:2021-08-30 00:24:48
【问题描述】:
我正在做一个项目,我在一个名为 Prismatic 的程序中进行模拟,以获取我以后想要使用的文件,Prismatic 输出 h5 格式的文件,我能够使用 Python 从中提取数据,模拟生成一个图像,该图像保存在两个数据集(dim1,dim2)中,每个数据集都是一个大小为 219 的 numpy 数组,我试图再次从它们创建图像,但我不确定它是如何工作的,我试图堆叠numpy 数组,但我只是在图像中得到一条线,我刚刚了解了 numpy 数组,我对它们还不太了解,有人可以帮忙吗?这是我的代码。
fi = h5py.File('ty.h5')
a = fi['4DSTEM_simulation']['data']['realslices']['annular_detector_depth0000']['dim1'][:]
b = fi['4DSTEM_simulation']['data']['realslices']['annular_detector_depth0000']['dim2'][:]
merge_arr = numpy.stack((a, b), axis=0)
data = Image.fromarray(merge_arr)
if data.mode != 'RGB':
data = data.convert('RGB')
【问题讨论】:
-
RGB 图像是一个形状为 (n,m,3) 的数组。你的两个 numpy 数组的形状是什么?
-
当我打印它们的形状时,我得到 (219,) 两者,并且所有条目的值都相同,我猜这是因为模拟输出是对称的