3

MATLAB を使用して音声モーフィング システムを構築しています。ソース サンプルとターゲット サンプル、トレーニング サンプル、テスト サンプルを 128 サンプルのフレームに分割して、各フレームに DWT を適用できるようにする必要があります。ベクトルをフレームに分割する方法を教えてください。

4

2 に答える 2

6

reshape次の関数を使用して、ベクトルを同じサイズの列/行 (フレーム) の行列に変更できます。

x = rand(128 * 100, 1);
X = reshape(x, 128, 100);
% X is a 128-by-100 matrix; the i-th column of 128 elements 
% is addressed by X(:,i)
于 2012-01-22T15:59:02.363 に答える
0

信号処理ツールボックスを使用できる場合は、リシェイプを使用する代わりにバッファを使用することもできます。単に。。。

y = buffer(x,128)

..あなたのインスタンスでは。元の信号(x)の要素数が128の整数倍でない場合、bufferコマンドは最後のフレームに末尾のゼロも追加します。

于 2012-04-18T17:37:01.493 に答える