6.7.6 LoadMatrixFrames

6.7.6.1 ノードの概要

SaveMatrixFrames で作成されたデータファイルをフレーム毎にMatrix<float> 型またはMatrix<complex<float> > 型に読み込む.

6.7.6.2 必要なファイル

SaveMatrixFrames によって作成されたテキスト形式(TEXT)またはバイナリ形式(RAW)のデータファイル.

6.7.6.3 使用方法

どんなときに使うのか

このノードは,SaveMatrixFrames によってファイルに保存されたフレームのデータをMatrix<float> 型またはMatrix<complex<float> > 型に復元し,ファイル内のデータを処理できるようにする.

典型的な接続例

6.112 に,ネットワークでLoadMatrixFrames を使用した接続例を示す. このサンプルネットワークは,データファイルに保存されたマトリックスタイプのフレームのデータから最終的にwavファイルを作成するためのものである. Synthesize はMap $<$int , Vector<complex<float> > $>$ 型でのみデータを受け入れるので,データ型変換のためにはLoadMatrixFrames とSynthesize の間にMatrixToMap が必要である.

\includegraphics[width=.9\textwidth ]{fig/modules/LoadMatrixFrames}
Figure 6.112: LoadMatrixFrames の接続例

6.7.6.4 ノードの入出力とプロパティ

入力

無し.

出力

OUTPUT

: Matrix<float> またはMatrix<complex<float> > のMatrix<ObjectRef> 型.フレームのデータ.

NOT_EOF

: bool 型.プログラムがデータファイルを読み込んでいるときにファイルの終わりに達したかどうかを示すフラグ.プログラムがデータファイルの最後に到達するとfalseに設定され,その後プログラムは終了する.それ以外はtrueに設定される.

パラメータ

FILENAME

: string 型. 読み込むデータファイルの名前.

INPUT_TYPE

: string 型. 読み込むデータファイルのファイル形式とデータ型. ドロップダウンメニューから適切なものを選択. 次の4つのオプションがある.

  • TEXT_float

  • RAW_float

  • TEXT_complex_float

  • RAW_complex_float

デフォルト値はTEXT_float. 間違った値を選択すると,ネットワークは正常に動作しない.

ROW_SIZE

: int 型. データファイル内のデータを復元するMatrix<ObjectRef> 型の行サイズ. 間違った値を指定すると,ネットワークは正常に動作しない. デフォルト値は8.

COL_SIZE

: int 型. データファイル内のデータを復元するMatrix<ObjectRef> 型の列サイズ. 間違った値を指定すると,ネットワークは正常に動作しない. デフォルト値は512.

Table 6.95: LoadMatrixFrames のパラメータリスト

パラメータ名

デフォルト値

単位

説明

FILENAME

string 

   

読み込むデータファイルの名前.

INPUT_TYPE

string 

TEXT_float

 

TEXT_floatデータファイルのファイル形式とデータ型.TEXT_float,RAW_float,TEXT_complex_float,またはRAW_complex_floatを選択.

ROW_SIZE

int 

8

 

データファイル内のデータを復元するMatrix<ObjectRef> 型の行サイズ.

COL_SIZE

int 

512

 

データファイル内のデータを復元するMatrix<ObjectRef> 型の列サイズ.

LoadMatrixFrames のパラメータ値設定を簡単にするには,SaveMatrixFrames によってファイルにデータを保存するときに特別なパターン{tag:format},つまりフォーマット文字列を使用することを強く推奨する. ファイル名には,データファイル内のデータを復元するMatrix<ObjectRef> 型のデータ型,行サイズ,および列サイズが含まれる.

表 6.96 に,FILENAMEを除く各パラメータのフォーマット文字列と出力の例を示す. {tag:format}の詳細については,SaveMatrixFrames ノードのリファレンス,特にSaveMatrixFrames のタグリストを参照.

Table 6.96: 行サイズが8で,列サイズが512であるMatrix<complex<float> > の書式文字列と出力の例

書式文字列(FILENAMEパラメータ値)

出力(書式付きファイル名)

samplefile.dat

samplefile.dat

samplefile_{datatype}.txt

samplefile_complex_float.txt

samplefile_row{rowsize}.raw

samplefile_row8.raw

samplefile_col{colsize}.dat

samplefile_col512.dat

samplefile_dim{dim}.dat

samplefile_dim2.dat

samplefile_{datatype}_row{rowsize}_col{colsize}_dim{dim}.dat

samplefile_complex_float_row8_col512_dim2.dat

適切なファイル拡張子を付けることは,ファイル形式を見つける時間を節約するのにも役立つ. そうでない場合,TEXTタイプはテキストファイルであり,RAWタイプはバイナリファイルである. Ubuntuプラットフォームでは,RAWファイルはテキストエディタではアクセスできないが,Windowsでは開くことができる. いずれにしても,RAWファイルはTEXTファイルとは異なり人間が読める形式ではない.

6.7.6.5 ノードの詳細

LoadMatrixFrames はSaveMatrixFrames で生成されたファイルを読み込み,ファイル内のデータをフレーム毎にMatrix<float> 型またはMatrix<complex<float> > 型に復元する. フレーム毎にMatrix<ObjectRef> 型にデータを読み込む反復処理は,INPUT_TYPE,ROW_SIZE,およびCOL_SIZEで指定されたパラメータ値に従って実行される. 表 6.97 に,使用可能なすべてのINPUT_TYPEパラメータ値と,対応する出力データ型をLoadMatrixFrames に示す.

Table 6.97: LoadMatrixFrames の出力データ型

INPUT_TYPE

出力データ型

Text Float

Matrix<float> 

Raw Float

Matrix<float> 

Text Complex Float

Matrix<complex<float> > 

Raw Complex Float

Matrix<complex<float> > 

LoadMatrixFrames は,データファイルのファイルの最後に到達するとNOT_EOFをfalseに設定し,ファイルからMatrix<ObjectRef> にデータを読み込む反復処理を終了できる.