FFTを実行すると、出力配列の各要素の周波数は次のように表されます。
要素kでの周波数はf(k)= k/NTです。
ここで、Nはサンプルの数(したがって、出力配列内の要素の数)であり、Tは秒単位のタイムスライドです。fはHZで測定されます
私の質問は、その式を考えると、各要素の周波数は常に1 HZ未満であり、FFTは1HZより高い周波数を生成することはできません。
では、どのようにしてより高い周波数で動作しますか?人間の耳に聞こえるもののように(20HZから20KHZ)
ありがとう
FFTを実行すると、出力配列の各要素の周波数は次のように表されます。
要素kでの周波数はf(k)= k/NTです。
ここで、Nはサンプルの数(したがって、出力配列内の要素の数)であり、Tは秒単位のタイムスライドです。fはHZで測定されます
私の質問は、その式を考えると、各要素の周波数は常に1 HZ未満であり、FFTは1HZより高い周波数を生成することはできません。
では、どのようにしてより高い周波数で動作しますか?人間の耳に聞こえるもののように(20HZから20KHZ)
ありがとう
サンプリング周波数がすべてです。したがって、48kHzのサンプルレートを使用していると想像してください。これはかなり一般的です。N = 1024
これで、データ上のポイントを使用してFFTを実行しています。n in N
次に、それぞれに特定の周波数を割り当てることができます。これはどのように行われますか?N
がサンプリングレートに等しいと仮定してください。これで、他のすべての方程式を取得できますn
。選択N
する値が大きいほど、周波数の間隔が細かくなります。
編集また、この関連する/同様のSOの質問を見てください。特に、PaulRからの回答は非常に役立ちます。