Matrix<float> または Matrix<complex<float> > 型と Map<int, ObjectRef> 型の変換を行う
無し.
どんなときに使うのか
Matrix<float> または Matrix<complex<float> > 型 を Map<int, ObjectRef> 型に変換する際に用いる.入力が Matrix<float> の場合,出力は Map$<$int, Matrix<float> $>$ に,入力が Matrix<complex<float> > の場合,出力は Map$<$int, Matrix<complex<float> > $>$ になる. 入力が Map<int, ObjectRef> 型しか受け付けないノード,例えば PreEmphasis ,MelFilterBank や SaveRawPCM などに接続する際に使用する.
典型的な接続例
MatrixToMap ノードの接続例を図6.100,6.101 に示す.
図6.100 は,AudioStreamFromMic ノードで マイクロホンから音声波形データを取り込み,ChannelSelector ノードにて必要なチャネルを選別し, MatrixToMap ノードによって Matrix<float> 型データを Map<int, ObjectRef> 型に変換する. その出力を SaveRawPCM ノードに接続し,波形をファイルとして保存する.
図6.101 は,波形のスペクトルを Map<int, ObjectRef> 型で得たいときの MatrixToMap ノードの使い方である. 図のように,MultiFFT ノードを通すのは,MatrixToMap の前でも後でも良い.
入力
: any .ただし,サポートする型は Matrix<float> または Matrix<complex<float> > 型.
出力
: Map<int, ObjectRef> 型の,Map$<$int, Matrix<float> $>$ または Map$<$int, Matrix<complex<float> > $>$ 型 または Map$<$int, Vector<float> $>$ または Map$<$int, Vector<complex<float> > $>$ 型 .
パラメータ
パラメータ名 |
型 |
デフォルト値 |
単位 |
説明 |
OUTPUT_TYPE |
map_of_matrix |
出力される型の指定.map_of_row_vectors, map_of_row_vectors, map_of_column_vectors から選択する. |
||
DEBUG |
false |
変換状況を出力するかどうかの選択. |
: string 型. 出力される型を指定する. map_of_matrix, map_of_row_vectors, map_of_column_vectors から選択. map_of_matrix が選択されると,キーに 0,値に入力の Matrix がセットされる. map_of_row_vectors が選択されると,キーに入力 Matrix の列インデクス,値に入力 Matrix の列成分を抜き出した Vector が,map_of_column_vectors が選択されると,キーに入力 Matrix の行インデクス,値に入力 Matrix の行成分を抜き出した Vector がセットされる. デフォルトは map_of_row_vectors .
: bool 型. デフォルトは false. trueが与えられると, 変換状況が標準出力に出力される.
INPUT |
OUTPUT |
OUT_TYPE |
|||
type |
size |
type |
size |
||
Map$<$int, Matrix<float> $>$ |
{NxM}x1 |
map_of_matrix |
(1) |
||
Map$<$int, Vector<float> $>$ |
{N}xM |
map_of_row_vectors |
(2) |
||
NxM |
{M}xN |
map_of_column_vectors |
(3) |
||
Map$<$int, Matrix<complex<float> > $>$ |
{NxM}x1 |
map_of_matrix |
|||
Map$<$int, Vector<complex<float> > $>$ |
{N}xM |
map_of_row_vectors |
|||
{M}xN |
map_of_column_vectors |
<例>
INPUT:
\[ \left[ \begin{array}{cc} 1 & 2\\ 3 & 4\\ 5 & 6\\ \end{array} \right] \] |
↓
OUTPUT(1):
\[ \left\{ \begin{array}{cc} 0, & \left[ \begin{array}{cc} 1 & 2\\ 3 & 4\\ 5 & 6\\ \end{array} \right] \end{array} \right\} \] |
OUTPUT(2): { 0, $<$ 1 3 5 $>$ }, { 1, $<$ 2 4 6 $>$ }
OUTPUT(3): { 0, $<$ 1 2 $>$ }, { 1, $<$ 3 4 $>$ }, { 2, $<$ 5 6 $>$ }