1

我有一个包含许多图像的文件夹(按创建时间排序),我可以将其读入 numpy float32 数组。我想将这些数组以 C 程序(我无法修改)将访问的两种不同格式写入单个文件中的文件系统。

第一种格式很简单:每个数组的值从左到右从上到下依次排列。(数组以这种方式一个接一个地出现)。我可以用 np.tofile 轻松做到这一点。

第二种格式更复杂:对于每个像素坐标(x,y),我想将所有图像的相应像素依次写入文件中。我试图堆叠数组,然后对结果进行转换。但是当我使用 np.tofile 将其写入文件系统时,该文件包含与第一种格式相同的数据排列。

如何告诉 numpy 重新排列数据?

4

1 回答 1

1

对于第二种格式,您可以使用column_stack后跟ravel

In [8]: img1 = np.arange(5, dtype='float32')

In [9]: img2 = np.arange(5, dtype='float32')

In [10]: np.column_stack((img1,img2)).ravel()
Out[10]: array([ 0.,  0.,  1.,  1.,  2.,  2.,  3.,  3.,  4.,  4.], dtype=float32)
于 2013-04-03T10:18:18.423 回答