「標本化」とは
標本化(サンプリング)とは、連続的に変化するアナログ信号から、一定の間隔で値を取り出す処理です。
例えば、音声は時間とともに連続的に変化する波形です。この波形をコンピュータで扱えるデジタルデータにするには、まず一定の時間間隔ごとに波形の値を測定します。この処理が標本化です。
音声をデジタル化する基本的な流れは、次の3段階です。
標本化 → 量子化 → 符号化
標本化は主に時間方向を離散化する処理、量子化は振幅方向を離散化する処理と考えると区別しやすくなります。
標本化周波数
1秒間に何回標本化するかを表したものを標本化周波数(サンプリング周波数)といいます。単位にはHz(ヘルツ)を用います。
例えば、44.1 kHz = 44,100 Hzは、1秒間に44,100回、音声の波形を測定することを意味します。
標本化周波数が高いほど、短い時間間隔で波形を測定できるため、時間方向の細かな変化を表現しやすくなります。
例えば、標本化周波数が8,000 Hzで15秒の音声データなら、標本化回数は、
1秒間 8,000回
15秒間 □回
と考えられるので、
8,000 × 15 = 120,000回
標本化します。
標本化周期
標本化を行う時間間隔を標本化周期(サンプリング周期)といいます。
標本化周波数が高くなるほど、標本化周期は短くなります。
例えば、250マイクロ秒ごとに1回測定する場合、
1マイクロ秒 = 1×10⁻⁶秒
なので、
250マイクロ秒 1回
1秒(1,000,000マイクロ秒) □回
と考えると、
1,000,000 ÷ 250 = 4,000回
となります。したがって、標本化周波数は4,000 Hzです。
つまり、次の関係になります。
標本化周波数が高い → 測定間隔は短い
標本化周波数が低い → 測定間隔は長い
動画と音声の標本化
標本化周波数は、動画のフレームレートと組み合わせて問われることもあります。
例えば、24 fpsの動画では、1秒間に24フレーム表示します。一方、音声を48 kHzで標本化すると、1秒間に48,000回標本化します。
したがって、動画1フレーム分の時間に行われる音声の標本化回数は、
1秒間 48,000回
1/24秒 □回
なので、
48,000 ÷ 24 = 2,000回
となります。
量子化ビット数
標本化によって取り出した値は、そのままでは連続的な値であるため、有限個の段階に分けます。この処理が量子化です。
1回の標本を何ビットで表すかを量子化ビット数といいます。
量子化ビット数が大きいほど、表現できる段階数が増えます。
量子化ビット数がnビットなら、表現できる段階数は、
2ⁿ段階
です。
例えば、
8ビット → 2⁸=256段階
16ビット → 2¹⁶=65,536段階
となります。
したがって、量子化ビット数を8ビットから16ビットにすると、1標本あたりのデータ量は2倍になりますが、量子化の段階数は、
2¹⁶ ÷ 2⁸ = 256倍
になります。
量子化の段階数が多いほど、元の振幅に近い値を選びやすくなり、量子化による誤差を小さくしやすくなります。
PCM音声のデータ量
圧縮していないPCM音声のデータ量は、おおむね次の4つで決まります。
標本化周波数 × 量子化ビット数 × 録音時間 × チャンネル数
この計算結果はビット単位です。バイトに直すときは、8ビット=1バイトなので、最後に8で割ります。
例えば、標本化周波数44,100 Hz、量子化16ビット、モノラル、5分間の音声では、5分=300秒なので、1秒間に44,100個の標本を取り、1標本を16ビットで記録します。
したがって、
44,100 × 16 × 300
= 211,680,000ビット
です。
これを8で割ると、
26,460,000バイト
となります。1 MB=1,000,000 Bとすれば、
約26.5 MB
です。
標本化定理
標本化定理では、帯域が制限された信号を理論上復元するためには、信号に含まれる最高周波数に対して、標本化周波数をその2倍より高くする必要があります。
標本化周波数が十分に高ければ、一定の条件のもとで、標本から元の連続信号を復元できます。
エイリアシング
標本化周波数が十分でないと、本来とは異なる低い周波数として観測されることがあります。この現象をエイリアシング(折り返し)といいます。
標本化定理は、このような折り返しを防ぎ、元の信号を正しく扱うための考え方です。
画像の標本化
画像をデジタル化するときにも、
標本化 → 量子化 → 符号化
という考え方を使うことができます。
画像では、連続的な画像を格子状に区切り、それぞれの位置の明るさや色を取り出すことが標本化に当たります。
音声では時間方向に一定間隔で値を取り出すのに対し、画像では空間方向に格子状の位置から値を取り出します。
その後、次のような処理を行います。
明るさや色を有限個の段階に分ける → 量子化
その値をビット列で表す → 符号化
このように、標本化とは音声に限らず、連続的な情報から一定の位置や時点の値を取り出し、デジタルデータとして扱えるようにするための基本的な処理です。