rééchan_freq
Ré-échantillonage zéro phase à partir de la TFD.
Espace de nom : tsd::fourier
Prototype
Vecteur<T> rééchan_freq(const Vecteur<T> &x, float ratio)
Paramètres
x | Vecteur d'entrée. |
ratio | Rapport entre la fréquence d'échantillonnage de sortie et celle d'entrée (un ratio supérieur à 1 indique une interpolation, tandis que dans le cas contraire, on a affaire à une décimation). |
Description
Cette fonction change la fréquence d'échantillonnage d'un signal, sans délais, grâce à un calcul dans le domaine fréquentiel.
- Avertissement
- Notez que, du fait des hypothèses sous-jacentes à la TFD, des artefacts peuvent apparaitrent au bord du signal. Pour atténuer ce phénomène, vous pouvez pré-appliquer une fenêtre ou bien insérer des zéros avant et après le signal (ce ne sont cependendant pas des solutions parfaites).
Exemple illustrant les artefacts aux bords du signal
soit x = linspace(0, 1 - 1.0/10, 10),
// Interpolation d'un facteur 10
// (10 fois plus d'échantillons en sortie)
y = rééchan_freq(x, 10);
Figure f;
soit t = x,
t2 = linspace(0, 1 - 1.0/100, y.rows());
f.plot(t, x, "b-o" , "x" );
f.plot(t2, y, "g-" , "y" );
