PythonでMFCC(メル周波数ケプストラム係数)を計算
音声処理ではMFCCという特徴量を使うことがあり、MFCCを計算できるツールやライブラリは数多く存在します。ここでは、Pythonの音声処理用モジュールscikits.talkboxでお手軽に計算してみます。
参考
環境
- OS : OSX 10.8.3
- Python : 2.7.3
- パッケージ管理 : homebrew
インストール
scikits.audiolab
libsndfileのラッパーモジュールです。
brew install libsndfile
pip install scikits.audiolab
scikits.talkbox
音声処理用のモジュールです。MFCCはこれで取得できます。
pip install scikits.talkbox
使い方
from scikits.audiolab import wavread
from scikits.talkbox.features import mfcc
audio, fs, enc = wavread(’waveファイルの場所’)
ceps, mspec, spec = mfcc(audio, nwin=256, nfft=512, fs=fs, nceps=13)
上記のcepsがMFCCです。係数の個数は初期では13個ですが、mfcc()
の引数nceps
で替える事も可能です。ソースに説明が書いてあります。