標本化周波数16kHzで記録した音声を512サンプルずつのフレームに区切り、各フレームを512点の高速フーリエ変換(FFT)で分析する。得られるスペクトルの周波数分解能(隣り合う周波数成分の間隔)(ア)と、フレームを1,024サンプル(1,024点のFFT)に長くしたときの変化(イ)の組み合わせとして、最も適切なものを1つ選べ。
正解と解説を見る
解説
正解 A
この問題の論点:FFTの周波数分解能
ポイント
FFTで得られる周波数の間隔は標本化周波数÷FFTの点数で決まり、フレームを長くするほど周波数は細かく、時間は粗くとらえることになります。
選択肢ごとの解説
- A
適切 正解
間隔は標本化周波数÷FFTの点数で、16,000÷512=31.25Hzです。フレームの長さ512÷16,000=0.032秒の逆数でもあります。1,024サンプルにすると間隔は15.625Hzと細かくなる一方、1つのスペクトルが64ms分の音をまとめるため、速い変化はとらえにくくなります。
- B
不適切
(ア)は正しいものの、(イ)が誤りです。フレームを長くすると、より長い時間の音を1つのスペクトルにまとめるため、短い音の始まりや速い変化がぼやけます。周波数分解能と時間分解能は、一方を細かくすると他方が粗くなる関係にあります。
- C
不適切
(イ)は正しいものの、15.625Hzは、表せる上限の8kHz(標本化周波数の半分)を512で割った値です。512点のFFTは0Hzから16kHzまでを512等分するので、間隔は31.25Hzです。8kHzまでの成分は、0Hzを含めて257個になります。
- D
不適切
15.625Hzは8kHzを512で割った誤った値で、(イ)も向きが逆です。フレームを長くすると周波数分解能は細かくなり、時間分解能は粗くなります。破裂音のような短い音の変化をとらえたいときは、フレームを短くします。
補足
FFTは、離散フーリエ変換を効率よく計算する方法です。点数をNとすると、計算量をNの2乗に比例する量から、N log Nに比例する量まで減らせます。音声認識では、25ms程度のフレームを10ms程度ずつずらしながら分析する設定がよく使われます。各フレームのスペクトルを時間の順に並べたものを、スペクトログラムと呼びます。
試験での狙われ方
FFTは、音声を周波数成分に分ける処理として、A-D変換やMFCCを求める手順のどこに位置するかと合わせて問われやすい論点です。