Saya mencoba menganalisis musik sebaik mungkin. Tentu saja saya mencoba FFT, tetapi ada beberapa masalah.
Saya menemukan frekuensi rendah memiliki resolusi sangat rendah daripada pendengaran manusia. Saya mencoba FFT waktu yang sangat lama untuk menyelesaikan masalah ini, tetapi bahkan menganalisis dengan 8192 sampel / s dalam tingkat sampel 44100Hz (Berarti kurangnya resolusi waktu), saya tidak mendapatkan cukup resolusi pada frekuensi rendah.
Saya menemukan ada beberapa solusi.
Pertama, interpolasi kuadrat pada tempat sampah FFT.
Tapi sepertinya itu bukan cara yang sempurna. Masalah dari metode ini adalah:
1. 'Jika saya ingin menentukan freqs di antara freq bin, mana tiga nampan yang harus saya pilih untuk melakukan interpolasi?'
2. 'Bahkan saya melakukan ini, tidak ada informasi tambahan aktual tentang hasil. Saya tahu interpolasi adalah semacam metode yang rumit. '
Kedua, mengekstraksi setiap tempat sampah freq dengan frekuensi yang diinginkan, jadi saya bisa mengekstrak tempat sampah secara logaritma.
Tetapi memiliki masalah biaya komputasi kritis: (mungkin lebih) N ^ 2.
Ketiga, LFT (Logarithmic Fourier Transform).
Ini meminta sampel yang ditempatkan secara logaritmik dan memberi saya hasil persis apa yang saya cari dengan kecepatan sangat cepat; /programming/1120422/is-there-an-fft-that-uses-a-logarithmic-division-of-frequency
Tapi saya tidak tahu dengan algoritma itu. Saya mencoba memahami makalah dan mengimplementasikannya, tetapi itu tidak mungkin karena kurangnya kemampuan bahasa Inggris dan matematika saya.
Jadi, saya butuh bantuan implementasi LFT.