filtre_goertzel
Filtre de Goertzel (calcul au fil de l'eau)
Espace de nom : tsd::fourier
Prototype
sptr<FiltreGen<float>> filtre_goertzel(float frequence, entier N)
Paramètres
frequence | Fréquence à détecter (normalisée à la fréquence d'échantillonnage). |
N | Nombre de points de la TFD équivalente (facteur de décimation) |
Retourne
Filtre générique float -> float
Description
Ce filtre calcule au fil de l'eau la densité de puissance (normalisée à la puissance totale du signal) à une fréquence donnée (voir goertzel()).
Le calcul est fait par blocs de \(N\) échantillons, et la fréquence d'échantillonnage en sortie est donc divisée par \(N\) par rapport à la fréquence d'entrée (1 échantillon produit pour \(N\) échantillons consommés) :
\(\mathcal{F}(.)\) étant la transformée de Fourier discrète.
Le paramètre \(N\) correspond donc au nombre de points de la transformée de Fourier, et la résolution fréquentielle sera donc d'autant plus fine que \(N\) est grand.
Exemple : détection d'une sinusoïde pure
