TadaoYamaokaの開発日記

個人開発しているスマホアプリや将棋AIの開発ネタを中心に書いていきます。

ボーカル音程モニター(Vocal Pitch Monitor)をアップデートその2

前回の日記で、ボーカル音程モニター(Vocal Pitch Monitor)のアップデートについて書きましたが、解析精度に少し問題があったので、再度アップデートしました。

どうやら母音が「う」の場合に、倍音を誤検知しやすくなっていました。
アップデートで倍音構成から基本周波数を推定するようにしましたが、特に3倍音の有無が重要なためバイアスをかけています。
しかし、3倍音が少ない母音の場合、誤検知しやすくなっていたようです。

日本語母音のあいうえおの倍音構成をスペクトログラムで表示すると以下のようになっています。

f:id:TadaoYamaoka:20160911212514p:plain
左からあ、い、う、え、おの順

これを見ると、「い」と「う」については、3倍音が少ないことが分かります。

発声の仕方にもよりますが、確かに「い」と「う」については、それほど多くはなく誤検知しやすい傾向がありました。

そこで機械学習のサンプルを追加してパラメータを再調整しました。
これで誤検知を減らすことができたと思います。

同様に3倍音が少ない楽器音についても誤検知しやすくなっていますが、ボーカルやフレットのない弦楽器などでの用途が多いと思いますので、それらの用途で誤検知が少なくなるように調整しています。



ついでに、要望があった、440HzをA3にするオプションも追加しました。
これまで440HzをA4としていましたが、これは国際標準がA4=440Hzとなっているためです。
RolandKorgの製品では、この国際標準にあった表記になっています。
しかし、ヤマハ(Steinberg含む)の製品では、440HzがA3になっています。

このように製品によって統一されていないため、オクターブが間違っているという指摘がありました。
そのため、440HzをA4とするか、A3とするかオプションで選択できるようにしました。

参考:
440Hz=A4なのかA3なのか | g200kg Music & Software