Compression
Compression
Compression
format JPEG
Codage de canal :
adaptation signal / canal, taux d ’erreur faible
Codage de source, 2 types :
Codage sans perte (« entropique »)
Ex. : Huffman, Lempel-Ziv, Arithmétique, …
=> taux de compression faible (1.5 à 2)
3
Codage avec pertes (« irréversible ») :
Suppression des redondances
cad de l ’information inutile car :
prévisible
Exemple :
image = « matrice de pixels »
pixel = « picture element »
pixel codé sur un octet
8 bits => 256 niveaux de gris 28 256
« 0 » => noir
A B
C X
7
Historique Il y a, au fur et à mesure, complémentarité
entre les normes et complexification
Image fixe
1980 : Recommandation pour le fac similé
1992 : JPEG
« Joint Photographic Expert Group »
images couleurs et N&B (Ex : satellite, médicales, …)
1996 : H263
débitsinférieurs car pour réseau LAN (28.8 k bit/s)
formats image SQCIF, 4CIF, 16CIF
30 images/s
9
Vidéo : archivage et diffusion
1988 : fondement de MPEG
« Moving Picture Coding Experts Group »
3 parties : Vidéo, Audio et Système (le « stream »)
1993 : MPG1
but: la qualité VHS sur un CD-ROM (=> stockage)
débit bas de 1.5 M bit/s (ima. 352x288 + audio)
un accès aléatoire au sein de la séquence
1994 : MPEG2
but: diffusion de la vidéo (=> application télévisuelle)
adaptation aux formats (« scalabilité »)
• taille image 4/3 16/9
• entrelacé ou non, formats 4:2:0, 4:2:2, 4:4:4, compatibilité entre
niveaux de qualité (normale<-> HDTV) ….
MPEG3, originellement prévu pour la HDTV (TV Haute
10
définition) est inclus dans MPEG2
MPEG2
1998 : MPEG4
décomposition de la scène en éléments VOP
• VOP « Video Object Plane »
• chaque élément = une composante audio + une comp. Vidéo
• éléments réels ou de synthèse, forme arbitraire, …
• scalabilité
• une « boîte à outils de compression» pour les VOP
débits : 5 k bit/s à 5 M bit/s pour la vidéo
2 k bit/s à 64 k bit/s pour l ’audio
2000 : MPEG7 pour le multimédia (… jusqu ’à la
description sémantique de la scène) 11
2) Les formats image
(représentations des images)
2.1) Echantillonnage et quantification
Echantillonnage
un signal continu
diviser l ’axe des temps en intervalles réguliers
(discrétisation)
échantillonnage uniforme => Te constante
12
Théorème de Nyquist (échantillonnage) :
Période
d ’échantillonnage
trop grande
=> « aliasing »
T
Te
2
Fe 2 F
13
Quantification :
15
Modèles pour les images :
RGB (« Red, Green, Blue »)
=> les couleurs primaires additives
CMY (« Cyan, Magenta, Yellow »)
=> les couleurs primaires soustractives
Vidéo analogique :
NTSC
• 525 lignes/image dont 20 lignes de contrôle (TV ~320 lignes)
• image entrelacée
• 30 images/s, modèle YIQ
PAL
• 625 lignes/image
• 25 images/s
• image entrelacée, modèle YUV
18
Vidéo numérique
sous-échantillonnage de la chrominance :
• 4:4:4 : pas d ’échant.
• 4:2:2 : échant. horizontal
d ’un facteur 2
• 4:1:1 : échant. horizontal
d ’un facteur 4
• 4:2:0 :
– échant. horizontal et
vertical d ’un facteur 4
– positionnement du pixel
de chrominance
Y+Cr+Cb :
Cr+Cb :
Y : 19
Normes pour la vidéo numérique par le CCIR
(« Consultative Committee for International Radio »)
progressif
• débit : ~165 M bits/s pour CCIR 601 (NTSC)
• CIF ~ qualité VHS
• format 4/3
20
Normes pour la TV numérique par le ATSC
(« Advance Television Systems Comittee »)
21
3) JPEG
3.1) schéma général
22
3.2) DCT
Notion de fréquences :
1D
crêtes
2D
horizontales
verticales
diagonales
23
DCT (« Discrete Cosine Transformation »)
Transformation
Discrète en Cosinus
changement de l ’espace de représentation :
passage du domaine spatial au domaine fréquentiel
64 pixels 64 coefficients
24
DCT (suite), définitions
DCT
A(u ) A(v) 7 7 (2 i 1) u (2 j 1) v
F (u, v) cos cos f (i, j )
4 i 0 j 0 16 16
1 si 0
A( ) 2
1 sinon
DCT inverse
ˆf (i, j ) 1
7 7
(2 i 1) u (2 j 1) v
4 u 0 v 0
A(u ) A( v ) cos
16
cos
16
F (u, v)
1 si 0
A( ) 2
1 sinon
25
DCT (suite)
une décomposition sur
64 fonctions de base
(ou sous-images de base)
bloc sous-images
26
DCT (suite)
implémentation
des algorithmes rapides de calcul
transformation 2D ~~> 2 x transformations 1D
27
3.3) Quantification
Pourquoi : SVH moins sensible aux hautes fréq.
Idée : moins de bits pour les coeff. relatifs à ces fréq.
Quantification : F ' (u, v) entF (u, v) / q(u, v)
Reconstruction : F ' ' (u, v ) F ' (u, v ) q(u, v )
Ex. F (u, v ) 45 [décimal] 101101 [binaire] 6 bits
q(u, v ) 4
Coeff. AC
des
Basses fréq.
32
3.7) Codage entropique
Principe :
codeur « classique » :
un alphabet de mots de code de même longueur
(Ex. pour 8 symboles : 000, 001, 010, 011, 100, 101, 110, 111)
codeur entropique :
un alphabet de mots de code de longueurs différentes
(Ex. 00, 01, 10, 110, 010, 111, …)
attribuer aux symboles les plus probables, les mots de
code les plus courts
effet : réduction du coût moyen (débit [en bit])
de la transmission
33
Codage entropique avec JPEG
Coeff. DC :
mise en correspondance :
valeurs coeff. /
taille du mot représentant [bit]
Ex. : si DC=-9 => 4 bits
transmission de la paire :
(Taille, Valeur)
Coeff. AC :
codage de Huffman des paires (Coeff., Nb. de 0)
Mode séquentiel :
lemode de base
chaque plan est codé directement par un balayage
(gche->dt, haut->bas)
35
Les 4 modes d ’utilisation de JPEG
Mode progressif :
idée : transmettre d ’abord une image de basse
qualité, puis l ’améliorer par des ajouts successifs
2 façons :
sélection spectrale : transmettre d ’abord les coeff. DC
et quelques coeff. AC, puis d ’autres coeff. AC
approximations successives : transmettre d ’abord des
coeff. grossièrement quantifiés, puis les quantifier plus
finement et transmettre cette nouvelle information
Mode hiérarchique :
répond aux besoins de « scalabilité » de certains
décodeurs (dans un même flot binaire : plusieurs
résolutions, plusieurs modes, …)
par l ’imbrication d ’opérations d’échantillonnages /
codages / décodages / interpolations
36
3.10) Exemples
Image originale (300 Ko) Image compressée (10 ko)
37