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