質問

C++ / Qt での現在のプロジェクトには、信号 (基本的に double の配列) からスペクトログラムを計算できるライブラリ (LGPL が推奨) が必要です。GUI部分にはすでにQwtを使用しています。

助言がありますか?ありがとう。

役に立ちましたか?

解決

独自のスペクトログラムを組み立てるのは非常に簡単です。手順は次のとおりです。

  1. window 関数 (かなり些細な、 例えば。ハニング)
  2. FFT(FFTWは 良い選択ですが、ライセンスが 問題の場合は、キスFFTまたは、 類似)
  3. 対数マグニチュードの計算 周波数領域成分数 (些細なこと:log(sqrt(re * re + im * im))

他のヒント

「周波数対時間のプロットを作成するにはどうすればよいですか?」 に、信号からスペクトログラムを計算できるライブラリをいくつかリストします。

私自身の回答からコピーして貼り付けました。

生成するいくつかのソースコード スペクトログラム / 滝のプロット 音声データから:

画像からスペクトログラムへ 上記のユーティリティとは逆の方向に進みます。

あなたはFFTW(fftw.org)スペクトログラムを計算するために、あなたはまだデータをプロットする必要があります使用することができ、それが問題になることはありません。

現在のページからFFTのコードを使用することができます>。それは、効率のためのC ++テンプレートメタプログラミングを使用しています。完全なソースは、ここで、著者によって提供さします。

これはこれを含めるようにする示唆されましたテンプレートの使用のために固有にコード(フレンドリ入力)コード

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top