Vous êtes sur la page 1sur 45

Codage JPEG

DR. N. ANNABI-ELKADRI
Triangle international de la CIE
diagramme de chromaticité
En colorimétrie, un diagramme
de chromaticité est une
représentation cartésienne où
les points représentent la
chromaticité des stimulus
de couleur
Triangle international de la CIE
LES DIFFERENTS MODES DE COULEUR DE
PHOTOSHOP : Les Modes colorimétriques RVB / CMJN
créer des images plus riches en couleurs
l'idée : de mélanger des couleurs primaires en « couches »
Il existe deux systèmes de représentation des couleurs par mélange,
selon qu'on les reproduisent sur un écran d'ordinateur : RVB
ou sur support papier via une imprimante : CMJN

4
LES DIFFERENTS MODES DE COULEUR DE
PHOTOSHOP : Les Modes colorimétriques RVB
La synthèse additive : c'est le phénomène qui se passe
lorsqu'un un écran affiche une image par la lumière.
On part du noir (lumière éteinte) et on va vers le blanc.
L'addition du rouge, du vert et du bleu donne le blanc

5
LES DIFFERENTS MODES DE COULEUR DE
PHOTOSHOP : Les Modes colorimétriques CMJN
La synthèse soustractive : c'est le phénomène qui se passe lorsqu'on mélange
des pigments colorés en peinture.
On part du blanc (support papier) pour aller vers le noir.
L’addition du Cyan, du Magenta et du Jaune donne le Noir

6
LES DIFFERENTS MODES DE COULEUR DE
PHOTOSHOP : Les Modes colorimétriques CMJN
les écrans d'ordinateur n’affichent que du RGB,
Photoshop sépare les images CMJN en 4 couches : Cyan, Magenta, Jaune et Noir
chaque couleur est exprimée en pourcentage
et les converti en RGB pour être affiché sur l'écran.
Cependant pour l'utilisateur, le fichier possède bien 4 couches distinctes sur
lesquels il est possible de travailler.

7
Etapes de compression/ décompression
d’une image JPEG

8
A - Transformation de couleurs :
Le modèle YCbCr Structure de la rétine
Les cônes
l’œil ne contient pas que des bâtonnets.
On y trouve aussi des cônes, qui sont
plus sensibles à la luminosité du rayon
lumineux, et moins à sa couleur.
Il se trouve que les cônes, bien que
moins nombreux, sont plus sensibles que
les bâtonnets.
L’œil remarque plus facilement les
variations de luminosité que les Les bâtonnets
variations de couleur. Photorécepteurs
9
A - Transformation de couleurs :
Le modèle YCbCr
Phénomène de Purkinje
 Domaine de la vision diurne ou photopique (luminance >10 nits).
(ex Jour)

 Domaine de la vision crépusculaire ou mésopique (luminance entre


10-3 et 10 nits). La sensation colorée persiste. La lumière blanche est
presque bleutée car la sensibilité au rouge est très faible.
(ex coucher de soleil)

 Domaine de la vision nocturne ou scotopique (luminance < 10-3 nit)


La sensation colorée disparaît.
(ex la nuit)
A - Transformation de couleurs :
Le modèle YCbCr
 Il est judicieux de séparer l'information de luminosité et l'information de couleur.
C'est ce qui est fait dans le modèle YCbCr :
le Y correspond à l'image en niveaux de gris,
et les deux autres nombres Cb et Cr (chrominance bleue et chrominance rouge)
permettent de reconstituer la couleur.

= + +

11
A - Transformation de couleurs :
Le modèle YCbCr
YCbCr est une manière de représenter l'espace colorimétrique.
si on a Y (Rouge + Vert + Bleu) et Cb (Y - Bleu) et Cr (Y - Rouge), alors le vert
peut être recréé mathématiquement.
Y le signal de luminance, plus deux informations de chrominance, Cb et Cr
Le récepteur peut recréer le vert et reproduire une image couleur.

12
A - Transformation de couleurs :
Le modèle YCbCr
Schématiquement, on transmet les trois composantes Y, U et V :
Y≃R+G+B
U≃B–Y
V≃R–Y
Dans la pratique, les luminophores (R,G,B) n'ont pas le même rendement,
on applique donc des coefficients correcteurs dépendant de la norme
utilisée.

13
A - Transformation de couleurs :
Le modèle YCbCr : luminance / chrominance
Le signal vidéo nécessite une information
de luminance et deux informations de chrominance
afin de reconstituer les trois couleurs primaires
rouge, vert et bleu (RGB).

La luminance est une grandeur correspondant à la


sensation visuelle de luminosité d'une surface.
Perception de l’œil humain

14
A - Transformation de couleurs :
Le modèle YCbCr : luminance / chrominance
La chrominance, ou chroma, désigne la partie du signal vidéo correspondant à
l'information de couleur.

Les signaux de chrominance différence bleu (B - Y) et différence rouge (R - Y)


peuvent subir des pondérations différentes selon les systèmes utilisés.

15
A - Transformation de couleurs :
Le modèle YCbCr : modèle mathématique
Rec. 709 : recommandation UIT-R BT 709 est un standard de l'industrie
audiovisuelle pour la haute définition (HDTV).

Le passage RGB à YCbCr peut être représenté au moyen d'une matrice, d'où le
nom de matriçage donné à cette opération :

16
A - Transformation de couleurs :
Le modèle YCbCr :
La première étape consiste à passer du modèle initial des couleurs de l’image
(souvent RVB) en modèle de type chrominance/luminance (YCbCr).

Ce modèle définit un pixel en fonction de sa luminance (intensité de la


couleur) et de deux informations de chrominance (la couleur du pixel).
Cette étape va permettre de préparer la prochaine étape :
le sous-échantillonnage
17
B - Sous-échantillonnage de la chrominance:
Introduction :
Le sous-échantillonnage de la chrominance est une méthode de réduction
de volume des images numériques.
diminuer le nombre d'échantillons à traiter : Décimation.
réduire l’information occupée par la chrominance.
Si l’œil humain est très sensible à la luminance, elle distingue par contre
très mal la chrominance.
Ainsi, une perte d’information sur ce point passera relativement inaperçu.

18
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage :
Exemple :
Une image représentée par les 3 tableaux suivants, un par composante :

19
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage :
Mais comme l’œil est moins sensible aux variations de chrominance, il ne sert
à rien de garder autant de valeurs sur les deux derniers tableaux
En faisant la moyenne sur chaque bloc de deux pixels de côté, on obtient les
nouveaux tableaux (le Y n'est pas modifié) :

20
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage :
On ne garde qu'une seule valeur sur les 4 identiques :

En effectuant cette opération, on a divisé par 4 la taille des données de


chrominance à compresser.
21
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage :
Quantification du sous-échantillonnage :
on représente une région de quatre pixels de largeur sur 2 pixels de hauteur et
on indique une série de 3 nombres J:a:b (par exemple 4:2:2)
J est le nombre d'échantillons de luminance (Y) par ligne (toujours identique
sur les deux lignes de J pixels).
a est le nombre d'échantillons de chrominance (Cb, Cr) sur la première ligne
de pixels.
B est le nombre d'échantillons de chrominance (Cb, Cr) sur la deuxième ligne
de pixels.

22
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage :
On distingue 3 types majeurs de sous-échantillonnages.

J nb d'éch. de luminance a nb d'éch. de chrominance B nb d'éch. de chrominance


(Y) par ligne (Cb, Cr) sur la 1ère ligne (Cb, Cr) sur la 2ème ligne

23
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage : 4:4:4
Le 4:4:4 est un sous-échantillonnage qui
consiste à ne rien faire.
Aucune compression n’est effectuée et
aucune perte de qualité ne peut être
enregistrée.

24
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage : 4:4:4
La 4:4:4 est utilisée dans le monde du cinéma et par les productions
audiovisuelles les plus exigeantes car elle ne présente aucun sous-échantillonnage
Chaque pixel est défini totalement, ce qui facilite les travaux sur l'image.
Le problème de cette structure est son débit très élevé ce qui entraîne un coût des
matériels de traitement et d'enregistrement et de montage.

Exemple
Formats d'enregistrements
• HDCAM SR : 1920×1080 / 4:4:4 / Quantification : 10 bits / Codec : MPEG-
4 Part 2 / Débit : de 440 à 880 Mbit/s / norme : SMTPE 409M.
25
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage : 4:2:2
Le 4:2:2 supprime les informations de la
chrominance sur une colonne sur deux.
La colonne restante possède alors la moyenne
des chrominances des deux colonnes.
Lors de la décompression, il suffira de recopier
cette information sur la colonne vide.

26
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage : 4:2:2
Les deux composantes de chrominance sont échantillonnées à la moitié de la fréquence
d'échantillonnage de luminance :
il y a deux fois moins d'échantillons,
la résolution de chrominance horizontale est réduite de moitié.
Cela réduit le débit d'un tiers, avec peu ou pas de différence visuelle.
Beaucoup de formats vidéo numériques haut de gamme et d'interfaces utilisent cette
structure.
Exemple
•Formats d'enregistrements
(Panasonic) DVCPRO HD : 1920×1080 / 4:2:2 / Quantification : 8 bits / Codec : intra DV /
Débit : 100 Mbit/s / Standard : SMTPE 274M.
27
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage : 4:2:0
Le 4:2:0 est un sous-échantillonnage qui effectue
le même processus que le 4:2:2
mais en effectuant aussi cette opération sur les
lignes.
On divise par 4 l’information de la chrominance.

28
B - Sous-échantillonnage de la chrominance:
Structures d'échantillonnage : 4:2:0
La structure 4:2:0 est un sous-échantillonnage utilisé par le grand public,
mais il peut aussi être utilisé par un professionnel s'il ne veut pas faire de
travaux importants sur l'image.

Exemples
•Formats d'enregistrements
• (Sony, Panasonic) AVCHD : jusqu’à 1920×1080 / 4:2:0 / Quantification : 8
bits / Codec : H.264 / Débit : 24 Mbit/s.

29
B - Sous-échantillonnage de la chrominance:
En résumé :
Pour 4 pixels, on n'en garde qu'un seul pour la
chrominance (Cr et Cb), représentant la moyenne
de ceux-ci.
Ainsi, de 12 valeurs initialement codées sur 4
octets (une pour chacune des trois composantes)
nous n'en gardons que 6 et divisons la taille de
l'image par 2

30
C - Le découpage en bloc de pixels :
Principe :
la compression va travailler sur des blocs de pixels seulement.
Ces blocs sont des matrices de pixels 8*8 soient 64 pixels.

31
D - La DCT (Discrete Cosine Transform) :
Principe :
La DTC est une étape qui permet d’évaluer l’amplitude des changements
d’un pixel à l’autre afin d’identifier les hautes et basses fréquences.
Les basses fréquences, très présentes dans une image, sont des zones
unies où les couleurs sont proches les unes des autres.
A l’inverse, les hautes fréquences sont des zones de contraste, de
changement rapide dans les couleurs.

32
D - La DCT (Discrete Cosine Transform) :
Principe :
Cette étape consiste à appliquer à notre matrice de pixels la formule
mathématique du DCT afin d’obtenir une matrice des fréquences.
Cette matrice sera utilisée dans la prochaine étape : la quantification.

33
E - La Quantification :
Principe :
La quantification a pour objectif d’atténuer les hautes fréquences d’une
image qui ont été mis en évidence par la DCT.
L’œil humain distingue mal les zones de contrastes (les hautes fréquences)
la quantification va permettre de diminuer l’importance de ces informations
superflues.
C'est lors de cette étape que l'image va être réellement compressée.
La technique est simple : Il suffit de diviser notre matrice des fréquences
avec la matrice de quantification pour obtenir notre matrice quantifiée.

34
E - La Quantification :
Calcul de la matrice de quantification :
L'utilisateur choisit au début la qualité de la compression
les développeurs du format JPEG ont estimé qu'il ne fallait pas dépasser un
facteur de 25, après quoi l'image était vraiment trop dégradée : le gain en
terme de nombre de bits utilisés pour coder l'image devient négligeable.
Grâce à ce facteur de qualité, on crée une table de quantification 8 lignes,
8 colonnes :

35
E - La Quantification :
Calcul de la matrice de quantification :
Exemple pour un facteur de qualité de 3 :

36
E - La Quantification :
Calcul de la matrice de quantification :
Ensuite chaque coefficient calculé par la DCT va être quantifié à l'aide de
cette table :

37
E - La Quantification :
Exemple de matrice de quantification :

Exemple avec le premier


coefficient de la matrice DCT :
38
E - La Quantification :
Exemple :
Cette matrice a un avantage qui sera utilisée dans la prochaine étape :
les valeurs non nulles sont toutes situées dans le bord haut-gauche de
la matrice.

39
F - Le codage :
Principe :
La dernière étape de la compression est le codage.
L’objectif va être d’encoder notre bloc de pixel à l’aide du codage RLE
suivit du codage de Huffman.
Comme nous ne savons pas encoder une matrice, nous devons la
transformer en chaîne de nombres.

40
F - Le codage :
Principe :
nous la parcourons de la façon suivante (en zig-zag) :

41
F - Le codage :
Exemple :

Nous obtenons alors la chaîne "79, 0, -2, -1, -1, -1, 0, 0, -1, 0…0"
auquel nous appliquons un codage RLE uniquement sur les nombre 0 pour
obtenir "79, 1[0], -2, -1, -1, -1, 2[0], -1, 55[0]"
42
F - Le codage :
Exemple :
Nous finissons alors par un codage de Huffman pour terminer le codage
de ce bloc de pixel.
Une fois l’opération appliquée à tous les blocs de pixels, nous obtenons
un fichier compressé JPEG.
Le stockage de données compressées par la méthode JPEG dans un
fichier est définie par la norme JFIF (JPEG File Interchange Format).

43
Pour conclure :
1. L’image en base RVB est convertie en base YCbCr et
les composantes de chrominance (Cb et Cr) sont
sous-échantillonnées. Ensuite les trois composantes
sont traitées séparément.
2. Pour chaque composante, on groupe les valeurs par
blocs de 8x8 valeurs. Pour chaque bloc on applique
un codage avec DCT
3. La matrice obtenue par DCT est quantifiée (ce qui
induit une compression destructrice de l’image).
4. Pour chaque composante, on entreprend une
compression sans perte des matrices quantifiées en
parcourant les blocs de l’image en zigzag puis on
utilise une compression RLE et un codage de
Huffman
44
Pour conclure :

45

Vous aimerez peut-être aussi