関数 > 信号処理 > デジタルフィルタ > 補間と再サンプリング
補間と再サンプリング
multirate(v, n, m, [f]) - ローパス補間フィルタとしてオプションの引数 f を使い、マルチチャネル信号 v について係数 n/m で再サンプリングしたものを返します。
resample(v, m, n) - n 重の補間と m 番目の点ごとのサンプリングによって v から得られるベクトルを返します。入力データは実数でなければなりません。
upsample(v, n) - ベクトル v を補間した、vn 倍の点を持つベクトルを返します。
引数
v は、信号のサンプルを表す実数または複素数のベクトルまたは行列です。v が行列の場合、各列が個別に処理されます。
関数 multirateresample では、ベクトル v に単位が含まれている場合、返されるベクトルの成分にはこれと同じ単位が含まれます。
n は、整数のアップサンプリング/補間係数です。upsampleresample では、n ≥ 2 です。
m は、整数のダウンサンプリング/デシメーション係数です。resample では、m ≥ 2 です。
f (オプション) は、アップサンプリングとダウンサンプリングの間に使用される FIR ローパスフィルタのベクトルです。デフォルトのフィルタは長さ 32、ゲイン n で、Hanning ウィンドウが適用され、カットオフ周波数は次のとおりです。
追加情報
これらの関数は再サンプリングされた信号を返します。
multirateresample の場合、返されるベクトルは元のデータの長さの約 n/m 倍です。
upsample は、入力ベクトルの長さの n 倍、または入力ベクトルの長さの n 倍に 1 を加算した、偶数個の点を返します。
multirate は一般的なほとんどのケースで使用でき、信号をダウンサンプリングする際のエイリアシング現象を回避できるので、この関数を使用することをお勧めします。
multirate はタイムドメインでフィルタし、信号の帯域制限だけを伴います。upsampleresample は信号に周期性があることを前提とし、FFT を求めた後で周波数領域で操作を行います。
multirate は、線形位相 FIR フィルタのグループ遅延を利用して、初期出力の遷移が終了する場所を推定してそこで打ち切ります。フィルタの長さが L、グループ遅延が L/2 の場合、multirate は信号出力の最初の L/2m 個のサンプルをスキップします。過渡信号を観測するには、信号をゼロで埋めます。指定されたフィルタに線形位相がない場合、先頭の一部のデータが欠落している可能性があるので、そのような場合にも信号のゼロパディングを行う必要があります。
multirate によるフィルタでは、フィルタの係数の多相表現が使用されます。
これは役に立ちましたか?