我目前正在尝试使用Matlab从.surf
文件中读取数据。 (我意识到可能会有很多其他类似的问题,但每个问题都与其自身的问题有关,而且我无法找到我要提出的问题的副本;如果有其他问题和将此标记为重复...道歉!)
这就是数据文件的自述文件:
All of the files consist of 1-byte values, except for the
surface (surf) files, which consist of 4-byte floating-point
values. The 1-byte phase values denote the phase scaled and
quantized to the range 0-255. The 1-byte correlation and
mask values denote the weights 0-1 scaled and quantized to
the range 0-255.
我已经能够使用
读取.phase
文件而没有任何问题
fn = 'spiral.257x257.phase';
f = fopen(fn);
fin = fread(f, [257, 257], 'uint8');
fclose(f);
但是,我无法阅读冲浪文件。我已尝试single
,float32
和real*4
,fread
的Matlab文档中的“浮点数”下的三个选项,以及uint
,uint32
,int
,int32
和long
,这是4字节数据的其他选项。这些都没有给出正确的解决方案 - 甚至不是错误的缩放;他们完全不在了。
我非常坚持想法;任何建议(包括一般建议)都会受到最高的赞赏。