MFCCの計算/理解を支援:メル周波数ケプストラム係数
私はオンラインで細かく読んでいますが、すべてをつなげることはできません。私はこれに関する十分な前提条件である信号/ DSPスタッフの背景知識を持っています。私は最終的にこのアルゴリズムをJavaでコーディングすることに興味がありますが、まだ完全には理解していません。だから私はここにいるのです(数学としてカウントされますよね?)。 これが私の知識のギャップと一緒にどのように機能するかを示しています。 .wavファイルなどの音声スピーチサンプルから始めて、配列に読み込むことができます。この配列呼び出す、Nの範囲0 、1 、... 、N - 1(したがって、N個のサンプル)。値は、私が推測するオーディオの強度-振幅に対応しています。x [ n ]バツ[n]x[n]nnn0 、1 、... 、N− 10、1、…、N−10, 1, \ldots ,N-1NNN 音声信号を10ミリ秒程度の明確な「フレーム」に分割し、音声信号が「静止」していると想定します。これは量子化の形式です。したがって、サンプルレートが44.1KHzの場合、10msは441サンプル、つまり値に等しくなります。x [ n ]バツ[n]x[n] フーリエ変換(計算のためにFFT)を行います。これは、信号全体または各個別のフレームで実行されますか?一般にフーリエ変換は信号のすべての要素を見るので、違いがあると思うので、F(x [ n ] )≠ F(x 1 [ n ] )はFと結合(x 2 [ n ] )は… Fと結合(x N [ n ] )ここでxx [ n ]バツ[n]x[n]F(x [ n …