マルチチャネルの相関行列から,指定したチャネルのデータだけを 指定した順番に取り出す.
無し.
どんなときに使うのか
入力されたマルチチャネルの相関行列の中から, 必要のないチャネルを削除したいとき, あるいは,チャネルの並びを入れ替えたいとき. あるいは,チャネルを複製したいとき.
典型的な接続例
図 6.19に CMChannelSelector ノードの使用例を示す.
入力端子へは,CMMakerFromFFT や CMMakerFromFFTwithFlag 等から計算される相関行列を接続する (型は Matrix<complex<float> > 型だが,相関行列を扱うため,三次元複素配列を二次元複素行列に変換して出力している).
パラメータ名 |
型 |
デフォルト値 |
単位 |
説明 |
SELECTOR |
<Vector<int> > |
出力するチャネルの番号を指定 |
入力
: Matrix<complex<float> > 型. 各周波数ビン毎の相関行列.$M$次の複素正方行列である相関行列が $NFFT / 2 + 1$ 個入力される. Matrix<complex<float> > の行は周波数($NFFT / 2 + 1$ 行)を,列は複素相関行列($M * M$ 列)を表す.
出力
: Matrix<complex<float> > 型.INPUTCMに同じ.
パラメータ
: Vector<int> 型,デフォルト値は無し(<Vector<int> >). 使用するチャネルの,チャネル番号を指定する. チャネル番号は0からはじまる.
例: 5チャネル(0-4)のうち 2,3,4チャネルだけを使うときは <Vector<int> 2 3 4> のように, 3チャネルと4チャネルを入れ替えたい時は <Vector<int> 0 1 2 4 3 5> のように指定する.
相関行列が格納された入力データの$k \times M \times M$型の複素三次元配列から 指定したチャネルの相関行列だけを抽出し, 新たな$k \times M’\times M’$型の複素三次元配列のデータを出力する. ただし,$k$は周波数ビン数($k = NFFT / 2 + 1$),$M$は入力チャネル数,$M’$は出力チャネル数.