Introduction aux ondelettes - Lautre Netclaustres.lautre.net/me/courses/Ondelettes.pdfUn peu...
Transcript of Introduction aux ondelettes - Lautre Netclaustres.lautre.net/me/courses/Ondelettes.pdfUn peu...
Un peu d’histoire• 1805 : Analyse de Fourier• 1965 : Transformée de Fourier rapide• 1980 : Début des ondelettes « ad hoc »
pourquoi/quand cela marche (physique,vision,parole) ?• 1983 : Analyse d’image multirésolution (Burt)• 1985 : Transformée continue (Morlet & Grossman)
reconstruction sans redondance ?• 1986-87 : Unification des travaux disparates (Mallat)
– analyse multirésolution– transformée discrète
• 1988 : Classe d’ondelettes (Daubechies)– compactes– orthogonales– nombre de moments quelconques
• 1990 : Les ondelettes attirent théoriciens et ingénieurs, le décollage !• 1992 : Paquets d’ondelettes (Coifman)
Ondelettes par la pratique
Propriétés
• Compression
• Multirésolution
• Linéarité
• Débruitage
Quelques remarques
• Pourquoi compresser ?– Image : 512x512 => 0.75Mo - pellicule 35mm/12µm => 18Mo– Vidéo : 1s de PAL => 27Mo– De + en + de données numériques
• Pourquoi multirésolution ?– Simplification des calculs– Transmission/Reconstruction progressive
• Pourquoi linéaire ?– Calculs direct sur la transformée (compressée)
• Pourquoi ça marche ?– Les données réelles sont généralement corrélées localement
(fréquence,temps,espace)
Définition
• Une fonction est dite ondelette ou ondelette mère si
(ondulations)
(énergie finie)
0)( =∫∞
∞−
dttψ
∞<∫∞
∞−
dtt 2)(ψ
Transformée
• On appelle atomes
• Transformée
• Transformée inverse
( ) ∫+∞
∞−
−== dt
sut
stffsuf u
s ψψ 1)(,,*
−=
sut
stu
s ψψ 1)(
( ) ( )∫ ∫+∞
−∞=
+∞
−∞=
=a b
us dadbtsuf
sCtf )(,11 *
2 ψ ∞<= ∫+∞
∞−
ωωωψ
dC2)(
condition d’admission
Transformée discrète
• La transformation continue est redondante mais il est possible de reconstruire à partir de valeurs discrètes de u et de s
• En général on utilisera un échantillonnage dyadique
• Principe d’incertitude d’Heisenberg
entierslk,
lus
k
k
22==
fréquence
temps
f(x-n)
f(2x-m)
f(4x-k)
π2≥∆⋅∆ ft
t∆
f∆
( ) ∑ ∑+∞
−∞=
+∞
−∞=
−− −=k l
klk
k ltdtf )2(2 2 ψ
2=k1=k2−=k
Espaces vectoriels linéaires
• Espace vectoriel linéaire = ensemble V muni de deux opérations
– une addition– une multiplication scalaire
• Satisfaisant aux propriétés suivantes
VVV →×+ :VVR →×× :
xxVxxxxxVxxR
xxxVx
xxxVxVzyxzyxVzyx
xyyxVyx
=∈∀+=+∈∀∈∀
=−+−∃∈∀
=+=+∈∀∈∃++=++∈∀
+=+∈∀
.1:)(:,,
0)(!:
00:0!)()(:,,
:,
212121 αααα
Espaces vectoriels linéaires
• Exemple d’espace vectoriel linéaire : Rn
• Sous-espace vectoriel = ensemble M tel que
),,(,),,(
),,(),,,(
1
11
11
n
nn
nnn
xxxRyxyxyx
Ryyyxxx
αααα K
K
KK
=∈∀++=+
∈==∀
MxMxRMyxMyx
VM
∈∈∀∈∀∈+∈∀
⊂
αα :,:,
Espaces normés
• Espace vectoriel normé = espace vectoriel muni d’une fonction à valeur réelle définie sur V et notée ||.|| telle que
• Distance entre deux éléments ou vecteurs x et y = ||x-y||
x
yxyxVyx
xxVxR
xxVx
xVx
+≤+∈∀
=∈∀∈∀
=⇔=∈∀
>∈∀
:,
.:,
00:
0:
ααα
y
Espaces normés
• Exemple d’espace vectoriel normé : Rn
• Différents espaces vectoriels normés pour les différentes valeurs de p
– Norme
– Norme
– Norme
2L
( ) ppn
p xxx1
1 ++= K
1L
∞L
nxxx ++= K1
221 nxxx ++= K
)max( ixx =
Produit scalaire
• Produit scalaire = fonction telle que
• Tout espace muni d’un produit scalaire définit un espace vectoriel normé en posant
• Une telle norme vérifie l’inégalité de Schwartz
RVVyx →×>< :
00:
0:
:,,
)(:,,
=⇔=∈∀
≥∈∀
=∈∀∈∀
+=+∈∀
xxxVx
xxVx
yxyxRVyx
zxyxzyxVzyx
ααα
21
: xxxVx =∈∀
yxyxVyx .:, ≤∈∀
Produit scalaire
• Exemple avec Rn
• Exemple avec espace des fonctions de carré intégrable définies sur [a,b]
)(2 RL
∑
∑
=
=
=
=
n
ii
n
iii
xx
yxyx
1
2
1.
∫
∫
=
=
b
a
b
a
dtff
fgdtgf
2
Espace de Hilbert
• Espace de Hilbert– espace vectoriel linéaire muni d’un produit scalaire dont l’espace
vectoriel normé associé est complet– toute séquence d’éléments qui converge, converge vers un élément de
l’espace
• Par exemple Q, l’ensemble de nombre rationnels, n’est pas un espace de Hilbert
QeSn
S
S
nn
n
in
∉=
=
=
∞→
=∑
lim!1
1
1
1
Analyse multirésolution
• Analyse multirésolution = séquence d’espaces de Hilbert fermés et emboîtés telle que
dense dans
est une base de Riesz de
• La première propriété implique l’équation de raffinement
• Une fonction d’échelle de niveau j s’exprime comme une somme pondéré des fonctions de niveau supérieur
{ })1()(
)(,
1
+⊂
∈∃
⊂ +
jKjKjKk
VVV
kj
jj
jj
ϕ
U
K⊂⊂ 10 VV
2L
jV
∑+∈
+ ∈=)1(
1, )(,
jKl
kj
lkj
kj jKkh ϕϕ
Analyse multirésolution
• Espace vectoriel des fonctions constantes par morceaux sur
• fonctions composées d’un ensemble de 2j intervalles
• = espace des fonctions constantes sur
• = espace des fonctions à deux coefficients, constantes par
morceaux sur et
[ ]1,0
[ ]1,0
jV
−≤≤
+= 120,
21,
2j
jjij iiiε
0V
1V
21,0
1,21
Analyse multirésolution
• Toute fonction de , il suffit d’affecter la valeur de la fonction sur chaque intervalle aux deux sous intervalles ,
• Les fonctions carrées définies sur forment une base de jV
jj VV ∈−1ij 1−ε
12 +ijε
ij2ε
ijε
[ ][ ]
12,,0,)2()(
1,0,1,0,
01
)(
−=−=
∉∈
=
jjij iixx
xx
x
Kϕϕ
ϕ
2V
Analyse multirésolution
• On peut projeter une fonction sur cette base
coefficients d’échelle
• A partir de l’équation de raffinement les coefficients de la projection pour les niveaux inférieurs se calculent
• Décomposition hiérarchique ou multirésolution– approximations de f à différents niveaux– comme mais pas la réciproque, de l’information manque
pour la reconstruction inverse (du + bas au + haut niveau)
∑ ==k
kj
kj
kj
kj faaf ϕϕ ,
1+⊂ jj VV
jVf ∈
Analyse multirésolution
• Exemple des fonctions constantes par morceaux
⇒3V
Analyse multirésolution
• Les ondelettes encodent les détails
coefficients d’ondelettes
• Elles forment une base du complémentaire de dans :
• Equation similaire à l’équation de raffinement car
∑+∈
+ ∈=)1(
1, )(,
jMl
lj
lmj
mj jMmg ϕψ
∑ ==m
mj
mj
mj
mj fddf ψψ ,
jV 1+jV{ })(, jMmm
j ∈ψ
jjj WVV ⊕=+1
1+⊂ jj VW
Analyse multirésolution
• Exemple des fonctions constantes par morceaux
• Filtres
112 WVV ⊕=
[ ][ ][ ]
12,,0,)2()(
1,0,1,21,21,0,
01
1)(
−=−=
∉∈∈
−=
jjij iixx
xxx
x
Kψψ
ψ
1W
Ondelette de Haar
g(0) = 1/2, g(1) = -1/2
0 1/2 1
0 1/2
)12()1(2)2()0(2)( −−= tgtgx ϕϕψ
Analyse multirésolution
• Une fonction d’échelle de niveau j+1 peut s’exprimer sous la forme d’une combinaison linéaire de fonctions d’échelle et d’ondelettes plus grossières (niveau j)
• Au final une fonction peut s’écrire
• Dans le cas fini, la transformée par ondelettes se résume à un filtrage ou une convolution (notation matricielle)
)1(,~~)(
,
)(
,1 +∈+= ∑∑
∈∈+ jKlgh
jMm
mj
lmj
jKk
kj
lkj
lj ψϕϕ
nVf ∈
∑ ∑∑= ∈∈
+=n
j jMm
mj
mj
Kk
kk daf0 )()0(
00 ψϕ
Analyse multirésolution
• Exemple des fonctions constantes par morceaux
3V
2V
2W
1V 0V
1W0W
Analyse multirésolution
• Il existe de nombreuses familles d’ondelettes
Haar Bspline linéaire Bspline quadratique
DaubechiesMeyer
Processus d’analyse/synthèse
• Etape de la transformée ou du processus d’analyse
• Le filtre défini par les est un filtre passe-bas encodant les approximations du signal (basses fréquences)
• Le filtre défini par les est un filtre passe-haut encodant les détails du signal (hautes fréquences)
• Etape de la transformée inverse ou du processus de synthèse
ih~∑
∑
∈+
∈+
=
=
)(1
,
)(1
,
~
~
jMl
lj
lmj
mj
jKl
lj
lkj
kj
agd
aha
ig~
∑∑∈∈
+ +=)(
,
)(
,1
jMm
mj
lmj
jKk
kj
lkj
lj dgaha
Notation matricielle
[ ])(,,)()( 0 xxx njjj ϕϕ K=Φ
[ ])(,,)()( 0 xxx mjjj ψψ K=Ψ
Equations de raffinement
jjj Gxx )()(1 Φ=Ψ −
jjj Hxx )()(1 Φ=Φ − [ ] [ ]jjjjj GHxxx )()()( 11 Φ=ΨΦ −−
Analyse
Synthèse
jjj AHA ~1 =−
jjj DGD ~1 =−
11 −− += jjjjj DGAHA
Haar
=
1100
0011
2H
−−=
1100
001
12G
= 1100
001121~2H
−−= 1100
001121~2G
Transformée rapide
Aussi appelé algorithme pyramidal de Mallat ou transformée par banque de filtres
Caractéristiques d’une ondelette
• Moment = représentation des fonctions m-dérivables
• En général moments ~ capacité de compression ~ complexité• Symétrie/Régularité• Expression analytique• Support compact => filtres courts => transformée rapide• Orthogonalité – Semiorthogonalité – Biorthogonalité
• Construction / certaines propriétés : Lifting Scheme
1,,0, −=== ∫ nidxxfxfm iii K
=
=
=
0,
,
lj
kj
lklj
kj
lklj
kj
ψϕ
δψψ
δϕϕ
=
=
0~0~
lj
kj
lj
kj
ϕψ
ψϕ0=l
jkj ψϕ
lkj ,,∀
T
T
gghh==
~
~Chaque atome encode une information non
représentable par un autre => décomposition unique
Filtres orthogonaux => simplification
Compression
1. Ordonnancement des coefficients d’ondelettes, permutation
2. Définition d’un seuil définition d’un indice
3. Suppression des coefficients inférieur au seuil (~ 0)4. Calcul de l’erreur (compression avec perte)
2
ˆ)(
2ˆ ∑=
=−m
miicff π
⇔
π)()1( mcc ππ ≥≥K
)()(ˆ)(
ˆ
1)( xucxf i
m
ii ππ∑
=
=
)()( )(1
)( xucxf i
m
ii ππ∑
=
=
)()(1
xucxf i
m
ii∑
=
=
m̂ε2
1ˆ
2
)( επ ≤∑+=
m
mimc
Exemple de compression
0V
1V
2V
3V
0W
1W
2W
3V
Les paquets d’ondelettes
• Décomposition des et des
• Choix de la base optimale pour représenter le signal• Estimation d’après une fonction de coût
• Augmente la complexité
jV jW
Comparaison avec Fourier
• Fourier– atomes à support global– sinusoïde progression arithmétique en fréquences– analyse en fréquence– complexité O(n log n)
• Fourier + fenêtrage– atomes à support local– analyse temps/fréquence (largeur de fenêtre fixe)
• Ondelettes– atomes à support local– forme indépendante de l’échelle– fréquences en progression géométrique– analyse temps/fréquence (largeur de fenêtre variable)– complexité O(n)
t
f
f
t
Applications générales
• Astrophysique• Physique quantique• Analyse fractale• Analyse des turbulences/chaos• Débruitage• Analyse de la parole/acoustique• Analyse du système visuel/auditif• Analyse sismologique
Applications en informatique graphique
• Compression d’images– JPEG 2000– FBI
• Analyse d’image– suppression de bruit– détection des contours– reconnaissance
• Compression vidéo• Maillages (édition/compression)• Rendu volumique• Rendu réaliste (radiosité,BRDF)• Imagerie médicale• Et beaucoup d’autres choses !
Images
• 2D => deux décompositions possibles– standard = composition de transformées– non-standard = transformée multidimensionnelle
Images
≡≡≡
)()(),()()(),()()(),(
yxyxyxyxyxyx
ψψψψϕψψϕψϕϕψ
standard non-standard
Fonctions de base multidimensionnelles
)()(),( yxyx ϕϕϕϕ ≡
mise en place simple+ coûteusesupports variables
mise en place complexe+ rapidesupports carrés
)(4 2 nn −)1(38 2 −> n >
Images
gh ~~hh ~~
gg~~hg~~
Arbres-Zeros
• Structure adaptée à la représentation creuse fournie par les ondelettes• Sous forme d’arbre
– 1D : binaire– 2D : quaternaire
• Suppression des branches « vides »
Système général
Images
image originale 21% - 5% 4% - 10% 1% - 15%
contour = maxima à toutes les échelles
FBI
• Base de donnée d’empreintes digitales– 500 points par inch => 1 empreinte ~ 10Mo– OK j’ai un gros disque dur !
Oui mais moi j’ai 200,000,000 d’empreintes !
zoom x4
ondelettes JPEG standard
JPEG 2000
• Compression par ondelettes– Filtres Daubechies 9/7
• Evite les écueils de l’ancien standard– Pas de découpage en blocs constants 8x8– Décodage progressif– Régions d’intérêt– Encode le Gamma/Copyright
• Pourquoi encore méconnu– Payant
JPEG 2000
JPEG 86:1 JPEG 41:1
JPEG2000 86:1 JPEG2000 41:1
Maillages
• Ondelettes définies sur les triangles ou les sommets
• Compression
• Edition multirésolution
original résolutionfine
résolutionmoyenne
résolutiongrossière
Maillages
• Transmission progressive (web)
• Level Of Detail (LOD) ~ Multirésolution
Rendu Volumique
• Jeux de données très importants– place disque/mémoire (5123 => au moins 128Mo)– LOD– coût d’affichage (software)
données originales 8.8:1 – 3.3fps 66:1 – 6.6fps 195:1 – 9.5fps
Rendu réaliste
• Compression de données physiques– Spectres– BRDFs– Emissions
• Optimise la résolution de l’équation du rendu– Inversion numérique rapide
Haar
Spline
Spline
compression
Satin
Velours
Rendu réaliste
BRDForiginale
90%0.0027
95%0.016
97%0.021
98%0.03
99%0.037
100%0.042
Rendu réaliste
• Projection sur une base d’ondelettes– luminance– radiosité
That’s all folk !
• Lire« Ten Lectures on Wavelets » , Ingrid Daubechies« A Wavelet Tour of Signal Processing » , Stéphane Mallat« Wavelets for Computer Graphics » , Eric J. Stollnitz
• Consulterhttp://www.wavelet.orghttp://www.ondelette.comhttp://www.amara.com/current/wavelet.htmlhttp://stat.stanford.edu/~wavelabhttp://www.multires.caltech.edu/http://www.cs.nyu.edu/cs/faculty/mallat/http://faculty.gvsu.edu/aboufade/web/dw.htm