Pages du site
Cours actuel
Participants
Généralités
Rappel du fonctionnement d'un ordinateur
...u système d'exploitation Antix (linux) sur clé USB
Les images numériques
Le son
L'architecture client serveur
créer des pages web
Les jeux vidéos
Section 8
Section 9
Section 10
Les images numériques
L'avènement de l'informatique et l'évolution de la société nous conduisent à manipuler de plus en plus d'images (photographies, logos...). Vous avez vous même été amené dans vos différents projets à utiliser des images (fond d'écran, création de logo, insertion d'mage…).
Derrière cette simple notion d'image se cache une multitude d'autres notions complexes qu'il est bien souvent utile de maîtriser.
Les techniques d'imageries numériques se développent de plus en plus :
-
en astronomie,
dans le domaine médical (techniques d'observations non invasives et en temps réels...)
-
dans l'industrie (vision industrielle)
On a de plus en plus besoin de manipuler des images en vue de les stocker, les retoucher, les exploiter de différentes manières...
Seulement, on se rend parfois compte que certains types de fichiers images (JPEG, BMP, TIFF, RAW, PNG...) présentent des caractéristiques différentes du point de vue de la couleur, du "poids" de l'image...
Problématique : Mais alors, quel type choisir ? et pour quelle utilisation ?
Objectifs :
|
1- les deux grands types d'images
Image Vectorielle
Une image vectorielle (ou image en mode trait), est une image numérique composée d'objets géométriques individuels (segments de droite, polygones, arcs de cercle, etc.) définis chacun par divers attributs de forme, de position, de couleur, etc.
L'image vectorielle est dessiné à nouveau à chaque visualisation, ce qui engendre des calculs sur la machine.
L'intérêt est de pouvoir redimensionner l'image à volonté sans aucun effet d'escalier. L'inconvénient est que pour atteindre une qualité photo-réaliste, il faut pouvoir disposer d'une puissance de calcul importante et de beaucoup de mémoire.
Le format vectoriel permet également la superposition de plusieurs couches. En cartographie cela permet par exemple de superposer plusieurs informations comme les fleuves, les routes, le relief. Les écritures peuvent être réduites et toujours lisibles avec précision.
Cette représentation implique un nombre limité d'objets graphiques. D'autre part, ces fichiers graphiques sont très légers. À chaque zoom, le tracé reste précis car l'ordinateur recalcule les coordonnées en fonction de l'échelle demandée. Le dessin vectoriel offre une possibilité de « zoom infini ».
Il existe de nombreux formats de fichiers vectoriels. On peut citer Postscript, PDF, Adobe Flash, Illustrator, le SVG ou le WMF, format vectoriel de l'OS windows.. Le célèbre logiciel des architectes Autocad a imposé ses formats de fichier DXF et DWG .
Image Matricielle
Une image matricielle ou image en mode point est une image numérique dans un format de données qui se compose d'un tableau de pixels ou de points de couleur, généralement rectangulaire, qui peut se visualiser sur un moniteur d'ordinateur ou tout autre dispositif d'affichage RVB.
La qualité d'une image matricielle est déterminée par le nombre total de pixels ("picture element") et la quantité d’information contenue dans chaque pixel (souvent appelée profondeur de numérisation des couleurs).
Plus il y aura de pixels, plus il y aura de détails fins visibles. On dit que plus une image a de pixels, plus elle est de grande qualité. Une image numérisée avec une définition de 640×480 pixels (donc contenant 307 200 pixels) apparaîtra très approximative et sous forme d’un pavage de petits carrés de couleur, par comparaison à une image numérisée à 1280×1024 (1 310 720 pixels).
Puisqu'il coûte une grande quantité de données pour stocker une image de très grande qualité, des techniques de compression de données sont souvent employées pour réduire la taille des images stockées sur un disque. Certaines de ces techniques perdent des informations, et ainsi appauvrissent la qualité de l’image, afin de réaliser un fichier occupant beaucoup moins de place sur disque.
Les couleurs de l'image peuvent être soit codées suivant une palette, c’est-à-dire que les informations de couleur de chaque pixel indiquent le rang d'une couleur dans une liste prédéterminée. Le format GIF est un format d'image utilisant une palette.
On peut également faire correspondre directement une couleur en codant un triplet de couleurs rouge, vert et bleu dans les informations associées à un pixel, dont le nombre de bits utilisé indiquera le nombre maximum de couleurs possibles. Par exemple 16 millions de couleurs pour un affichage standard sur 24 bits dont 8 pour chaque composante de l'espace de couleur RVB ou 2 seulement pour un affichage monochrome avec un seul bit par pixel.
Les principaux formats matriciels sont BMP, GIF, TIFF, PNG et JPEG.
Lorsque l'on grossit une image matricielle, puisqu'on ne rajoute aucune information qui ne serait pas déjà présente, cela induit une perte de qualité visible.
Une image numérique agrandie est dite pixelisée.
Le format BMP
Chaque format graphique renferme des informations multiples identifiables par l'analyse des octets qu'il renferme.
Vous pouvez accéder aux données binaires d'un fichier avec le logiciel EDITHEXA.
Contenu du fichier
La première partie appelée ENTETE DU FICHIER (file header) est composé de quatre champs sur 14 octets :
-
La signature (sur 2 octets) :BM, 424D en hexadécimal pour signifier qu'il s'agit d'un fichier BMP.
-
La taille totale du fichier en octets (codée sur 4 octets)
-
Un champ réservé (sur 4 octets)
-
Le décalage de l'image (sur 4 octets), qui donne l'adresse relative du début des données qui concernent l'image à proprement parler
La deuxième partie est l'ENTETE DE L'IMAGE (information Header) qui informe comme son nom l'indique sur l'image sur 4 champs de 40 octets :
-
La taille de l'entête de l'image en octets (codée sur 4 octets). Les valeurs hexadécimales suivantes sont possibles suivant le type de format BMP : 28 pour Windows 3.1x, 95, NT, ...
-
La largeur de l'image (sur 4 octets), c'est-à-dire le nombre de pixels horizontalement (en anglais width)
-
La hauteur de l'image (sur 4 octets), c'est-à-dire le nombre de pixels verticalement (en anglais height)
-
Le nombre de plans (sur 2 octets). Cette valeur vaut toujours 1
-
La profondeur de codage de la couleur (sur 2 octets)
-
La méthode de compression (sur 4 octets). Cette valeur vaut 0 lorsque l'image n'est pas compressée
-
La taille totale de l'image en octets (sur 4 octets).
-
La résolution horizontale (sur 4 octets), c'est-à-dire le nombre de pixels par mètre horizontalement
-
La résolution verticale (sur 4 octets), c'est-à-dire le nombre de pixels par mètre verticalement
-
Le nombre de couleurs de la palette (sur 4 octets)
-
Le nombre de couleurs importantes de la palette (sur 4 octets). Ce champ peut être égal à 0 lorsque chaque couleur a son importance.
Arrive ensuite l'image avec le CODAGE de chaque pixel ligne par ligne
Le codage de l'image se fait en écrivant successivement les bits correspondant à chaque pixel, ligne par ligne en commençant par le pixel en bas à gauche.
-
Les images en 2 couleurs utilisent 1 bit par pixel, ce qui signifie qu'un octet permet de coder 8 pixels
-
Les images en 16 couleurs utilisent 4 bits par pixel, ce qui signifie qu'un octet permet de coder 2 pixels
-
Les images en 256 couleurs utilisent 8 bits par pixel, ce qui signifie qu'un octet code chaque pixel
-
Les images en couleurs réelles utilisent 24 bits par pixel, ce qui signifie qu'il faut 3 octets pour coder chaque pixel, en prenant soin de respecter l'ordre de l'alternance bleu, vert et rouge.
Chaque ligne de l'image doit comporter un nombre total d'octets qui soit un multiple de 4; si ce n'est pas le cas, la ligne doit être complétée par des 0 de telle manière à respecter ce critère.
