These 4

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 20

Chapitre 2

Divers algorithmes de transformee en


ondelettes
Dans ce chapitre, divers algorithmes permettant de calculer les di erentes trans-
formees en ondelettes presentees au chapitre precedent vont ^etre exposes. Nous avons
vu que le type de transformee est tres lie au type d'ondelette que l'on veut utiliser. Il
en est de m^eme pour le choix d'un algorithme.

2.1 Transformee continue


2.1.1 Mise en oeuvre
Nous avons vu que la transformee en ondelettes continues n-dimensionnelle s'ecrivait
(equation (1.7)) Z
1
W f (a; b; r) = pc  a;b;r(x) f (x) dn x
En pratique, on dispose des donnees echantillonnees de la fonction f , soit f (xi); i 2 Z.
Une bonne approximation de la TO est alors
wf (a; b; r) = p1c
X Y(x , x )  (x ) f (x )
i
+1 i j a;b;r i i
i j
ou j represente la j -ieme coordonnee du vecteur considere.

Le calcul d'un coecient par cette methode directe est en O(n) si n est le nombre
de donnees dont on dispose. A une echelle donnee et pour une rotation donnee, le co^ut
de la transformee pour le calcul des n coecients est donc en O(n ), ce qui est assez
2

co^uteux.
La formulation de la transformee en ondelettes continue dans le domaine de Fourier
52 Divers algorithmes de transformee en ondelettes

conduit a un algorithme de calcul moins co^uteux. En e et, la TOC s'ecrit dans le


domaine de Fourier Z^
1
W f (a; b; r) = pc  a;b;r () f^() dn  (2.1)
Ce qui s'ecrit aussi, si la famille d'ondelettes est normalisee en norme L (equation
1

(1.6) )
a n Z
W f (a; b; r) = pc eib ^ (ar, ()) f^() dn 
1
(2.2)
La transformee en ondelettes continues en fonction de la position b peut ^etre vue comme
la transformee de Fourier inverse du produit des transformees de Fourier des deux
fonctions initiales.
L'equation (2.2) se discretise comme suit
wf (a; b; r) = pac
n X Y( ,  ) eikb ^ (ar, ( )) f^( )
1
k k j
+1 k k
k j

avec les notations precedentes.


Le calcul peut alors se faire a l'aide de la transformee de Fourier rapide (FFT). En e et
W f (a; b; r) est la FFT inverse du produit de deux FFT directes et le calcul se fait en
O(n log n) et est donc plus rapide que la methode directe.
2

Le calcul dans le domaine de Fourier presente tout de m^eme un inconvenient dans


certains cas. En e et la TO permet le calcul de tous les coecients en m^eme temps
pour une echelle et une rotation donnee. Si on veut calculer uniquement un coe-
cient ou quelques coecients, alors le calcul direct est plus rapide (en O(n) au lieu de
O(n log n)).
2

2.1.2 Problemes de representation


La transformee en ondelettes n-dimensionnelle a un certain nombre de variables :
a, le facteur d'echelle, b, le vecteur position, r, la rotation. Ceci pose un probleme de
representation dans l'espace.

Dans le cas unidimensionnel, la TOC s'ecrit


1 Z x,b
W f (a; b) = pa c  ( a ) f (x) dx
On a donc ici une fonction a deux variables qui peut se representer de maniere classique
dans le plan euclidien. Traditionnellement, on place b en abscisse et a ou , log a en
ordonnees (Fig. 2.1). Un telle representation permet d'observer toutes les positions et
2.1 Transformee continue 53

b
0
-log a

b
a 0

(a) (b)

Figure 2.1: Systemes d'axes de la representation de la TOC 1D.

toutes les echelles en m^eme temps, d'ou l'appellation representation \temps-echelle".

Dans le cas ou f est une fonction a deux variables, on a


ZZ
W f (a; b; ) = a1  ( 1 r, (x , bx; y , by )) f (x; y) dx dy
a
ou r , la rotation d'angle  s'ecrit r (x; y) = (x cos  , y sin ; x sin  + y cos ) et b, le
vecteur b = (bx; by ).
On voit que la transformee en ondelettes d'une telle fonction est une fonction a quatre
variables. Pour la representer, il convient donc d'en xer deux. Les representations les
plus naturelles vont ^etre presentees, puis une representation plus \adaptative".

2.1.2.1 Representation en espace


La representation en espace consiste a xer l'angle  et le facteur d'echelle a et
observer la transformee en ondelettes en chaque point de la fonction, fonction qui dans
le cas qui nous interessera par la suite sera une image. C'est la representation la plus
\parlante" dans la mesure ou on veut representer une fonction ou une image tout en
conservant la \geographie" de cette fonction. Ce type de representation permettra
d'isoler dans l'image des zones d'inter^ets (Fig. 2.2), comme les frontieres (singularites
apparaissant aux petites echelles), les structures principales (echelles plus importantes)
ou des zones de direction privilegiee, dans la direction  (si l'ondelette comporte un
caractere directionnel).
De plus cette representation permet d'utiliser l'algorithme rapide de calcul des coef-
cients d'ondelettes presente ci-dessus. Le co^ut du calcul des coecients est donc en
O(n n log (n n )) si n et n sont les dimensions de l'image.
1 2 2 1 2 1 2
54 Divers algorithmes de transformee en ondelettes

(a) Image a analyser (b) Frontieres (c) Directions pour  = 2

Figure 2.2: Exemples de caracteristiques extraites a l'aide d'une representation en


espace.

2.1.2.2 Representation angle-echelle


La representation angle-echelle est, d'une certaine maniere, le contraire de la repre-
sentation precedente. En e et, elle consiste a se placer en un point donne et a observer
le comportement des coecients d'ondelette en ce point pour tous les angles et toutes les
echelles. Ce type de representation est utilise pour etudier la regularite d'une fonction en
un point bien precis. En e et, comme on l'a vu au chapitre precedent, le comportement
de la transformee en ondelettes en un point aux petites echelles est tres lie a la regularite
de la fonction etudiee en ce point (paragraphe 1.3.3). Ceci necessite bien entendu de
savoir a priori quel point particulier doit ^etre etudier.
Cette representation ne permet pas d'utiliser la formulation dans le domaine de
Fourier de la transformee en ondelette. On peut utiliser le calcul direct et la complexite
est en O(n n nan ) ou n et n sont toujours les dimensions de l'image et na et n , le
1 2 1 2

nombre d'echelles et d'angles respectifs souhaites.

2.1.2.3 Representation espace-angle-echelle


La representation que l'on appellera \representation espace-angle-echelle" est une
representation adaptative en chaque point de l'image ou de la fonction. En e et, il
peut arriver que l'on veuille en chaque point un angle et une echelle speci que. On
peut en e et vouloir dans une m^eme image faire ressortir di erentes directions dans
des zones di erentes de l'image et detecter plut^ot les frontieres a tel endroit ou plut^ot
les grosses structures a tel autre. Il faut donc un outil supplementaire permettant de
caracteriser en tout point l'echelle et l'angle qui convient. Nous verrons que dans le
2.1 Transformee continue 55

cadre des images sismiques un tel critere existe.


Une telle representation necessite l'utilisation d'une ondelette di erente en chaque
point. Seul le calcul direct convient et la complexite du calcul de la TO en tous les
points est en O(n n ).
2
1
2
2

2.1.3 Problemes aux bords


Le calcul de la TOC par FFT pose un probleme aux bords. En e et, la transformee
de Fourier rapide suppose que la fonction soit periodique. Il se trouve donc que si les
valeurs de la fonction sur les bords du support ne sont pas egales, la transformee en
ondelettes agira en ce point comme s'il y avait une discontinuite. En e et, la fonction
alors periodisee ne sera pas continue et le calcul de la TO en ce point ne sera pas exact.
En imagerie, ce phenomene peut avoir des repercussions sur les autres coecients.
En e et, le resultat de la transformee etant une image, il faut coder ces coecients
d'ondelettes en niveaux de gris (valeurs entieres entre 0 et 255 le plus souvent). Une
methode usuelle de visualisation est la normalisation des coecients comme suit

W fim(a; b; ) = 225 W fmax


(a; b; ) , min
, min
ou max et min sont les valeurs maximale et minimale des coecients calcules au
prealable et W fim le coecient d'ondelette code en niveau de gris entre 0 et 255.
Si la discontinuite occasionnee par la periodisation est la plus brutale dans l'image,
on risque d'avoir une tres forte reponse sur les bords et tres peu d'information dans
les zones d'inter^et. Plusieurs methodes peuvent ^etre alors envisagees pour pallier cet
inconvenient.

Une premiere methode consiste a prolonger la fonction de sorte qu'elle devienne


periodisable tout en restant reguliere (Fig. 2.3).
fonction

fonction prolongée

Figure 2.3: Extrapolation d'une fonction a n d'eviter les problemes de bords.

L'inconvenient de ce type de methode est qu'elle augmente le nombre de donnees


parfois de facon considerable. En e et la transformee de Fourier rapide fonctionnant
56 Divers algorithmes de transformee en ondelettes

avec des dimensions egales aux puissances de 2, cela peut contraindre a passer a la
puissance de 2 superieure. Elle reste cependant une methode tres able.

Une methode moins ne, mais plus rapide consiste a ne pas tenir compte des bords.
Ceci peut ^etre fait dans la mesure ou ce qui nous interesse est au \milieu" de la fonction.
Ne pas tenir compte des bords consiste a considerer comme nul les coecients pour
lesquels une ondelette n'a pu ^etre prise en entier (Fig. 2.4).

fonction

bord ondelette
bord

Figure 2.4: Zones ou les coecients d'ondelette ne seront pas calcules de facon exacte.

2.1.4 Facteur d'echelle minimal


Theoriquement le facteur d'echelle, a, peut varier de 0 a +1. Quand il tend vers 0,
l'ondelette tend vers la fonction de Dirac et la transformee en ondelette tend alors vers
la fonction elle m^eme (convolution d'un Dirac avec une fonction).
En pratique, on stocke les valeurs de l'ondelette mere discretisee, autrement dit, l'onde-
lette pour le facteur d'echelle 1, ces valeurs etant au nombre de N . On appelle Na le
1

nombre de points de discretisation de a;b;r.


Pour a < 1, on a Na = daN e (Fig.2.5).
1

(a) a = 1; N1 = 13 (b) a = 12 ; Na = 7

Figure 2.5: Ondelettes discretisees pour di erentes echelles.

On remarque que Na tend vers 0 lorsque a tend vers 0. Il arrive donc un moment
ou l'ondelette n'en est plus une. Il convient donc de se xer un nombre de points
2.2 Transformee discrete 57

de discretisation minimum, Nmin , de telle sorte que les valeurs discretes de l'ondelette
soient \representatives" de sa forme continue. Soit amin le facteur d'echelle minimum,
alors
amin = NNmin (2.3)
1

2.2 Transformee discrete


Nous avons vu au chapitre precedent que la transformee en ondelettes discrete TOD
consistait, en dimension 1, a trouver une sous-famille denombrable ( aj ;bk )aj ;bk 2Rde la
famille ( a;b)a;b2Ret formant une base de L (R). Nous allons presenter ici des al-
2

gorithmes pour deux types de discretisation de la famille ( a;b)a;b, a savoir


1. aj = 2j ; bk = 2j k; j; k 2 Z
La transformee en ondelettes devient
Z
W f (2j ; 2j k) = p1 j  ( 2tj , k) f (t) dt
2
Cette ecriture conduit a un algorithme rapide de calcul des coecients d'onde-
lettes introduit par S. Mallat dans [53] dans le cadre de l'analyse multi-resolution.
2. aj = 2j ; bk = k; j; k 2 Z
La transformee en ondelettes devient
Z
W f (2j ; k) = p1 j  ( t ,2j k ) f (t) dt
2
Cette ecriture conduite egalement a un algorithme rapide de calcul des coecients
d'ondelettes, l'algorithme a trous. La TO, en raison de la non orthogonalite des
familles d'ondelettes sera alors redondante. Elle sera egalement invariante en
translation par des valeurs entieres.

2.2.1 Multi-resolution
On rappelle qu'une analyse multi-resolution est une famille (Vj )j2Zd'espaces embo^-
tes (de nition 1.5) ou Vj represente l'espace dans lequel est approximee la fonction a
la resolution 2,j . On designe par Oj l'espace dans lequel on trouve le \detail" qu'on a
perdu entre la resolution 2, j, et la resolution 2,j :
( 1)

Vj  Vj, et Oj  Vj = Vj,
1 1

En dimension 1, chaque espace Vj est represente par la fonction d'echelle , (j;k )k2Z
etant une base de Vj et chaque espace Oj est represente par l'ondelette , ( j;k )k2Z
58 Divers algorithmes de transformee en ondelettes

etant une base de Oj ou fj;k (t) = p j f (2,j t , k).


1
2

On considere une fonction f de L (R). Soit (cjk )k2Zson approximation discrete dans
2

l'espace Vj , et (djk )k2Zles coecients de details dans Oj c'est-a-dire la projection de f


sur Oj :
cjk = (f; j;k ) = p1 j (f (u); (2,j u , k))
2
djk = (f; j;k ) = p1 j (f (u); (2,j u , k))
2
On remarque que djk = W f (2j ; 2j k).

2.2.1.1 Analyse
Le but de l'algorithme d'analyse multi-resolution est de calculer les coecients de
detail djk ou coecients d'ondelettes, a partir des di erentes approximations.
Les espaces Vj etant embo^tes, toute l'information contenue dans Vj est egalement
contenue dans Vj, . On peut donc exprimer les coecients cjk ; k 2 Zen fonction des
1

coecients cjk, ; k 2 Z. En e et,


1

Z
cjk = f (u) j;k (u)du
En exprimant j;k dans la base j, ;k , on obtient
1

j;k =
X1 ~h(2n , k)
+

j , ;k
1
n=,1
avec h, la reponse impulsionnelle du ltre H de ni par la propriete 1.6
h(n) = (; , ;n )1

et ~h le ltre miroir associe a h, c'est-a-dire ~h(n) = h(,n).


Alors
j
ck =
X 1 +
h~ (2k , n) cjn, 1
(2.4)
n=,1
De m^eme que l'information contenue dans Vj est contenue dans Vj, , celle contenue
1

dans Oj est egalement contenue dans Vj, . Par contre elle n'est pas presente dans
1

Vj . On peut exprimer les coecients (djk )k2Zen fonction des coecients (cjk, )k2Zen 1

procedant de la m^eme maniere que precedemment.


Z
djk = f (u)  j;k (u)du
2.2 Transformee discrete 59

En exprimant j;k dans la base j, ;k et en utilisant le ltre G de reponse impulsionnelle


1

g de ni par l'equation (1.32) on obtient


djk =
X1 g~(2k , n) cj,
+
1
(2.5)
n
n=,1
avec g(n) = ( ; , ;n) = (,1) ,nh(1 , n) et g~ le ltre miroir associe a g.
1
1

Les equations (2.4) et (2.5) montrent qu'on peut calculer les coecients d'ondelettes
en fonction des di erentes approximations suivant le schema represente par la gure
2.6. Les coecients d'ondelettes pour une resolution donnee sont obtenus en appli-
quant le ltre g sur les coecients d'approximation a la resolution precedente et en
en gardant un sur deux, d'ou un phenomene de decimation. Ces m^emes coecients
d'approximation ont ete obtenus par ltrages successifs par h puis decimation des
donnees d'approximation aux resolutions precedentes.
j-1
c
h g
j j
c d
h g
c j+1 d j+1

Figure 2.6: Schema de calcul des coecients d'approximation (ronds) et d'ondelette


(carres) par analyse multi-resolution.

Remarques
1. On remarque que le volume de donnees stockees a chaque iteration reste le m^eme.
En e et, si nj, est le nombre de coecients d'approximation a la resolution
1

2, j, , a la resolution 2, j , on conservera nj, coecients d'approximation et


( 1) ( )
2
1

nj, coecients d'ondelettes.


1
2

Si n est le nombre de donnees initiales, na, le nombre de coecients d'approxima-


tion a la resolution 2,j et n , le nombre de coecients d'ondelettes calcules jusqu'a
0

la resolution 2,j , on a
Xj
na = 2nj et no = 2nl
l=1
et nalement n = na + no.
2. Le calcul des coecients est exact si les ltres sont a support compact, comme
les ondelettes de I. Daubechies, ou numeriquement a support compact, comme les
ondelettes splines de Battle-Lemarie qui sont a decroissance exponentielle.
60 Divers algorithmes de transformee en ondelettes

3. Comme dans le cas continu, bien que la limite theorique de resolution soit +1 (j =
,1), ce qui correspond a un facteur de resolution a = 0, la pratique impose
d'autres realites. En e et, le nombre de coecients d'approximation etant di-
vise par deux a chaque iteration, il est necessaire de s'arr^eter avant qu'il n'y en
ait plus. Si lh est la largeur du ltre h et 2,jmin la resolution minimale, alors
lh = , jminn
2 ( , .
1)

En e et, pour calculer le dernier coecient, il faut qu'il y ait au moins lh coe-
cients a l'etape precedente. D'ou
jmin = blog ln + 1c
2
h

4. La complexite de l'algorithme pour le calcul de tous les coecients est en O(lh n).
5. Pour initialiser l'algorithme, on considere que les donnees dont on dispose au
depart sont l'approximation de la fonction dans V , c'est-a-dire que (f (t); (t ,
0

n)) = cn. Les coecients calcules ne sont donc pas exactement les coecients
0

d'ondelettes de la fonction de depart discretisee.


6. L'operation de decimation entra^ne une non invariance en translation de la trans-
formee. En e et, un signal et le m^eme signal decale d'un entier en temps n'auront
pas la m^eme reponse a la m^eme echelle.
7. Le signal n'etant connu que sur un intervalle borne, le calcul des coecients
aux bords pose un probleme. En e et, a chaque resolution 2,j , les coecients
calcules de maniere correcte seront ceux situes a une distance superieure a ( lh )j
2

du bord. Si on ne prolonge pas le signal, le nombre de coecients calcules est


donc considerablement diminue.
Les methodes classiques de prolongement de la fonction sont une symetrie par
rapport aux bords (methode miroir), une prolongation par une fonction constante
(repetition des coecients extremaux) ou la methode signalee dans le cas de la
transformee continue.

2.2.1.2 Reconstruction
Etant donne que la somme directe des espaces Vj et Oj est Vj,1 , les coecients
j ,
ck ; k 2 Z peuvent ^etre calcules de facon exacte a partir des coecients cjk ; k 2 Zet
1

djk ; k 2 Z, c'est-a-dire qu'on peut egalement passer de la resolution 2,j a la resolution


2,(j,1) . Ces constatations montrent qu'il existe un algorithme de reconstruction exact.
2.2 Transformee discrete 61

En raisonnant de maniere analogue a l'analyse, on aboutit a l'equation suivante :


cjk,1 =
X1 h(k , 2n) cj + X1 g(k , 2n) dj
+ +

n n
n=,1 n=,1

j-1
c
h g
j j
0 0 0 0 0 0 0 0 c d
h g
0 0 0 0 0 c j+1
d j+1

Figure 2.7: Schema de reconstruction des coecients d'approximation successifs par


analyse multi-resolution.
Le schema de reconstruction des coecients cjk est montre par la gure 2.7. Chaque
coecient d'approximation est obtenu par la somme du ltrage par h des coecients
d'approximation a la resolution precedente auxquels sont intercales des 0 et du ltrage
par g des coecients d'ondelettes auxquels sont egalement intercales des 0.

Remarque Si la fonction n'a pas ete prolongee dans la phase d'analyse, seul un faible
nombre de coecients pourront ^etre reconstruits. Il est donc necessaire de proceder
comme ce qui a ete presente auparavant.

2.2.1.3 Conditions sur les ltres


Les algorithmes presentes precedemment sont des algorithmes de calcul des coe-
cients d'ondelette et de reconstruction completement de nis par les ltres en quadrature
h et g. La theorie des ondelettes donnent des conditions sur la fonction d'echelle  et
l'ondelette conduisant a une analyse multi-resolution. Ces conditions peuvent ^etre
exprimees en fonction des reponses impulsionnelles h et g [53] [21] [72] comme suit :
X(h(2j , n)h(2j , m) + g(2j , n)g(2j , m)) = (n; m) 8(m; n) 2 Z (2.6) 2

j
X h(2n , j )g(2m , j ) = 0 8(m; n) 2 Z 2
(2.7)
j
X g(n) = 0 (2.8)
Xn h(n) =
p
2 (2.9)
n
Remarques
1. Les conditions (2.6) et (2.7) expriment l'orthonormalite des bases d'ondelettes
et de la fonction d'echelle. Cette orthonormalite assure que la TO calculee est
62 Divers algorithmes de transformee en ondelettes

non redondante. C'est donc un algorithme bien adapte a la synthese ou a la


compression de signaux, le nombre de coecients a stocker etant \minimal".
2. Les conditions (2.8) et (2.9) expriment que g et h sont les reponses impulsionnelles
de ltres respectivement passe-haut et passe-bas. En e et, les approximations
successives de la fonction f dans les espaces Vj correspondent a des lissages
successifs et donc a des frequences de plus en plus basses, h etant de plus en plus
etale. Chaque espace Oj represente une bande de frequence, les hautes frequences
perdues entre Vj et Vj, (Fig. 2.8).
1

H
pour Vj
G
H
pour Vj-1
G

bande de fréquences
bande de fréquences présente dans O j-1
présente dans V j-1

Figure 2.8: Bandes de frequences presentes dans les di erents espaces dans le cadre de
l'analyse multi-resolution. H et G sont les ltres de reponses impulsionnelles respect-
ives h et g .

2.2.1.4 Extension a la dimension 2


Nous avons vu au chapitre precedent (paragraphe 1.4.3.3) que l'analyse par ondelet-
tes dans le cadre de l'analyse multi-resolution pouvait s'etendre a la dimension n a
l'aide de la notion de multi-resolution separable. Nous allons presenter brievement les
algorithmes de decomposition et reconstruction qui en decoulent en dimension 2 ou une
application directe est l'analyse d'images.

Si (Vj )j2Zsont les espaces d'approximation et (Oj )j2Z


, les espaces de details, on a
Vj, = Vj Oj
1

= Vj Oj  Oj  Oj
1 2 3

ou Oj ; Oj et Oj sont les espaces de details respectivement verticaux, horizontaux et


1 2 3

diagonaux.
Vj est caracterise par la fonction d'echelle (x; y) et Oj ; Oj et Oj , par trois ondelettes
1 2 3

1
(x; y), (x; y) et (x; y) de nies au paragraphe 1.4.3.3.
2 3
2.2 Transformee discrete 63

On note
cjk;l = (f; j;k;l) = 21j ( f (u; v); (2,j u , k; 2,j v , l) )
dk;l;j = (f; j;k;l) = 21j ( f (u; v); (2,j u , k; 2,j v , l) )
1

dk;l;j = (f; j;k;l) = 21j ( f (u; v); (2,j u , k; 2,j v , l) )


2

dk;l;j = (f; j;k;l) = 21j ( f (u; v); (2,j u , k; 2,j v , l) )


3

Un raisonnement analogue a celui fait en dimension 1 conduit a un algorithme de


decomposition et un algorithme de reconstruction rapides. On utilisera les m^emes
notations.

Decomposition
L'algorithme de decomposition s'ecrit
cjk;l =
X X h~ (2k , n) h~ (2l , n) cj, 1
n;m
dk;l;j =
1
Xn X
m
h~ (2k , n) g~(2l , n) cjn;m
,
1

dk;l;j =
2
Xn X
m
g~(2k , n) h~ (2l , n) cjn;m
,
1

dk;l;j =
3
Xn X
m
g~(2k , n) g~(2l , n) cj, 1
n;m
n m
On remarque que l'algorithme de decomposition est le m^eme que dans le cas 1D.
En e et, l'algorithme unidimensionnel est applique successivement sur les lignes et les
colonnes de l'image pour chaque type de coecient. Cette constatation nous aide a
comprendre la notion de detail vertical, horizontal et diagonal. d , par exemple, est
1

obtenu par approximation sur les lignes puis calcul de coecients d'ondelettes sur les
colonnes. Ce sera donc le detail horizontal.

On voit qu'un tel algorithme privilegie certaines directions xees au depart. Cer-
taines applications (comme l'astronomie, A. Bijaoui [8] [9]) preferent une analyse plus
isotrope comme le permet l'algorithme a trous qui sera presente dans le paragraphe
suivant. On peut egalement vouloir privilegier une direction qui ne soit pas hori-
zontale, verticale ou diagonale, mais autre (detection de structures ayant une dir-
ection privilegiee, comme en turbulence [27] [28] ou en sismique, l'application qui
nous interesse). On utilisera alors les ondelettes directionnelles qui seront presentees
ulterieurement.
64 Divers algorithmes de transformee en ondelettes

Reconstruction
L'algorithme de reconstruction s'ecrit
cjk;l, =
X X h h(k , 2n) h(l , 2m) cj
n;m + h(k , 2n) g (l , 2m) dn;m
1 1;j

n m i
+ g(k , 2n) h(l , 2m) dn;m
;j + g (k , 2n) g (l , 2m) d ;j
2
n;m
3

Cet algorithme est egalement fonde sur le m^eme principe que l'algorithme de recon-
struction 1D.

2.2.2 L'algorithme a trous


L'algorithme de la TO a partir d'une analyse multi-resolution presente precedemment
est un algorithme de calcul des coecients d'ondelettes orthonormales.L'algorithme
a trous [72] [41] [10] est un algorithme plus souple dans la mesure ou les familles
d'ondelettes ne sont pas orthogonales. Les conditions sur les ltres seront alors moins
contraignantes. De plus, ne presentant pas de decimation, la TO correspondante sera
invariante en translation. Nous verrons que sous certaines conditions, le calcul de la
TO est exact.

A n d'eviter la phase de decimation, qui rend la transformation en ondelettes non


invariante en translation, l'idee est de traiter separement a chaque etape les coecients
pairs des coecients impairs. Pour cela, on calcule la transformee en ondelette suivante
1 Z 1 t,k
W (2 ; k) = p j
j +
 ( j )f (t)dt
2 ,1 2

Dans cette equation, on peut e ectuer le changement de variable suivant : t0 = t,k .


2 j
On a alors p jZ 1 
+
W (2 ; k) = 2 ,1 (t)f (2j t + k)dt
j

et l'integrale peut ^etre calculee par l'approximation suivante


p X1  +
w(2j ; k) = 2j (n)f (2j n + k) (2.10)
n=,1

2.2.2.1 Analyse
Soient wkj les coecients d'ondelette calcules par cet algorithme a la resolution
2,j et sjk les coecients d'approximation correspondant. L'algorithme a trous comme
2.2 Transformee discrete 65

l'algorithme multi-resolution necessite deux ltres respectivement passe haut et passe


bas, de reponses impulsionnelles h et g et on a

sjk =
X1 h(n) sj,
+
1
j, n
2 1 + k
n ,1
=

wkj =
X1 g(n) sj
+
(2.11)
2 j n+k
n=,1
Remarques
1. L'equation de calcul des coecients (2.11) est tres proche de l'equation (2.10).
En e et, si  (n) = g(n) c'est-a-dire que le ltre g est directement l'ondelette
p
discretisee et si 2j f (2j n + k) = sj j n k , c'est-a-dire que sj est la fonction f
2 +

echantillonnee et normalisee, alors les deux calculs sont les m^emes et w(2j ; k) =
wkj .
2. On remarque que si k = 2p est pair, w p est fonction des termes pairs de s . De
1
2
1

m^eme, si k = 2p + 1 est impair, w p est fonction des termes impairs de s .


1
2 +1
1

Tout ceci revient a appliquer h, a chaque etape, sur les termes pairs d'une part
et sur les termes impairs d'autre part de la serie precedemment calculee. Puis, a
la derniere etape appliquer g de la m^eme maniere (Fig. 2.9).

j-1
s
h
j
s
h

s j+1

wj+1

Figure 2.9: Schema de calcul des coecients d'approximation et d'ondelette par


l'algorithme a trous.

En faisant un parallele avec l'analyse multi-resolution, V l'espace d'approximation


0

ou est represente s est decompose de deux manieres :


0

V = V,p  O,p = V,i  O,i


0 1 1 1 1

ou V,p et O,p sont les espaces d'approximation et de details utilisant les termes pairs
1 1

et V,i et O,i ceux utilisant les termes impairs. Chaque espace Vj est ainsi decompose
1 1
66 Divers algorithmes de transformee en ondelettes

de deux manieres.

Les coecients calcules par cette methode incluent ceux calcules par la methode precedente
si les ltres h et g veri ent les conditions presentees au paragraphe 2.2.1.3 [72] et on a
cjk = sj j k 8(n; j ) 2 Z
2
2

djk = wj j k 8(n; j ) 2 Z
+1
2
2

Remarques
1. Les coecients calcules par l'algorithme a trous peuvent ^etre vus comme un
entrelacement de coecients calcules par l'algorithme multi-resolution. A la
resolution 2,j , tout se passe comme si on avait 2j coecients imbriques les uns
dans les autres. Cette redondance d'information implique une invariance en trans-
lation qui est fondamentale en analyse de signaux.
2. Comme l'algorithme de Mallat presente auparavant, l'algorithme a trous necessite
des ltres numeriquement a support compact (de largeur lh) et la resolution min-
imale est la m^eme, a savoir jmin = blog lnh + 1c.
2

3. La complexite de l'algorithme est en O(Jlhn) si J est le nombre d'echelles souhai-


tees. Ceci est du m^eme ordre que l'agorithme base sur l'analyse multi-resolution.
4. Les problemes de bords peuvent ^etres traites de la m^eme maniere que pour
l'algorithme de Mallat.

2.2.2.2 Conditions sur les ltres et proprietes


Les algorithmes presentes precedemment fonctionnent pour des ltre g et h arbit-
raires. Cependant, il est souhaitable d'avoir certaines proprietes comme une energie
nie pour la transformee, par exemple, ou un comportement raisonnable de la fonction
d'echelle  correspondante.

Cette fonction d'echelle est determinee par sa transformee de Fourier, et on a par


de nition
1
2
Y1 X1 h(n)e,in j ))
^ () = (2), ( p1
+ +
2

j 2 n ,1
=1 =

Pour qu'une telle fonction existe, c'est-a-dire converge vers une fonction non nulle, il
faut que le ltre h soit passe-bas, c'est-a-dire
X h(n) = p2
n
2.2 Transformee discrete 67

Il faut noter qu'avec uniquement cette condition,  n'est pas forcement continue. Elle
peut ^etre fractale et est en general non orthonormale [72]. Pour que  soit susamment
reguliere, on peut lui imposer d'avoir un certain nombre de moments nuls [21].
Pour que la transformee ait une energie nie, il faut que g soit passe-haut, soit
X g(n) = 0
n

Il existe une transformation inverse bornee si il existe deux ltres ~h et g~ tels que
X h~ (n)h(l , n) + g~(n)g(l , n) = (l)
n

Les ondelettes biorthogonales conduisent a des ltres satisfaisant cette propriete.

L'ondelette est de nie par


(t) =
X (t , k)g(k)
k

Nous allons voir que le calcul des coecients par l'algorithme a trous peut ^etre
exact. Pour cela nous introduisons la notion de ltre a trous.

De nition 2.1 Soit h un ltre d'interpolation veri ant


h(2k) = p(k) ou  est le symbole de Kronecker
2
On dit que h est un ltre a trous.

Propriete 2.1 :
- si h est un ltre a trous, alors  (n) = g (n).
 Pour un signal discret s,
- si s0 = s et h est a trous, alors w(2j ; n) = wnj
- si s0n = Pk (k , n) sk , alors w(2j ; n) = wnj .
 Pour un signal continu,
- si s0n = (n ; s) avec n (t) = (t , n), alors W (2j ; n) = wnj .

On remarque que les conditions sur les ltres sont moins contraignantes pour les
algorithmes a trous que pour l'algorithme multi-resolution. En e et, les ltres h et g
peuvent ^etre choisis independamment l'un de l'autre.
68 Divers algorithmes de transformee en ondelettes

2.2.2.3 Reconstruction
Etant donnes les ltres h~ et g~ de ni au paragraphe precedent, l'algorithme de re-
construction s'ecrit
sjk =
X1 hh~ (n) sj + g~(n)wj i
+
+1
jn k2 + jn k 2 +
n=,1
L'algorithme est analogue a celui obtenu dans le cadre de la multi-resolution (Fig.
2.10). Cependant, comme il n'y a pas eu de phase de decimation, on n'a pas besoin
d'interpoler entre les coecients (ajout de 0).
j-1
s
h
g
j
s
wj-1
h
g
s j+1
wj

Figure 2.10: Schema de reconstruction par l'algorithme a trous.

2.2.2.4 Extension a la dimension 2


L'algorithme a trous s'etend facilement a la dimension 2 [10]. Contrairement a
l'analyse multi-resolution, une seule ondelette est necessaire (au lieu de 3) et le calcul
des coecients est plus isotrope. On notera sjk;l et wk;l j les coecients d'ondelette et
d'approximation a la resolution 2,j .

Decomposition
L'algorithme de decomposition s'ecrit

sjk;l =
X1 X1 h(n; m) sj,
+ +
1
j, n
2 1 + k; 2j,1 m+l
n ,1 m ,1
= =

j =
wk;l
X1 X1 g(n; m) sj
+ +

2j n+k; 2j m+l
n=,1 m=,1
h est un ltre passe bas determine par
1 ( x ; y ) = X h(n; m)(x , n; y , m)
2 2 2 n;m
avec Pn;m j ^ ( + n;  + m) j 6= 0.
2
2.2 Transformee discrete 69

Le ltre g est passe haut : Pn;m g(n; m) = 0 et veri e l'equation


X
(x; y) = g(n; m)(x , n; y , m)
n;m
ou est une ondelette analysante.

Reconstruction
L'algorithme de reconstruction est egalement une simple extension de l'algorithme 1D.

sjk;l =
X1 X1 hh~ (n; m) sj
+ +
+1
+ g~(n; m)wj j n
i
jn
2 + k; 2j m+l 2 +k; 2j m+l
n=,1 m=,1

ou ~h et g~ sont des ltres veri ant l'equation suivante


X h~ (n; m)h(k , n; l , m) + g~(n; m)g(k , n; l , m) = (k)(l)
n;m
Remarque En pratique, la fonction d'echelle  est souvent prise a variables separables,
c'est-a-dire qu'elle veri e (x; y) = '(x)'(y). Le calcul des coecients d'approximation
peut alors se faire par une convolution 1D sur les lignes puis sur les colonnes.
Le ltre g peut ^etre choisi independamment de h. On peut donc le choisir de tel sorte
que le calcul des coecients d'ondelettes se reduise a faire la di erence de deux plans
d'approximation successive. Ce choix simpli e l'algorithme de facon consequente.
70 Divers algorithmes de transformee en ondelettes

Vous aimerez peut-être aussi