2.4 Algorithme 1D de d´etection et de caract´erisation des singularit´es d’un signal 61
2.4.2 Impl´ementation et exemples
une fonction de L2(R). Alors les maxima des modules de W f(x, a) appartiennent `a des courbes connexes jamais interrompues quand l’´echelle ad´ecroˆıt.
V´erifions maintenant l’efficacit´e du crit`ere fourni par le th´eor`eme 2.3.2 en impl´ementant un algorithme 1D de d´etection de singularit´e bas´e sur lui. Nous utiliserons une d´eriv´ee de gaussienne comme ondelettes de fa¸con `a obtenir des lignes de maxima ininterrompues en allant vers les petites ´echelles.
2.4 Algorithme 1D de d´ etection et de caract´ erisation des
intercal´ees entre deux ´echelles dyadiques successives) entre chaque ´echelle dyadique, de fa¸con `a augmenter la pr´ecision de la caract´erisation. L’ondelette utilis´ee pour calculer cette transform´ee est une d´eriv´ee de gaussienne, qui garantit (voir th´eor`eme (2.3.3)) l’existence de lignes de maxima : on utilise le chapeau mexicain (d´eriv´ee seconde de gaussienne).
2. Dans les exemples qui suivent, un seuilσ = 0.001 ne d´ependant pas de l’´echelle a ´et´e utilis´e pour le d´ebruitage : les coefficients d’ondelettes qui lui sont inf´erieurs sont mis
`a z´ero, ce qui ´evite de d´etecter des maxima non significatifs. Mais les signaux dont on veut caract´eriser les singularit´es peuvent ˆetre diversement bruit´es et ne n´ecessiteront donc pas tous le mˆeme seuilσ: ce dernier doit ˆetre adapt´e au niveau de bruit pr´esent dans le signal. Pour cela, il faut estimer ce niveau de bruit. C’est ce que font Donoho et Johnstone dans [DON98], `a l’aide d’une m´ethode fond´ee sur lad´eviation absolue de la m´ediane. J´er´emie Bigot, dans sa th`ese (voir [BIG03]), ´etudie d’un point de vue statistique les lignes de maxima et propose des m´ethodes pour prendre en compte le bruit.
3. A une ´echelle j donn´ee, pour d´ecider qu’un point est un maximum local de x 7→
|W f(x, aj)|, on le compare `a ses quatre plus proches voisins (les deux `a sa gauche, et les deux `a sa droite) ; Les positions des maxima locaux sont alors indiqu´ees, pour chaque ´echelleaj, `a la lignej d’une matrice par des 1.
4. Partant d’un maximum local `a une ´echelle grossi`ereaBF (l’´echelle de d´epart ne peut ˆetre `a moins de 4 voix de l’´echelle la plus fine), on recherche `a l’´echelle suivante le maximum qui lui est le plus proche (en n’oubliant pas qu’on consid`ere le signal comme p´eriodique), et ainsi de suite jusqu’`a ce qu’on arrive `a l’´echelle la plus fine.
5. Le calcul de la r´egularit´e lipschitzienne est fait en ´evaluant par r´egression lin´eaire la pente de la courbe log2|W f(xa, a)|en fonction dej =−log2(a) sur les ´echelles com-prises entre 2−1et 2−5; ce calcul n’est fait que pour les singularit´es significatives, qui seront d´efinies comme ´etant celles qui ont g´en´er´e des lignes de maxima (a, xa) tra-versant toutes les ´echelles. Le nombre d’´echelles que comporte la transform´ee utilis´ee doit donc ˆetre suffisamment grand pour que les lignes de maxima qui correspondent
`a des contours non significatifs ou `a du bruit ne puissent traverser toutes les ´echelles.
La notion de “contour significatif” ´etant par essence subjective, on ne pourra pas automatiser ce param`etre (la longueur minimale d’une chaˆıne pointant sur un point de contour significatif) de fa¸con enti`erement satisfaisante. On peut toutefois l`a en-core le choisir en fonction du niveau de bruit du signal. Nous renvoyons enen-core `a [BIG03] pour une ´etude statistique de ce probl`eme.
La suite pr´esente quelques r´esultats obtenus avec ces choix.
Le Dirac
0 0.2 0.4 0.6 0.8 1
0 0.2 0.4 0.6 0.8 1
representation temporelle
(a) Le Dirac
200 400 600 800 1000
50 100 150 200 250
(b) les coefficients d’ondelettes
0 0.2 0.4 0.6 0.8 1
0
1
2
3
4
5
−log2(scale)
(c) chaînage Chaînage des maxima
1
2 3
3 3.5 4 4.5 5
−10
−9.8
−9.6
−9.4
−9.2
−9
−8.8
chaîne 1:
(d) évaluation de la singularité en 0.5
Fig. 2.6 – En haut : (a) Un Dirac discret ; (b) repr´esentation isovaleur des coefficients d’ondelettes du dirac (les ´echelles fines sont en bas, la localisation de la singularit´e y est plus fine). En bas : (c) Chaˆınes `a travers les ´echelles des maxima locaux de la trans-form´ee en ondelettes |W f(., aj)|, aj = 2−j/ν; (d) le long de la 1`ere chaˆıne, courbe log2(|W f(.,2−j/ν)|) = g(j/ν), dont la pente, 12, est ´egale `a −(α+ 12). On obtient ainsi α=−1, ce qui est conforme `a la th´eorie.
Les fonctions | x − 0.7 |
13et | x − 0.5 |
130 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0 0.2 0.4 0.6 0.8 1
representation temporelle
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−8
−7
−6
−5
−4
−3
évaluation de la singularité de (x−0.7)1/3
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0 0.2 0.4 0.6 0.8
representation temporelle
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
−8
−7
−6
−5
−4
−3
évaluation de la singularité de (x−0.5)1/3
Fig.2.7 – En haut : (a) Fonctionf =|x−0.7|13 ; (b) Fonctiong=|x−0.5|13 ; En bas : (c) courbe log2(|W f(.,2−j/ν)| =g(j/ν) le long d’une chaˆıne traversant toutes les ´echelles et pointant sur la singularit´e en 0.7 de la fonctionf; (d) courbe log2(|W f(.,2−j/ν)|) =g(j/ν) le long d’une chaˆıne traversant toutes les ´echelles et pointant sur la singularit´e en 0.5 de la fonctionf.
La fonction | x − 0.25 |
13+ | x − 0.7 |
320 0.2 0.4 0.6 0.8 1
0.5 1 1.5
representation temporelle
(a) Le Dirac
200 400 600 800 1000
50 100 150 200 250
(b) les coefficients d’ondelettes
0 0.2 0.4 0.6 0.8 1
0 1 2 3 4 5
−log2(scale)
(c) chaînage Chaînage des maxima
1 2
3 4
0 1 2 3 4 5
−10
−9
−8
−7
−6
−5
−4
chaîne 2 et 3:
(d) évaluation de la singularité en 0.7 (trait continu) et 0.25 (trait pointillé)
Fig. 2.8 – En haut : (a) Fonction f = |x −0.25|13 +|x −0.7|23 ; (b) Les coefficients d’ondelettes de la fonction (lignes isovaleurs) ; En bas : (c) Chaˆınage des maxima locaux
`a travers les ´echelles. (d) courbes log2(|W f(.,2−j/ν)|) = g(j/ν) le long de deux chaˆınes traversant toutes les ´echelles et pointant sur la singularit´e en 0.25 (trait pointill´e) et sur la singularit´e en 0.7 (trait continu) de la fonction f.
Avec bruit (rapport SNR de 0.01) :
0 0.2 0.4 0.6 0.8 1
0 0.5 1 1.5 2
representation temporelle
(a) Le Dirac
200 400 600 800 1000
50 100 150 200 250
(b) les coefficients d’ondelettes
0 0.2 0.4 0.6 0.8 1
0 1 2 3 4 5
−log2(scale)
(c) chaînage Chaînage des maxima
1 2
3 4
5 6
8 9 7
11 10
12 13
14 15
161921 232520 24 171822 26 2829 3531 302734 33 32
36 37
39 404138 43 4244
0 1 2 3 4 5
−8
−7
−6
−5
−4
chaîne 2 et 3:
(d) évaluation de la singularité en 0.7 (trait continu) et 0.25 (trait pointillé)
Fig.2.9 – En haut : (a) Fonctionf =|x−0.25|13 +|x−0.7|23 bruit´ee ; (b) Les coefficients d’ondelettes de la fonction (lignes isovaleurs) ; En bas : (c) Chaˆınage des maxima locaux
`a travers les ´echelles. Notons que seules les singularit´es significatives (celles du signal) produisent des chaˆınes traversant toutes les ´echelles ; (d) courbes log2(|W f(.,2−j/ν)|) = g(j/ν) le long de deux chaˆınes traversant toutes les ´echelles et pointant sur la singularit´e en 0.25 (trait pointill´e) et sur la singularit´e en 0.7 (trait continu) de la fonction f.
Dans l’exemple du Dirac, quatre images sont pr´esent´ees : celle en haut `a gauche repr´esente le Dirac discret lui-mˆeme, celle en haut `a droite montre les zones o`u les co-efficients d’ondelettes sont les plus importants : on voit qu’aux ´echelles fines, en bas sur cette image, la singularit´e est bien d´etect´ee et localis´ee par la transform´ee en ondelettes.
En bas `a gauche, on voit des chaˆınes de maxima d’ondelettes, pointant sur la singularit´e (les ´echelles fines sont toujours en bas). Enfin, l’image en bas `a droite repr´esente la courbe log2|W f(x, a)|en fonction de −log2(a) : c’est bien une droite de pente 12 =−α−12, donc on trouve bien unα qui vaut −1, conform´ement `a la th´eorie.
Les exemples suivants montrent le comportement de l’algorithme sur les fonctions|x−0.5|13 et|x−0.7|13, qui sont de r´egularit´e lipschitzienne 13. La droite obtenue, dans le cas|x−0.5|13, est tr`es nette et donne le r´esultat attendu. En revanche, pour la fonction |x−0.7|13, la droite est plus courbe, du fait de la discr´etisation, sur 1024 points pour chaque ´echelle, de la transform´ee en ondelettes continue : 0.7 ne correspond en effet `a aucun point de la discr´etisation.
La derni`ere s´erie d’exemples s’int´eresse `a la fonction |x−0.25|13 +|x−0.7|23 d’abord non bruit´ee puis noy´ee dans un bruit gaussien, pour se faire une id´ee de la r´esistance de l’algorithme au bruit.
On voit que le bruit g´en`ere de nombreux maxima locaux qui ne sont pas caract´eristiques d’une singularit´e du signal : on trouve donc beaucoup plus de chaˆınes, dont trois seulement traversent toutes les ´echelles, qui correspondent bien aux deux singularit´es de notre signal (notre signal ´etant suppos´e p´eriodique ici, il y a une discontinuit´e au bord). La courbe que l’on trace en suivant la chaˆıne qui traverse toutes les ´echelles et qui pointe en la discontinuit´e en 0.25 ressemble encore `a une droite, mˆeme si la pr´esence de bruit rend
´evidemment la mesure beaucoup plus impr´ecise ; il en va de mˆeme lorsqu’on suit la chaˆıne qui pointe sur la singularit´e en 0.7.
Deuxi` eme partie
Algorithme de d´ etection et de classification des arˆ etes dans une
image
Chapitre 3
Mod´ elisation des arˆ etes
3.1 Diversit´ e des approches face au probl` eme de la d´ etection des arˆ etes
Chercher les contours, ou arˆetes d’une image est un probl`eme universel, utile aussi bien en imagerie m´edicale (notre objectif principal) qu’en imagerie astrale, en vid´eo, ou mˆeme en m´et´eorologie (par exemple pour d´etecter les fronts nuageux en assimilation de donn´ees satellitales) ... Les recherches en compression d’images (enjeu tr`es important et actuel du traitement d’images) s’orientent d’ailleurs vers la d´efinition de nouvelles bases adapt´ees `a la g´eom´etrie des contours de l’image (ce sont en effet les arˆetes d’une image qui portent l’essentiel de l’information). Donoho et Candes ont d´efini lesridgelets, trans-form´ees directionnelles qui fonctionnent `a l’aide de famillesa−1/2ψ
~ u.~x−b
a
o`u le param`etre d’´echelle a est un r´eel positif, le param`etre de localisation b est un r´eel, et le param`etre d’orientation~uappartient `a la sph`ere unit´e Sd−1 deRd (voir [CAN98]) ; `a l’aide de cette transform´ee, ils d´efinissent lescurvelets(voir [CAN00]), groupement local de coefficients d’ondelettes en une structure qui ´epouse la forme d’une courbe lisse de discontinuit´e (lisse dans la direction tangente `a la courbe ...), ce qui a pour avantage, par rapport aux on-delettes, de r´eduire, `a une ´echelle 2−j, le nombre de coefficients significatifs de O(2j) `a O(2j/2). Cette approche est poursuivie par Do et Vetterli, dont lescontourletsreprennent les id´ees des curvelets et r´esolvent des probl`emes qui se posent lors de leur discr´etisation en d´efinissant un banc de filtrage pyramidal directionnel (pyramidal directional filter bank (PDFB)). Mallat et Le Pennec (voir [LEP02], [LEP03]) profitent ´egalement de la g´eom´etrie de l’image en d´efinissant desbandelettes, obtenues par d´eformations d’ondelettes aniso-tropes, construites selon la direction de r´egularit´e maximale de la fonction, puis align´ees dans une direction fixe (voir figure 3.1).
D’autres familles existent, les wedgelets ([DON99]), les beamlets ([DON01]), les brushlets([MEY97]), ... qui toutes optimisent le fonctionnement des ondelettes pour cer-taines classes d’images.
Ici, le probl`eme est diff´erent : il ne s’agit pas de comprimer l’image, mais de locali-ser ses contours le plus finement possible ; nous utililocali-serons une transform´ee en ondelettes redondante (invariante par translation) et directionnelle, dont les propri´et´es de d´etection vont permettre de trouver les arˆetes. Le probl`eme qui se pose alors est celui de la d´efinition d’une arˆete dans une image.
2
K2
− j /2
− j /2
Déformation Verticale
Bandelettes Curvelet
Fig.3.1 – Les curvelets r´eunissent des coefficients d’ondelettes dans des structures lin´eaires adapt´ees `a la g´eom´etrie d’une courbe de discontinuit´e lisse ; les bandelettes sont bas´ees sur un flot constant dirig´e selon la direction des contours principaux de l’image.