Bonjour à tous,
Je pose ma question dans cette section mais c'est plutôt des maths appliquées..
Je veux filtrer le bruit blanc d'un signal avec des ondelettes.
J'ai déjà lu "The wavelet tutorial" de Robi Polak et j'ai bien compris les différences avec la transformée de Fourier.
Je suis en maths spé (même si les maths c'est pas trop mon fort...), et j'ai également compris que l'ondelette dilatée et translatée formait une base orthogonale.
Je vous résume ce que j'ai compris :
On prend un signal numérisé contenant n échantillons (donc un élément de R^n). Prenons R^4 par exemple.
Mon signal est {a,b,c,d}.
Une base orthogonale (pour le produit scalaire canonique) de R^4 est :
e1 = (1,-1,0,0)
e2 = (0,0,1,-1)
e3 = (1,1,-1,-1)
e4 = (1,1,1,1)
C'est pas compliqué de la normer...
On va donc projeter le signal dans cette base. C'est la transformée en ondelettes (avec une ondelette de Haar).
D'un point de vue algorithmique, voici ce que je fais :
Je prends les 1/2 différences de mon signal. J'ai les premiers coefficients.
Je prends ensuite les 1/2 sommes et je recommence dessus...
Un exemple :
Mon signal est {7,1,6,6}
Les 1ers coefficients sont : (7-1)/2=3 et (6-6)/2=0
J'applique ensuite le filtre passe bas et je sous-échantillonne :
(7+1)/2=4 et (6+6)/2=6
Je recommence avec {4,6} :
(4-6)/2=-1
Les coefficients sont donc :
3, 0
-1
On en récupère que 3... Il en manque donc un. Faut-il ajouter également la moyenne du signal initial (ce qui reviendrait à projeter sur e4) ?
(7+1+6+6)/4=5
C'est là que je ne comprends plus trop comment faire...
Le lien entre les projections et l'algorithme n'est vrai qu'à un coefficient multiplicatif près (ma base n'est pas orthonormale...) mais ce n'est pas mon problème pour le moment.
Je ne comprends plus le lien avec la représentation graphique des coefficients d'ondelettes.
Voyez le programme Mathematica que j'ai fait.
Je créé un signal (1024 échantillons) et je calcule les coefficients selon l'algorithme que j'ai expliqué plus haut.
Mais quand je fais un plot2D de ces coefficients je n'obtiens pas la représentation de mon signal (un sinus vobulé). Il y a des sortes de vagues que je ne parviens pas à expliquer..
Bref regardez le PDF..
J'aimerais donc comprendre d'où vient la différence entre la représentation en ondelettes de Mathematica et celle que je calcule.
Ensuite je pourrai m'attaquer à la transformée inverse.
Je n'ai pas trouvé de site qui explique clairement l'algorithme.
Merci pour votre aide.
-----