Anda di halaman 1dari 111

Plan

Introduction
1
Introduction
Qu'est-ce que la compression de donnes?
La compression consiste rduire la taille physique de blocs
d'informations. Un compresseur utilise un algorithme qui sert
optimiser les donnes en utilisant des considrations propres au type
de donnes compresser; un dcompresseur est donc ncessaire
pour reconstruire les donnes originales grce l'algorithme inverse
de celui utilis pour la compression.
La mthode de compression dpend intrinsquement du type de
donnes compresser : on ne compressera pas de la mme faon
une image qu'un fichier audio...

Introduction

Les principaux critres dvaluation de toute
mthode de compression sont :

Le quotient de compression;
Le taux de compression;
Le gain de compression;
Lefficacit.
Introduction
Quotient de compression: c'est le rapport du nombre de bits dans le
fichier originale par le nombre de bits dans le fichier compresse:
Q=Nboriginal/Nbcompress
Taux de compression: Souvent utilis, est l'inverse du quotient de
compression, il est habituellement exprim en pourcentage:
T=1/Q= Nbcompress/Nboriginal
Gain de compression: galement exprim en pourcentage, est le
complment 1 du taux de compression :
G=1-T



Introduction
Efficacit dun codage:
Notion dentropie: pour une source X comportant n symboles, un
symbole ai ayant une probabilit pi d'apparatre, l'entropie H de la
source X est dfinie comme :


Avec : pi=ni/N , ou ni est le nombre doccurrences du symbole ai dans le
message M compos de N symbole.
Introduction
Quantit dinformation dun message:
Soit M un message constitu de N symboles.
Supposons que lon construise un code qui, chaque symbole ai,
associe un mot code ci dont la longueur li (en nombre de bits) varie
selon sa probabilit dapparition. On montre alors que :


=>Lentropie est la limite infrieure du nombre moyen de bits juste
ncessaires au codage binaire dun fichier.

Introduction
Dfinissons l'efficacit d'un codage par:


Premier Thorme de Shannon: Pour toute source discrte sans
mmoire, il existe un codage permettant de coder la source et
dont l'efficacit est arbitrairement proche de 1.
Principe gnral de la
compression
pour une image la dpendance existante entre chacun des pixels et ses
voisins (la luminosit varie trs peu dun pixel un pixel voisin) traduit une
corrlation trs forte sur limage. On essaie donc de tirer partie de cette
corrlation, pour rduire le volume dinformation en effectuant une opration
de dcorrlation des pixels.
La dcorrlation consiste transformer les pixels initiaux en un ensemble
de coefficients moins corrls, cest une opration rversible.
10
Le schma fonctionnel de la compression
Principe gnral de la
compression
La quantification des coefficients a pour but de rduire le nombre de bits
ncessaires pour leurs reprsentations. Elle reprsente une tape cl de
la compression. Elle approxime chaque valeur dun signal par un
multiple entier dune quantit q, appele quantum lmentaire ou pas de
quantification. Elle peut tre scalaire ou vectorielle.
11
Le schma fonctionnel de la compression
Principe gnral de la
compression
Une fois les coefficients quantifis, ils sont cods. Un codeur doit
satisfaire priori les conditions suivantes :
Unicit : deux messages diffrents ne doivent pas tre cods de la
mme faon.
Dcodage: deux mots de codes successifs doivent tre distingus sans
ambigut.
Plusieurs types de codage seront dtaills ci-aprs.
12
Le schma fonctionnel de la compression
Classification des mthodes de
compression
3
Classification des mthodes de
compression
La compression physique
Agit directement sur les donnes, les bits; il s'agit ainsi de
regarder les donnes redondantes d'un train de bits un autre
sans regarder de quel type de donne il sagit (image, texte,
son, vido).
Zip, GZip, Rar
La compression logique
Effectue par un raisonnement logique en substituant une
information par une information quivalente. Elle utilise un
algorithme qui agit sur les donnes, selon le type de donnes.
TIFF -> scanners
RAW et JPEG -> appareils photos numriques
GIF -> WEb

Classification des mthodes de
compression
Classification symtrique et assymtrique
La compression symtrique, la mme mthode est utilise
pour compresser et dcompresser l'information, il faut donc
la mme quantit de travail pour chacune de ces oprations.
C'est ce type de compression qui est gnralement utilise
dans les transmissions de donnes.
La compression asymtrique demande plus de travail pour
l'une des deux oprations, on recherche souvent des
algorithmes pour lesquels la compression est plus lente que
la dcompression.
Classification des mthodes de
compression
Classification selon la
redondance
La plupart des mthodes de
compression visent enlever la
redondance prsente dans limage
de manire diminuer le nombre de
bits ncessaires sa
reprsentation.
La redondance spatiale entre
pixels ou blocs voisins dans
limage;
La redondance temporelle
entre images successives dans
une squence vido;

Compression sans pertes et avec
pertes
La compression avec pertes (lossy
compression), par opposition la
compression sans pertes (lossless
compression), se permet d'liminer
quelques informations pour avoir le
meilleur taux de compression possible,
tout en gardant un rsultat qui soit le plus
proche possible des donnes originales.
Classification des mthodes de
compression
Compression sans pertes
Retrouver les donnes originales
en dcompressant :
Gain despace sans perte
dinformation
Utilis si lintgrit des donnes
est importante :
Document texte, code, etc.
winzip, gzip, compress, bzip, GIF
Compression avec pertes
Donnes originales perdues :
Taille rduite par llimination
dinformation
Choix dun taux de compression
plus ou moins prjudiciable au
contenu
Faire en sorte que lutilisateur ne
sen rende pas compte
(compression ddie)
Applications :
Audio : mp3, ogg, wma, etc.
Images : jpeg, etc.
Vidos : MPEG, divx , etc
1.
2.
3.
4.
Types de mdias
4
Le mdia Son
4.2
Introduction
Diffrents types : Parole, Bruits, Musique,
Les sons sont des informations analogiques.
Le son est une sensation provoque par des vibrations.
Les ondes sonores ncessitent un support adquat (air,
mtal,).
Dans l'air calme, sous une pression atmosphrique
normale et 20 C,
vitesse de propagation du son = 340 m/s
Caractristiques
3 caractristiques :
Hauteur : sons graves/aigus.
Volume : intensit sonore.
Timbre : qualit de la sensation auditive qui diffrencie deux
sons de mme hauteur et de mme volume.

Caractristiques : Hauteur
Frquence de vibration de l'air. S'exprime en
Hertz (Hz) : nombre de vibrations par
seconde.
Son aigu
Hautes frquences
Son grave
Basses frquences
Reprsentation
frquentielle: le spectre
damplitude
Reprsentation
temporelle
Caractristiques : Hauteur
Superposition de 2 frquences :
la fondamentale & une harmonique
Harmonique : onde sinusodale lmentaire.
Harmonique fondamentale :
- La plus grave.
- Celle que retient l'oreille.

Les harmoniques :
- Des frquences plus leves se
superposent.
- Servent l'habillage du son et la
personnalisation du timbre.

Caractristiques: Volume (intensit sonore)
Hauteur de l'amplitude du signal /Force avec laquelle l'air frappe le
tympan. Cette pression sexprime en Pascal (Pa)
Unit non adapte la mesure des variations des pressions audibles :
rapport de 1/10 000 000 entre le seuil daudibilit (0.00002 Pa) et le
seuil de la douleur (200 Pa)
utilisation dune chelle logarithmique s'exprimant en dcibel (dB SPL
Sound Pressure Level ). Niveau
sonore
(dB)

=20log
10
(Pa/Pa
0
)
Pa et Pa
0
en pascal
Rq: Le dciBel est un rapport de deux grandeurs Pa & Pa
0
. Le niveau
dune onde sonore est dfini par rapport une valeur de rfrence Pa
0
.
Le dciBel na de signification physique que si lon connait Pa
0
.
Pa
0
= 20.10
-6
Pa=20 Pa


Caractristiques : Intensit Sonore
Les pressions exprimes en dB ne s'additionnent
pas
Exemples : 2 sons de 90 dB mis en mme temps
ne donnent pas un son de 180 dB :
N = 20 Log (Pa/Pa
0
+ Pa/Pa
0
)
= 20 Log (2 x Pa/Pa
0
)
= 20 Log 2 + 20Log ( Pa/Pa
0
)
= 6 + 20Log Pa/Pa
0
= 96dB
Source
Pression en Pa
Niveau en dB SPL
Avion 20 x 10
7
140
Marteau pneumatique 63 x 10
6
130
Seuil de la douleur 20 x 10
6
120
Conversation 1 mtre 63 x 10
3
70
Habitation calme 20 x 10
2
40
Niveau de rfrence 20 0
Caractristiques : Timbre
Constitu d'un ensemble de frquences appel
spectre :
Dpend du nombre de composantes (harmoniques),
accompagnent la frquence fondamentaleet de leurs
intensits relatives
C'est ainsi que l'on reconnat deux instruments de
musique jouant une mme note ou une personne qui
parle.
La richesse du spectre indique si un son est riche,
brillant, profond
Chane du son
Acquisitio
n
Stockage:
codage et
compression
format et
qualit
variables, perte
dinformation
Restitutio
n: haut
parleurs
Diffusion:
change de
musique,
son en
direct
Traitement:
Cration et
dition
analogique et
numrique.
manipuler le son.
Numrisation
Signal
analogique:
onde
continue
dans le
temps
Quantification Codage
Signal
numrique:
squence
binaire
Echantillonna
ge
Numrisation : chantillonnage
Exp.: chantillonnage 11 KHz.
Le son est analys 11.000 fois par
seconde

Temps
A
m
p
l
i
t
u
d
e

Consiste prendre un chantillon du signal
intervalles rguliers
Discrtisation dans le temps.
Choix du nombre d'chantillons par
seconde.
Numrisation : frquence d'chantillonnage
Nombre de mesures effectues par seconde lors de la numrisation
Plus la frquence est leve, plus on se rapproche du signal analogique
Thorme de Shannon : Pas de perte dinformation lors de la phase dchantillonnage
si lon chantillonne une frquence deux fois suprieure la frquence max du signal
Fe >= 2 Fmax



Frquence dchantillonnage
Qualit 8 KHz
Qualit AM 11 KHz
Qualit FM 32 KHz
Qualit HI-FI 37.8 KHz
Qualit CD-A 44,1 KHz
Numrisation : quantification
A
m
p
l
i
t
u
d
e

Temps
10
20
30
40
50
60
70
-70
-60
-50
-40
-30
-20
-10
0
Regroupement des amplitudes dans des
plages:
Discrtisation de l'amplitude.
Choix de la prcision de
reprsentation d'un chantillon.
20 0010
Numrisation : codage
A
m
p
l
i
t
u
d
e

Temps
10 0001
30 0011
40 0100
50 0101
60 0110
70 0111
-70 1111
-60 1110
-50 1101
-40 1100
-30 1011
-20 1010
-10 1001
0 0000
Association dune valeur
chaque plage do l attribution
des codes numriques aux
chantillons
Le nombre de bits de codage
permet de donner le nombre de
niveau de la quantification.
Exp :1 bit: 2 niveaux
2 bits: 4 niveaux
Rq: Plus le nombre de bits est
grand plus on dcrit mieux le
signal
Numrisation : Exemple de codage
Nombre de bits de codage : 2
Nombre de niveaux : 4
Numrisation : taille des donnes
Taille de la musique = F
chantillonnage
x Nb
bits
x Nb
sec
x Nb
voies

Exemple : 8 bits mono 8 bits Stro 16 bits mono 16 bits stro
(CD-A)
44,1KHz

43 ko/s
2580 Ko (1min)
86 ko/s
5160 Ko
86 ko/s
5160 Ko
172 ko/s
10320 Ko
La qualit de numrisation du son dpend de 3 paramtres :

1. Frquence d'chantillonnage
- Qualit tlphonique : 8 kHz.
- Qualit CD : 44,1 kHz.
2. Le nombre de bits par chantillon :
- 8 bits (qualit mdiocre).
- 16 bits (qualit CD).

3. Le nombre de canaux :
- un canal : son mono.
- Deux canaux : son strophonique.
- Quatre canaux : son
quadriphonique.
Techniques de compression
Un chantillon est gnralement corrl avec les chantillons
prcdents(il porte des informations redondantes)
Eliminer la redondance via la compression
Le procd de compression est performent si :
Taux de compression est lev
Sans dgradation de la qualit de restitution
Respect des ressources matrielles de la machine (la capacit de calcul
surtout)


Techniques de compression:Codage
diffrentiel
Codage diffrentiel :
Mesurer la diffrence entre deux chantillons successifs
La diffrence est beaucoup plus petite que lchantillon (elle peut
tre code avec une moindre prcision)
Exemple:
Squence binaire: 0101-0111-0101-0100-0101-0110-0111-0101-0100-0111
Codage 4-bits: 5-7-5-4-5-6-7-5-4-7
Codage diffrentiel(3bits): 0101-010-110-101-001-001-001-110-101-011
Taux de compression: 77.5%
Techniques de compression
e1 (0001) ; e2 (0010) ; e3 (0011)
e2 e1 = 1 ; e3 e2 = 1 (La diffrence sur un bit)
1.
2.
3.
4.
5.
6.
La compression sans pertes
4
1. Codge taille fixe (CTF)
Pour un message m
compos dun alphabet de
n caractres distincts, la
taille (nombre de bit
ncessaire) dun caractre
pour un codage binaire
taille fixe est :

2
ln( )
log ( )
ln(2)
x
x =
Ent[ log
2
(n) ] + 1
Exemple : Soit un
message de 36
caractres, compos
des caractres
A,B,C,D et E
Exercice : Calculer la
taille totale du
message pour un
codage binaire taille
fixe.

2. Codge Topologique
Etape 2 : On lit les donnes sources par bloc
de 8 octets, et on code chaque bloc de la
faon suivante :
a. On gnre un octet topologique dans
lequel les bits 1 dsignent la position
de loctet dominant dans le bloc lu.
b. Puis, on gnre la suite les caractres
du bloc lu en supprimant loctet
dominant. Cette suite constitue le sous-
mot de loctet topologique prcdent.

Caractristiques
Fonctionne sur les octets (8 bits).
Pour tre efficace il est ncessaire
quun des octets source soit sensiblement
dominant (par exemple 0).
Le taux de compression maximal est de
1/8
Principe
Etape 1 : Le caractre le plus frquent
de la source va jouer un rle
particulier, on nommera ce caractre
: loctet dominant.


2. Codage Topologique
Exemple
Soit un message source dont A est le
symbole de loctet dominant (les symboles sont
ici reprsents par des lettres, mais leur code
binaire a une longueur de 8 bits).
Considrons le bloc de 8 octets sources
suivants :
AABDEACA
Loctet topologique sera alors : 11000101
Et son sous-mot sera la suite de symboles :
BDEC
Si T est le symbole de loctet topologique ci-
dessus, alors le bloc compact sera la suite de
symbole : TBDEC

Exercice :

Calculer le taux de compression du
codage topologique en fonction de :
longueur du message, note m ; et le
nombre doccurrence du caractre
dominant, not |D|.

3. Codage longueur de plage
(RLE)
Caractristiques
RLE : Run-Length Encoding
Un des premiers algorithmes de
compression
Fonctionne sur les octets ou caractres.
Utilis par la plupart des fichier bimaps
(TIFF, BMP et PCX).
Simple implmenter et rapide
dexcution.
Efficace sur les messages comportant un
grand nombre de symboles conscutifs.

Principe :
Dans le message source les suites de caractre
conscutif sont remplaces par un codage compos
du nombre doccurrences du caractre suivi du
caractre.
Vocabulaire :
Dans le message source, une suite de caractres
conscutifs est appel un passage (ou une
course, run ).
Le code compress qui lui correspond est appel
paquet RLE, dans celui-ci :
le nombre doccurrences du caractre est
appel le compteur de passage ( run
count ).
et le caractre associ est appel valeur de
passage (run value).


3. Codage longueur de plage
(RLE)
Exemple1
Soit un message
AAAAAAbbbXXXXXt
Son codage RLE sera la chane de 4
paquets suivante : 6A3b5X1t
Exemple 2
Soit une partie dimage de 6 x 5 pixels
qui sont dfinis chacun par 3 couleurs
(RVB).


Taille avant compression18 x 5 = 90 octets
Nous avons donc:
29 x 134 + 7 x 150 + 6 x 134 + 6 x 150 + 3 x 153
+ 3 x 192 + 3 x 153 + 2 x 160 + 1 x 164 + 2 x
160 + 1 x 164 + 2 x 231 + 1 x 214 + 3 x 221 + 3
x 227 + 3 x 204 + 3 x 227 + 12 x 234
Nous allons "balayer" ce carr ligne par
ligne.
3. Codage longueur de plage
(RLE)
Etablissons les valeus de pixels en binaire:
Tout cela nous amne au fichier compress suivant:
Nous avons cod l'image sur 32 octets au lieu des 90 !!
Etablissons le multiple en binaire:
3. Codage longueur de plage
(RLE)
Variantes de RLE
Des schmas alternatifs de RLE peuvent tre crits de
telles manires qu'ils encodent les donnes de
manire verticale, colonne par colonne ou horizontale,
ligne par ligne ou bien par flots de 4 x 4 pixels ou
encore en zigzag.
Exercice
Considrons un message de longueur m comportant n
symboles diffrents. A quelle condition peut-on tre sr
que le codage RLE ne sera pas rentable quelque soit
lagencement des symboles dans le message.

4. Codage longueur variable
(VLC)
Principe
Lorsquon connat les occurrences des
caractres dun message, on peut adopter un
code longueur variable VLC (variable lenght
code) : on affectera le moins de bits aux
symboles les plus courants, et on rservera les
codes les plus longs aux moins probables.
Ces mthodes ncessitent une pr-analyse du
message compresser (calcul des occurrences).
Pour pouvoir tre dcod, le message
compress doit tre accompagn de lalphabet
utilis pour la compression.


Algorithme de Huffman
Algorithme de Shannon-
Fano
4.1. VLC : Algorithme de Huffman
Principe :
Etape 0 : Les caractres sont dabord tris
et classs en fonction de leur frquence
(occurrence). Un graphe est alors
construit de la manire suivante :
Etape 1: A partir des deux symboles
prsentant la frquence la plus faible, un
nud est cr. Il lui est affect un poids
gal la somme des frquences des
deux symboles.
Etape 2 : Le nud cr remplace
dsormais les deux symboles dans la suite
du processus. A ces derniers sont affects
respectivement les chiffres binaires 0 pour
le plus frquent et 1 pour le plus rare, (ou
linverse, il sagit dune convention
totalement arbitraire).
Etape 3 : La mme dmarche est reprise
en considrant les deux symboles ou
noeuds de poids le plus faible. Elle est
renouvele tant quil reste au moins deux
symboles ou nuds libres.

4.1. VLC : Algorithme de Huffman
Exemple :
Soit un message de 36
caractres, compos
des caractres A,B,C,D et
E, dont les occurrences
sont :
A : 7 fois
B : 6 fois
C : 5 fois
D : 14 fois
E : 4 fois

Les caractres sont
dabord tris et
classs en fonction
de leur frquence
(occurrence).
4.1. VLC : Algorithme de Huffman
Construction du
graphe
4.1. VLC : Algorithme de Huffman
Codage obtenu :
D (14) : 0
A ( 7) : 111
B ( 6) : 110
C ( 5) : 101
E ( 4) : 100
Exercices :
Calculer la taille totale du
message aprs codage.
Calculer le taux de
compression obtenu.


Codage des symboles
4.2. VLC : Algorithme de Shannon-
Fano
Principe :
Etape 1 : on classe les symboles par ordre de
probabilits dcroissantes
Etape 2 : on partage lensemble des symboles en
deux sous-ensembles, les 2 sous-ensembles devant
tre de probabilit aussi proche que possible
Etape 3 : on attribue chaque sous-ensemble ltat 0
ou 1
Etape 4 : on re-partage chaque sous-ensemble en
deux sous-ensembles de probabilit aussi proche que
possible, on attribue chaque nouveau sous-
ensemble ltat 0 ou 1, etc.

Exemple :
Soit un message de 36
caractres, compos
des caractres
A,B,C,D et E, dont les
occurrences sont:
A : 7 fois
B : 6 fois
C : 5 fois
D : 14 fois
E : 4 fois

4.2. VLC : Algorithme de Shannon-
Fano
4.2. VLC : Algorithme de Shannon-
Fano
4.2. VLC : Algorithme de Shannon-
Fano
Codage obtenu :
D (14) : 00
A ( 7) : 01
B ( 6) : 11
C ( 5) : 100
E ( 4) : 101
Exercice :
Calculer la taille totale du
message aprs codage.
Calculer le taux de
compression obtenu.


5. Codage arithmtique
Principe :
Le codage arithmtique se faite en 4 tapes:
Etape 1: Construction de la table des
frquences
Etape 2 : Construction de la table des
probabilits
Etape 3 : Dfinition des intervalles pour
chaque symbole
Etape 4 : Encodage du message
Le message original est code comme une
entit, non pas comme un ensemble de symbole:
Reprsentation du message sous forme dun seul
nombre rel


Considrons donc un exemple
pratique la chane:
"compressee"
5. Codage arithmtique
On dcide maintenant
d'associer chaque
symbole 'd' un domaine
dans l'espace des
probabilits, le but tant
d'associer un symbole
un domaine. La table
d'associations sera
transmise avec le
message encod .
5. Codage arithmtique
Algorithme de codage
arithmtique
dbut
Borne_Inf[];
Borne_Sup[];
Inf=0.0;
Sup=1.0;
c = lireCaractere();
TantQue (c!= EOF)
Sup = Inf + (Sup - Inf) *
Borne_Sup[c];
Inf = Inf + (Sup - Inf) * Borne_Inf[c];
c = lireCaractere();
Fin tant que
fin
Algorithme de dcodage
arithmtique
dbut
N %le code
Tant qu'il reste un symbole
trouver i / N e[a
i
; b
i
[ ;
sortir i ;
s = b
i
- a
i ;

N = (N - a
i
) / s ;
Fin tant que
fin

5. Codage arithmtique
Ainsi est la reprsentation arithmtique du
message "compressee". En 0.045672626
pratique, n'importe quel nombre compris
entre 0.045672626 et 0.045672644
reprsente
le bon message.
6. Codage base de dictionnaire
LZW
La mthode LZW (Lempel-Ziv-Welch) est utilise
dans les images aux formats GIF et TIFF, et est
la base de la compression applique aux archive
ZIP, RAR et ARJ.
Principe gnral
Etape 1 : Reprer des squences qui
apparaissent plusieurs fois, en construisant au fur
et mesure un dictionnaire de squences,
Etape 2 : Remplacer ces squences par leurs
indice dans le dictionnaire.
Le dictionnaire fait partie intgrante des donnes
compresses.
Pour que cette mthode soit efficace il ne faut
donc pas que sa taille soit suprieure celle
conomise en recodant les donnes.


Algorithme de codage LZW
Dbut
1-Initialisation du dictionnaire avec les caractres distincts
2-L=null
3-X=caractre suivant
4-Tantque la chaine LX existe dans le dictionnaire
L=LX
X=caractre suivant
Fin Tantque
5-Si XEOF
5.1-crire l'index de L dans le fichier compress
5.2-Ajouter la chaine LX dans le dictionnaire
5.3-L=X
5.4-aller 3
Sinon
crire l'index de L dans le fichier compress
Fin
6. Codage base de dictionnaire
LZW
Etape
1
Etape
2
Example : Utilisez lalgorithme LZW pour compresser cette chaine de caractre:
BABAABAAA
Dictionnaire Fichier
compress

Chaine Code
A 0
B 1
Dictionnaire Fichier
compress

Chaine Code 1
A 0
B 1
BA 2
L= O
X=B; LX= B L=B; X=A; LX=BA
6. Codage base de dictionnaire
LZW
Etape
3
Etape
4
Dictionnaire Fichier
compress

Chaine Code 10
A 0
B 1
BA 2
AB 3
X=B; L= A LX=AB; L=B
Dictionnaire Fichier
compress

Chaine Code 102
A 0
B 1
BA 2
AB 3
BAA 4
X=A; L= B; LX=BA L=BA,X=A;LX=BAA;L=A
6. Codage base de dictionnaire
LZW
Etape
5
Etape
6
Dictionnaire F. compress
Chaine Code 1023
A 0
B 1
BA 2
AB 3
BAA 4
ABA 5
X=B; L= A; LX=AB L=AB,X=A;LX=ABA; L=A
Dictionnaire F. compress
Chaine Code 10230
A 0
B 1
BA 2
AB 3
BAA 4
ABA 5
AA 6
X=A; L= A; LX=AA L=A
6. Codage base de dictionnaire
LZW
Etape
7
Dictionnaire F. compress
Chaine Code 102306
A 0
B 1
BA 2
AB 3
BAA 4
ABA 5
AA 6
X=A; L= A; LX=AA L=AA;X=EOF
7.Compression JPEG
JPEG sapplique sur les images.

Quel sont les caractristique du mdia image?
Nature physique de limage
Natures de la lumire:
1. Ondulatoire
Loptique ondulatoire considre la lumire
comme une onde lectromagntique.
Explique les phnomnes affectant les
ondes : interfrences, diffraction .










2. Corpusculaire
La thorie corpusculaire considre la
lumire comme un flux discontinu de
photons. Son nergie est lie la frq
de l'onde : E = h (h, constante de
Planck ; v, frq)
Explique les observations relatives
l'mission et l'absorption de la
lumire par la matire.
Vitesse de dplacement : ~ 300000
km/s.
Caractristiques :
Frquence. ~ 600000 Ghz ~ lg
donde : 500nm
Intensit.
Spectre de la lumire
Couleur dpend de la longueur d'onde





Couleur (notion perceptive) = lg donde (notion physique)
Attention : l'il ne distingue pas un Y monochromatique (une seule lg
d'onde) d'une composition de G et de R. Cest lillusion qui permet
d'afficher du Y sur les crans PC
Longueur d'onde (nm) Couleur
< 380 rayonnements ultraviolets
380 - 450 violet
450 - 490 bleu
490 - 560 vert
560 - 590 jaune
590 - 640 orange
640 - 760 rouge
> 760 rayonnements infrarouges
380nm
760nm
La perception visuelle
L'oeil humain :
Grce la corne et l'iris limage se forme sur la rtine
Rtine : cnes + btonnets
Btonnets : peroivent la luminosit et le mouvement
Cnes : diffrencient les couleurs
3 types : percevoir le bleu, le vert et le rouge.
Perception entre 400 et 700 nm.
Si un type de cnes manque : daltonisme.
Sensibilit de l'oeil
beaucoup + grande aux variations d'intensit (luminance) qu'aux
variations de couleur (chrominance)
Luminance (luminance) : % de N ou de B dans la couleur dsire, brillance de
la couleur , aspect clair ou sombre
Chrominance :
Teinte (hue) : dtermine la couleur souhaite partir des couleurs disposition
(R,G,B,C,J,M); correspond la couleur de base
Saturation (saturation) : mesure l'intensit ou la puret d'une couleur, % de couleur
pure par rapport au B (caractre vif ou terne/ couleur vive ou pastel), (
Synthse additive
Calcul fait par addition des longueurs d'onde de sources lumineuses
R, G, B : Toutes les couleurs peuvent tre synthtises en utilisant les 3
sources monochromatiques correspondant aux maxima de sensibilit
des 3 types de cne de la rtine de lil humain
Modle RGB
Mode de synthse adapt pour les sources lumineuses (tubes
cathodiques)
Exemple: 2 composantes G et R d'un moniteur d'ordinateur sont
allumes quand les phosphores associs sont frapps par les lectrons
les couleurs des phosphores juxtaposs se superposent en raison de
la mauvaise rsolution de l'il on voit du jaune


blanc
Mlange des couleurs par addition
Synthse soustractive
Calcul fait par soustraction des longueurs d'onde de la lumire
Mode de synthse adapte dans le mlange de pigments, le filtrage et
labsorption (imprimerie, peinture et art du vitrail)
Exemple :
L'herbe et les feuilles paraissent vertes car elles absorbent le
complmentaire du vert ( violets et ultraviolets). Ce sont les ondes
utilises dans la photosynthse.
L'encre filtre la lumire rflchie par le papier blanc
Lorsquon mlange 2 couleurs au pinceau, la couleur obtenue est le
rsultat d'une synthse soustractive
La couleur vue est la lumire non absorbe
Cyan, Magenta, Yellow : C R, M G, Y B alors que
B R & G, R G & B, G B & R
Ce sont les 3 couleurs complmentaires de RGB.
Modle CMY
Mlange des couleurs par soustraction
~noir
Pigment jaune
absorbe le bleu
W(R+G+B)
Y=R+G
Chane de limage
Acquisition/cration : numrisation (scanners, appareils
photos & camscopes numriques, carte dacquisition vido
)/synthse (via souris, tablettes graphiques ou par
modlisation 3D)
Codage
Perte d'information envisageable la compression
Stockage (disquette, disque dur, CD-ROM...)
Traitement : modifier la taille, la couleur, ajouter ou
supprimer des lments, appliquer des filtres,
Transmission
change de graphiques, de dessins, d'images.
Prolifration de formats, incompatibilits frquentes.
Restitution : Affichage, projection, Impression
Format des images
Les images vectorielles :
On dcrit l'image comme une association dobjets
graphiques simples (droites, ellipses,...).
Formats SVG, SWF,...

Les images bitmap :
Image pixlise. On indique la couleur de chaque pixel
Formats BMP, GIF, JPEG,...


Image Vectorielle
Images dcrites comme l'association dobjets graphiques
simples (droites, ellipses...).



3 types de donnes graphiques :
Points isols => objets ponctuels.
Lignes isoles => objets linaires.
Surfaces isoles => objets surfaciques.
Mthodes de reprsentation vectorielle :
Fil de fer 2D.
Polydrique.
Codage des contours
Redimensionnement
Pas de perte de qualit, les courbes sont lisses quelque soit
l'chelle d'affichage
Bitmap
Vectorielle
Le format WMF
WMF (Windows Meta File) format vectoriel
de Windows, utilis par Microsoft Draw, et
anciennes versions de Word, Excel.
Format mixte, pouvant contenir des
informations sous forme matricielle
Un fichier WMF contient :
Une suite d'objet (cercle, carre, bitmap,...).
Chacun dcrit par un entte.
Peut contenir jusqu 65535 objets
Autres formats vectoriels
SVG (Scalable Vector Graphics) : Spcification W3C bas sur XML pour grer
les images vectoriels notamment sur le web. Supporte les animations et le son.
Format du futur mais dbut difficile :
Pas dimplmentation native dans les navigateurs web; dveloppement en
cours.
Plug-in dAdobe : http://www.adobe.com/svg/viewer/install/main.html
Editeurs libres : Sodipodi et OpenOffice Draw
Apparition de banques de clipart sur l'Internet.
AI (Adobe Illustrator) Format de Adobe, trs populaire
EPS (Encapsuled PostScript) : Format mixte universel de Adobe bas sur
postscript mais contenant une image de prvisualisation vectorielle ou bitmap.
PDF (Portable Document Format): Format mixte universel de Adobe driv de
PostScript et prservant la mise en forme, les polices, les couleurs et les
graphiques du document source.
PICT (Picture) : Format par dfaut de Mac OS.
SWF (Flash) : Format danimation vectorielle propritaire de Macromedia destin
au web, trs populaire. Supporte les animations et le son.
DXF (Drawing eXchange Format): Format de AUtodesk utilis en DAO ( logiciel
libre QCad )
CGM (Computer Graphics Metafile) : norme ISO; Format mixte utilis en DAO

Avantages
Codage riche prenant en compte la smantique
Codage compact : fichiers de taille rduite
Redimensionnement sans perte de qualit
Retouches aises car lments de l'image
indpendants
Animation + simple grce aux vecteurs
Traduction aise en bitmap
Recherche de texte, dobjets
Lien hypermdia sur des objets, interactivit
Gnration automatique partir de donnes XML,

Limitations

Inutilisables pour des photographies
Pas adapte aux images complexes avec
bcp d'objets de petites tailles
Bcp de formats industriels, non
standardiss, non reconnus par les
navigateurs web
Impossible de transformer un bitmap en
vecteur
Image bitmap Pixelmap, matricielle, raster

On indique la couleur de chaque pixel.
Pixel (PICture ELement) : + petit lment constitutif
d'une image numrique





Codage des couleurs:
Choix du modle RGB
Certains formats supportent le modle CMYK.
Manipulation et restitution utilise dautres modles
Critres de qualit : couleur & dfinition
Dfinition (Ordinateur) Rsolution (Scanner, imprimante)
Taille de limage en nb de pixels Nb de points par unit de longueur (2,54cm) (unit dpi/ppp :
point par pouce)
300dpi 300 points sur une ligne de 2,54cm
Espace des couleurs
Reprsentation mathmatique d'un ensemble de
couleurs. Il en existe plusieurs :
Le codage RGB (Red, Green, Blue).
Le codage CMY (Cyan, Magenta, Yellow)
Le codage CMYK
Le codage HSL (Hue, Saturation, Luminance).
Le codage YUV : vido analogique (PAL et SECAM).
Y reprsente la luminance (l'information en N&B), Cb et Cr la
chrominance. Permet de transmettre des infos colores aux TV
couleurs, en restant compatible avec les TV N&B affichant en
niveau de gris.
Y = 0,299 * Rouge + 0,587 * Vert + 0,114 * Bleu
Cr = Rouge Y
Cb = Bleu - Y
Le codage YIQ
Le codage CIE

Modles RGB, CMY et CMYK
Modle RGB
La couleur est dfinie comme une somme pondre des couleurs
primaires.
Choix des couleurs primaires du systme : RGB : Red, Green, Blue
Modle CMY
La couleur est dfinie comme diffrence pondre entre le blanc et les
couleurs primaires.
Choix des couleurs primaires du systme : CMY : Cyan, Magenta,
Yellow
Modle CMYK
Extension du modle CMY
En pratique, le noir n'est pas tout fait noir.
Ajout d'une composante "noir pur".
CMYK : Cyan, Magenta, Yellow, BlacK.
Possibilit de remplacer les 3 encres couleurs par du noir pour rduire
la consommation d'encre


Modle naturel HSL
Modle de reprsentation proche de la
perception physiologique de la couleur par l'oeil
humain.
Le modle RGB ne permet pas de slectionner
facilement une couleur : claircir une couleur
augmenter proportionnellement la valeur des 3
composantes.
HSL (TSL en franais )
Hue
Saturation
Luminance
Systme de reprsentation
quation de conversion entre RGB et CMY
Exemple : Convertir le Blanc de RGB (1,1,1) CMY (0,0,0) et vice versa.
Conversion CMY vers CMYK : mme principe.


























C = 1 R M = 1 G Y = 1 B
R = 1 C G = 1 M B = 1 - Y
Codage des images
Coder une image
Le tableau de pixels.
La couleur des pixels :
Modle de reprsentation
Couleur des pixels : 2 mthodes
Mthode simple (pixelcouleur)
Mthode par palette (pixel indice dans la palette)


Mthode simple
Pour chaque pixel , chaque composante RGB occupe n bits.
Pixel occupe 3 x n bits.
Pixel peut avoir 2
3n
couleurs.
Mode True Color, Couleurs vraies : n = 8 24 bits 16 millions de
couleurs.
galement
Mode 32 bits :
Ajout dune 4
ime
composante sur 8 bits :le canal alpha.
gre la transparence ou la texture des points.
vite les effets de "marches d'escalier".
Mode N&B: 1 bit/pixel 2 couleurs possibles (N ou B)
Mode 16 couleurs/niveaux de gris
Mode 256 couleurs/niveaux de gris : 1 octet/pixel
Limitations :
Toutes les nuances ne sont pas utilise.
Pas assez de nuances pour une teinte donne.
Ex. : image sur la mer :bcp de nuances de B; peu de R.


Mthode par palette
Mthode par palette (colormap)
choisir les couleurs disponibles.
Image en couleurs indexes
La couleur de chaque pixel :
Est code comme une rfrence dans une palette.
La palette contient les composantes RGB de la couleur.
On obtient alors :
N couleurs parmi 2
3M
possibles.
N = nombre d'entres dans la palette.
M = nombre de bits utiliss pour coder une composante d'une
couleur dans la palette.
Taille d'une image
Taille brute : sans compression.
Taille = X . Y . n.
X = nombre de colonnes.
Y = nombre de lignes.
n = nombre d'octets ncessaires pour coder un pixel.
Exemple d'une rsolution de 1024 x 768. Nombre de couleurs Taille En octets En Ko
Noir et Blanc X*Y*(1/8) 98.304 96 Ko
Palette de 16 couleurs X*Y*(1/2) 393.216 384 Ko
Palette de 256 couleurs X*Y*1 786.432 768 Ko
True Color, 16 millions de couleurs. X*Y*3 2.359.296 2.304 Ko
Avantages
Adapt aux applications orientes images
Qualit photographique











Limitations

Codage "pauvre" de l'information.
Pas de distinction d'objet dans l'image.
Taille des fichiers importante.
Traitements d'image longs.





Avantages & limitations (2/2)
Limitations (suite) :
L'agrandissement provoque un effet de mosaque :






La cration d'une image " la souris" est difficile.
Usage conseill d'un priphrique de numrisation :
scanner, digitaliseur, appareil photo numrique...
Retouches dlicates : effacer un lment de l'image cre
un "trou".


Formats d'images bitmap
Nombreux
Caractristiques
Nombre de couleurs.
Mthode de compression utilise.
Contexte d'utilisation.
Comparaison : taille des fichiers pour les images
Nom Taille Rsolution Nombre de
couleurs
Image
Droopy 1024x768 72 DPI 256
Trounesol 1600x1144 72 DPI 16 millions
Format BMP
Dfini par Microsoft pour Windows
Caractristiques
1, 4, 8 ou 24 bits : jusqu' 16 millions de couleurs.
Compression : sans perte, RLE (rarement).
Fichiers de taille importante.
Reconnu par une majorit de logiciels.
Image Nb couleurs Compression Taille
Droopy 256 770 Ko
Droopy 256 RLE 613 Ko
Tournesol 16 millions 5363 Ko
Tournesol 16 millions RLE 1745 Ko
Format TIFF
TIFF (Tagged Image File Format).
Origine Aldus et Microsoft.
Standard de codage des images scannes; PAO, infographie, bureautique pour
les images au trait (cliparts, FAX).
Puissant mais complexe grer.
Possibilit d'adaptation et d'volution.
Diffrentes versions incompatibles!
Caractristiques :
Codage RVB, CMJN, couleur indexes, niveau de gris
Compression : RLE, LZW, JPEG, compression FAX, ou aucune.
Trs bonnes performances en compression d'images noir et blanc.
Fichiers assez gros.
Reconnu par une majorit de logiciels.
Image Nb couleurs Compression Taille
Droopy 256 Aucune 771 Ko
Droopy 256 LZW 364 Ko
Droopy 2 Huffman 156 Ko
Tournesol 16 millions Aucune 5364 Ko
Tournesol 16 millions LZW 3395 Ko
Tournesol 2 Huffman 462 Ko
Format GIF
Format GIF (Graphic Interchange Format) :
Compuserve, 1987 : GIF87a.
Caractristiques
256 couleurs parmi 16 millions.
Compression sans perte LZW, efficace s'il y a des zones
homognes.
GIF89a : possibilit de transparence, et d'animation.
GIF89a : possibilit d'entrelacement (chargement graduel de
l'image).
Trs utilis :
Reconnu par tous les logiciels ou presque
LE format du Web avec JPG.
Image Nb couleurs Compression Taille
Droopy 256 LZW 353 Ko
Tournesol 256 LZW 1203 Ko
Format PNG
PNG (Portable Network Graphic).
Pour remplacer le GIF (devenu payant!!!).
Le futur format du Web?
Caractristiques :
16 millions de couleurs.
Compression sans perte LZW.
Possibilit de transparence (niveau de transparence).
Possibilit d'entrelacement (chargement graduel de l'image).
Pas d'animation.
Pas support pas tous les navigateurs web
Image Nb couleurs Compression Taille
Droopy 256 LZW 310 Ko
Tournesol 256 LZW 2723 Ko
Format JPG
JPG ou JPEG (Joint Photographic Experts Group)
Comit cr en 1986
Norme adopte en 1992/93 (ISO/CEI 10918-1 ou UIT-T Recommandation T.81. )
JPEG 2000 : compression par ondelettes.
Caractristiques
16 millions de couleurs.
Compression avec perte
Possibilit d'entrelacement (chargement graduel de l'image).
Pas danimation, pas de transparence
Trs utilis
Reconnu par tous les logiciels ou presque
LE format du Web avec GIF
Image Nb couleurs Compression Taille
Droopy 16 millions Taux 1 451 Ko
Droopy 16 millions Taux 10 159 Ko
Droopy 16 millions Taux 20 119Ko
Droopy 16 millions Taux 99 17Ko
Tournesol 16 millions Taux 1 897 Ko
Tournesol 16 millions Taux 10 457 Ko
Tournesol 16 millions Taux 20 346 Ko
Tournesol 16 millions Taux 99 40 Ko
Contraintes dexploitation fix par le comit JPEG
Modes de compression avec ou sans dgradation
Implmentation hard ou soft
Rseau de transport Numris (64 kbits/s)
Affichage squentiel ou progressif
Objectifs fixs ambitieux
2.25 bits/pixel : qualit de loriginale
0.75 bit/pixel : qualit excellente
0.25 bit/pixel : qualit moyenne
0.08 bit/pixel : reconnaissable !


JPEG compression
JPEG compression
6 tapes
Format des donnes compresses et schma de d/codage.
Algorithmes de d/compression proposs mais non normaliss.
JPEG Dcoupage de limage (1)
& transformation des couleurs (2)
Dcouper limage en M carreaux f
i
(x,y) de 8 x 8 ou
16x16 pixels
les matrices doivent tre carres
petit bloc temps de calcul raisonnable
JPEG peut coder les couleurs sous plusieurs modles,
mais meilleure compression avec codage de type
luminance/chrominance (YUV)
Oeil + sensible luminance qu chrominance
JPEG Sous chantillonnage (3)
Exploiter la faible sensibilit de l'il la chrominance
sous chantillonner les signaux de chrominance
sous chantillonner 4:4:4, 4:2:2, 4:1:1
JPEG DCT (4)
Discrete Cosine Transform
Applique sur les matrices Y, Cb et Cr
Spare les basses et les hautes frquences
prsentes dans l'image
Mme principe que la transforme de Fourrier
Dcomposition de la fonction f(x,y) dans une
base de N*N fonctions dont la somme
pondres = f(x,y)
Calcul des coefficients C(u,v)
= ) (w o
)
2
) 1 2 (
cos( )
2
) 1 2 (
cos( ) , ( ) ( ) (
2
1
) , (
1
0
1
0
N
v y
N
u x
y x f v u
N
v u C
N
y
N
x
t t
o o
+ +
=


=

=
0 = w
2
1
1 si we[1,N-1]
si
JPEG DCT (4)
Fonction 2D
Coefficient DC = valeur moyenne du bloc : cest le plus important
Coefficients AC = puissance spectrale pour chaque frquence spatiale.
DCT
JPEG DCT (4)
C
JPEG Quantification (5)
Introduit les principales pertes
La DCT est conservatrice si on omet les erreurs darrondis.
Rduire le nb de valeurs correspondant aux amplitudes.
Hautes frquences = faibles amplitudes peu sensible pour l'il
limines.
Utilisation dune matrice Q (u,v) qui dfinit le niveau de
quantification pour chaque frquence
Moins de niveau pour les matrices de chrominance que
pour la luminance




Les tables doivent tre transmises au dcodeur
) , (
) , (
) , ( *
v u Q
v u C
v u C ~
JPEG Quantification (5)
C
C
*
=
Codage RLE, DPCM & Huffman (6)
RLE zigzag pour les AC dun carreau
Dans notre exemple RLE sur :
0, -2, -1, -1, -1, 0, 0, -1, EOB (End Of Block)
0, -2, #3 -1, #20, -1, EOB (End Of Block)
conomie de 3 valeurs
Compression diffrentielle DPCM des cfficients DC




Huffman sur les suites de DC et AC encods
Les tables doivent tre transmises au dcodeur



JPEG Dcompression
) , (

y x f
Dans notre exemple

Rsultat :



Erreur : e(x,y)
Amplitude max :5
Moyenne : 1.6
Moyenne normalis 1% (1,6/150)

Autres formats
PCX (PiCture eXchange).
Environnement PC (mode CGA).
256 couleurs.
Compression RLE, adapt de faibles nombres de couleurs.
PICT
QuickDraw.
Traite aussi le vectoriel.
Spcifique Macintosh.
FAX
Transmission de documents.
Codage binaire (noir et blanc).
Compression RLC puis type Huffman.
TGA
Cr par Truevision (cartes Targa et Vista).
Trs puissant (comme TIFF).
Peu connu.
Compression RLC.
Palettes graphiques haut de gamme (PC).

Exemple de dgradation JPG
Taux 1 Taux 10 Taux 20
897 Ko 457 Ko 346 Ko
Taux 50 Taux 75 Taux 99
241 Ko 119 Ko 40 Ko
Taux de compression JPG
Droopy, compression 10 (159 Ko)
Droopy compression 20 (119 Ko)
Rcapitulatifs
Pour Droppy
Compression sans perte : GIF & PNG.
Compression avec pertes : JPG.
Format Nb couleurs Compression Taille Droopy Taille Tournesol
BMP 256 770 Ko 5363 Ko
BMP 256 RLE 613 Ko 1745 Ko
TIFF 256 771 Ko 5364 Ko
TIFF 256 LZW 364 Ko 3395 Ko
TIFF 2 Huffman 156 Ko 462 Ko
GIF 256 LZW 353 Ko 1203 Ko
PNG 256 LZW 310 Ko 2723 Ko
JPG 16 millions Taux 1 451 Ko 897 Ko
JPG 16 millions Taux 10 159 Ko 457 Ko
JPG 16 millions Taux 20 119 Ko 346 Ko
JPG 16 millions Taux 99 17 Ko 40 Ko
Pour Tournesol
Compression sans perte :
GIF, mais 256 couleurs.
PNG, mais compression insuffisante.
JPG !!!
Compression avec pertes : JPG

Anda mungkin juga menyukai