コンテンツにスキップ

「サンプリング周波数変換」の版間の差分

出典: フリー百科事典『ウィキペディア(Wikipedia)』
削除された内容 追加された内容
→‎補間: Template:要検証範囲
→‎補間: 要検証範囲の範囲変更
19行目: 19行目:


===補間===
===補間===
上で述べた波形を、サンプリング周波数 <math>f_2</math> でサンプリングするということは、各サンプルの後に <math>f_2 / f_1 - 1</math> 個の{{要検証範囲|0を|date=2016年9月}}追加するということである。この処理を'''アップサンプリング'''という。
上で述べた波形を、サンプリング周波数 <math>f_2</math> でサンプリングするということは、各サンプルの後に <math>f_2 / f_1 - 1</math> 個の{{要検証範囲|0を追加するということである。この処理を'''アップサンプリング'''という|date=2016年9月}}


ただし、アップサンプリングしただけでは、波形はギザギザのままである。これは折り返しノイズを拾っているということである。そこで、[[アンチエイリアシング]]として、アップサンプリング後に、変換前の[[ナイキスト周波数]] <math>f_1 / 2</math> を[[遮断周波数]]とする[[ローパスフィルタ|低域通過フィルタ]] (LPF) に通す。このLPFを補間フィルタまたはインタポレーションフィルタという。
ただし、アップサンプリングしただけでは、波形はギザギザのままである。これは折り返しノイズを拾っているということである。そこで、[[アンチエイリアシング]]として、アップサンプリング後に、変換前の[[ナイキスト周波数]] <math>f_1 / 2</math> を[[遮断周波数]]とする[[ローパスフィルタ|低域通過フィルタ]] (LPF) に通す。このLPFを補間フィルタまたはインタポレーションフィルタという。

2016年9月27日 (火) 21:28時点における版

サンプリング周波数変換 (sampling frequency conversion) または標本化周波数変換(ひょうほんかしゅうはすうへんかん)は、サンプリングされた信号に対するリサンプリングの1つで、あるサンプリング周波数でサンプリングされた信号を別のサンプリング周波数でサンプリングされた信号に変換する処理である。通常はデジタル信号間の変換だが、サンプリングされていればアナログ信号でもかまわない。

サンプリングレート変換 (sampling rate conversion) などともいう。単にレート変換 (rate conversion) ということもあるが、これはビットレート変換と紛らわしい。

サンプリング周波数を上げる変換をアップサンプリング (upsampling)、下げる変換をダウンサンプリング (downsampling) という。ただしこれらの語は、後述のとおり、サンプリング周波数変換の構成要素を指すこともある。

用途

基本原理

サンプリング周波数 から への変換を考える。

変換前の、サンプリング周波数 でサンプリングされた信号は、アナログ波形として見ると、サンプリング間隔 で並んだΔ関数(実際上はパルス)の連なりである。スペクトルで見ると、周波数 以上の帯域では本来の成分は失われ、代わりに折り返しノイズ(エイリアス)が現れている。

サンプリング周波数変換では、サンプリング周波数を整数倍に上げる補間またはインタポレーション (interpolation) と、整数分の1に下げる間引きまたはデシメーション (decimation) が、基本的な構成要素となる。

補間

上で述べた波形を、サンプリング周波数 でサンプリングするということは、各サンプルの後に 個の0を追加するということである。この処理をアップサンプリングという[要検証]

ただし、アップサンプリングしただけでは、波形はギザギザのままである。これは折り返しノイズを拾っているということである。そこで、アンチエイリアシングとして、アップサンプリング後に、変換前のナイキスト周波数 遮断周波数とする低域通過フィルタ (LPF) に通す。このLPFを補間フィルタまたはインタポレーションフィルタという。

なお、この処理を補間と呼ぶ理由は、結果として、元のサンプルの間の値を求めているからである。

間引き

上で述べた波形を、サンプリング周波数 でサンプリングするということは、サンプルを1個取り出すごとにその後の 個は捨てるということである。この処理をダウンサンプリングという。

ただし、ダウンサンプリングしただけでは、折り返しノイズが発生してしまう。これは通常のサンプリングで発生するのと同じ問題なので、通常のアンチエイリアシングどおり、ダウンサンプリング前に、変換後のナイキスト周波数 を遮断周波数とするLPFに通す。このLPFを間引きフィルタまたはデシメーションフィルタという。

一般のサンプリング周波数変換

変換が整数倍でも整数分の1でもないときは、最小公倍数 を中間段階のサンプリング周波数とする。つまり、まずサンプリング周波数 に補間し、次に に間引きする。

ただしこれでは、信号を補間フィルタと間引きフィルタに連続して通すことになるが、両方とも実態はLPFなので計算量の無駄である。実際は、遮断周波数が低いほう、つまり、低い方のナイキスト周波数 を遮断周波数とするLPFに1回だけ通せばいい。

が簡単な整数比であるときは、これでうまくいく。しかし、たとえばデジタルオーディオにて需要が多い 44.1 kHz 系と 32 kHz 系間の変換では、最小公倍数が巨大な値(44.1 kHz と 32 kHz では 14.112 MHz、44.1 kHz と 48 kHz では 7.056 MHz)になるため、計算量を省略するテクニックが使われる。

高速フーリエ変換法

高速フーリエ変換法では、サンプル数 の原信号に対して高速フーリエ変換と逆変換を行うことで、サンプリング周波数の変換を行う。

この方法では、まず原信号のサンプル列 の高速フーリエ変換によって、周波数領域における 個のデータ点 を得る。 変換先のサンプル数を とし、アップサンプリングを行う場合は、 の中央部に長さ を挿入し、 のサイズを とする。一方ダウンサンプリングを行う場合は、 の中央部から 個のデータ点を削除する。 結果として得られた長さ のデータ点に対して高速逆フーリエ変換をすれば、サンプル数を に変換できる。

ビットマップ画像

ビットマップ画像など2次元データ(および3次元以上のデータ)に対してサンプリング周波数変換をするには、各次元に対し順次、1次元のサンプリング周波数変換を施せばいい。ただし音声信号と違い、LPFは対称でなければならない。

ビットマップ画像をdpiを保ったままサンプリング周波数変換すると、画像は拡大・縮小される。