2016-11-14 8 views
1

私はPythonのオーディオファイル、特に音楽オーディオの解析に取り組んでおり、周波数領域でデータを取得するためにDFT(FFT)を適用しましたが、検索の量はありませんそれを使って周りを歩くと、周波数の「ピーク」/局所的な最大値を識別する良い方法が明らかになりました。私のデータはかなり騒々しいです、フーリエ変換を適用した後のグラフの例は以下の通りです。ヘルプは本当に感謝しています。私はこのデータからMFCC係数を取り出すことも検討していますが、その方法についてもわからないので、その件に関する知識も役立ちます。FFTデータのローカル最大値を特定する方法

FFT of Audio File

+0

私は単にデータを滑らかにするために適切な幅(10Hzが良いスタートのように見える)でランニングアベレージを行い、ノイズのある信号のローカル最大値を探します。 – Julien

+0

このライブラリで試してみてください:https:// github。 com/jameslyons/python_speech_features、 "自分自身を繰り返さない"、 "輪を再構築しない" – eyllanesc

答えて

0

まず、あなたは、低域通過フィルタリングを実行して(FFT)のデータを滑らかにする必要があります。その後、信号のグラジエントでゼロ交差を見つけることができます。 [-1、1]で信号をフィルタリングしてグラデーションを検索し、前の要素が正で後続要素が負の要素を選択できます。

関連する問題