1

コード検出アルゴリズムに関しては、すでにかなりの数の質問があることを認識しています。ただし、これらのほとんどは、曲をコードのセットまたはコードの転写に解釈することに関連しているようです。私の問題は、ギターコードの単一のストラムを録音し、これを分析して演奏されたコードを返すことにのみ関心があるため、はるかに単純なはずです。また、これが難しすぎると判明した場合は、特定のコードが正しく演奏されているかどうかを簡単に判断できれば、ある程度は十分です。アプリケーションは、正しいコードを演奏したかどうかを教えてくれます (記憶ゲームのようなものです)。アプリケーションは期待するコードをすでに知っているため、この 2 番目のオプションの方が簡単だと思います。

同じアプリケーションの一部として、ギター チューナーに FFT とハーモニック プロダクト スペクトルを既に使用しています。FFT が出力する周波数スペクトルを分析してギターのコードを認識する方法について、アドバイスをお願いします。また、この件に関する他の提案にもオープンであり、私が得ることができるどんな助けにも本当に感謝しています.

ありがとう

4

4 に答える 4

1

最も一般的なコードのフィンガープリントを試してから、フィンガープリントのセット内で最も一致する正規化されたスペクトルを探すことができます。例: 周波数領域のパターン マッチング問題として扱います。

于 2012-02-25T05:35:15.617 に答える
0

返信するには遅すぎますが、これがお役に立てば幸いです。

電子ギター、MIDIギター、またはその他のMIDI楽器用にプログラミングしている場合は、これらのものに非常に効果的なJavaパッケージJFugueがあります。たとえば、楽器のコードノートなどを検出できます。このパッケージにはさらに多くの機能があります。Jfugue.orgをご覧になることをお勧めします

于 2012-04-07T20:23:39.160 に答える
0

この種のことを行う方法を知りたい人は、ハーモニック プロダクト スペクトルとピッチ クラス プロファイル/クロマ ベクトルを調べてください。これらの組み合わせがポイントです。また、「コード検出」ではなく「複数の F0 推定」という検索語を使用すると、より良い結果が保証されます :)

于 2012-03-27T13:20:21.143 に答える