SaveFeaturesの保存ファイルについて

  • このトピックには2件の返信、2人の参加者があり、最後に匿名により7年、 5ヶ月前に更新されました。
3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • 投稿者
    投稿
  • #677
    匿名
    参加者

    初めて質問させていただきます。

    現在音源分離や,分離後の音声などの特徴量計算に
    HARKを使わさせていただいているのですが,
    SaveFeaturesで保存した特徴量はどのように見れば良いのでしょうか.

    テキストエディタでは見れず,pythonのopenで読み込んでもその後の
    変換をどのようにして良いかがわかりません.

    SaveFeaturesで保存されるファイルについてご教示いただけませんか.

    #678
    匿名
    参加者

    お問い合わせありがとうございます。

    SaveFeaturesノードの出力するフォーマットはリトルエンディアンのfloat型となっており、
    特徴量の次元数 x フレーム数 でファイルに書き出されます。
    またPythonの場合、struct.unpackでバイナリからPython内部型へ変換する事が可能です。

    SaveHTKFeatureと異なりヘッダ等はありませんので読み込んだデータは全てfloatとして
    unpack可能です。

    参考までに

    
    import sys
    import struct
    
    dim = 40
    frames = 1000
    float_size = 4
    
    frame_size = float_size * dim
    
    infile = open(sys.argv[1], 'rb')
    data = infile.read()
    infile.close()
    
    offset = 0
    for x in range(0, frames, 1):
        frame_data = data[offset:offset+frame_size]
        offset += frame_size
        print(*struct.unpack("<{}".format("f"*dim), frame_data))
    

    以上、宜しくお願い致します。

    #679
    匿名
    参加者

    ご回答頂きありがとうございます.

    例示していただいたコードで試したところ,数値へ変換する事ができました.

    ありがとうございました.

3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • このトピックに返信するにはログインが必要です。