• Aucun résultat trouvé

On se place à présent du point de vue de la quantité d’information qu’il nous faut garder pour bien reconstruire une image. D’un point de vue naïf, on peut se dire que l’on peut coder chaque pixel de l’image soit avec par exemple 8bits (256 niveaux de gris), ou bien 1bit (B & W). En passant de 8bits à 1bit, on gagne évidemment un facteur 8 en taille, mais la qualité s’en ressent, et on a perdu beaucoup d’information (Fig. 57).

Mais on peut faire mieux, l’idée est la suivante, on se place dans la base orthonormale d’ondelettes et se sont les coefficients d’ondelettes que l’on va compresser (fonctionQ(x)) sur peu de bits:

˜ x=X

j,n

Q(hx, ψj,ni)ψj,n (260)

Si maintenant, on regarde la distribution des valeurs des coefficients d’ondelettes (les détails seulement) sur la figure 58, on constate que les distributions sont certes piquées à 0 (illustration de la parcimonie), mais selon la complexité des textures l’étalement est plus ou moins important.

Donc pour coder, il est naturel de se placer dans la base d’ondelettes qui donne des représentations parcimonieuses avec beaucoup de 0, et on va dans un premier temps ne coder que les coefficients non nuls. Pour se faire, on utilise un quantificateur à pas ∆ fixe

Figure 57 – A gauche image dont la valeur d’un pixel est codée sur 8bits (1byte) et à droite la même image où le codage se fait sur 1bit.

Figure58 – A gauche et milieu deux images. A droite, en rouge l’histogramme normalisé des coefficients d’ondelettes (de détails seulement) pour l’image du bateau, en bleu pour celle du singe montrant plus de textures.

Figure 59 – Pour les deux images de la figure 58, on a procédé à la binarisation Eq. 262 avec les paramètres a = 5 et p = 15 du quantificateur Eq. 261 (nb. la distribution des coefficients de détails ont des queues assez longues). Les coefficients dont le résultat est 0 apparaissent en blanc sur les images. La décomposition en ondelettes est effectuée avec

"Db2".

dont la définition est la suivante: si la valeur x prend des valeurs dans [−a, a] et si cet intervalle est découpé en n= 2p+ 1 boîtes, alors

Q(x) =k∆ ∆ = 2a/n k =bx/∆ + 1/2c ∈J−p, pK (261) c’est-à-dire que l’on affecte àx la valeur centrale de la k-ième boîte. Donc, un coefficient dont la valeur est comprise dans l’intervalle [−∆/2,∆/2] est affecté à la valeur 0. Ceci est particulièrement intéressant si on prend en compte l’histogramme des valeurs des coefficients de détails (Fig. 58). Ainsi, on construit une carte binaire b[j, n] telle que

b[j, n] =

0 siQ(hx, ψj,ni) = 0 1 sinon

(262)

Un exemple est donné sur la figure59. Si maintenant, on affecte une valeur aux coefficients non nuls selon le quantificateur simple ci-dessus, on obtient pour les paramètres de la figure 59, des images reconstruites de la figure 60. Pour apprécier, la différence entre l’image d’origine et deux reconstructions avec deux valeurs de p, la première celle des figures 59, et 60, et l’autre 4 fois plus grande (bin 4 fois plus petits), on montre les zooms des images reconstruites et ceux des images d’origines, sur la figure61. Le Standard JPEG2000

Figure60 – Images reconstruites à partir de la quantification des coefficients d’ondelettes avec les paramètres de la figure 59. On voit l’effet de la quantification.

Figure 61 – Zoom: en haut les images d’origines, au milieu des images de la figure 60, et en bas des images reconstruites avec une quantification qui 4 fois plus de bins.

procède un peu de la sorte avec des raffinements qu’il serait trop long de mentionner ici (voir le livre de S. Mallat). Ceci dit le message est qu’avec un facteur de compression de 40 (c’est-à-dire que l’on passe de 8bits/pixel à 0.2bit/pixel) alors on reconstruit fidèlement l’image. Bien entendu, si l’on diminue trop le nombre bit/pixel, il se produit ce que l’on observe sur l’image60, c’est-à-dire que l’on commence à perdre des détails. Typiquement, une image peut être comprimée d’un facteur 50-100 sans trop introduire d’artefacts. Pour des compressions plus importantes, on n’y arrive pas avec ce type de techniques.

Ceci dit, en quoi ce que l’on observe sur ces images revoit-il à l’approximation non-linéaire? L’erreur d’approximation de l’imagexpar le codage ˜x(Eq.260) peut être d’écrite dans la base orthonormale des ondelettes, et si l’on prend le quantificateur simple Q, il vient:

kx−xk˜ 2 =X

j,n

|hx, ψj,ni −Q(hx, ψj,ni)|2

= X

|hx,ψj,ni)|≤∆/2

|hx, ψj,ni|2+ X

|hx,ψj,ni)|>∆/2

(∆/2)2 (263)

La première somme n’est autre que l’erreur faite quand on garde que les M plus grands coefficients; de plus le nombre de coefficients qui ne sont pas mis à 0 par la quantification (la seconde partie de la somme), sont au nombre de M justement par le même argument.

Donc, la distorsion D due au codage est encadrée par

εn`(M)≤D =kx−xk˜ 2εn`(M) +M2/4 (264) Ainsi, cette distorsion D a deux composantes: une composante non-linéaire due aux co-efficients que l’on ne retient pas par le seuillage induit par la largeur du bin "0", et une composante qui est due à la quantification des coefficients qui sont retenus par l’approxi-mation non-linéaire.

Si on suppose que les coefficients d’ondelettes sont sparses (la représentation est parcimonieuse), ce qui est suggéré par les histogrammes de la figure 58, que l’on peut traduire par une norme `p (Sec. 5.1.2) bornée, ex.

X

j,n

|hx, ψj,ni)|pCpp (265)

alors le coefficient d’ondelette de rang k (Th. 9) satisfait

|hx, ψki)| ≤Cppk−1/p (266) Le nombreM correspond on nombre de coefficients dont la valeur absolue est plus grande de ∆/2, donc

∆/2 =CppM−1/p (267)

et d’après le même théorème

εn`(M)≤ Cp2p

2/p−1M1−2/p (268)

Donc

D=kx−xk˜ 2Cp2p

2/p−1M1−2/p+M Cp2pM−2/p= Cp2p

1−p/2M1−2/p (269) Ainsi, l’erreur de quantification et l’erreur non-linéaire sont de même grandeur, ce qui donne finalement que D = O(M1−2/p). Ce que cela dit c’est que l’erreur de codage dépend essentiellement de l’approximation non-linéaire de basse dimension.

Cela est du au fait que le nombre de coefficients mis à 0, qui contribuent à l’erreur non-linéaire, est très grand à cause de la parcimonie. Et le nombre de bits qu’il va falloir pour coder l’information a deux composantes proportionnelles l’une et l’autre à M dont la première vient de la localisation des coefficients nuls, et l’autre du codage des amplitudes des coefficients non-nuls. La chose importante à retenir est que pour ces algorithmes de codage, il faut obtenir une représentation parcimonieuse.

L’an prochain nous aborderons la Théorie de l’Information afin de comprendre le fonc-tionnement des réseaux de neurones. En particulier, en grande dimension on a un atout, le théorème central limite, qui nous indique que si l’on somme des variables indépendantes, on converge vers la moyenne. C’est un phénomène qui nous indique que l’information est concentrée dans des sous-parties de l’espace. Et le nombre de bits qui la code est définie par l’Entropie.