6

我在 Matlab 中有一个非常简单的脚本,可以打开一个“原始”二进制图像文件并显示它。在 python 中使用 numpy 可以轻松重现吗?我遇到过各种讨论解包、处理字节序、指定缓冲区等的帖子。但这似乎应该很简单,基于 matlab 接口的简单程度

>> fileID = fopen('sampleX3.raw','rb')

fileID =

     1

>> A = fread(fileID,[1024,1024],'int16');
size(A)

ans =

        1024        1024

>> max(max(A))

ans =

       12345

>> close all; figure; imagesc(A);
4

1 回答 1

11

这将使用 numpy 和 matplotlib 做同样的事情:

import numpy as np
from matplotlib import pylab as plt

A = np.fromfile(filename, dtype='int16', sep="")
A = A.reshape([1024, 1024])
plt.imshow(A)

我觉得有必要提到使用原始二进制文件来存储数据通常是一个坏主意。

于 2013-07-04T23:57:58.707 回答