Wie kann ich eine Fensterfunktion wie Hamming oder Lanczos anhand ihrer Koeffizienten auf ein Signal anwenden?
Ich meine, mit welcher Methode kann ich das machen? FFT? Faltung? Welche Methode hat die bessere Leistung?
Wie kann ich eine Fensterfunktion wie Hamming oder Lanczos anhand ihrer Koeffizienten auf ein Signal anwenden?
Ich meine, mit welcher Methode kann ich das machen? FFT? Faltung? Welche Methode hat die bessere Leistung?
Antworten:
Ich habe diese lange Antwort gestern für jemanden auf stackoverflow.com geschrieben. .
/programming/9694297/matlab-fft-xaxis-limits-messing-up-and-fftshift/9699983#9699983
Es ist ein Matlab-basiertes Beispiel, das zeigt, wie die FFT für die Analyse verwendet wird, aber es kann Ihnen einige Ideen geben. Ungefähr zur Hälfte des zweiten Codeblocks wende ich eine Fensterfunktion auf ein gepuffertes Signal an. Dies ist effektiv eine Vektormultiplikation der Fensterfunktion mit jedem gepufferten Block von Zeitreihendaten. Ich benutze nur einen hinterhältigen Diagonalmatrix-Trick, um es effizient zu machen.