FFT(高速フーリエ変換)の決定は、しばしば時間 - 周波数トレードオフです。より長い時間(15〜20秒)にわたってFFTを計算すると、より正確な周波数を得ることができますが、その数は非常に少なくなります。より短い時間間隔の場合、周波数はしばしば急激な変化を示す。 十分な数の周波数ポイントで信頼性の高いデータを取得するのに最適な時間間隔はどのくらいですか?Javaでの所定の時間における周波数の決定
答えて
これは、お使いのオーディオの種類によって異なります。たぶんウェーブレット解析の使用を検討する必要があります。これにより、低周波の認識を失うことなく、非常に正確な高周波を抽出することができます。
私はマイクからの入力を受けています。オーディオ形式は次のとおりです。 float sampleRate = 44100; int sampleSizeInBits = 8; int channels = 1; \tブール値signed = true; \t boolean bigEndian = true; – sumit
人間が聞くことができるすべてのもの(2Hz〜22,5Khz)を与える1sec FFTのようなものはありませんか?その後、1秒のfftsの結果をミックス*します。私は完全に間違っていますか?私は問題を見ることができません(他の手段で減らすことができる低振幅のノイズを除いて) – user978548
は、Nysquist-Shannon Sampling Theoremの読み取り値を持ちます.1/2Bでサンプリングします。ここで、Bは信号の最大周波数で、データ損失なしで再構成できるようにします。
これは、試料中の最小周波数の2倍の周期のためにサンプリングすることにより、信号のために良い十分なFFTを得ることができるように私には意味 - サンプルが周期的である場合はつまり、私は、推測:P
Bが最大周波数である場合、半分ではなく、少なくとも2倍のサイズが必要です。 –
「ベスト」はあなたのニーズに依存します。
時間の分解能が重要な場合は、ポイントの数を減らす方が良い場合があります。
周波数分解能がより多くの点より重要である場合は、より良い場合があります。
ノイズフロアが高い場合は、さらに多くのポイントが良いかもしれません。
気にしない場合は、短いFFTを使用して計算時間とエネルギーを節約してください。 (または、FFTを気にせず、/ dev/randomからいくつかの結果を取るだけです)。
関心のある信号が静止していない場合(時間が経って変化するなど)、FFTを短くして、個々のスペクトルイベントをそれぞれFFTウィンドウに分けることができます。
スペクトル信号のピークと隣接するノイズのピークを明確に分離できる周波数分解能が必要な場合は、分離したいピーク間の最小デルタ周波数で除したサンプルレートの2倍以上のFFT長を必要とします。あなたが窓ならば。この精度が必要ない場合は、FFTを短くしてください。
ノイズレベルと干渉が目的の信号と比較して十分に低い場合は、はるかに短いFFTを使用して分離されたピークから、またはFFTなしで、周波数推定値を補間できます。 1つの正弦波に対してノイズがゼロの場合、わずか3または4の非エイリアスサンプルポイントが可能です。
- 1. 周波数と振幅の持続時間を決定する
- 2. SQL:時間と周波数
- 3. パンダ日時日間の周波数
- 4. 音符の周波数を決定する方法は?
- 5. MATLABの信号データから周波数を決定
- 6. カフス設定周波数?
- 7. signal.spectrogram特定のセグメントの最大周波数を見つける
- 8. オーディオファイルのスペクトログラム、時間と振幅か時間か周波数か
- 9. pandas TimeGrouperカスタム周波数時間範囲
- 10. 周波数をオーディオファイルに設定する
- 11. ウェーブレット:周波数からスケールを決定する方法?
- 12. FFTから周波数値を決定する方法
- 13. MSP430ピンの測定クロック周波数
- 14. Azureデータファクトリ:周波数の設定
- 15. スライディングウィンドウFFTを使用して時間に依存する周波数を決定する
- 16. Pythonで信号を送る時間の周波数リスト
- 17. Javaのリアルタイムオーディオ周波数をカウントする
- 18. 正弦波周波数と位相のRNN LSTM推定
- 19. トランスデューサの周波数ドメインデータを時間ドメイン変換関数
- 20. midiでプログラミングし、特定の周波数にチューニングするノート
- 21. カーネルの時間周波数を変更する
- 22. MATLAB - .wavファイルの時間 - 周波数グラフをプロットする
- 23. Javaの周波数解析の性能
- 24. Verilogで特定の周波数の方形波を出力する
- 25. MATLABで特定の周波数のパルス波を生成する方法
- 26. アンドロイドで特定の周波数の音を再生する
- 27. 所定の時間だけ複数ドロップダウンページを表示する
- 28. Android-Java:特定のノートを検出する(周波数とピッチで)
- 29. 周波数と空間領域のフィルタリング
- 30. 関数型プログラミングにおける関数の型の決定
「十分な数の周波数ポイント」 - 何には十分ですか? –
という2つのサンプルを照合するのに十分です:)。 – sumit
理論的には、処理するサンプルの数を増やすと精度が向上し、唯一の「コスト」は処理時間/スペースになります。もっと頻繁に測定する必要がある場合は、スライディングウィンドウを使用してください。ここでは、2000サンプルごとに8000サンプルの「ウィンドウ」を処理し、すでに処理したサンプル(6000)を再処理します。しかし、「正しい」時間間隔は、あなたのニーズに最も適したもので、1秒に10回、1分に10回になる可能性があります。 –