image matricielle - Lycee Felix Le Dantec

Transcription

image matricielle - Lycee Felix Le Dantec
Codage des images matricielles
La représentation d'une image
On distingue 2 grandes catégories de
codage d’images :
- le codage vectoriel : l’image est codée
par
un
ensemble
de
formules
mathématiques (cercles, droites, ...);
- le codage bitmap ou matriciel : l’image
est codée comme un tableau de points,
appelés pixel.
Le pixel, souvent abrégé px, est l'unité de base permettant de
mesurer la définition d'une image numérique matricielle. Son
nom provient de l'anglais « picture element », qui signifie
« élément d'image ».
1/16
Codage des images matricielles
Les images matricielles
Pour une image matricielle, chaque pixel est décrit par un nombre
indiquant sa couleur. L’image est donc représentée par une série
de nombres. Plus la densité des points est élevée, plus le nombre
d'informations est grand et plus la résolution de l'image est élevée.
La place occupée en mémoire et la durée de traitement seront
d'autant plus grandes.
Les images vues sur un écran de télévision ou une photographie
sont des images matricielles. On obtient également des images
matricielles à l'aide d'un appareil photo numérique, d'une caméra
vidéo numérique ou d'un scanner.
2/16
Codage des images matricielles
Les images vectorielles
Les images vectorielles sont essentiellement utilisées pour
réaliser des schémas ou des plans. Les logiciels de dessin
industriel fonctionnent suivant ce principe ; les principaux logiciels
de traitement de texte proposent également de tels outils. Ces
images présentent 2 avantages : elles occupent peu de place en
mémoire et peuvent être redimensionnées sans perte d'information.
3/16
Codage des images matricielles
La résolution d'une image vectorielle
La résolution, mesurée en pixels par pouce (ppp), ou dots per
inch (dpi) en anglais, décrit la finesse des détails d’une image
bitmap.
Observons ci-dessous une même image avec 2 résolutions
différentes :
18 ppp : pixellisation
72 ppp : plus de pixellisation
4/16
Codage des images matricielles
Exercices
●
●
Les images ci-dessous mesure 10cm sur 10cm. Calculer pour
chacune des résolutions le nombre de pixels constituant l'image.
Calculer la résolution d'une image de même dimension,
constituée de 10000 pixels.
18 ppp : pixellisation
72 ppp : plus de pixellisation
5/16
Codage des images matricielles
Le codage d'une image en noir & blanc
Pour ce type de codage, chaque pixel est soit noir, soit blanc. Il
faut un bit pour coder un pixel.
Ce type de codage peut convenir pour un plan ou un texte mais on
voit ses limites lorsqu'il s'agit d'une photographie.
Ex : calculer la taille en bits puis en kio
de notre image de 10000 pixels codée
en noir et blanc.
6/16
Codage des images matricielles
Le codage d'une image en niveaux de gris
Si on code chaque pixel sur 2 bits on aura 4 possibilités (noir, gris
foncé, gris clair, blanc). L'image codée sera très peu nuancée.
En général on code chaque pixel sur 8 bits = 1 octet. On a alors
256 possibilités, on dit 256 niveaux de gris.
Ex : calculer la taille en kio de notre
image de 10000 pixels codée en 256
niveaux de gris.
7/16
Codage des images matricielles
Le codage d'une image en couleurs 24 bits
Il existe plusieurs modes de codage de la couleur. Le plus utilisé
est le codage Rouge, Vert, Bleu (RVB). Chaque couleur est
codée sur 1 octet = 8 bits. Chaque pixel sur 3 octets c'est à dire
24 bits : le rouge de 0 à 255, le vert de 0 à 255, le Bleu de 0 à 255.
Le principe repose sur la synthèse additive des couleurs : on peut
obtenir une couleur quelconque par addition de ces 3 couleurs
primaires en proportions convenables. On obtient ainsi 256 x 256 x
256 = 16777216 (plus de 16 millions de couleurs différentes).
Ex : calculer la taille en kio de
notre image de 10000 pixels
codée en couleurs 24 bits.
synthèse
additive de
couleur
8/16
Codage des images matricielles
La compression
Les images matricielles de bonne qualité enregistrées pixel par
pixel peuvent être très encombrantes. Cela pose un problème de
volume occupé en mémoire, mais aussi de difficulté lors des
traitements : plus une image est "lourde", plus elle nécessite de
ressources matérielles, surtout pour les transferts de données, en
particulier sur l'internet.
La compression consiste à réduire la taille d'un fichier
numérique à l’aide de diverses techniques.
9/16
Codage des images matricielles
La compression sans perte
Il existe des méthodes de compression sans perte, c'est-à-dire
que le fichier d'origine est compacté sans détérioration de sa
qualité (ZIP, RLE, PNG, ...).
La compression avec pertes
Il existe également des méthodes de compression avec perte,
appliquées à des types de données bien particuliers (sons, images
ou vidéos). Le principe est d’éliminer les informations les moins
perceptibles de manière à obtenir un résultat qui paraisse identique
à l’original (JPEG, MP3, ...).
10/16
Codage des images matricielles
Le taux de compression
Le taux de compression est le gain en volume rapporté au volume
initial des données.
Plus le taux de compression est élevé, plus la taille du fichier
compressé résultant est faible.
Ex : on enregistre le fichier de notre image de 10000 pixels codée
en couleurs 24 bits au format jpeg. La taille du fichier est de 4952
octets. Calculer le taux de compression de notre image.
11/16
Codage des images matricielles
La compression RLE (Run Length Encoding)
Cette compression est utilisée par les images bitmap (format .bmp
notamment) . Elle est basée sur la répétition d’éléments
consécutifs. Par exemple, la chaîne de caractères «
AAAAHHHHHHHHHH » sera compressée en 4A10H soit un gain
de compression de (14-5)/14 = 64,3%. En revanche la chaîne
REELLEMENT qui deviendrait 1R2E2L1E1M1E1N1T (soit (1016)/10=-60% de gain de compression) ne sera pas compressée. En
pratique seules les séquences comportant plus de 3 répétitions
d’un même élément sont compressées, les autres sont conservées
telles quelles, séparées des séquences compressées par un
caractère spécial.
La compression RLE n’a donc d’intérêt que pour des images
possédant de nombreux éléments consécutifs redondants,
notamment les images avec de larges parties uniformes. C’est ce
qui explique que les images BMP atteignent fréquemment des
tailles importantes.
12/16
Codage des images matricielles
La compression RLE (Run Length Encoding)
Ex : avec le principe RLE non optimisé, compléter le codage de
l’image noir et blanc suivante de la lettre a. Calculer le taux de
compression.
13/16
Codage des images matricielles
La compression LZW (Lempel – Ziv – Welch)
Du nom de ses inventeurs, cette méthode de compression est
utilisée par les formats d’image GIF et TIFF, mais aussi par les
formats d’archive ZIP, ARJ, etc.
Le principe de base est de repérer des séquences qui apparaissent
plusieurs fois, en construisant au fur et à mesure un dictionnaire de
séquences, et de les remplacer par leur indice dans le dictionnaire.
Dans le cas de la compression d’images GIF, elle est
particulièrement adaptée pour des images avec de grandes zones
de même couleur ou des images géométriques. Elle est limitée à
256 couleurs, et donc peu adaptée aux images photographiques.
En revanche c’est l’un des seuls formats d’image (avec le format
PNG) qui permette de gérer la transparence, et c’est le seul qui
gère des images animées (constituées d’un ensemble d’images
affichées l’une après l’autre).
14/16
Codage des images matricielles
La compression JPEG (Joint Photographic
Expert Group)
Méthode de compression avec perte (correspondant au format
.jpg) . Elle permet de réduire la taille jusqu’à 1/25 de l’original sans
perte notable de qualité.
Elle est efficace sur des images photographiques, mais beaucoup
moins sur des images géométriques, pour lesquelles la perte
d’information est plus souvent visible.
Le principe est, à partir de formules mathématiques compliquées
(transformation discrète en cosinus), d’atténuer les détails en
éliminant certaines composantes de hautes fréquences.
Le taux de compression est variable, ce qui permet de trouver un
compromis entre réduction de la taille et niveau de perte de détails
acceptable. Le taux minimum est la compression sans perte
(réduction de la taille de moitié seulement), utilisée principalement
pour la transmission d’images médicales.
15/16
Codage des images matricielles
Les différents formats d'images matricielles
16/16