[SciPy-user] Problem with reading binary file (diffrener result between MATLAB and Python)

Hani Zahiri H.Zahiri at curtin.edu.au
Sun Jan 11 07:48:55 EST 2009


Hi folks,

 

I am trying to translate one of my MATLAB scripts to Python and I am
experiencing a strange problem (at least to me!) and I am desperetly
looking for help. The binary file is a raw binary containing header
information (first 720 bytes) following by radar data. For better
illustration and using python basic functions, first 800 bytes of the
file is look like this:

 

>>> fid = open("file_name","rb")

>>> fid.read(800)

'\x00\x00\x00\x012\xc0\x12\x12\x00\x00\x02\xd0A   CEOS-SAR-CCT A A 1.00
1AL1 PSRBIMOP    FSEQ       1   4FTYP       5   4FLGT       9   4
18432 88220                          32   2   8       1   18432   0
10976   0   0   0BSQ  1 1 412   87808   0      13 4PB  49 2PB  45 4PB
21 4PB  29 4PB                                  97 4PB
COMPLEX*8                   C*8    0   0
\x00\x00\x00\x022\n\x12\x14\x00\x01X\x9c\x00\x00\x00\x01\x00\x00\x00\x01
\x00\x00\x00\x00\x00\x00*\xe0\x00\x00\x00\x00\x00\x00\x00\x00\ ...
x00\x00\x07\xd6\x00\x00\x00\x8d\x02\xdd\xfe\x95\x00\x01\x00\x00\x00\x00\
x00\x00\x00\x1c\xae\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00ix ...

\x00\x00\x00\x00I}.\xd0'

 

And now the problem is: 

If I read the file in MATLAB, let say to find out length of header part,
I will get the correct answer:

 

EDU>> fid=fopen('file_name','r','b');

EDU>> fseek(fid,8,'bof');

EDU>> fread(fid,1,'uint32')

 

ans =

 

   720 

 

However if I read this in python I am keep getting this wrong:

 

>>> fid.seek(8)

>>> scipy.fromfile(fid,'uint32',1)

array([3489792000], dtype=uint32)

 

I have almost tried every Scipy and Numpy classes with no result. I need
a quick answer to this and I appreciate if anybody can help me with this
problem.

 

Cheers,

 

Hani 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.scipy.org/pipermail/scipy-user/attachments/20090111/19ac0762/attachment.html>


More information about the SciPy-User mailing list