ondelette de Daubechies

PROJET Traitement Numérique des images

Projet nº 19 : Bases d'ondelettes
Kristina Bouchitte, Souad Guemghar, Olivier Magneau,
Julie Vandenbussche, Marylène Warthmann


 

Sommaire

 Généralités 

Ondelettes continues

Résolution en temps et en fréquences

Inversion de la transformée en ondelettes

Transformations en ondelettes discrètes

Analyse multirésolution

Principe de l'analyse espace - échelle ou analyse multirésolution

Définition

Les algorithmes pyramidaux

Pourquoi des algorithmes pyramidaux ?

Décomposition

Application aux images

Restitution

Les ondelettes à support compact

Théorie sur les ondelettes à support compact

Les ondelettes à support compact d’Ingrid Daubechies

Ondelettes non séparables

Les ondelettes isotropes

Les ondelettes anisotropes

Ondelettes Séparables

Applications

Bibliographie

Les algorithmes pyramidaux


1. Pourquoi des algorithmes pyramidaux ?

Si on ne se préoccupait pas du temps de calcul, on pourrait décomposer le signal en ondelettes en le comparant, à chaque échelle, aux ondelettes de taille appropriée (fonction échelles et analyse multi-échelle) . Le retour, à chaque étape, au signal initial est très lent. Il est plus astucieux de se servir du travail déjà fait. Afin de calculer plus vite, on analyse le signal par "tranches de résolutions consécutives" (fonctions ondelettes et analyse multi-résolution).

La première étape de ces algorithmes consiste à séparer le signal en deux composantes, une composante lisse qui donne l'allure générale du signal et une composante qui en fournit les détails. L'image lisse est le signal tel qu'on le voit à la moitié de la résolution la plus fine : avec deux fois moins d'échantillons. On obtient cette image à l'aide d'un filtre passe-bas qui correspond à la fonction échelle. Les détails s'obtiennent en utilisant un filtre passe-haut. Ils permettent de reconstituer le signal initial à partir de l'image lisse.

La deuxième étape consiste à répéter la procédure sur le signal à une résolution moitiée. On sépare ce signal lissé en deux parties : un signal encore plus lissé (vu à un quart de la résolution du signal initial) et de nouveaux détails deux fois plus grands que les précédents. Pour cela, on dilate d'un facteur 2 la fonction échelle et l'ondelette. On réitère ensuite la procédure (voir plus loin l'application aux images).

 

2. Décomposition

Soient g et h des filtres miroirs conjugués. Les filtres miroirs conjugués sont un cas particulier des bancs de filtres à reconstitution parfaite. La nature dyadique de l'approximation multirésolution est étroitement liée à la possibilité d'opérer des sous-échantillonnages élémentaires du signal par suppression d'un terme sur deux, et des sur-échantillonnages élémentaires par insertion d'un zéro tous les deux coefficients.

Le calcul des coefficients a1 [n] et d1 [n] d'un signal dans Vj et Wj à partir de ses coefficients a0[n] dans Vj-1 se fait par application des filtres miroirs conjugués puis par un sous-échantillonnage:

a1 [n] = a0 * h1 [2n]
et
d1 [n] = a0* g1 [2n] .

en posant h1[n] = h[-n] et g1[n] = g[-n].

Les coefficients de h sont donnés par l'équation d'échelle

c'est-à-dire, dans le domaine fréquentiel:

et les coefficients de g sont donnés par l'équation d'échelle sur l'ondelette:

soit, dans le domaine fréquentiel:

En pratique, cette récurrence est initialisée en assimilant les échantillons du signal aux coefficients de résolution la plus fine.

Inversement, la reconstruction de a0[n] à partir de a1 [n] et de d1 [n] se fait en insérant un zéro entre chaque échantillon puis en faisant la somme des convolutions avec h et g:

a0 [n] = z(a1) * h [n] + z(d1) * g [n]

où l'opérateur z représente l'insertion de zéro.

Décomposition

 

3. Application aux images

En deux dimensions, la représentation en ondelettes peut être vue de la même manière qu'une représentation en ondelettes sur chacun des axes x et y (ondelettes séparables). On utilise donc une extension de l'algorithme pyramidal à une dimension. A chaque étape on décompose 

Ad2^j+1 f en Ad2^j f, D12^j f, D22^j f, D32^j f , où :

Ad2^j f = ((f(x, y)* f2^j (-x) f2^j (-y))(2-jn,2-jm)) pour (m, n) appartenant à Z2   (1)
D12^j f = ((f(x, y)* fj (-x) yj (-y))(2-jn,2-jm)) pour (m, n) appartenant à Z2   (2)
D22^j f = ((f(x, y)* y2^j(-x) f2^j(-y))(2-jn,2-jm)) pour (m, n) appartenant à Z2   (3)
D32^j f = ((f(x, y)* y2^j(-x) y2^j(-y))(2-jn,2-jm)) pour (m, n) appartenant à Z2   (4)

On convolue d'abord les colonnes de Ad2^j+1 f avec un filtre à une dimension, on garde toutes les autres colonnes, on convolue les colonnes du signal résultant avec un autre filtre à une dimension, on retient les autres colonnes. Les filtres utilisés dans cette décomposition sont les  filtres miroir en quadrature H et GOn itère le procédé ci-dessus en faisant varier j . Ceci correspond à une décomposition  en filtres miroirs conjugués séparables. Les coefficients d'ondelettes ainsi obtenus ont une grande amplitude au voisinage des contours et dans les textures selon une orientation spatiale donnée.
Les expressions (1)-(4) montrent qu'en deux dimensions Ad2^jet  Dk2^jsont calculés à l'aide de filtres séparables selon les abscisses et les ordonnées. La décomposition en ondelettes peut alors être vue comme la décomposition d'un signal en un ensemble de bandes de fréquences orientées dans l'espace. f(x) peut être considéré comme un filtre passe-bas parfait et y comme un filtre passe-bande. La décomposition de Ad2^j+1 f est telle que :
    - Ad2^j f correspond aux basses fréquences,
    - D12^j f donne les hautes fréquences verticales (contours horizontaux),
    - D22^j f donne les hautes fréquences horizontales (contours verticaux),
    - D32^j donne les hautes fréquences dans les deux directions (les coins),
Cette décomposition est illustrée dans la figure ci-dessous :


 
 
 

 

4. Reconstruction

Le signal de départ peut être reconstruit à partir de sa pyramide. Puisque et sont complémentaires dans , alors forment une base orthogonale de . On peut donc décomposer au point sur cette base :

Soit encore (après changement de variables) :

et sont les filtres duaux de et de , tels que et . Le passage d'une résolution à une autre se fait en prenant le produit scalaire :

ce qui s'écrit aussi :

La fonction est donc reconstruite en mettant des zéros entre chaque échantillon de et de et en convoluant les signaux obtenus par les filtres et respectivement.

 

Reconstruction