Estou tentando analisar as músicas da maneira mais precisa possível. Claro que tentei o FFT, mas tenho alguns problemas.
Descobri frequências baixas com resolução muito baixa do que a audição humana. Tentei muito tempo a FFT para resolver esse problema, mas mesmo analisando com 8192 amostras / s na taxa de amostragem de 44100Hz (significa falta de resolução de tempo), não obtive resolução suficiente em baixas frequências.
Eu descobri que existem poucas soluções.
Em primeiro lugar, uma interpolação quadrática nos compartimentos da FFT.
Mas não parece um caminho perfeito. Os problemas desse método são:
1. 'Se eu quiser determinar as freqs entre os compartimentos de freq, quais três compartimentos devo selecionar para fazer uma interpolação?'
2. 'Mesmo que eu faça isso, não há informações adicionais sobre o resultado. Sei que interpolações são um método complicado.
Em segundo lugar, extrair cada uma das caixas de frequência com a frequência desejada, para que eu possa extrair as caixas logaritmicamente.
Mas tenha um problema crítico de custo computacional: (talvez acima) N ^ 2.
Terceiro, LFT (Logarithmic Fourier Transform).
Isso requer amostras espaçadas logaritmicamente e me fornece o resultado exatamente o que eu procuro com uma velocidade incrivelmente rápida; /programming/1120422/is-there-an-fft-that-uses-a-logarithmic-division-of-frequency
Mas eu não tenho idéia com esse algoritmo. Tentei entender o artigo e implementá-lo, mas era impossível por falta de minhas habilidades em inglês e matemática.
Então, eu preciso de uma ajuda da implementação do LFT.
Se a análise que você pretende executar exigir a frequência dos sinais em cada compartimento, você pode usar a Transformada de Fourier de Tempo Curto para conseguir isso.
Cada compartimento da FFT produz um número complexo que representa o componente real e imaginário - ou após um pouco de fase e magnitude de manipulação.
Como frequência = dPhi / dt, (Phi == fase), tomando os compartimentos correspondentes de pares de espectros STFT consecutivos, você pode calcular a frequência.
O DSP Dimension tem um bom artigo sobre o processo.
fonte