ピッチ抽出の試み その2 (MEM) v1.6.5


最大エントロピー法(MEM:Maximum Entropy Method)と言う スペクトル解析法があります。
それは...
有限な測定データからそれだけでは測定不可能な大きなラグを持つ 自己相関関数を情報エントロピーが最大となるように推定することにより スペクトル推定を行う。
したがって 無限に続く信号(現象)の一部分だけからスペクトル解析をす るのに適している。

FFTと比較すると スペクトルの分解能が高い・ 信号の周期に対してデータ長が短くてもスペクトル推定が出来る・ 雑音に対して比較的強い etc.

MEMの使用上の注意点としては 自己回帰モデルの次数決定が難しい最終予測誤差 (FPE:Final Prediction Error)を用いているが どのデータでもこの方法がうまく行くとは限らない・ スペクトルの推定結果は和とはならない(高さは保証されない)・ FFTに比べ計算時間が長い etc.
...だそうです[参考文献: 1]。
そこでプログラムをJavaに変換しましたので wave信号を見てみます。

MEM

( S M L)
MD5 (mem.zip) = 9eafd456e10bbdbbcc673cc49d824c06
( S M L) Source File ・ mem.zip(SIZE = 11704)
使い方:

これまでのWaveデータをMEMなどで見てみます。
View Wave Files


JP の"A49のインハーモニシティの無い10倍音"(a49-10.wav) の音を見てみます。

A45 MEM
 #: [Hz]       Key#:   [cent]: peak>1552.00: #   (補正値):  [cent]
------------------------------------------------  -----------------
 1:  440.0848 49A..:   0.3338: 155266.2969:  328  (0.00):    0.3338
 2:  880.1697 61A..:   0.3338:  25231.1445:  655  (0.00):    0.3338
 3: 1320.2545 68E..:   2.2888:  16979.0391:  982 (-1.955):   0.3338
 4: 1760.3394 73A..:   0.3338:   6847.5273: 1309  (0.00):    0.3338
 5: 2200.4243 77Cis: -13.3525:   2314.8914: 1636 (13.6863):  0.3338
 6: 2639.1631 80E..:   1.4062:   3930.302:  1962 (-1.9550): -0.5488
 7: 3079.248  83G..: -31.5968:   8899.3828: 2289 (31.1741): -0.4227
 8: 3519.333  85A..:  -0.3281:   9035.4619: 2616  (0.00):   -0.3281
 9: 3959.4177 87H..:   3.6554:  27561.0898: 2943 (-3.91):   -0.2546
10: 4399.5024 89Cis: -13.882:   80788.8516: 3270 (13.6863): -0.1957

同じデータを FFTで見てみます。

A45 FFT
 #: [Hz]       Key#:   [cent]: peak>51729.00: #   (補正値): [cent]
-------------------------------------------------  -----------------
 1:  440.0235 49A..:   0.0924: 1705369.50:   327   (0.00):   0.0924
 2:  880.0255 61A..:   0.05:   1698497.375:  654   (0.00):   0.0500
 3: 1320.0254 68E..:   1.9884: 1703984.125:  981  (-1.955):  0.0334
 4: 1760.0405 73A..:   0.0399: 1686381.00:  1308   (0.00):   0.0399
 5: 2200.0356 77Cis  -13.6583: 1669221.75:  1635  (13.6863): 0.0280
 6: 2640.0498 80E..:   1.9877: 1643419.75:  1962  (-1.955):  0.0327
 7: 3080.0491 83G..: -31.1465: 1619719.125: 2289  (31.1741): 0.0276
 8: 3520.0007 85A..:   0.0003: 1642082.50:  2615   (0.00):   0.0003
 9: 3960.0029 87H..:   3.9113: 1628588.875: 2942  (-3.91):   0.0013
10: 4400.0049 89Cis: -13.6843: 1607044.625: 3269  (13.6863): 0.0020

信号音のサンプリング周波数を変更しなくても それなりの精度で測定出来ます。


参考文献:
  1. 科学計測のための波形データ処理 南 茂夫 CQ出版社 1997
  2. スペクトル解析 日野 幹雄 朝倉書店 2002(28版)
Dobashi.M
Last modified: 1月 03日 火 14:01:02 2023 JST