1

Python を使用して「.cnt」ファイルを読み込もうとしています。私の理解では、脳波からの情報をエンコードしています。私は標準的な方法でファイルを読みます:

file = open("PICS2s8.cnt","rb") #I get the same results with 'r' instead of 'rb'
data = file.readlines()

ファイルの最初の行を確認すると、次のように表示されます。

'Version 3.0\x00\xe3\x00J\x04\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00UU\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0013/10/05\x00\x0011:28:07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00--------\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80?\x00\x00\x00\x00\x00\x00\x00\x00--------\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x02\x00\x00\x00\x00\x00\x10\'\x01\x00\x00\x00\x00\x00\x8b\x02 \x00\x01\x00\x00\x00\xf4\x01\x00\x00\x00\x00\x00\x00\xf0?\x00\x00\x00\x00\x00\x00 A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x003\x00\x00\x00\x00\x00\x00\x00\x1e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00zD\x00\x00\x00\x00\x00\xcd\xcc\xcc\xbd\x00\x00\x00\x00\x00\xcd\xcc\xcc\xbd\x9a\x99\x99?\x00\x00H\xc2\x00\x00HB\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\xc2\x00\x00\xf0B\xcd\xcc\xcc\xbd#\xdb\x99?\xcd\xcc\xcc\xbd#\xdb\x99?\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcd\xcc\xcc\xbd\x9a\x99\x99?\x00--------\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00--------\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00--------\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00ffF@\xc8\x00d\x00\x9c\xff\xf4\x01ffF@\x8f\xc2\xf5<\x00\x00--------\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00--------\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfa?\x10\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2p}B\xb5\x1e\x8eA\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\xfc\xff?\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\xe4\xc8I\x04\x00\x00\x00\x00\x01\x00\x00\x00\x00PO2\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00)\\\xa7C\xd3\xcd3C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00\x1d\x00\x00\x15t\x84?O1\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00ff6C/\xbd4C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00\x0e\x01\x00\x16\xf0\x83?M2\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00\x90\xc2\xf5@\x83\xe0/C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00\x06\x02\x00K9\x84?PZ\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00\xebQ\x80C\x1b\x8f\x1aC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00\x06\x03\x00\x15t\x84?P4\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00)\\\xa7C\xfa\xbe\x1aC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00\x05\x04\x00\xdc\xbd\x84?CP4\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00R\xb8\xa6CZd\xfdB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00\x07\x05\x00H\xea\x84?P8\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00\x90\xc2\xcdC\xfa\xbe\x1aC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00\x0b\x06\x00\x15t\x84?C4\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00\x90\xc2\xa5CJ\x0c\xc3B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00\x05\x07\x00Q\xc4\x83?TP8\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00\xa4p\xcdCZd\xfdB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00\x06\x08\x00\xf8G\x84?T8\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00\xb8\x1e\xcdCJ\x0c\xc3B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00\x05\t\x00\x1em\x83?P7\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x01\x01\x00\x01\x00\x00\x00q=\xcaB\xfa\xbe\x1aC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x89A\x03\x00\x00\x00\x00"\n'

残念ながら、これを理解する方法が本当にわからないのです。アスキー文字列値とバイト値が混在していて混乱しています。私はもう試した:

data[0].decode('utf-8')

data[0].decode('utf-16')

しかし、両方ともエラーが発生しました。

私も試してみました

from struct import unpack, calcsize
file.seek(0)
chunk = file.read(calcsize('25c'))
read_chunk = unpack('25c',chunk)

そして結果を得ました:

('V', 'e', 'r', 's', 'i', 'o', 'n', ' ', '3', '.', '0', '\x00', '\xe3', '\x00', 'J', '\x04', '\x00', '\x00', '\x00', '\x00', '\x02', '\x00', '\x00', '\x00', '\x00')

ここで私が見逃している明らかなものはありますか?

4

2 に答える 2

0

ASCII 文字列が埋め込まれたバイナリ形式です。これは独自の形式であり、自分で使用structして多くのコードを使用して C データ構造を解析する必要があります。

おそらく、フォーマットを変換するか、サードパーティの Python ライブラリを使用する方がよいでしょう。このスクリプト(Python コード、を使用)を使用して、ファイルを.h5(matlab で使用可能な) 形式に変換します。numpy

$ python cnt2h5 PICS2s8.cnt

ファイルを生成しPICS2s8.h5ます。

于 2013-07-06T16:35:32.327 に答える