Rééchantillonnage
La façon la plus simple pour changer la fréquence d'échantillonnage d'un signal de durée finie est d'utiliser la fonction rééchan() (définie dans lien non trouvé : [tsd_8hpp_source]tsd.hpp
).
Les fonctions ci-dessous permettent de traiter des signaux au fil de l'eau, grâce à des filtres avec contexte.
Le filtre de rééchantillonnage le plus général (taux de rééchantillonnage arbitraire) est créé avec la fonction filtre_reechan(). Les autres filtres sont plus spécifiques (taux de rééchantillonnage entiers ou fractionnaires).
// Divise la fréquence d'échantillonnage par 100
soit f = filtre_reechan(0.01);
soit y = f->step(x);
Sous-groupes
Interpolateurs
Différentes structures d'interpolations classiques (linéaire, polynomiale, sinc, etc.).
Enumérations
InterpOption : LINEAIRE | CSPLINE;
Type d'interpolation pour un signal d'entrée échantillonné de manière aléatoire.
Fonctions
sptr<FiltreGen<T>> filtre_rif_decim(const Vecteur<Tc> &h, entier R)
Filtrage RIF avec post-décimation (ne calcule qu'une échantillon sur \(R\)).
sptr<FiltreGen<T>> filtre_rif_demi_bande(const Vecteur<Tc> &c)
A documenter : filtre RIF optimisé pour filtrage demi-bande.
sptr<FiltreGen<T>> filtre_rif_ups(const Vecteur<Tc> &h, entier R)
Filtrage RIF avec pré-insertion de zéro (implémentation polyphase)
float filtre_rif_ups_délais(entier nc, entier R)
Calcul du retard d'une filtre RIF interpolateur.
sptr<Filtre<T, T, float>> filtre_reechan(float ratio)
Adatateur de rythme, ratio arbitraire.
sptr<FiltreGen<T>> filtre_itrp(float ratio, sptr<Interpolateur<T>> itrp=itrp_cspline<T>())
Interpolation d'un ratio arbitraire (calcul au fil de l'eau)
Vecteur<T> interp(const Vecf &x, const Vecteur<T> &y, const Vecf &x2, InterpOption mode=LINEAIRE)
Interpolation d'un signal échantilloné de manière aléatoire.