Beruflich Dokumente
Kultur Dokumente
La grande différence entre images numériques et analogiques est que les images numériques peuvent se décrire par un ensemble fini de valeurs entières. Si on
connait cette suite de valeurs, on peut recréer une copie exacte de l'image d'origine. On peut assimiler cette suite de valeurs entières à un "code génétique" de l'image.
Au contraire, une image analogique est liée à un support matériel: plaque photo, pigments de peinture et toile, par exemple. Il n'est pas possible de reproduire
l'image originale à l'identique. Les copies sont nécessairement dégradées par rapport à l'original.
Ceci est un point fort très important des images numériques: on peut créer de nombreuses répliques de l'image sans dégradation et on peut facilement transmettre,
stocker, dupliquer ce fameux "code génétique" d'une image numérique comme on transmettrait un texte. Par exemple il est absolument impossible de faire passer une
diapositive par le réseau téléphonique, par contre transmettre une suite de valeurs entières c'est très facile! De plus le code de l'image numérique est indépendant du
support : le support vieillit, le code, lui ne vieillit pas.
• le nombre de valeurs permettant de décrire une image numérique est très grand ( on atteind rapidement plusieurs millions) et d'autant plus grand que l'on
souhaite une bonne qualité d'image. De plus, le code de l'image est lui-même stocké sur des supports matériels (disquettes informatiques, CD-ROM) qui
vieillissent et peuvent même devenir obsolètes si les machines qui permettent de les lire n'existent plus!
• Enfin, l'apparence finale d'une image numérique dépend beaucoup des logiciels et matériels (écrans, imprimante,...) qui vont interpréter le code de l'image.
Même si le code de l'image est rigoureusement identique, deux écrans d'ordinateurs différents ne l'afficheront pas nécessairement avec les mêmes couleurs.
Nous allons voir comment est formé ce "code génétique" de l'image numérique:
---->
3.1.2 Pixels
• Une image numérique contient un nombre fini de points. Ces point sont appelés pixels (contraction des mots anglais "picture element", c'est à dire élément
d'image).
• Les pixels sont situés sur une grille régulière. A chaque pixel de la grille est associé une couleur ou une nuance de gris. Le passage d'une image continue à une
grille de pixels s'appelle l'échantillonage : on ne conserve que quelques points d'une image continue.
La taille du pixel définit la résolution par rapport à l'image analogique originale, c'est-à-dire la finesse de la grille. Plus la résolution baisse, plus le nombre de pixels
dans l'image diminue, et plus la qualité de l'image numérique se dégrade (voir figure 2).
Pour choisir la bonne résolution, il faut connaître l'utilisation de l'image : est-elle destinée à être simplement visualisée ou doit-elle servir pour des mesures
scientifiques? Sera-t-elle vue sur un écran d'ordinateur personnel ou dans une salle de cinéma? La qualité de l'image est-elle primordiale pour l'application visée ou une
qualité limitée suffit-elle?...
Figure 2 : variation du nombre de pixels. En réalité lors de l'affichage à l'écran la taille est divisée par 4 à chaque étape.
3.1.3 Niveaux de gris
Dans une image numérique, Le découpage en pixels constitue une discrétisation, mais la valeur de chaque point est également discrétisée.
Dans une photo argentique en noir et blanc, un point peut avoir n'importe quelle nuance entre le noir et le blanc. Sa valeur est continue. Dans une image numérique, un
point ne peut prendre qu'un nombre fini de valeurs entre le noir et le blanc. (voir figure 3). Ces valeurs sont appelées niveaux de gris. Les N niveaux de gris sont
représentés par les entiers de 0 a N-1. 0 est traditionnellement attribué au noir et N-1 au blanc.
figure 3 : quantification des niveaux de gris : passage d'une suite continue de valeurs à un ensemble discret de N valeurs.
Les images que l'on appelle en "noir et blanc" dans le langage courant sont appelées images en niveaux de gris dans le domaine de l'image numérique. Une image
ne comportant que 2 niveaux de gris : 0 (noir) et 1 (blanc) est appelée une image binaire
L'opération de discrétisation des valeurs est appelée quantification. On dit que les valeurs de niveaux de gris sont des valeurs quantifiées
Dans le cas des images numériques couleurs, la couleur est représentée par 3 valeurs au lieu d'une. Le plus souvent ces 3 valeurs sont les composantes Rouge, Vert,
Bleu de la couleur (voir section 3). De la même façon que pour les niveaux de gris, les 3 valeurs sont quantifiées. Une couleur est donc représentée par 3 entiers.
Le choix de N, le nombre de niveaux de gris ou de couleurs a des conséquences sur la qualité de l'image (voir figure 4).
256 niveaux de gris 128 niveaux de gris 64 niveaux de gris 32 niveaux de gris
Si l'image est uniquement destinée à être visualisée une centaine de niveaux de gris est suffisante. Au delà le système visuel humain ne perçoit pas d'amélioration (on
verra plus tard pourquoi c'est généralement le nombre de 256 niveaux de gris qui est utilisé).
Dans le cas des images couleurs, l'oeil ne peut pas distinguer simultanément plus de 300 couleurs dans une image. Cependant ces couleurs doivent être bien adaptées
à l'image. Une solution courament employée est d'utiliser 256 nuances pour chacune des composantes Rouge, Vert, Bleu. Ainsi 16 millions de couleurs différentes
peuvent être représentées. Parmi celles-ci ont trouve généralement 300 couleurs adaptées à l'image (voir images palettées)..
Il est parfois nécessaire d'augmenter le nombre de niveaux de gris ou de couleurs, lorsque l'on veut conserver un maximum de précision sur les valeurs en chaque
pixel. Cela peut-être par exemple pour des raisons techniques (valeurs servant par la suite à du calcul scientifique) ou pour des raisons éthiques (images médicales que
l'on souhaite dégrader le moins possible pour éviter tout artefact pouvant mener à des erreurs de diagnostic).
Bien sûr la conséquence d'une augmentation du nombre possible de niveaux de gris ou de couleurs est une augmentation de la taille mémoire occupée par le code de
l'image.
3.1.4 L'image numérique : un tableau d'entiers
Après ces 2 étapes de discrétisation des positions et des valeurs, l'image numérique se représente sous la forme d'un tableau à deux dimensions contenant des valeurs
entières pour les images en niveaux de gris ou des triplets de valeurs entières pour les images couleurs (voir figures 4).
Figure 5 : exemple de codage d'un morceau d'image en niveaux de gris à l'aide d'entiers compris entre 0 pour le noir et 255 pour le blanc
Pour l'adapter aux supports et moyens de transmission informatiques, il doit être retranscrit en binaire (voir section 2)
3 . 1 Exercices
sous Gimp, logiciel gratuit pour Unix et Windows, chargez une image à l'aide du menu
"Fichier" de la toolbox. Pour agrandir cliquez sur l'image avec le bouton droit de la souris
et choisissez le menu "Affichage->zoom->->zoom avant" (ou utilisez la touche "+")
Questions:
On peut observer un "pavage" de l'image : les pixels sont regroupés par blocs (ceci est typique des images au format jpeg et sera
expliqué plus loin). Quelle est la taille de ces blocs (en pixels)?
3.1 Pixels et niveaux de gris
1 - Par rapport aux images analogiques, les images numériques ont pour avantage principal:
- vrai
- faux
- vrai
- faux
- vrai
- faux
6 - L'échantillonage :
- est l'opération qui consiste à discrétiser les positions des points de l'image
7 - L'origine du mot pixel:
- le blanc
- le noir
- un gris intermédiaire
A l'issue de la numérisation, une image numérique est constituée d'un tableau de valeurs entières. Pour pouvoir stocker et transmettre cette image comme n'importe
quelle autre donnée informatique, il faut la coder en binaire, c'est-à-dire la décrire par une suite de 0 et de 1.
3.2.2 Principe
Pour coder l'image en binaire, on remplace chaque valeur entière de niveau de gris par son code en binaire , i.e. sa valeur en base 2.
Une valeur binaire est appelée un "bit" (contraction des mots anglais "binary digit" qui signifient chiffre binaire).
En informatique les données sont regroupées par groupes de 8 bits. Un groupe de 8 bits est appelé "octet" en français, "byte" en anglais.
En utilisant 8 bits, on peut représenter en base 2 tous les entiers de 0 à 255 (on rajoute si besoin est des 0 devant la valeur en base 2). C'est pourquoi on choisit souvent le
nombre de 256 niveaux de gris.
valeur en
entier valeur sur 8 bits
base 2
0 0 00000000
1 1 00000001
2 10 00000010
3 11 00000011
4 100 00000100
5 101 00000101
6 110 00000110
7 111 00000111
8 1000 00001000
9 1001 00001001
10 1010 00001010
11 1011 00001011
12 1100 00001100
.... ... ...
Plus généralement, en utilisant k bits, on peut représenter 2^k entiers:
Le code en binaire de l'image entière est obtenu en parcourant l'image ligne par ligne et en juxtaposant le code binaire de chaque pixel rencontré.
186 192 198 179 150 131 101 73
194 207 205 101 34 23 23 27
198 190 185 171 78 17 25 29
198 196 157 87 93 60 24 26
194 206 138 67 34 32 31 29
sélection de
image d'origine en noir et blanc la tête du détail des valeurs des pixels
pêcheur
Figure 1 : codage des pixels en niveaux de gris par des entiers entre 0 et 255
Figure 2 : codage des valeurs entières en binaire
186 192 198 179 150 131 101 73 10111010 11000000 11000110 10110011 10010110 10000011 01100101 01001001
194 207 205 101 34 23 23 27 11000010 11001111 11001101 01100101 00100010 00010111 00010111 00011011
198 190 185 171 78 17 25 29 11000110 10111110 10111001 10101011 01001110 00010001 00011001 00011101
198 196 157 87 93 60 24 26 11000110 11000100 10011101 01010111 01011101 00111100 00011000 00011010
194 206 138 67 34 32 31 29 ----> 11000010 11001110 10001010 01000011 00100010 00100000 00011111 00011101
191 141 66 34 28 22 32 32 codage 10111111 10001101 01000010 00100010 00011100 00010110 00100000 00100000
201 86 23 20 26 12 23 27 binaire 11001001 01010110 00010111 00010100 00011010 00001100 00010111 00011011
193 211 104 33 22 15 21 20 11000001 11010011 01101000 00100001 00010110 00001111 00010101 00010100
199 192 119 32 20 29 34 26 11000111 11000000 01110111 00100000 00010100 00011101 00100010 00011010
203 203 111 23 27 19 18 25 11001011 11001011 01101111 00010111 00011011 00010011 00010010 00011001
193 200 189 79 21 30 30 12 11000001 11001000 10111101 01001111 00010101 00011110 00011110 00001100
1011101011000000110001101011001110010110100000110110010101001001
1100001011001111110011010110010100100010000101110001011100011011
1100011010111110101110011010101101001110000100010001100100011101
1100011011000100100111010101011101011101001111000001100000011010
1100001011001110100010100100001100100010001000000001111100011101
1011111110001101010000100010001000011100000101100010000000100000
1100100101010110000101110001010000011010000011000001011100011011
1100000111010011011010000010000100010110000011110001010100010100
1100011111000000011101110010000000010100000111010010001000011010
1100101111001011011011110001011100011011000100110001001000011001
1100000111001000101111010100111100010101000111100001111000001100
b - Cas des images couleur
Ce principe s'étend facilement aux images couleurs. Pour chaque pixel, on code en binaire chacune des 3 valeurs des composantes R,V,B de la couleur
du pixel. Le code binaire de l'image est obtenu en indiquant successivement pour chaque pixel le code binaire des 3 composantes. Si on code chaque
composante sur 8 bits, chaque pixel sera donc représenté par 24 bits.
suivante :
+
99 99 99 115 99
99 99 99 99 99
115 99 99 115 99
99 99 99 99 99
99 99 99 99 90
image affichée codage RVB représentation sous forme de triplets RVB, un par pixel
On désigne par volume ou poids d'une image, la quantité de mémoire informatique nécessaire pour la stocker. On parle parfois de taille mémoire d'une image, mais le
terme de "taille" désigne la dimension en nombre de lignes et nombre de colonnes de l'image.
Le volume d'une image est tout simplement le nombre de bits de son code binaire.
• bits (b),
• octets (o ou B),
• kilo octets (ko ou kB) ; 1ko = 2^10 o = 1024 octets,
• Mega octets (Mo) ; 1 Mo = 2^10 ko = 1024 ko,
• Giga octets (Go); 1 Go = 2^10 Mo = 1024 Mo
• Tera octets (To) ; 1 To = 2^10 Go
Le nombre de bits se calcule simplement en multipliant le nombre de pixels par le nombre de bits pour représenter un pixel
Le nombre de pixels c'est le nombre de lignes multiplié par nombre de colonnes. Le nombre de bits pour représenter un pixel est variable :
Exemple:
303 x 452 x 3 = 410.868 octets 303 x 452 = 136.956 octets (303 x 452) / 8 = 15.604 octets
303 x 452 x 3 x 8 = 3.286.944 bits 303 x 452 x 8 = 1.095.648 bits 303 x 452 = 136.956 bits
Figure 4: comparaison du volume d'une image de 303 par 412 pixels pour différents codages.
Les images nécessitent donc beaucoup de place mémoire. Ceci a plusieurs conséquences :
• même avec les technologies actuelles, elles remplissent rapidement les supports informatiques.
• leur transmission par réseau est longue :
• la présence d'images sur un site web ralentit considérablement la consultation du site.
• si la transmission est facturée selon la durée, la transmission d'images est coûteuse.
Les solutions les plus courantes à ces problèmes sont les suivantes :
Pour réduire le volume = nombre de pixels x nombre de bits par pixel on peut:
Cette technique permet de transmettre une version grossière de l'image, puis des informations de rafinement. Ainsi, la présence d'images sur un site web ne bloque pas
sa consultation : l'utilisateur reçoit très rapidement une version basse qualité de l'image et il a le choix entre attendre la version finale haute qualité ou continuer sa
navigation sur une autre page.
Les volumes indiqués plus haut ne correspondent généralement pas au volume des fichiers contenant des images.
En effet, la plupart des formats d'images intègrent une compression de l'image qui peut-être :
• sans perte : il est possible de retrouver la matrice des valeurs entières représentant l'image sans aucune modification.
• avec pertes : on ne peut pas retrouver l'image originale : après décodage du fichier, on affichera une image dégradée (mais on aura gagné beaucoup de volume
!).
Certains formats de fichiers contiennent le code binaire de l'image d'origine, tel quel, précédé de quelques informations globales (telles que le nombre de lignes et de
colonnes et le nombre de niveaux de gris ou de couleurs). C'est le cas par exemple des formats pbm, pgm et ppm (respectivement utilisé pour les images binaires, en
niveaux de gris et couleurs), voir chapitre 6 .
3 . 2 Exercices
• Téléchargez l'image "fleur.jpg" en cliquant sur l'image ci-contre avec le bouton droit de la
souris et sauvegardez-la.
• Chargez-la sous Gimp et créez le fichier fleur-ascii.ppm à travers le menu "Fichier ->
enregistrer sous". Vous sauvegardez votre image avec le suffixe ppm, puis choisissez le
codage ascii.
• Fermez "fleur.jpg" et chargez "fleur-ascii.ppm"
• Visualisez le codage de l'image de la fleur en chargeant le fichier fleur-ascii.ppm dans un
éditeur (word ou autre). Ce format "ppm" correspond aux valeurs codées, non en binaire,
mais en ascii c'est à dire comme caractères décimaux.
Questions:
- 1024 Mo
- 1024 Ko
- 2 octets
- 3 octets
- 6 octets
4 - Sur un écran en 256 couleurs une image est plus petite que sur un écran en 16 millions de couleurs
- Vrai
- Faux
• Synthèse additive
• Synthèse soustractive
• Gamut
• RVB/RGB
• TLS/HSV-HLS
• XYZ
• Lab
• YUV-YCbCr/YIQ
• CMJN/CMYN
• sRVB/sRGB
Comme on l'a vu dans le chapitre Système Visuel Humain, la notion de couleur est subjective: elle résulte de la perception de la lumière par le système
visuel humain.
Il faut donc bien distinguer la couleur physique et la couleur perçue:
o la couleur physique est caractérisée par le spectre de la lumière qui arrive sur l'oeil.
Le spectre * d'un rayonnement lumineux est l'ensemble des longueurs d'ondes qui le composent, associées à leurs intensités respectives. Le spectre
peut être mesuré par un spectromètre.
La couleur perçue est différente selon chaque individu. On ne peut pas la mesurer.
Deux couleurs physiques différentes peuvent produire la même couleur perçue.
La colorimétrie* et les systèmes de représentation des couleurs ont pour objectif de représenter la couleur perçue à l'aide de valeurs.
Dans tous ces systèmes (sauf CMJN), la couleur est représentée par 3 valeurs.
Ceci provient du fait que l'oeil ne fait que 3 mesures différentes sur le spectre de la couleur physique : une mesure par type de cône . (renvoi sur la section SVH:
perception des couleurs).
L'ensemble des couleurs perçues peut donc être représenté par un ensemble de points dans un espace à 3 dimensions.
Dans la suite, on présente le principe de la synthèse additive et soustractive des couleurs et la notion de gamut, les principaux systèmes de représentation des
couleurs, et une brève introduction à la gestion des couleurs.
3.3.2 Synthèse des couleurs
La synthèse des couleurs consiste à reproduire l'ensemble des couleurs visibles à partir d'un petit nombre de couleurs, appelées couleurs primaires.
Le but est de créer un rayonnement lumineux produisant la même couleur perçue que la couleur d'origine, sans reconstruire son spectre complet.
On utilise soit des sources lumineuses, soit des pigments colorés.
• Synthèse additive*
La synthèse additive est la construction des couleurs par addition de sources lumineuses.
exemples : écrans, projecteurs cinéma et vidéo, éclairages colorés.
Plus on ajoute des composantes lumineuses, plus la couleur obtenue est claire .
Les 3 couleurs primaires* de la synthèse additive sont le rouge (R),le vert (V) et le bleu (B).
L'absence de lumière (R=V=B=0) donne le noir.
La somme des 3 couleurs primaires R+V+B donne le blanc.
Les autres couleurs sont obtenues en faisant varier les intensités respectives des 3 primaires.
Remarque : la synthèse additive est aussi utilisée par les systèmes d'acquisition (scanner, caméras) : 3 types de capteurs mesurent les composantes R,V,B de
la couleur originale.
• Synthèse soustractive*
Un objet vert absorbe le Rouge et le Bleu et renvoie le Vert : Un objet jaune absorbe le Bleu et renvoie le Rouge et le Vert :
il apparait vert il apparait rouge+vert= jaune
Figure : la couleur d'un matériau est celle qui n'est pas absorbée
Plus on ajoute de pigments colorés, plus la lumière est absorbée et la couleur obtenue est sombre .
Les 3 couleurs primaires de la synthèse soustractive sont le Cyan (C), le Magenta (M) et le
Jaune (J).
Chacune absorbe une des couleurs primaires de la lumière :
Remarque : en pratique, il est difficile de trouver 3 matériaux qui absorbent à eux 3 toutes les longueurs d'onde visibles. On rajoute donc un
pigment noir, d'où le système CMJN.
• Gamut
Le choix exact des couleurs primaires (longueur d'onde, spectre d'émission ou d'absorption) est important.
En effet, il n'existe pas 3 couleurs primaires (additives ou soustractives) qui permettent de synthétiser toutes les couleurs visibles.
Selon le choix des primaires effectué, on obtient un ensemble de couleurs différent.
Le gamut* est l'ensemble des couleurs qui sont réalisables à partir de 3 primaires, ou synthétisables par un matériel ou représentables dans un espace de
couleur.
Les couleurs hors-gamme sont celles qui ne sont pas dans le gamut.
3.3.3 Espaces de couleur
Il existe de très nombreux systèmes de représentation des couleurs ou espaces de couleur, qui ont des applications et des propriétés diférentes.
On ne va présenter que les principaux d'entre eux :
Espace le plus couramment utilisé, notamment lors de l'acquisition par scanner/APN et de l'affichage sur moniteur d'ordinateur.
Espace qui permet de décomposer une couleur en trois composantes plus intuitives qui sont la teinte, la saturation et la luminance.
o Espace XYZ
Espace normalisé qui permet de représenter toutes les couleurs et qui distingue la luminance de la chrominance.
o Espace Lab
Espace normalisé qui permet de représenter toutes les couleurs, qui distingue la luminance de la chrominance et qui conserve les différences
perceptuelles. Il est utilisé pour la gestion des couleurs.
Espace qui distingue la luminance de la chrominance. Ce système est principalement utilisé pour la transmission des signaux vidéos.
Espace de couleur utilisé pour l'imprimerie, c'est le seul espace dont la synthèse des couleurs est soustractive.
o Espace sRVB/sRGB
Espace RVB restreint, utilisé pour les images destinées à la diffusion en ligne.
RVB*/RGB*
L'espace RVB (Rouge Vert Bleu) ou RGB (Red Green Blue) est basé sur la synthèse additive.
C'est l'espace le plus couramment utilisé pour représenter les couleurs.
La télévision, les caméras et les moniteurs des ordinateurs utilisent ce système lors de l'affichage et de l'acquisition des images. Chaque couleur est représentée
par 3 valeurs qui sont les quantités de rouge, de vert et de bleu qu'elle contient.
Les valeurs sont comprises entre 0 et 1 (valeurs normalisées), ou 0 et 255 lors du codage des couleurs sur 8 bits.
Par exemple :
(0,0,0) = noir
(1,1,1) = blanc
(1,0,0) = rouge
(0,1,0) = vert
(0,0,1) = bleu
(0,1,1) = cyan
(1,0,1) = magenta
(1,1,0) = jaune
On représente souvent l'espace RVB comme un cube de dimensions 1x1x1, placé à l'origine d'un repère à trois dimensions dont les axes indiquent la quantité
de Rouge, de Vert et de Bleu.
Chaque couleur correspond à un point C de coordonnée (Rc, Vc, Bc) situé dans le cube.
Les couleurs Rouge, Vert, Bleu, Cyan, Magenta, Jaune , Noir et Blanc sont situées aux
sommets du cube.
Les couleurs situées sur cette ligne ont des quantités égales de Rouge,
de Vert, et de Bleu.
Pour un choix de primaires donné, les couleurs visibles qui sont en dehors du cube sont hors-gamme: on ne peut pas les produire physiquement par addition de
ces 3 primaires R,V,B. On peut cependant les exprimer dans ce système RVB à l'aide de composantes R,V,B dont certaines sont négatives.
TLS*/HSV*-HLS*
TLS (Teinte, Luminance, Saturation ) ou HSV (Hue, Saturation, Value) ou HLS (Hue, Luminance, Saturation)
Cet espace décompose la couleur selon des caractéristiques plus intuitives, proches du vocabulaire courant pour décrire une couleur.
Il se base sur la décomposition de la couleur en une couleur pure du spectre de l'arc en ciel à laquelle est ajoutée un gris (addition de R,V,B à parts égales).
o Teinte :
Les termes couramment utilisés pour désigner la couleur d'un objet (Rouge, Violet, Rose ...)
expriment la notion de teinte.
La teinte indique la couleur pure qui est prépondérante dans la couleur.
Les teintes peuvent-être représentées par un angle sur un cercle.
o Saturation :
o Luminance :
Pour mieux comprendre, essayez l'animation en cliquant sur l'image à gauche ci-contre.
§ CIE-XYZ
L'espace CIE-XYZ a été créé et en 1931 par la CIE, à partir de mesures sur de nombreuses personnes ("l'oeil moyen").
Les 3 primaires X,Y,Z sont définies comme une combinaison linéaire des 3 primaires monochromatiques R,V,B normalisées par la CIE.
Elles ont été choisies pour avoir les propriétés suivantes:
§ Toutes les couleurs visibles peuvent s'exprimer comme l'addition de 3 composantes positives X,Y,Z.
Ainsi toutes les couleurs visibles sont à l'intérieur du cube unité. Par contre tous les points du cube ne sont pas des couleurs visibles.
§ Y ne contient que l'information de luminance perçue : on additionne R,V,B avec des proportions de 30%, 59%, 11% qui tiennent compte
de la sensiblité de l'oeil, bien plus importante pour le vert que pour le rouge et le bleu.
§ Les gris correspondent aux points tels que X=Y=Z
§ Etalons fictifs
Les primaires X,Y,Z sont purement théoriques: elles ne sont pas réalisables physiquement. C'est pourquoi on les appelle étalons fictifs ou
irréels.
On ne peut donc pas construire de procédé technique (écran par exemple) basé sur ce système.
Par contre, c'est un système normalisé et indépendant du matériel : 3 valeurs X, Y, Z représentent toujours exactement la même couleur.
§ xyz
Pour caractériser la chrominance, c'est-à-dire la couleur indépendamment de sa luminance, on utilise les coordonnées x,y,z telles que x + y + z
= 1 et définies par
x = X / (X +Y + Z) , y = Y / (X + Y + Z) , z=1-x-y
Dans le plan (x,y), on visualise l'ensemble des couleurs visibles indépendament de la luminance.
L'espace CIE-Lab a été créé en 1976 par la CIE. Il a les mêmes propriétés que l'espace X,Y,Z :
Il a été conçu pour ajouter la propriété de conservation de la différence perceptuelle : la distance entre 2 points dans l'espace Lab est proportionnelle à la différence
perçue entre les 2 couleurs correspondantes. Cette propriété est particulièrement intéressante lorsqu'on souhaite remplacer une couleur par une couleur proche.
Cet espace est le plus utile lorsqu'on veut assurer la fidélité des couleurs, restreindre le gamut au minimum et rester indépendant des matériels et logiciels de la chaîne
de traitement.
Il est aussi l'espace de référence dans les profil ICC (voir plus loin).
U= Cr = R - Y
V= Cb = B - Y
L'espace YUV est destiné à la vidéo européenne (PAL*/SECAM *) alors que YIQ est son équivalent pour le format américain (NTSC*).
YUV est aussi utilisé dans les formats de compression d'image fixe JPEG et de vidéo MPEG.
• éviter les limites de représentation des couleurs et de l'intensité lumineuse dans l'espace RVB.
• permettre l'envoi d'un même signal pour les télévisions N&B et couleur. Y peut être directement affichée sur un poste noir et blanc.
• diminuer la quantité d'information à transmettre : l'oeil n'étant pas sensible à toutes les nuances de couleur, et surtout les nuances de bleu, les composantes U et
V peuvent être codées sur moins de bits.
CMJN/CMYN
L'espace CMJN (Cyan Magenta Jaune Noir) / CMYK (Cyan Magenta Yellow Black) est basé sur la synthèse soustractive des couleurs.
Cette représentation est principalement utilisée pour l'imprimerie et pour la conception sur ordinateur de textes et illustration devant être imprimés.
>Pour chaque couleur, on indique la quantité d'encre Cyan, Magenta, Jaune et Noir permettant de la reproduire.
On doit en pratique utiliser des conversions plus complexes prenant en compte les caractéristiques de l'espace RVB d'origine et celles des encres et du
papier utilisés lors de l'impression.
sRVB/sRGB
•
Cet espace de type RVB a été conçu au départ pour la télévision haute-définition (HDTV).
Sa caractéristique principale est d'avoir un gamut réduit, compatible avec la plupart des moniteurs existants : toutes les couleur de l'espace sRVB sont
réalisables par n'importe quel écran.
C'est pourquoi l'espace sRVB est souvent recommandé pour créer des images destinées à la diffusion en ligne.
3.3.4 Gestion des couleurs
Objectif
La gestion de la couleur a pour objectif d'assurer la cohérence des couleurs entre les différents appareils d'une chaîne numérique.
Dans l'idéal, on voudrait qu'une image scannée conserve les mêmes couleurs que l'original lorsqu'elle est affichée à l'écran ou lorsqu'elle est imprimée.
La gestion des couleurs nécessite :
§ l'étalonnage (ou calibrage) de tous les matériels : on caractérise la transformation des couleurs effectuée par chaque appareil, ainsi que
l'ensemble des couleurs qu'il est capable d'acquérir/restituer (gamut). Ces caractéristiques fournissent le profil ICC* (International Color
Consortium).
§ l'intégration du profil ICC dans le fichier image : grâce à ce profil, les transformations déjà subies par l'image seront prises en compte par le
matériel suivant.
Mots clés
§ profil ICC :
§ profil ICC d'un matériel :
Ce sont les informations qui caractérisent l'espace des couleurs réalisables par un matériel d'acquisition, visualisation ou impression.
Cette caractérisation est faite par rapport à un espace couleur de référence indépendant du matériel (de type CIE-XYZ ou CIE-Lab).
Ainsi pour toute couleur exprimée dans l'espace couleur du matériel, on connait la "vraie" couleur correspondante
acquise/affichée/imprimée.
Inversement, pour toute couleur visible exprimée dans l'espace de référence, le profil ICC donne les valeurs à utiliser dans l'espace
couleur du matériel, en vue de l'afficher ou de l'imprimer.
De même, ce profil indique la correspondance entre les valeurs des couleurs du fichier image et un espace couleur de référence.
On garde ainsi en mémoire un lien avec les "vraies" couleurs de l'image.
§ étalonnage : création du profil ICC d'un matériel à partir d'une charte de couleurs.
§ charte de couleurs : fichier ou document papier contenant des couleurs exactement définies.
§ CMS : Color Management Module: moteur de conversion de couleur : programme réalisant la conversion entre les espaces de couleur, en
particulier le remplacement des couleurs hors-gamme.
§ soft-proofing/épreuvage à l'écran : simulation à l'écran du résultat d'une impression, en utilisant les profils ICC de l'imprimante et de l'écran.
§ RIP : Raster Image Processor : logiciel utilisé pour la gestion des couleurs lors de l'impression
§ PCS : Profile Connection Space : espace couleur de référence
Sites
http://www.brucelindbloom.com/
http://perso.wanadoo.fr/2.8/photonum/sommaire.htm
http://www.arnaudfrichphoto.com/calibrage_gestion_des_couleurs.htm
http://www.irht.cnrs.fr/formation/cours/acq/visualisation.htm
o le site de l'ICC
http://www.color.org/
3 . 3 Exercices sur les espaces de couleur
Questions:
Questions:
1. en jouant sur le moins de modifications possibles (ie en laissant le plus possibles de valeurs a 0),
supprimez toutes les nuances de rouge/rose dans l'image.
2. donnez les valeurs utilisées et l'image obtenue
3 - Modifier les composantes TLS
• Le menu "Outils->Outils de couleurs->Teinte-saturation" vous
permet de ajouter ou soustraire une valeur a chaque
composante Teinte (entre -180 et 180), Luminance (entre -100
et 100), Saturation (-100, 100)
menu gimp
Questions :
- l'oeil n'est pas capable d'analyser le spectre complet d'un rayonnement lumineux
3 - Si on mélange 2 faisceaux lumineux de couleurs JAUNE et BLEU, la lumière résultante sera plutôt:
- verte
- blanche
- cyan
4 - Si on mélange 2 faisceaux lumineux de couleurs ROUGE et VERT, la lumière résultante sera plutôt:
- jaune
- noire
- blanche
- verte
- blanche
- cyan
- jaune
- noire
- blanche
7 - L'ensemble des couleurs visibles est appelé le gamut
- Vrai
- Faux
- RVB
- XYZ
- LAB
- YUV
- sRVB
- CMJN
10 - Pourquoi les écrans affichent des couleurs différentes?
- parce que les tubes cathodiques n'utilisent pas tous les mêmes couleurs primaires RVB
- sa luminance change
- sa teinte change
- sa saturation change
- si on utilise un espace comme Lab, de nombreuses couleurs devront nécessairement être approximées pour être rendues à l'écran.
A - sans perte
B - sans perte apparente
C - avec perte contrôlée
3.4.1 . Introduction
Les images palettées ou images indexées ont été utilisées pour deux principales raisons:
• pour s'adapter aux contraintes de certains matériels (écrans, cartes graphiques, imprimantes) ou logiciels n'acceptant qu'un nombre limité de couleurs dans une
image.
• pour réduire le volume des données d'une image.
Le but est simple : réduire le volume d'une image en conservant une bonne qualité. Partant du fait que le système visuel humain ne perçoit pas plus de 300 couleurs
environ, on réduit le nombre de couleurs d'une image donnée à un ensemble de N couleurs, appelé palette.
Une palette est équivalente à un index de couleurs, chaque indice correspondant à un triplet (R, V, B) , ce qui permet de retrouver les couleurs pour toute manipulation
(affichage, impression,...).
Bien qu'aujourd'hui les écrans affichent en vraies couleurs, c'est à dire avec un codage des couleurs sur 3 octets, pendant longtemps le matériel ne permettait pas
d'afficher plus de 256 couleurs, dans la pratique N vaut donc souvent 256.
Voici une animation vous permettant de faire varier le nombre de couleurs pour une image
3.4.2 . Principe
Une image palettée I contient 2 élements :
• une palette P
• une image d'indices E
Figure 1 : Voici une image palettée dont la palette comprend 8 couleurs affichées à droite de la figure ( codage RVB). Nous avons sélectionné une zone correspondant
au bout d'un doigt et nous l'avons aggrandie pour bien voir la couleur de chaque pixel.
0 (255,255,255)
1 (107,49,41)
2 (173,90,66)
3 (255,198,165)
4 (231,148,99)
5 (214,140,90)
6 (239,173,23)
7 (231,165,15)
8 (247,189,140)
9 (33,49,90)
10 (24,16,41)
11 (16,8,33)
12 (41,24,33)
13 (90,74,82)
14 (66,33,41)
15 (0,0,0)
Dans le cas d'une image palettée I contenant N couleurs différentes:
• La palette est un tableau de taille N, qui constitue une table de correspondance : indice <-> couleur. La i-ème case de ce tableau contient le triplet (R,V,B) de la
couleur associée à l'indice i.
• L'image d'indices E est une image de même dimension que I contenant des valeurs comprises entre 0 et N-1. Chaque valeur ou indice représente une couleur.
Pour afficher l'image I, il suffit de créer une matrice de pixels de même taille que E, et de remplacer chaque indice de E par la couleur correspondante indiquée par la
palette. Cette opération est faite très rapidement par les cartes graphiques servant à l'affichage des images sur écran.
Ce principe est aussi valable pour des images en niveaux-de-gris. Dans ce cas, la palette indique une correspondance entre un indice et une valeur de niveau de gris.
4 4 4 7 4
4 4 4 4 4
= 7
4
4
4
4
4
4
4
4
7
4
4
4
4
5
Pour retrouver le codage RVB on remplace chaque entier de l'image d'indices E par le codage RVB de l'indice correspondant dans la palette
231 231 231 231 231
99 99 99 99 99
99 99 99 99 90
Certaines cartes graphiques, certains écrans ou certains logiciels comprenant des fenêtres graphiques ne peuvent afficher simultanément qu'un nombre réduit de
couleurs différentes. Il est alors nécessaire de fournir une image palettée.
Par exemple, supposons que le matériel impose un maximum de N=256 couleurs différentes.
Considérons une image couleur RVB où chaque composante est codée sur 8 bits. Cette image peut contenir potentiellement 256 x 256 x 256, soit 16 millions de
couleurs différentes.
Si elle contient en réalité un nombre de couleurs différentes inférieur à 256, on peut la transformer en image palettée et l'afficher sans perte de qualité. (une autre -
mauvaise- solution serait de quantifier les valeurs R,V,B par exemple sur 2 bits pour le Rouge, 3 bits pour le Vert et 2 bits pour le Bleu. Ainsi, le nombre de couleurs
différentes dans l'image serait nécessairement inférieur ou égal à 256.... mais alors on déteriorerait énormément l'image).
Si l'image contient plus de 256 couleurs différentes, on doit la transformer en image palettée pour l'afficher. On va nécessairement dégrader l'image en réduisant le
nombre de couleurs, mais cette dégradation peut être limitée si on choisit une "palette adaptée" (cf plus loin).
Remarque : les matériels et logiciels récents permettent généralement l'affichage "en vraies couleurs" (avec la couleur de chaque pixel codée sur 24, 32, ou 48 bits). 16
millions de couleurs au moins sont alors disponibles.
B - Compression par réduction de couleurs
Le deuxième intérêt des images palettée est la compression du volume de mémoire occupée par une image, avec peu ou pas de dégradation visuelle (voir chapitre 6
sur les formats).
Une image palettée est généralement plus compacte qu'une image stockée en "vraies couleurs".
• Pour une image couleur RVB codée en vraies couleurs, la taille mémoire en octets correspond au nombre de pixels de la hauteur multiplié par le nombre de
pixels de la largeur, le tout multiplié par le nombre d'octets pour coder la couleur:
V = H x L x O octets
= H xL x O x 8 bits
• Dans une image palettée de 256 couleurs chaque pixel est codé sur 1 octet et le palette contient 256 codes RVB :
Pour une image de grande taille HxL, le volume mémoire occupé par la palette est négligeable (par exemple pour une image 1024x1024, et la couleur codée sur 24 bits, HxL = 1.048.576 octets).
Le gain en volume ou taux de compression est alors à égal à O. Ce nombre d'octets O vaut 3 pour un codage sur 24 bits, un octet par couleur RVB.
• Dans une image palettée de moins de 256 couleurs, où chaque pixel occupe un nombre variable k de bits selon le nombre de couleurs :
Le gain en volume ou taux de compression pour une telle image est donc :
(H x L x O x 8 ) / (H x L x k + Vpalette)
En négligeant le volume de la palette le taux de compression pour une image de N=2^k couleurs vaut :
(O x 8) / k
Le tableau ci-dessous indique dans ce cadre le taux de compression selon le nombre de bits utilisés pour coder la couleur:
nombre taux de
nombre de bits k de compression
par pixel couleurs hors
2^k palette<
1 2 24
2 4 12
3 8 8
4 16 6
5 32 4.8
6 64 4
7 128 3.43
8 256 3
Figure 4: Voici une image numérisée à 300 dpi, de taille réelle écran 1188 x 1188. Cette image comprend 53.669 couleurs uniques. En vraies couleurs elle "pèse"
4.234.032 octets, soit 4,23 mégaoctets. Elle a été codée en GIF avec des tables de couleurs allant de 256 à 8 couleurs. Le volume indiqué n'est pas le volume du fichier
GIF, car le format GIF comporte des étapes de compression supplémentaires. C'est le volume obtenu en codant directement en binaire l'image d'indices. Cliquez sur les
images si vous voulez les voir en grand pour observer leur qualité.
256 couleurs 128 couleurs 64 couleurs
• avec 256 niveaux de gris on ne gagne rien, puisque le codage des pixels de l'image palettée prend un octet comme le codage en niveaux de gris. Au contraire
on perd la taille de la palette.
• avec N=2^K niveaux de gris, le taux de compression est de W x H x 8 / (W x H x k + palette) soit un taux maximum de 8 / k
Pour réduire le volume d'un facteur 2 (sans compter le volume pris pour stocker la palette), il faut prendre k=4, donc N = 2^4 = 16 niveaux-de-gris différents seulement.
3.4.4 Perte de Qualité
A - Sans perte
Dans le cas où l'image contient peu de couleurs différentes, et en tous cas moins que la taille de la palette, il n'y a aucune perte de qualité.
On peut donc comprimer très fortement le volume mémoire de l'image, sans la dégrader. Ce type de compression est donc particulièrement intéressant
pour les images de ce type, par exemple:
• ...etc
Le système visuel humain n'est pas capable de distinguer 16 millions de couleurs. Il peut distinguer simultanément, sur une même image, environ 300
couleurs distinctes. C'est pourquoi en utilisant une palette de 256 couleurs bien choisies, il est possible de transformer toute image couleur en image
palettée sans perte de qualité visible à l'oeil nu.
Il est important pour cela d'utiliser une palette adaptée à l'image, c'est à dire que les 256 couleurs de la palette sont choisies en fonction des couleurs
présentes dans l'image avant transformation.
Figure 6: cette première image est numérisée avec seulement 16 couleurs sans
Dans cette deuxième image, il faut 256 couleurs pour coder correctement les dégradés
perte apparente
Figure 7: Comparaison de la qualité de la même image avec une qualité maximale, avec une palette adaptée et avec la palette système
avec palette
adaptée
avec palette système
Windows
Remarque : Comparez la surface de l'eau et les dégradés autour du soleil entre l'image avec palette système et l'image avec palette adaptée. Vous noterez le manque
de couleurs pour assurer un bon dégradé dans le deuxième cas. Si vous comparez l' image avec palette adaptée à l'image jpeg au-dessus, vous pouvez constater que
les algorithmes de choix des couleurs (différents dans chaque logiciel) ne sont pas toujours optimum pour une image donnée. Pour un meilleur rendu dans le cas de
dégradés il vaut mieux choisir le format jpeg.
Lorsque la taille de la palette est très réduite, on ne peut pas éviter une dégradation visible de l'image. Cependant, on peut restreindre cette dégradation grâce au choix
d'une palette adaptée, (voir figure 1)
Il existe des algorithmes permettant pour une image donnée et une taille de palette N fixée, de déterminer les N couleurs optimales pour cette image, et donc la palette
la mieux adaptée.
Figure 8: la même photo a été enregistrée en GIF avec des palettes adaptées ou système. Cliquez sur l'image pour la voir en grand et observer la qualité réelle plutôt
que celle de l'image réduite pour affichage.
avec palette adaptée de 256 couleurs avec palette système de 256 couleurs
Figure 9: Que se passe-t'il quand on affiche une image avec la palette d'une autre image ?
palette de 32 couleurs adaptée à l'image
Le principe des images palettées est utilisé des formats d'image courants tels que GIF, PNG, TARGA (avec option codage sur 8 bits). On choisira donc ces formats :
- sous Gimp
Question :
• Envoyez l'image ayant le moins de couleurs sans modification visuelle de l'image et donnez le nombre de couleurs
Afficher et éditer la table de couleurs
• Chargez votre image GIF de 16 couleurs.
• Sous Photoshop choisissez le menu "Image -> Mode -> Table de couleurs", sous Gimp "Dialogue->Palette indexée" et la table
s'affichera.
• Sous Photoshop vous pouvez visualiser une couleur particulière dans l'image, pour cela utilisez la pipette puis cliquez dans la
palette pour choisir la couleur.
• Pour modifier une couleur double-cliquez sur cette couleur dans la palette, une fenêtre vous proposant de modifier cette couleur
apparaîtra.
exemple de menu Photoshop : la 6ème couleur est remplacée par du bleu
sous PaintShop Pro : le même exercice est faisable en utilisant le menu "Fichier->exporter ->Gif transparent" et une fois le fichier
GIF chargé utilisez le menu "couleurs->editer la palette"
changer de palette
utiliser une palette prédéfinie
• sous Photoshop: une fois la table de couleurs chargée, choisissez une autre palette (spectre, système,...)
• sous Gimp passer en mode RVB, puis revenez au mode Couleurs indexées comme précédemment pour créer le fichier GIF.
Dans le menu choisissez "Utiliser une palette personnalisée" et cliquez ensuite sur le bouton "Web", une liste de palette
s'affichera.
• Essayez entre autre la palette "officielle" Web.
- sous Photoshop
• pour chaque image enregistrez la palette (avec la même dimension) en utilisant le menu Image->Mode->Table de couleur. Créez
des fichier .act
• pour chaque image chargez la palette de l'autre image
- sous Gimp
• Pour chaque image enregistrez la palette dans la table des palettes en utilisant le menu "Dialogues->Palette", vous obtiendrez
alors la fenêtre de gauche:
• Dans le bandeau "Palette" de la fenêtre de gauche sélectionnez le bouton à droite comportant une petite flêche, puis dans le
menu qui apparait "Importer une palette".
• La fenêtre de droite s'affiche alors. Sélectionnez comme source "Image", puis cliquez sur le bouton "Importer". La palette apparait
alors dans la liste de la fenêtre "Palettes".
• Faites de même avec la deuxième image (suivre le lien ci-dessus).
• pour changer de palette passer an mode RVB, puis repasser en mode Couleurs Indexées pour obtenir le menu de choix de la
palette comme ci-dessus.
Question :
Question :
1 - Pour créer une palette sur une image en vraies couleurs on choisit
- l'ensemble des couleurs utilisées dans l'image parmi toutes les couleurs possibles (dans le codage des couleurs choisi ou imposé).
- d'au moins 5
- d'au moins 2
- variable
3 - La transformation d'une image en image palettée de 256 valeurs n'est pas intéressante pour les images en niveau de gris.
- Vrai
- Faux
4 - Sur un écran en vraies couleurs (16 millions) toutes les applications partagent la même palette
- Vrai
- Faux
5 - Dans une palette les couleurs sont uniformément réparties sur le spectre.
- Vrai
- Faux
7 - Trouver l'intrus :
- GIF
- JPEG
- PNG
- TARGA
8 - Une image avec beaucoup des dégradés donne de bons résultats sous forme palettée :
- Vrai
- Faux
9 - Une image avec de brusques variations de couleurs donnera de meilleurs résultats compressée en GIF qu'en JPEG.
- Vrai
- Faux
Lorsque l'on affiche une image sur l'écran d'un ordinateur, ce que l'on voit n'est qu'une succession de points. Il existe pourtant deux manières différentes de stocker une
image sur une machine, on parle d'image bitmap ou bien d'image vectorielle.
Dans une image bitmap, les points (ou pixels ) sont stockés dans un tableau. Dans chaque case du tableau se trouve la couleur que l'on doit afficher au point
correspondant. Pourtant cette méthode a ses limites, si la résolution de l'image est plus grande ou plus petite que celle de l'écran, il faut agrandir ou rétrécir l'image. Si la
réduction de l'image ne pose pas de problème, l'agrandissement de l'image conduit à une dégradation de l'aspect visuel de l'image.
Dans une image vectorielle , les objets sont constitués de formes géométriques simples, telles que des vecteurs, rectangles, des cercles, des ellipses ... Le principal
avantage des images vectorielles par rapport aux images bitmap est qu'elles sont redimensionnables sans pertes de qualité. Nous allons voir pourquoi dans la partie
suivante.
3.5.2 Principe des images vectorielles.
Lorsque l'on fait du dessin vectoriel, on utilise des entités géométriques simples (rectangle, cercle, ellipse … ) que l’on représente mathématiquement par un nombre
limité de points et de paramètres. Par exemple, un carré sera représenté par les coordonnées de ses 4 sommets, un cercle sera représenté par son centre et son rayon.
A ces points s'ajoute une couleur, une épaisseur et un motif de contour, une couleur et un motif de remplissage.
Voici les notations vectorielles de deux figures géométriques simples telles qu'on les trouve dans des fichiers vectoriels non comprimés :
Un rectangle: Un cercle :
Une image vectorielle étant représentée par des points et des paramètres, il est très facile de lui appliquer des transformations géométriques courantes telles que les
rotations, symétries, homothéties ... Ces transformations n'occasionnent aucune perte de qualité comme nous allons le voir dans la suite.
Les images vectorielles n'ont pas de dimension en pixel, mais des dimensions exprimées dans la même unité que les objets géométriques. En changeant l'échelle, le
résultat sera plus petit ou plus grand, mais la scène représentée sera identique. Ainsi, il n'y a pas de perte de qualité lors du changement d'échelle puisqu'un cercle reste
un cercle, ... Un zoom correspond en fait à une homothétie sur les objets.
Prenons cet exemple :
Pour des formes plus complexes, on a recours aux courbes de Béziers ( ou des B-Splines ). Cela permet de représenter des courbes gauches contrairement à une
approche polygonale. On définit des points par lesquels la courbe doit passer, puis on calcule son équation.
Courbe polygonale : on approche la courbe par plusieurs segments, le résultat n'est pas très
satisfaisant (ici 5 segments)
Courbe de Bézier : on trace les deux extrémités de la courbe, puis en jouant sur la direction et
la norme de deux vecteurs tangeants aux extrémités, on peut donner à la courbe la forme que
l'on veut
L'image vectorielle ne contient donc que la façon de construire l'image à représenter (au lieu de tous les points qui la constitue dans le cas d'une image bitmap).
C’est ainsi une méthode de représentation très économe en taille de fichier (on ne code que les tailles, positions, couleurs et motifs des objets à représenter). Mais le
logiciel qui lit l’image doit la reconstruire sous forme d’image bitmap à chaque affichage. C’est donc aussi une méthode très gourmande en calcul au momment de
l'affichage.
Voici une petite application java permettant de mettre en évidence les propriétés d'une image vectorielle par rapport à une image bitmap.
Lancer l'animation :
Avantages :
• Comme chaque forme est décrite par des points, une couleur, un type et un motif, le fichier final, un simple fichier texte, sera très petit. Sa taille ne dépendra pas
des dimensions de l'image, mais plutôt de sa complexité (nombre de points, d'éléments géométrique, de courbes ... )
• Les images sont redimensionnables sans perte de qualité. Les courbes seront lisses quelle que soit l'échelle d'affichage. Il n'y a pas d'effet d'escalier (ou
crénelage).
• Les retouches d'une image vectorielle sont aisées. En effet, comme chaque entité géométrique de l'image est indépendante des autres, elle est facilement
modifiable.
• Le format vectoriel gère la superposition des couches ( ou calques ), c'est à dire la superposition des entités géométriques
Inconvénients :
Le format vectoriel est utilisé pour représenter des croquis et des schémas techniques ; des plans de bâtiments, de pièces techniques ( Autocad )
Il est aussi utilisé pour faire des cartes en tout genre : cartes topographiques (la gestion des calques est ici particulièrement intéressante pour superposer les routes, les
fleuves ... ) , cartes démographiques, ...
Le vectoriel est beaucoup utilisé dans les polices de caractères. Quand on utilise une police vectorielle, on peut zoomer à l'infini dessus sans que sa qualité ne se
dégrade. Par contre avec une police bitmap, si on zoome trop, on commence à avoir du crénelage (apparition d'escalier sur les caractères).
Police Bitmap Police vectorielle
On l'utilise pour réaliser des logos, des Clip Arts, ou pour donner un effet de relief ou un effet 3D à du texte . Dans la partie manipulation, nous verrons comment
dessiner le clipart "disquette" en vectoriel.
La technologie Flash™.
La technologie Flash permet d'ajouter des séquences animées 2D au Web. Elle est basée sur les images vectorielles. Les objets, leurs déformations et leurs
mouvements sont tous codés sous formes de formules mathématiques (rotation, translation, homothétie, ...) accompagnées de paramètres (axe, angle et sens de
rotation, direction sens et norme de la translation, ...). Les animations sont ainsi de petites tailles: d'une part, chaque image est au format vectoriel (donc plus légère), et
d'autre part les changements d'une image à l'autre sont eux aussi codés en vectoriel : seuls les objets qui bougent sont modifiés et ces mouvements sont codés par des
formules mathématiques (comme dans un dessin-animé).
Le langage Postscript™.
C’est un langage de description de pages, permettant de donner des pages à imprimer indépendantes des caractéristiques du système d'impression. Au delà d'un
simple système de description de pages vectorielles, c'est un véritable langage de programmation... dans lequel il est rare que l'on ait à programmer soi-même, vu que
les applications comme les traitements de texte etc…génèrent du Postscript tout prêt. C'est d'ailleurs en Postscript que nos traitements de textes commandent nos
imprimantes !
3.5.5 Logiciels sur Internet
Liens divers :
Dans cet exemple, nous allons voir comment créer une disquette comme celle-ci sous Paint Shop Pro
en vectoriel.
1) Préparations.
Pour centrer notre contour sur la page, sélectionner le contour, cliquer avec le bouton droit, dans le menu "aligner",
sélectionner "centrer sur le support".
Maintenant que l'on a un joli rectangle aux coins arrondis, on va le remplir avec une couleur.
Sélectionner le rectangle et cliquer avec le bouton droit,
sélectionner "propriétés".
Tracer un cercle de rayon 100 pixels, le remplir de noir, et le centrer sur le support comme vu précédemment.
Dupliquer ce cercle (bouton droit, "copier", boutton droit, "comme une nouvelle sélection vectorielle" ) et le remplir de gris
très clair. Pour le passer sous le premier, cliquer sur le bouton droit, dans le menu "agencer" sélectionner "descendre".
Pour faire la partie coulisante, créer un rectangle. Arrondir les coins en bas
seulement. Enlever ses contours, le remplir avec un dégradé circulaire de gris
clair / gris fonçé. Pour le centrer, cliquer avec le bouton droit et dans le menu
"aligner", sélectionner "aligner horizontalement avec le support".
Dupliquer la partie creuse et la remplir de gris clair pour faire l'effet de lumière.
Agencer le rectangle le plus clair de manière à ce qu'il soit en dessous du
rectangle fonçé.
Pour le reste des détails, il s'agit de cercles, de demi-cercles et de rectangles aux coins arrondis.
Un demi-cercle s'obtient en éditant un cercle, en supprimant l'un des points.
Sélectionner une des extrémités, cliquer avec le bouton droit, dans le menu "éditer",
choisir "fermer". Jouer avec les vecteurs aux extrémités pour faire un beau demi-cercle.
Question :
1 - Pourquoi les images vectorielles occupent-elles moins de place que les images bitmaps ?
4 - Pourquoi est-il plus difficile de convertir une image bitmap en vectorielle plutôt que l'inverse ?
- Parce que les courbes de Bézier ne permettent que de passer du vectorielle au bitmap et pas l'inverse.
- Il y a beaucoup de détails à afficher dans une image bitmap et c'est difficile de tout représenter par des formes mathématiques.
- Cela demande des jours et des jours de calculs même pour une petite image.
5 - Y a-t-il une perte de qualité lorsque l'on fait des transformations géométriques sur des images vectorielles ?
- Ca dépend de la complexité de l'image, plus la tranformation est complexe plus il y aura des dégradations.
- Ca dépend de la compléxité de la transformation, plus la tranformation est complexe plus il y aura des dégradations.
- Plus facile à modifier car toutes les formes sont indépendantes l'une de l'autre.
- Aux dimensions de l'image (à sa résolution), une image de grande taille contient des milliers de points.
- Aux nombre de couleurs à afficher, il faut beaucoup de place pour stocker jusqu'a 16 millions de couleurs dans le fichier.
- Au nombre d'entités géométriques qui la composent, plus il y a de formes géométriques, plus l'image sera grande.
- A la dimension des formes géométriques, un grand rectangle occupera plus de place qu'un petit car il contient plus de points.