© 2006 CONTEMPORARY PUBLISHING INTERNATIONAL
Publié sous l’enseigne Éditions Scientifiques GB
Télédétection, 2006, vol. 6, n° 4, p. 345-360
ALGORITHME NON ITÉRATIF BASÉ SUR LES ONDELETTES BIORTHOGONALES ET LES FRACTALES POUR LA
COMPRESSION D’IMAGES SATELLITAIRES
Mourad LAHDIR 1, Soltane AMEUR 2*, et Abd El Hamid ADANE 3
1 Université
Mouloud Mammeri de Tizi-Ouzou (U.M.M.T.O), Faculté de Génie Électrique et Informatique,
Département d’Électronique, Laboratoire d’Analyse et de Modélisation des Phénomènes Aléatoires
(L.A.M.P.A), B.P. n°17 RP 15000, Tizi-Ouzou, Algérie.
Courriel : mlahdir@yahoo.fr
2 Université Mouloud Mammeri de Tizi-Ouzou (U.M.M.T.O), Faculté de Génie Électrique et Informatique,
Département d’Électronique, Laboratoire d’Analyse et de Modélisation des Phénomènes Aléatoires
(L.A.M.P.A), B.P. n°17 RP 15000, Tizi-Ouzou, Algérie.
Téléphone/ Télécopieur : 00 213 26 21 86 42; courriel : ameursoltane@yahoo.com
3 Université des Sciences et de la Technologie d’Alger (U.S.T.H.B.), Faculté d’Électronique et d’Informatique,
Département Télécommunications, Laboratoire Traitement d’Images et Rayonnement (L.T.I.R), BP n° 32 El
Alia, Bab Ezzouar, 16111, Alger, Algérie.
Courriel : aadane@usthb.dz
Soumis le 11 décembre 2006 ; révisé le 28 février 2007 ; accepté le 26 mars 2007
Un algorithme rapide basé sur les ondelettes biorthogonales et les fractales a été mis au point pour faciliter l’archivage d’images de grande
taille avec de forts taux de compression et le minimum de distorsion. Pour cela, l’image à traiter est compressée puis décompressée en utilisant des ondelettes biorthogonales et une quantification vectorielle. L’image d’ondelettes qui en résulte est ensuite soustraite de l’image
originale pour donner une image résiduelle. Cette dernière est codée par des fractales en créant un domaine de contraction avec les blocs
« source » extraits de l’image d’ondelettes et un domaine de destination obtenu à partir de l’image résiduelle. Les paramètres du code fractal
sont ensuite déterminés en collant les blocs « destination » aux blocs « source ». Ces paramètres et ceux de la quantification vectorielle sont
codés en utilisant l’algorithme de Huffman pour générer la séquence binaire représentant l’image compressée. Des transformations inverses
permettent de décompresser l’image. À la différence des systèmes de fonctions itérées locales (LIFS), notre méthode n’exige aucune itération
car l’opération de collage est réalisée en une seule étape. Les tests sur une image du visage d’une femme donnent un taux de compression
atteignant 94 % et un PSNR de 32,9 dB. De plus, la durée du traitement est près de 200 fois plus courte qu’avec les LIFS. Cette méthode,
testée sur diverses images satellitaires, a été employée pour archiver des images du canal à haute résolution dans le visible de METEOSAT
acquises à toutes les 15 minutes en 2003. Après décompression, ces images sont reproduites fidèlement et l’espace-mémoire requis pour leur
stockage est réduit de plus de 90 %.
Mots-clés: Télédétection ; compression ; ondelettes ; quantification ; fractales.
NON ITERATIVE ALGORITHM BASED ON BIORTHOGONAL
WAVELETS AND FRACTALS FOR THE COMPRESSION OF
SATELLITE IMAGES
A fast algorithm based on both biorthogonal wavelets and fractals is implemented to facilitate the storage of large format images with high
compression ratios and minimum loss of information. For this, the image to be processed is compressed and decompressed using biorthogonal wavelets at different resolutions and a vector quantization technique. An image of wavelets is then obtained and removed from the
original ones. The resulting residual image is coded with fractals by creating a contraction domain using the source blocks extracted from
the wavelet image and a destination domain deduced from the residual image. The fractal coding parameters are determined by pasting the
destination to source blocks. To generate the binary sequence representing the compressed image, the fractal and vector quantization parameters are coded using the Huffman algorithm. Inverse transformations enable us to decompress the image. Unlike the local iterated
function system (LIFS), the above method requires no iteration since the pasting operation is achieved following only one step. The tests
performed on an image of a woman’s face yield a compression ratio reaching 94 % and a PSNR of 32,9 dB. In addition, processing time is
about 200 times shorter than for LIFS. This method was tested on various satellite images and then used to store high resolution visible
METEOSAT images (MSG) collected every 15 minutes during 2003. After decompression, these images are faithfully reproduced and the
memory space needed for their storage is reduced by more than 90 %.
Keywords: Remote sensing ; compression ; wavelets ; quantization ; fractals.
1. INTRODUCTION
Avec le développement de l’informatique, des appareils très performants sont apparus sur le marché et de puissantes méthodes ont été mises en
œuvre pour faire face aux besoins d’acquisition,
de stockage et de traitement de l’information
(Marsault, 1995). Un tel développement a engendré des applications qui mettent en jeu la transmission et l’archivage de données de plus en plus
LAHDIR, AMEUR ET ADANE
volumineuses. Il est alors devenu primordial de
compresser ces données pour les ramener à une
taille plus facilement exploitable. De façon générale, les fichiers numériques à traiter se distinguent par leur format, qui est identifiable grâce à
l'extension du nom du fichier. Dans le cas
d’images brutes, le fichier bitmap reste le plus
utilisé. En fait, près de 70 formats différents sont
actuellement disponibles pour stocker des images
bitmap, tout en étant conformes aux standards
les plus usités, tel que Windows ou Unix. Ceci
implique la compatibilité des programmes avec de
telles normes, lors de leur conception. Si l’on veut
augmenter la vitesse de consultation des fichiers
ou minimiser l’espace de stockage des documents
numérisés, surtout dans le cas des images, il est
nécessaire de recourir à des systèmes de compression appropriés. Deux sortes de techniques permettent la compression des images : les méthodes
réversibles, c’est-à-dire sans pertes, qui conduisent à de faibles taux de compression et celles
appelées irréversibles qui permettent de compresser fortement les images, mais au prix de certaines distorsions (Marsault, 1995 ; Held and Marshall, 1996).
Parmi les méthodes dites sans pertes, citons la
technique RLC (Run Length Coding), le codage de
Huffman et la compression LZW (Lempel Ziv
Welch). Ces méthodes opèrent avec des facteurs
de compression allant de 1,2 à 2,5.
Quant aux méthodes à fort taux de compression,
les plus efficaces sont basées sur de puissants
outils, tels que la transformée discrète en cosinus
(DCT), la transformée en ondelettes ou l’approche
fractale (Jacquin, 1992 ; Fisher, 1994 ; Marsault,
1995 ; Averbuch et al., 1996 ; Wohlberg et al.,
1999 ; Ghosh et al., 2004). Avec de tels outils, le
fichier image subit une forte compression, mais
avec des pertes se traduisant par des dégradations plus ou moins perceptibles à l’œil nu lors de
la décompression. Parmi les méthodes à fort taux
de compression, on distingue le format JPEG
(Joint Photographic Expert Group) (Borko, 1995)
et la méthode GIF (Graphic Interchange Format)
(Held and Marshall, 1996). JPEG est actuellement le plus couramment employé. Son principe
est de diviser l’image en blocs carrés de
8 x 8 pixels et de coder les valeurs les plus proches dans chaque bloc sur quelques bits. En procédant de la sorte, on peut atteindre des taux de
compression supérieurs à 90 %, tout en restituant
des images avec une perte d’informations à peine
perceptible. Mais, à l’instar d’autres méthodes
irréversibles, le temps d’exécution est très lent,
surtout dans le cas d’images de grande taille. De
plus, des artefacts apparaissent dans celles-ci
sous forme de mosaïques. Pour réduire les distorsions causées par les méthodes à fort taux de
compression, nous avons élaboré, lors de travaux
précédents, une méthode de compression basée
sur la DCT et la quantification vectorielle.
Cette technique appliquée à des images de référence, comme l’image de Lena ou les images de
346
Brodatz et à des images de télédétection prises
par le capteur de METEOSAT-4, a donné des résultats satisfaisants (Ameur et al., 2002). En effet, elle a permis de réaliser un bon compromis
entre le taux de compression et la qualité de restitution des images. Grâce à cette méthode, le taux
de compression et le PSNR atteignent respectivement 94 % et 33 dB.
Cependant, l’apparition de nouvelles technologies
de communication impose la manipulation d’un
volume de données de plus en plus important qui
doit être traité dans des délais de plus en plus
courts, avec le meilleur compromis possible entre
le taux de compression et la qualité de restitution
des images. Certaines techniques de compression,
basées sur les fractales, semblent convenir à cette
exigence (Bedford et al., 1992 ; Zhao and Yuan,
1994 ; Davoine, 1995 ; Davis, 1998 ; Lepsy et al,
1998 ; Hamzaoui and Saupe, 2000 ; Belloulata,
2005). En effet, ces méthodes partent du principe
que toute image peut être considérée comme résultant de la répétition de mêmes motifs à différentes échelles. Pour mettre en œuvre ces techniques, un système de fonctions itérées locales (ou
LIFS, i.e., Local Iterated Function System) (Jacobs et al., 1992 ; Jacquin, 1992 ; Fisher, 1994),
formé de fonctions contractantes est défini. Le
théorème de collage mettant en jeu ces fonctions
permet alors de représenter tout objet à deux dimensions sous forme de fractales.
De telles techniques ont l’intérêt d’accélérer le
processus de compression tout en restituant des
images de bonne qualité. Aussi, nous avons mis à
profit les avantages des ondelettes biorthogonales, de la quantification vectorielle et des fractales
pour élaborer un algorithme de compression
d’images opérant sans aucune itération. Cet algorithme et les résultats obtenus sont présentés
dans les prochaines sections.
2. MÉTHODOLOGIE
2.1. Principe
Considérons une image f(i, j) à compresser, dans
laquelle la position d’un pixel est repérée par ses
coordonnées (i, j). Le schéma de la figure 1 représente la structure de l’algorithme que nous avons
conçu, élaboré et appliqué à diverses images.
Comme le montre ce schéma, une transformation
en ondelettes biorthogonales, assortie d’une quantification vectorielle, est d’abord appliquée à
l’image f(i, j). Ce type de quantification est couramment employé en compression d’images (Moureau, 1994 ; Averbuch et al., 1996 ; Cosman et al.,
1996). C’est ainsi que l’association de la quantification vectorielle aux transformées en ondelettes
et en cosinus nous a déjà permis de traiter efficacement des images des capteurs de METEOSAT
(Ameur et al., 2002).
Grâce au processus de compression/décompression
décrit sur la figure 1, une image F(i, j), compor-
Télédétection, vol. 6, n° 4 p. 345-360
COMPRESSION D’IMAGES NON ITÉRATIVE
tant le maximum d’informations, est obtenue. En
effectuant la différence des deux images f(i, j) et
F(i, j), on obtient une image « résidu » r(i, j). Le
codage par des fractales est ensuite appliqué à ce
« résidu » pour prendre en compte les détails de
l’image originale f(i, j) qui n’ont pas pu être inclus
dans l’image F(i, j). À cet effet, r(i, j) est partagé
en blocs « destination », constituant alors le domaine de destination. Parallèlement, pour accélérer le processus de codage, F(i, j) subit une décimation par quatre pour donner une image de
taille plus réduite d(k, l). Cette dernière est composée de blocs « source », formant ainsi le domaine
de contraction. Le codage par des fractales revient
à transformer les blocs « source » de façon qu’ils
Image à
compresser
f(i,j)
puissent approximer au mieux les blocs « destination ». Le code fractal ainsi défini est exprimé en
fonction de la position p du bloc « source », d’un
facteur d’échelle α et d’un paramètre d’isométrie
I, caractérisant les fractales de l’image étudiée.
En pratique, pour obtenir ce code nous avons collé
les blocs « source » aux blocs « destination » de
l’image r(i, j) en une seule étape. Finalement, ces
paramètres et ceux provenant de la quantification
vectorielle sont codés simultanément à l’aide de
l’algorithme de Huffman pour générer une séquence binaire contenant l’information utile à
sauvegarder, c’est-à-dire l’image compressée. La
décompression des images est alors réalisée en
procédant par transformations inverses.
Transformation en
ondelettes biorthogonales
Quantification vectorielle des sous
bandes
Processus de compression
/décompression par
ondelettes biorthogonales
Décodage des sous
bandes
Transformation inverse
des ondelettes
biorthogonales
F(i,j)
r(i,j)
Décimation par 4
Formation des blocs
‘destination’
Rn
d(k,l)
Formation des blocs
‘source’
Codage par des fractales
(αn, p, Iz)
Dp
IndQ
Codage Huffman
Séquences de bits à
sauvegarder
Figure 1 : Schéma du processus de compression d’images. Scheme of the image compression process.
Télédétection, vol. 6, n° 4 p. 345-360
347
LAHDIR, AMEUR ET ADANE
Soit,
2.2. Décomposition en ondelettes
biorthogonales
Pour former le domaine de contraction du codage,
l’image à compresser f(i, j) est d’abord décomposée
en ondelettes à différents niveaux de résolution,
selon une hiérarchie pyramidale. Pour ce faire,
l’algorithme de Mallat (1989) est appliqué à
l’image à traiter. Une telle décomposition est établie en partant de la formulation générale qui
permet de définir une transformée en ondelettes
biorthogonales à une seule dimension x. En effet,
cette transformée est mise en œuvre en considé~
rant deux ondelettes mères ψ et ψ . Ces deux
sortes d’ondelettes sont, à la fois, dilatées et translatées de façon à générer deux familles
d’ondelettes
ψ m,n
et
~ , où m et n jouent resψ
m ,n
pectivement le rôle d’indice de dilatation et
d’indice de translation. Pour simplifier l’écriture,
~
posons : Ω = ψ ou ψ . Chacune de ces familles
d’ondelettes est alors de la forme :
Ω m,n (x) = 2
- m/2
Ω(2
-m
(1)
x - n)
avec m = 1 ; 2 …… et n = 0 ; 1 ; 2
~
En général, les ondelettes ψ
et ψ
m,n
m,n
consti-
tuent une base duale non orthogonale dans
l’espace des fonctions de carrés somma2
bles L
réels
(ℜ) , défini dans le domaine des
(ℜ) (Antonini
et al., 1992). Par suite, la
transformée en ondelettes biorthogonales consiste
à représenter toute fonction f(x) appartenant à
2
l’espace L
(ℜ)
par la combinaison linéaire sui-
~
f = ∑ c m,n (f) ψ
m,n
vante :
(2)
Les coefficients d'ondelettes cm,n(f) sont ensuite
calculés, en effectuant le produit scalaire de la
fonction f avec les ondelettes ψ m , n , soit :
c m,n (f) = ψ m,n , f = ∫ ψ m,n (x) f(x) dx
(3)
~
φ et φ ainsi
~
et φm , n sont
~
φ , on en ar-
Pour représenter la fonction f(x) à différentes résolutions, deux fonctions d’échelle
que deux familles d’ondelettes
considérés. En prenant
rive à :
Ω m,n (x) = 2
- m/2
Ω(2
Ω
-m
=
φ m ,n
φ
ou
x - n)
avec m = 1 ; 2 …… et n = 0 ; 1 ; 2
348
(4)
l’espace fermé engendré par la famille
Vm
d’ondelettes
~
φm ,n
sur l’espace
Vm
pour m fixé. La projection de f
donne une bonne approximation
de cette fonction à la résolution 2
que :
−m
~
Proj (f / Vm ) = ∑ φ m,n , f φ
m, n
, en écrivant
Puis, l’approximation de l’image à l’échelle
est obtenue en faisant :
~ m, n
Proj (f / Vm −1 ) = Proj (f , Vm ) + ∑c m, n (f ) ψ
(5)
2− m +1
(6)
Dans cette expression, les coefficients d’ondelettes
cm,n traduisent l’information perdue entre la représentation de la fonction f à la résolution
et celle à la résolution
2
− m +1
2− m
.
2.3. Décomposition en sous bandes
La transformée en ondelettes biorthogonales décrite précédemment a été appliquée à l’image f(i,
j), en calculant les projections définies par les
équations (5) et (6) par filtrage. Pour ce faire,
nous avons utilisé deux paires de filtres : une
paire ( h , g ) pour la décomposition et une autre
~
g)
(h , ~
pour la reconstruction. Par définition,
~
h(u ) et h (u )
de deux filtres passe-bas associés aux fonctions
et
φ
sont les réponses impulsionnelles
~
φ . De même g (u )
et
g~ (u ) sont les réponses
impulsionnelles de deux filtres passe-haut asso~
ciés aux fonctions ψ et ψ .
L’application de ces filtres à l’image à traiter
permet d’extraire les coefficients de basses fréquences AJ et les coefficients d’ondelettes CJ . Les
coefficients AJ représentent l’approximation de
l’image au niveau de résolution ultime J et les
coefficients CJ , les détails perdus entre deux niveaux de résolution successifs, dans les directions
horizontale, verticale et diagonale. Ils s’écrivent
de la façon suivante :
A J = ∑ A J - 1 (2 n - u) h(u)
C J = ∑ A J - 1 (2 n - u) g(u)
(7)
u
(8)
u
avec u = 1 ; 2 ….
Les types de filtres biorthogonaux et la plus
grande résolution J avec lesquels nous avons travaillé, ont été choisis après différents essais. Nous
avons alors trouvé que, pour reproduire toute
image avec la meilleure qualité possible, il fallait
fixer la résolution ultime à 2-3 et utiliser des filtres biorthogonaux 9/7 (Antonini et al., 1992 ;
Daubechies et al., 1992). Sur la figure 2, on sché-
Télédétection, vol. 6, n° 4 p. 345-360
COMPRESSION D’IMAGES NON ITÉRATIVE
matise le processus de décomposition d’une image
quelconque en sous bandes selon les résolutions 21, 2-2 et 2-3. Sur cette figure, les sous bandes de
détails caractérisant les coefficients d’ondelettes
aux résolutions 1, 2 et 3 sont désignées par les
blocs C1, C2 et C3. La sous bande lissée à la résolution 3 est représentée par le bloc A3. Les détails
A3
C3 (v)
horizontaux sont repérés par la lettre (h), les détails verticaux par la lettre (v) et les détails diagonaux par la lettre (d).
C3 (h)
C3 (d)
C2 (v)
C2 (h)
C2 (d)
C1 (v)
C1 (h)
C1 (d)
Figure 2 : Décomposition d’une image en sous bandes et quantification vectorielle. Image decomposition into subbands and
vector quantization.
2.4. Quantification vectorielle des sous
bandes
Après l’étape de décomposition en ondelettes biorthogonales, les sous bandes de détails sont codées
par quantification vectorielle. Cette dernière
consiste à établir un dictionnaire formé d’un ensemble de vecteurs qui soit le plus près possible
de la partition initiale. Pour confectionner ce dictionnaire, nous avons utilisé l’algorithme
d’apprentissage par compétition (ou CL, i.e.,
Télédétection, vol. 6, n° 4 p. 345-360
Competitive Learning). La structure de cet algorithme est décrite dans l’une de nos études
(Ameur et al., 2002). Comme l’indique la figure 2,
les coefficients d’ondelettes obtenus dans les directions horizontale, verticale et diagonale ont été
évalués à chaque résolution à l’aide d’un seul dictionnaire pour déterminer les indices de quantification (Ind Q) à sauvegarder.
349
LAHDIR, AMEUR ET ADANE
2.5. Reconstitution, décimation et
détermination du résidu
L’application des transformations inverses au
processus de compression par ondelettes biorthogonales permet de reconstituer l’image F(i, j).
Cette image est d’abord partagée en blocs B(i, j),
ayant chacun une taille de 4 x 4 pixels. Puis,
comme nous l’avons expliqué à la section 2.1,
cette image subit une décimation par quatre pour
former une image de taille plus réduite d(k, l).
Dans cette image, la position d’un pixel est repérée par ses coordonnées (k, l) et, à chaque pixel de
l’image, est attribuée la valeur moyenne des
pixels du bloc B(i, j) correspondant. L’image « résidu » r(i, j) est obtenue en faisant la différence,
pixel par pixel, des deux images f(i, j) et F(i, j). Ce
dernier représente la perte d’information dans le
processus de compression/décompression par ondelettes biorthogonales et par quantification vectorielle. Par la suite, l’image réduite d(k, l) et le
« résidu » r(i, j) seront utilisés pour générer respectivement les domaines de contraction et de
destination.
2.6. Codage par des fractales
Pour prendre en compte les détails de l’image
originale f(i, j) non encore traités, nous avons codé
l’image « résidu » r(i, j) par des fractales. Ce choix
est motivé par le fait que la structure d’une image
est formée d’un ensemble de motifs semblables,
mais ayant des tailles et des orientations différentes (Marsault, 1995). Aussi, nous pouvons faire
l’hypothèse que le « résidu » se compose de fractales qui donnent une information supplémentaire
sur la structure de l’image f(i, j). Pour identifier
ces motifs, l’image « résidu » r(i, j) subit une partition en n blocs de destination Rn, ayant chacun
une taille de 4 x 4 pixels et où n est le numéro du
bloc considéré dans le domaine de destination.
Parallèlement, le domaine de contraction est obtenu en décomposant l’image réduite d(k, l) en p
blocs « source » Dp de même taille que les blocs
« destination » et où p est le numéro du bloc
considéré dans ce domaine. Le codage par des
fractales consiste à déterminer une transformée
affine et contractante wn qui, en l’appliquant aux
blocs « source » Dp, donne la meilleure approximation possible des blocs « destination » Rn. À la
suite de cette transformation, les paramètres caractéristiques des fractales qui permettent
d’obtenir des blocs similaires sont sauvegardés
(figure 3).
En pratique, la transformation wn que nous avons
utilisée permet de modifier la luminance et la
forme des blocs « source » (Jacquin, 1992 ; Fisher,
1994). Une telle opération est réalisée en faisant
varier, simultanément, le facteur d’échelle α et le
facteur d’isométrie I décrivant les fractales. Le
premier paramètre agit sur le contraste et le second sur la déformation géométrique. Cette dernière est obtenue en mélangeant les pixels et en
les déplaçant à l’intérieur des blocs. D’où :
350
w n (D p ) = α n I z (D p )
(9)
Dans cette expression la valeur de α est comprise
entre 0 et 1, tandis que I peut prendre huit valeurs différentes en fonction de l’orientation
considérée (tableau 1). Pour identifier un bloc
« destination » Rn, il suffit de le comparer à
l’ensemble des blocs « source » Dp. Pour trouver le
bloc Dp le plus proche du bloc Rn, la distance euclidienne séparant les blocs Dp et Rn, est minimisée, en faisant varier le facteur d’échelle α et le
facteur d’isométrie I. Cette distance s’écrit :
E pn = ∑
i =3
i =0
∑ (R (i , j) − α I {D
j= 3
j= 0
n
n
z
p (i , j)})
2
(10)
où αn est le facteur d’échelle du bloc « source » de
position p et Iz représente l’une des huit isométries utilisées, avec Iz = I1 ; I2 ; …, I8.
Cette opération est ensuite répétée pour tous les
blocs Dp. Soit (αn, p, Iz), les paramètres du codage
fractal qui minimisent la distance Epn. L’étape
finale est la production de la séquence binaire
caractérisant l’image compressée. À cet effet, les
paramètres (αn, p, Iz) et les indices de quantification vectorielle (Ind Q) sont codés simultanément
à l’aide de l’algorithme de Huffman.
2.7. Décompression
Le schéma de décompression que nous avons adopté est
présenté sur la figure 4. Dans ce schéma, la séquence
binaire provenant du processus de compression
est également décodée à l’aide de l’algorithme de
Huffman. Cette opération permet de restituer les
indices de quantification vectorielle (Ind Q) et les
paramètres (αn, p, Iz) issus du codage par des
fractales. Les indices Ind Q sont utilisés pour reconstruire les différentes sous bandes A3, C1, C2
et C3. Puis, l’image F(i, j) est reconstituée en appliquant une transformée inverse en ondelettes
biorthogonales à ces quatre sous bandes. Comme
on l’a fait précédemment, cette image subit une
décimation par quatre pour former l’ensemble des
blocs « source » Dp constituant l’image d(k, l). Les
blocs « destination » Rn de l’image « résidu » r(i, j)
à reconstituer sont obtenus par décodage des
blocs « sources » Dp. Pour ce faire, la transformation suivante est appliquée :
R n (i , j) = α n I z {D p (i , j)}
(11)
L’image décompressée F’(i, j) est finalement obtenue en additionnant les images F(i, j) et r(i, j),
pixel par pixel.
3. DONNÉES UTILISÉES
Pour élaborer l’algorithme décrit dans la section
précédente et évaluer ses performances, deux sortes d’images ont été utilisées:
l’image de Lena, qui est un portrait de référence
composée de diverses textures, dont des textures
Télédétection, vol. 6, n° 4 p. 345-360
COMPRESSION D’IMAGES NON ITÉRATIVE
très fines comme les yeux et les cheveux (figure 5) ;
une série d’images d’un capteur de METEOSAT
acquises toutes les 15 minutes dans le canal du
visible pendant l’année 2003 ; ces images ont été
prises par un capteur du satellite METEOSAT de
seconde génération (MSG), qui est un satellite
Sur la figure 6, on présente un exemple d’image
du capteur de METEOSAT que nous avons traitée. Cette image est formée de 512 x 512 pixels,
codés sur 256 niveaux de gris. Elle a été acquise
dans le canal à haute résolution visible (HRV audessus de l’Afrique du Nord, le 11 novembre 2003
à 12 h GMT.
géostationnaire doté de douze canaux différents
du spectre dans les bandes du visible et
l’infrarouge ; à titre indicatif, les principales caractéristiques de ces canaux sont présentées sur
le tableau 2.
bloc ‘destination’ Rn
Transformation
wn
bloc ‘source’ Dp
Figure 3 : Collage d’un bloc « source » sur un bloc « destination ». Pasting of “source” towards “destination” block.
4. RÉSULTATS ET DISCUSSION
Pour évaluer ses performances, l’algorithme de
compression/décompression représenté par les
organigrammes des figures 1 et 4, a été appliqué,
dans un premier temps, à l’image de Lena. Pour
ce faire, nous avons utilisé un microordinateur
Pentium 4 dont la fréquence de travail est de 2,4
GHz et qui est doté d’une mémoire centrale de
256 Mo et d’un disque auxiliaire de 40 Go. Comme
le montre la figure 7, l’image restituée par cet
algorithme est de bonne qualité, mais accompagnée d’artefacts très minimes. Pour mieux apprécier la pertinence de ces résultats, deux grandeurs caractéristiques ont été considérées. Ce
le taux de compression (C) et le rapport signal sur bruit (PSNR). Ce dernier étant exprimé
en valeurs de crête, est déterminé en comparant
l’image
reconstruite
après
compres-
sont
Télédétection, vol. 6, n° 4 p. 345-360
sion/décompression, à l’image originale. Ces deux
grandeurs sont, par définition :
⎛ bpp ⎞
C = 100 ⎜1 −
⎟
8 ⎠
⎝
⎛ 255 2 ⎞
⎟⎟
PSNR = 10 log⎜⎜
⎝ MSE ⎠
(12)
(13)
Dans l’équation (12), bpp est le nombre de bits
par pixel après codage et, dans l’équation (13),
MSE représente l’erreur moyenne quadratique,
calculée en considérant les écarts existant entre
l’image originale et l’image reconstruite.
La courbe de la figure 8 illustre les variations du
rapport signal sur bruit en fonction du facteur de
compression pour l’image de Lena. On voit que,
351
LAHDIR, AMEUR ET ADANE
pour de forts taux de compression, le rapport signal sur bruit avoisine 30 dB, prouvant ainsi que
l’image restituée est de bonne qualité. En particulier, pour un taux de compression de 93,75 %, on
trouve que le PSNR est de 32,9 dB. Un tel résultat montre tout l’intérêt de tenir compte de
l’information contenue dans l’image « résidu » lors
du processus de compression/décompression.
Dans une seconde étape, les résultats obtenus
avec l’image de Lena ont été comparés à ceux de
diverses méthodes publiées dans la littérature
(Jacquin, 1993 ; Lepsy et al., 1993 ; Thomas and
Deravi, 1995 ; Davis, 1998 ; Chung-Su, 1998 ;
Charier et al., 1999 ; Ameur et al., 2002). De telles
méthodes sont habituellement basées sur les systèmes de fonctions itérées locales (LIFS), sur les
ondelettes ou sur la DCT. Celles que nous avons
choisies de comparer sont répertoriées sur le tableau 3.
Le but de la comparaison est d’identifier les méthodes qui conduisent à un taux de compression
et un PSNR les plus grands possibles, avec un
temps d’exécution le plus court possible. Pour
faciliter cette comparaison, nous avons défini un
facteur de performance (Q), en procédant par analogie avec le facteur de mérite d’un amplificateur.
Le facteur (Q) est alors obtenu en effectuant le
produit du taux de compression et du PSNR
convertis en rapports sans dimensions.
D’après le tableau 3, la méthode FVQ (Fractal
Vector Quantizer), puis notre algorithme, sont les
plus performants du point de vue de la compression et de la restitution d’une image. Les temps
de compression et de décompression ont été estimés en fonction du type d’approche et du nombre
d’opérations à mener. Cette estimation a été effectuée en traitant l’image de Lena à l’aide de programmes spécifiques. Comme on l’indique sur le
tableau 4, le temps de décompression est pratiquement le même, quelle que soit l’approche employée. Pour le processus de compression, notre
algorithme opère avec un temps beaucoup plus
court que les méthodes basées sur les LIFS, car
ces dernières sont presque 200 fois plus lentes.
La rapidité de cet algorithme s’explique par la
réduction du nombre de blocs « source » pris en
considération lors de l’opération de collage par des
fractales et par le codage de ces blocs, qui est effectué sans aucune itération. En effet, le temps
nécessaire à l’opération de collage est proportionnel au nombre de pixels constituant les blocs de
codage (Marsault, 1995).
352
En résumé, les résultats présentés sur les tableaux 3 et 4 montrent que l’algorithme décrit sur
les figures 1 et 4 est celui qui réalise le meilleur
compromis entre le taux de compression, la qualité de restitution de l’image et la rapidité
d’exécution des calculs.
Dans une dernière étape, cet algorithme a été
appliqué à l’image de la figure 6. Sur la figure 9,
on présente l’image restituée après compression
et décompression. Sur cette figure, les nuages, les
catégories d’occupation des terres, la mer Méditerranée et l’océan Atlantique apparaissant sur
l’image originale sont bien reproduits et les
contours bien définis. La courbe de la figure 10
montre que le rapport signal sur bruit croît pratiquement comme le logarithme du facteur bpp.
Donc, le PSNR décroît lentement avec le taux de
compression (C) dans l’échelle des forts taux de
compression. Notons que l’espace-mémoire que
doit occuper la série d’images du capteur de METEOSAT, prises pendant toute l’année 2003, est
de 110 Go avant compression. L’application de
notre algorithme à toutes ces images a permis de
ramener cet espace à 6 Go, soit un gain de 104
Go, rendant ainsi possible leur stockage dans notre microordinateur. Par la suite, cette bibliothèque d’images satellitaires ainsi sauvegardée pourra contribuer à l’élaboration d’un historique de
l’évolution actuelle du climat.
Pour apprécier la flexibilité de notre algorithme,
ce dernier a aussi été testé sur deux images de
télédétection prises respectivement au-dessus de
Montréal et de Washington. La première est une
image de HRV de SPOT de taille 512 x 512 pixels,
ayant une résolution de 10 m et la seconde est
une image d’IKONOS formée de 706 x 401 pixels
avec une résolution de 1 m. Pour C = 92,6 %, on
trouve un PSNR de 23,17 dB et un temps
d’exécution de 9 s pour l’image HRV. Avec ce taux
de compression, le PSNR est de18,09 dB et le
temps d’exécution de 12 s pour l’image
d’IKONOS. Comme pour l’image du capteur de
METEOSAT, on constate que le facteur de qualité
est très élevé et le temps d’exécution, très court.
Remarquons cependant qu’on ne peut pas traiter
des images dont la taille devient supérieure à
1 000 x 1 000 pixels à cause de l’insuffisance des
ressources de la mémoire du microordinateur
Pentium 4 utilisé.
Télédétection, vol. 6, n° 4 p. 345-360
COMPRESSION D’IMAGES NON ITÉRATIVE
Séquences de bits
Décodage ‘Huffman’
IndQ
Décodage des sous bandes
Transformation inverse en
ondelettes biorthogonales
F(i,j)
Décimation par 4
d(k,l)
Formation des blocs
‘source’
Dp
(αn, p, Iz)
Décodage des blocs
‘destination’
Rn
Reconstitution de
l’image ‘résidu’
r(i,j)
Image décompressée
F’(i,j)
Figure 4 : Organigramme de décompression d’image. Flowchart of image decompression.
Télédétection, vol. 6, n° 4 p. 345-360
353
LAHDIR, AMEUR ET ADANE
Figure 5 : Image de Lena. Image of Lena. (Echelle : 512*512 pixels)
Figure 6 : Image du capteur de METEOSAT prise le 10 novembre 2003 à 12 h GMT. Image of METEOSAT sensor acquired
on November 10, 2003 at 12 h UTC. (Echelle : 512*512 pixels)
354
Télédétection, vol. 6, n° 4 p. 345-360
COMPRESSION D’IMAGES NON ITÉRATIVE
Figure 7 : Reconstitution de l’image de Lena (bpp = 0,5 bits/pixel et PSNR = 32,9 dB). Reconstitution of the image of Lena
(bpp = 0,5 bits/pixel and PSNR = 32,9 dB). (Echelle : 512*512 pixels)
40
ondelettes + fractales
Logarithmique (ondelettes + fractales)
Rapport signal sur bruit de crête (dB)
38
36
34
32
30
28
0
1
2
3
Bpp
Figure 8 : Rapport signal sur bruit (PSNR) en fonction du taux de compression (bpp) pour l’image de Lena. Signal to noise
ratio (PSNR) against compression ratio (bpp) for the image of Lena.
Télédétection, vol. 6, n° 4 p. 345-360
355
LAHDIR, AMEUR ET ADANE
Figure 9 : Reconstitution de l’image HRV de SPOT (bpp = 0,5 bits/pixel et PSNR = 31,05 dB). Reconstitution of the SPOT
HRV image (bpp = 0,5 bits/pixel and PSNR = 31,05 dB). (Echelle : 512*512 pixels)
35
ondelettes + fractales
Rapport signal sur bruit de crête (dB)
Logarithmique (ondelettes + fractales)
33
31
29
0
1
2
Bpp
Figure 10 : Rapport signal sur bruit (PSNR) en fonction du taux de compression (bpp) pour l’image HRV de SPOT. Signal to
noise ratio (PSNR) against compression ratio (bpp) for the SPOT HRV image.
356
Télédétection, vol. 6, n° 4 p. 345-360
COMPRESSION D’IMAGES NON ITÉRATIVE
Tableau 1 : Opérations d’isométrie. Operations of isometry.
Opérations d’isométrie
Application à un bloc Dp
Identité
I1{Dp(i, j)}=Dp(i, j)
Réflexion par rapport à l’axe vertical
I2{Dp(i, j)}=Dp(i,16 – 1 - j)
Réflexion par rapport à l’axe horizontal
I3{Dp(i, j)}=Dp(16 – 1 – i , j)
Réflexion par rapport à la première diagonale
I4{Dp(i, j)}=Dp(j, i)
Réflexion par rapport à la seconde diagonale
I5{Dp(i, j)}=Dp(16 – 1 - j,16 – 1 - i)
Rotation de + 90°
I6{Dp(i, j)}=Dp(j , 16 – 1 - i)
Rotation de + 180°
I7{Dp(i, j)}=Dp(16 – 1 - i,16 – 1 - j)
Rotation de – 90°
I8{Dp(i, j)}=Dp(16 – 1 – j , i)
Tableau 2 : Bandes spectrales des douze canaux du capteur de METEOSAT. Spectral bands of the twelve channels of the METEOSAT sensor.
Bande spectrale (µm)
Canal
Visible
: HRV
0,56 à 0,71
canal 0.6
canal 0.8
Proche infrarouge : canal 1.6
Infrarouge moyen : canal 3.9
0,56 à 0,71
0,74 à 0,88
1,5 à 1,78
3,48 à 4,36
Vapeur d’eau
: canal 6.2
canal 7.3
5,35 à 7,15
6,85 à 7,85
Infrarouge
: canal 8.7
canal 9.7
canal 10.8
canal 12.0
canal 13.4
8,3 à 9,1
9,38 à 9,94
9,8 à 11,8
11 à 13
12,4 à 14,4
Télédétection, vol. 6, n° 4 p. 345-360
357
LAHDIR, AMEUR ET ADANE
Tableau 3 : Comparaison des résultats obtenus sur l’image de Lena avec ceux publiés dans la littérature. Comparison
of the results obtained from the image of Lena with those published in the literature.
Types d’algorithme
Ondelettes + fractales sans
PSNR
Taux de compression
Facteur de performance
(dB)
C (%)
Q
32,90
93,75
1827,97931
32,20
93,75
1555,86273
31,40
92,50
1276,85544
32
93,37
1479,81477
31,50
94,12
1329,48034
26,56
97,56
441,846879
28,89
93,75
726,057935
32,85
94,91
1829,4139
32,22
93,75
1563,04426
itération
Quantification vectorielle
en sous bandes
(Ameur et al., 2002)
LIFS
d’après Jacquin
(1993)
LIFS
d’après (Lepsoy et al.,
1993)
LIFS
d’après Vines (1993)
LIFS
d’après Thomas and Deravi
(1995)
JPEG
(Charier et al., 1999)
FVQ
(Chung-Su, 1998)
JPEG2000
(Charier et al., 1999)
358
Télédétection, vol. 6, n° 4 p. 345-360
COMPRESSION D’IMAGES NON ITÉRATIVE
Tableau 4 : Comparaison des temps de compression et de décompression évalués pour différentes approches. Comparison of the compression and decompression times evaluated for different approaches.
Types d’algorithme
Temps de compression (s)
Temps de décompression (s)
Ondelettes + fractales sans itération
1
1
DCT (JPEG)
5
1
Ondelettes
3
1
Fractales (LIFS)
180
1
5. CONCLUSION
L’algorithme de compression et de décompression
des images que nous avons développé est capable
de compresser rapidement toute image avec de
forts taux de compression et de la restituer avec
une qualité appréciable. Ainsi, les tests effectués
sur l’image de Lena prise pour référence et sur
des images dans le visible acquises par le capteur
du satellite METEOSAT ont montré la supériorité
de cet algorithme vis-à-vis d’autres méthodes de
compression, telles que celles basées sur la DCT,
les ondelettes ou les fractales. En effet, celui-ci
réalise
un
très
bon
compromis
entre
l’accroissement de la compression d’une image, la
limitation du nombre d’altérations et la réduction
du temps de calcul. De telles performances ont pu
être atteintes grâce à la combinaison d’ondelettes
biorthogonales et de fractales que nous avons
adoptée pour réaliser le processus de compression
et de décompression des images. Ainsi, le processus de quantification vectorielle, suivi du codage
par des fractales, a permis d’augmenter le taux de
compression de façon significative, surtout lors de
la formation du domaine de contraction. Les artefacts, qui résultent de l’accroissement du taux de
compression, sont habituellement des effets de
blocs, des effets de bords ou des objets flous. Les
filtres biorthogonaux que nous avons employés
ont permis de réduire sensiblement l’importance
de ces artefacts, car ce sont des filtres symétriques à phase linéaire. Le codage fractal étant
sans itération, le temps de calcul est fortement
réduit. De plus, le procédé de décimation retenu
Télédétection, vol. 6, n° 4 p. 345-360
pour construire les domaines de contraction et de
collage contribue aussi à diminuer ce temps.
Notre algorithme, appliqué à l’ensemble des images du capteur de METEOSAT enregistrées durant l’année 2003, a permis de réduire de près de
90 % le volume des données satellitaires à sauvegarder, tout en gardant leurs propriétés initiales.
Il représente donc un outil puissant, qui rend possible l’archivage d’images météorologiques sur de
longues périodes et, par conséquent, l’étude des
changements climatiques à long terme.
Les tests effectués sur deux images de télédétection à haute résolution, de HRV de SPOT et
d’IKONOS, ont confirmé l’efficacité de notre algorithme et laissent entrevoir la possibilité
d’étendre ce dernier à la compression et à la décompression d’autres types d’images satellitaires.
Cependant, d’après ces tests, le traitement et
l’archivage d’images de taille beaucoup plus
grande ne peuvent guère se réaliser à l’aide d’un
microordinateur Pentium 4, à cause de
l’insuffisance de sa capacité mémoire. Pour de
telles tailles, il serait donc intéressant de rechercher un compromis entre la méthodologie utilisée
et la puissance des moyens de calcul requis.
Remerciements
Nous tenons à remercier vivement l’Office National de la Météorologie (Dar El Beida) pour avoir
mis à notre disposition les images du capteur de
METEOSAT ayant servi à notre étude.
359
LAHDIR, AMEUR ET ADANE
Références
Ameur, S., Adane, A. et Lahdir, M. (2002) Compression d’images Météosat en sous bandes par
transformation discrète en cosinus et quantification vectorielle. Télédétection, vol. 2, no 4, p. 255266.
Antonini, M., Barlaud, M., Mathieu, P. and Daubechies, I. (1992) Image coding using wavelet transform. IEEE Transactions on Image Processing, vol.
1, no 2, p. 205-220.
Averbuch, A., Lazar, D. and Israeli, M. (1996) Image compression using wavelet transform and multiresolution decomposition. IEEE Transactions on
Image Processing, vol. 5, no 1, p. 4-15.
Bedford, T., Dekking, F.M. and Keane, M.S. (1992)
Fractal image coding techniques and contraction
operators. Nieuw Archief Voor Wiskunde, vol. 4, no
10, p. 185-218.
Belloulata, K. (2005) Fast fractal coding of subbands using a non iterative block clustering. Journal of Visual Communication and Image Representation, vol. 16, p. 55-67.
Borko, F. (1995) A survey of multimedia compression techniques and standards. Part I : JPEG
standard. Real Time Imaging, vol. 1, p. 49-67.
Charrier, M., Santa Cruz, D. and Larsson, M.C.
(1999) JPEG2000, the next millennium compression standard for still images. Proceedings of the
IEEE International Conference on Multimedia
Computing and Systems (ICMCS’99), Florence,
June 7-11, 1999, vol. 1, p. 131-132.
Chung-Su, K., Rin-Chun, K. and Sang-Uk, L.
(1998) A fractal vector quantizer for image coding.
IEEE Transactions on Image Processing, vol. 7, no
11, p. 1598-1602.
Cosman, P.C., Gray, R.M. and Vetterli, M. (1996)
Vector quantization of image Subbands : A survey.
IEEE Transactions on Image Processing, vol. 5, no
2, p. 202-225.
Daubechies, I., Cohen, A. and Feauveau, J. (1992)
Biorthogonal bases of compactly supported wavelets. Communications on Pure and Applied
Mathematics, vol. 14, p. 485-560.
Davis, G.M. (1998) A wavelet based analysis of
fractal image compression. IEEE Transactions on
Image Processing, vol. 7, p. 141-154.
Davoine, F. (1995) Compression d’images fixes par
fractales basée sur la triangulation de Delaunay.
Thèse de doctorat, Institut national polytechnique
de Grenoble, Grenoble, 193 p.
Fisher, Y. (1994) Fractal image compression: Theory and Application. Springer-Verlag, New York,
234 p.
Hamzaoui, R. and Saupe, D. (2000) Combining
fractal image compression and vector quantization.
IEEE Transactions on Image Processing, vol. 9, no
2, p. 197-208.
Held, G. and Marshall, R.D. (1996) Data and image
compression : tools and techniques. John Wiley and
Sons, Chichester, 432 p.
Jacquin, A.E. (1992) Image coding based on a fractal theory of iterated contractive image transformations. IEEE Transactions on Image Processing,
vol. 1, p. 18-30.
Jacquin, A.E. (1993) Fractal image coding : A review. Proceedings of IEEE, vol. 81, p. 1451-1465.
Jacobs, E.W., Fisher, Y. and Boss, R.D. (1992) Image compression: A study of the iterated transform
method. Signal Processing, vol. 29, p. 251-263.
Lepsy, S., Oien, G.E. and Ramstad, T.A. (1993)
Attractor image compression with a fast non iterative algorithm. IEEE International Conference on
Acoustic Speech and Signal Processing, 27-30 avril
1993, Minneapolis, vol. 5, p. 337-340.
Lepsy, S., Carlini, P. and Oien, G.E. (1998) On
fractal image compression and vector quantization.
In Y. Fisher (dir.) NATO ASI Series Book : Fractal
Image Encoding Analysis, Springer-Verlag, New
York, 368 p.
Mallat, S.G. (1989) A theory for multiresolution
signal decomposition: the wavelet representation.
IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 2, no 7, p. 674-693.
Marsault, X. (1995) Compression et cryptage des
données multimédias. Hermès, Paris, 239 p.
Moureaux, J.M. (1994) Quantification vectorielle
algébrique pour la compression d’images. Application à l’imagerie radar à synthèse d’ouverture
(SAR). Thèse de doctorat, Université de Nice-Sofia
Antipolis, Nice, 130 p.
Thomas, L. and Deravi, F. (1995) Region-based
fractal image compression using heuristic search.
IEEE Transactions on Image Processing, vol. 4,
p. 832-838.
Vines, G. (1993) Signal modeling with iterated
function systems. Thèse de doctorat, Georgia Institute of Technology, Atlanta (GA), 120 p.
Wohlberg, B. and De Jager, G. (1999) A review of
the fractal image coding literature. IEEE Transactions on Image Processing, vol. 8, no 12, p. 17161728.
Zhao, Y. and Yuan, B. (1994) A hybrid image compression scheme combining block-based fractal
coding and DCT. Signal Processing : Image Communication, vol. 8, p. 73-78.
Ghosh, S.K, Mukherjee, J., Das, P.P. (2004) Fractal
image compression: a randomized approach. Pattern Recognition Letters, vol. 25, p. 1013-1024.
360
Télédétection, vol. 6, n° 4 p. 345-360