私は現在2年目のプロジェクトに取り組んでいます。私はjavaでチューナーをコーディングするはずです。私はギターチューナーを選んだ。スペクトログラムのピークを見つける
インターネットを見回した後、私はJavaコードでFFTを実行しました。私はそれを少し変更し、それを理解し、それをテストしました。私はそれがうまく動作する(私はそれのグラフを作って、単純な正弦関数を使用して別のピークを見て)知っている。
私は今、基本周波数を見つけようとしています。私が理解していることから、この周波数は最初のピークによって与えられます。
私は、例えば、私のFFTの最初の5つのピークを見つけ、それらのインデックスを私に与える方法を作りたいと思うでしょう。
私はまず、私のスペクトログラムの2つの点を2つずつ比較し、記号が変わったときにピークがあることがわかったところで簡単な方法をとった。この方法は、理想的な信号(雑音なし)で効果的です。しかし、ノイズを加えると完全に無駄になります。
私は実際にこのプロジェクトで始まりました(実際に私が上で説明した基本的な機能は私のマスターピースです...)。私のレベルのアイデアが得られます。
誰でも手伝ってもらえますか?とても感謝しております! :) 事前に感謝!
素晴らしい一日を!
fireangel
ピッチはFFTのピーク周波数ではありません。ピッチ周波数は、最初のピークまたはピークではない可能性があります。特に、ギターの低い弦から録音された音の場合。 – hotpaw2
可能なdupの:http://stackoverflow.com/questions/8699360/audio-analysis-frequency-vs-pitch – hotpaw2
あなたのためにhotpaw2に感謝します。私はピッチの概念も考え出した。私が理解したところでは、ピッチは周波数に関連しているので、周波数を見つけることでピッチを得ることができると思った。 – fireangel3000