La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Le média image Chapitre 3

Présentations similaires


Présentation au sujet: "Le média image Chapitre 3"— Transcription de la présentation:

1 Le média image Chapitre 3
Institut Supérieur d’Informatique Année Universitaire Chapitre 3 Le média image

2 Plan Nature physique de l’image Modélisation et stockage de l'image
Qu'est-ce que la lumière? La perception visuelle chez l'être humain Synthèse de couleurs Additive Soustractive Modélisation et stockage de l'image

3 Les 2 natures de la lumière
Ondulatoire L’optique ondulatoire considère la lumière comme une onde électromagnétique. Explique les phénomènes affectant les ondes : interférences, diffraction Corpusculaire La théorie corpusculaire considère la lumière comme un flux discontinu de photons. Son énergie est liée à la fréq de l'onde : E = hν (h, constante de Planck ; v, fréq) Explique les observations relatives à l'émission et à l'absorption de la lumière par la matière. Vitesse de déplacement : ~ km/s. Caractéristiques : Fréquence. ~ Ghz  lg d’onde : 500nm Intensité.

4 Spectre de la lumière Couleur dépend de la longueur d'onde
380nm 760nm Couleur dépend de la longueur d'onde Couleur (notion perceptive)  lg d’onde (notion physique) Attention : l'œil ne distingue pas un Y monochromatique (une seule lg d'onde) d'une composition de G et de R. C’est l’illusion qui permet d'afficher du Y sur les écrans PC Longueur d'onde (nm) Couleur < 380 rayonnements ultraviolets violet bleu vert jaune orange rouge > 760 rayonnements infrarouges

5 La perception visuelle
L'oeil humain : Grâce à la cornée et à l'iris l’image se forme sur la rétine Rétine : cônes + bâtonnets Bâtonnets : perçoivent la luminosité et le mouvement Cônes : différencient les couleurs 3 types : percevoir le bleu, le vert et le rouge. Perception entre 400 et 700 nm. Si un type de cônes manque : daltonisme.

6 Sensibilité de l'oeil beaucoup + grande aux variations d'intensité (luminance) qu'aux variations de couleur (chrominance) Luminance (luminance) : % de N ou de B dans la couleur désirée, brillance de la couleur , aspect clair ou sombre Chrominance : Teinte (hue) : détermine la couleur souhaitée à partir des couleurs à disposition (R,G,B,C,J,M); correspond à la couleur de base Saturation (saturation) : mesure l'intensité ou la pureté d'une couleur, % de couleur pure par rapport au B (caractère vif ou terne/ couleur vive ou pastel), (

7 Synthèse additive Calcul fait par addition des longueurs d'onde de sources lumineuses R, G, B : Toutes les couleurs peuvent être synthétisées en utilisant les 3 sources monochromatiques correspondant aux maxima de sensibilité des 3 types de cône de la rétine de l’œil humain Modèle RGB Mode de synthèse adapté pour les sources lumineuses (tubes cathodiques) Exemple: 2 composantes G et R d'un moniteur d'ordinateur sont allumées quand les phosphores associés sont frappés par les électrons  les couleurs des phosphores juxtaposés se superposent en raison de la mauvaise résolution de l'œil  on voit du jaune blanc Mélange des couleurs par addition

8 Synthèse soustractive
W(R+G+B) Y=R+G Pigment jaune absorbe le bleu Calcul fait par soustraction des longueurs d'onde de la lumière Mode de synthèse adaptée dans le mélange de pigments, le filtrage et l’absorption (imprimerie, peinture et art du vitrail) Exemple : L'herbe et les feuilles paraissent vertes car elles absorbent le complémentaire du vert ( violets et ultraviolets). Ce sont les ondes utilisées dans la photosynthèse. L'encre filtre la lumière réfléchie par le papier blanc Lorsqu’on mélange 2 couleurs au pinceau, la couleur obtenue est le résultat d'une synthèse soustractive La couleur vue est la lumière non absorbée Cyan, Magenta, Yellow : C  R, M  G, Y  B alors que B  R & G, R  G & B, G  B & R Ce sont les 3 couleurs complémentaires de RGB. Modèle CMY noir Mélange des couleurs par soustraction

9 Plan Nature physique de l’image Modélisation et stockage de l'image
Chaîne de l’image Image vectorielle Image bitmap Espace des couleurs et conversion Codage des images Méthode simple Méthode par palette Avantages/limitations Format : BMP, TIFF, GIF, PNG, … Format : JPEG

10 Chaîne de l’image Acquisition/création : numérisation (scanners, appareils photos & caméscopes numériques, carte d’acquisition vidéo )/synthèse (via souris, tablettes graphiques ou par modélisation 3D) Codage Perte d'information envisageable à la compression Stockage (disquette, disque dur, CD-ROM...) Traitement : modifier la taille, la couleur, ajouter ou supprimer des éléments, appliquer des filtres,… Transmission Échange de graphiques, de dessins, d'images. Prolifération de formats, incompatibilités fréquentes. Restitution : Affichage, projection, Impression

11 Format des images Les images vectorielles : Les images bitmap :
On décrit l'image comme une association d’objets graphiques simples (droites, ellipses,...). Formats SVG, SWF,... Les images bitmap : Image pixélisée. On indique la couleur de chaque pixel Formats BMP, GIF, JPEG,... Il existe un grand nombre de formats de fichiers. Parmi les formats de fichiers graphiques voici les plus utilisés : Format Compression Dimensions maximales Nombre de couleurs maximal BMP aucune / RLE x GIF LZW x IFF aucune / RLE x supérieur à JPEG JPEG x supérieur à PCX aucune / RLE x PNG RLE x supérieur à TGA aucune / RLE x supérieur à TIFF/TIF Packbits / CCITT G3&4 / RLE / JPEG / LZW / UIT-T (2^32)-1 supérieur à On distingue généralement deux grandes catégories d'images: les images bitmap (appelées aussi images raster) : il s'agit d'images pixellisées, c'est-à-dire un ensemble de points (pixels) contenus dans un tableau ,chacun de ces points possédant une ou plusieurs valeurs décrivant sa couleur. les images vectorielles: les images vectorielles sont des représentations d'entités géométriques telles qu'un cercle, un rectangle ou un segment. Ceux-ci sont représentés par des formules mathématiques (un rectangle est défini par deux points, un cercle par un centre et un rayon, une courbe par plusieurs points et une équation). C'est le processeur qui sera chargé de "traduire" ces formes en informations interprétables par la carte graphique. Grâce à la technologie développée par la compagnie Macromedia et son logiciel Macromedia Flash, ou au plugiciel ("plug-in") SVG, le format vectoriel est aujourd'hui utilisable sur Internet.

12 Image Vectorielle Images décrites comme l'association d’objets graphiques simples (droites, ellipses...). 3 types de données graphiques : Points isolés => objets ponctuels. Lignes isolées => objets linéaires. Surfaces isolées => objets surfaciques. Méthodes de représentation vectorielle : Fil de fer 2D. Polyédrique. Codage des contours

13 Redimensionnement Pas de perte de qualité, les courbes sont lissées quelque soit l'échelle d'affichage Vectorielle Bitmap

14 Le format WMF WMF (Windows Meta File) format vectoriel de Windows, utilisé par Microsoft Draw, et anciennes versions de Word, Excel. Format mixte, pouvant contenir des informations sous forme matricielle Un fichier WMF contient : Une suite d'objet (cercle, carre, bitmap,...). Chacun décrit par un entête. Peut contenir jusqu’à objets

15 Autres formats vectoriels
SVG (Scalable Vector Graphics) : Spécification W3C basé sur XML pour gérer les images vectoriels notamment sur le web. Supporte les animations et le son. Format du futur mais début difficile : Pas d’implémentation native dans les navigateurs web; développement en cours. Plug-in d’Adobe : Editeurs libres : Sodipodi et OpenOffice Draw Apparition de banques de clipart sur l'Internet. AI (Adobe Illustrator) Format de Adobe, très populaire EPS (Encapsuled PostScript) : Format mixte universel de Adobe basé sur postscript mais contenant une image de prévisualisation vectorielle ou bitmap. PDF (Portable Document Format): Format mixte universel de Adobe dérivé de PostScript et préservant la mise en forme, les polices, les couleurs et les graphiques du document source. PICT (Picture) : Format par défaut de Mac OS. SWF (Flash) : Format d’animation vectorielle propriétaire de Macromedia destiné au web, très populaire. Supporte les animations et le son. DXF (Drawing eXchange Format): Format de AUtodesk utilisé en DAO ( logiciel libre QCad ) CGM (Computer Graphics Metafile) : norme ISO; Format mixte utilisé en DAO

16 Avantages Codage riche prenant en compte la sémantique
Codage compact : fichiers de taille réduite Redimensionnement sans perte de qualité Retouches aisées car éléments de l'image indépendants Animation + simple grâce aux vecteurs Traduction aisée en bitmap Recherche de texte, d’objets Lien hypermédia sur des objets, interactivité Génération automatique à partir de données XML,…

17 Limitations Inutilisables pour des photographies
Pas adaptée aux images complexes avec bcp d'objets de petites tailles Bcp de formats industriels, non standardisés, non reconnus par les navigateurs web Impossible de transformer un bitmap en vecteur

18 Image bitmap Pixelmap, matricielle, raster
On indique la couleur de chaque pixel. Pixel (PICture ELement) : + petit élément constitutif d'une image numérique Codage des couleurs: Choix du modèle RGB Certains formats supportent le modèle CMYK. Manipulation et restitution utilise d’autres modèles Critères de qualité : couleur & définition Définition (Ordinateur) Résolution (Scanner, imprimante) Taille de l’image en nb de pixels Nb de points par unité de longueur (2,54cm) (unité dpi/ppp : point par pouce) 300dpi  300 points sur une ligne de 2,54cm

19 Espace des couleurs Représentation mathématique d'un ensemble de couleurs. Il en existe plusieurs : Le codage RGB (Red, Green, Blue). Le codage CMY (Cyan, Magenta, Yellow) Le codage CMYK Le codage HSL (Hue, Saturation, Luminance). Le codage YUV : vidéo analogique (PAL et SECAM). Y représente la luminance (l'information en N&B), Cb et Cr la chrominance. Permet de transmettre des infos colorées aux TV couleurs, en restant compatible avec les TV N&B affichant en niveau de gris. Y = 0,299 * Rouge + 0,587 * Vert + 0,114 * Bleu Cr = Rouge – Y Cb = Bleu - Y Le codage YIQ Le codage CIE On appelle ainsi «espace de couleurs» la représentation mathématique d'un ensemble de couleurs. Il en existe plusieurs, parmi lesquels les plus connus sont : Le codage RGB (Rouge, Vert, Bleu, en anglais RGB, Red, Green, Blue). Le codage TSL (Teinte, Saturation, Luminance, en anglais HSL, Hue, Saturation, Luminance). Le codage CMYK. Le codage CIE. Le codage YUV. Le codage YIQ. Le spectre de couleurs qu'un périphérique d'affichage permet d'afficher est appelé gamut ou espace colorimétrique. Les couleurs n'appartenant pas au gamut sont appelées couleurs hors-gamme.

20 Modèles RGB, CMY et CMYK Modèle RGB Modèle CMY Modèle CMYK
La couleur est définie comme une somme pondérée des couleurs primaires. Choix des couleurs primaires du système : RGB : Red, Green, Blue Modèle CMY La couleur est définie comme différence pondérée entre le blanc et les couleurs primaires. Choix des couleurs primaires du système : CMY : Cyan, Magenta, Yellow Modèle CMYK Extension du modèle CMY En pratique, le noir n'est pas tout à fait noir. Ajout d'une composante "noir pur". CMYK : Cyan, Magenta, Yellow, BlacK. Possibilité de remplacer les 3 encres couleurs par du noir pour réduire la consommation d'encre

21 Modèle naturel HSL Modèle de représentation proche de la perception physiologique de la couleur par l'oeil humain. Le modèle RGB ne permet pas de sélectionner facilement une couleur : éclaircir une couleur  augmenter proportionnellement la valeur des 3 composantes. HSL (TSL en français ) Hue Saturation Luminance Le modèle HSL (Hue, Saturation, Luminance, ou en français TSL), s'appuyant sur les travaux du peintre Albert H.Munsell (qui créa l'Atlas de Munsell), est un modèle de représentation dit "naturel", c'est-à-dire proche de la perception physiologique de la couleur par l'oeil humain. En effet, le modèle RGB aussi adapté soit-il pour la représentation informatique de la couleur ou bien l'affichage sur les périphériques de sortie, ne permet pas de sélectionner facilement une couleur. En effet, le réglage de la couleur en RGB dans les outils informatiques se fait généralement à l'aide de trois glisseurs ou bien de trois cases avec les valeurs relatives de chacune des composantes primaires, or l'éclaircissement d'une couleur demande d'augmenter proportionnellement les valeurs respectives de chacune des composantes. Ainsi le modèle HSL a-t-il été mis au point afin de pallier à cette lacune du modèle RGB. Le modèle HSL consiste à décomposer la couleur selon des critères physiologiques : La teinte (en anglais Hue), correspondant à la couleur de base (T-shirt mauve ou orange) La saturation, décrivant la pureté de la couleur, c'est-à-dire son caractère vif ou terne (T-shirt neuf ou délavé) La luminance, indiquant la brillance de la couleur, c'est-à-dire son aspect clair ou sombre (T-shirt au soleil ou à l'ombre)

22 Système de représentation
Équation de conversion entre RGB et CMY Exemple : Convertir le Blanc de RGB (1,1,1) à CMY (0,0,0) et vice versa. Conversion CMY vers CMYK : même principe. C = 1 – R M = 1 – G Y = 1 – B R = 1 – C G = 1 – M B = 1 - Y

23 Codage des images Coder une image Couleur des pixels : 2 méthodes
Le tableau de pixels. La couleur des pixels : Modèle de représentation Couleur des pixels : 2 méthodes Méthode simple (pixel↔couleur) Méthode par palette (pixel↔ indice dans la palette) Une couleur est représentée dans un ordinateur par une valeur numérique: on parle de couleur numérique   Il existe différents systèmes pour représenter la couleur numérique. Les principaux sont: Système HLS Système RGB Système CMY Système CMYK Le codage RGB, mis au point en 1931 par la Commission Internationale de l'Eclairage (CIE) consiste à représenter l'espace des couleurs à partir de trois rayonnements monochromatiques de couleurs : rouge (de longueur d'onde égale à 700,0 nm), vert (de longueur d'onde égale à 546,1 nm), bleu (de longueur d'onde égale à 435,8 nm). Cet espace de couleur correspond à la façon dont les couleurs sont généralement codées informatiquement, ou plus exactement à la manière dont les tubes cathodiques des écrans d'ordinateurs représentent les couleurs. Ainsi, le modèle RGB propose de coder sur un octet chaque composante de couleur, ce qui correspond à 256 intensités de rouge (28), 256 intensités de vert et 256 intensités de bleu, soient possibilités théoriques de couleurs différentes, c'est-à-dire plus que ne peut en discerner l'oeil humain (environ 2 millions). Toutefois, cette valeur n'est que théorique car elle dépend fortement du matériel d'affichage utilisé. Etant donné que le codage RGB repose sur trois composantes proposant la même gamme de valeur, on le représente généralement graphiquement par un cube dont chacun des axes correspond à une couleur primaire :

24 Méthode simple Pour chaque pixel , chaque composante RGB occupe n bits.  Pixel occupe 3 x n bits.  Pixel peut avoir 23n couleurs. Mode True Color, Couleurs vraies : n = 8  24 bits  16 millions de couleurs. Également Mode 32 bits : Ajout d’une 4ième composante sur 8 bits :le canal alpha. gére la transparence ou la texture des points. évite les effets de "marches d'escalier". Mode N&B: 1 bit/pixel  2 couleurs possibles (N ou B) Mode 16 couleurs/niveaux de gris Mode 256 couleurs/niveaux de gris : 1 octet/pixel Limitations : Toutes les nuances ne sont pas utilisée. Pas assez de nuances pour une teinte donnée. Ex. : image sur la mer :bcp de nuances de B; peu de R.

25 Méthode par palette Méthode par palette (colormap)
choisir les couleurs disponibles. Image en couleurs indexées La couleur de chaque pixel : Est codée comme une référence dans une palette. La palette contient les composantes RGB de la couleur. On obtient alors : N couleurs parmi 23M possibles. N = nombre d'entrées dans la palette. M = nombre de bits utilisés pour coder une composante d'une couleur dans la palette.

26 Taille d'une image Taille brute : sans compression.
Taille = X . Y . n. X = nombre de colonnes. Y = nombre de lignes. n = nombre d'octets nécessaires pour coder un pixel. Exemple d'une résolution de 1024 x 768. Nombre de couleurs Taille En octets En Ko Noir et Blanc X*Y*(1/8) 98.304 96 Ko Palette de 16 couleurs X*Y*(1/2) 384 Ko Palette de 256 couleurs X*Y*1 768 Ko True Color, 16 millions de couleurs. X*Y*3 2.304 Ko

27 Avantages Adapté aux applications orientées images
Qualité photographique

28 Limitations Codage "pauvre" de l'information.
Pas de distinction d'objet dans l'image. Taille des fichiers importante. Traitements d'image longs.

29 Avantages & limitations (2/2)
Limitations (suite) : L'agrandissement provoque un effet de mosaïque : La création d'une image "à la souris" est difficile. Usage conseillé d'un périphérique de numérisation : scanner, digitaliseur, appareil photo numérique... Retouches délicates : effacer un élément de l'image crée un "trou".

30 Formats d'images bitmap
Nombreux Caractéristiques Nombre de couleurs. Méthode de compression utilisée. Contexte d'utilisation. Comparaison : taille des fichiers pour les images Nom Résolution Définition Nombre de couleurs Image Droopy 1024x768 72 DPI 256 Trounesol 1600x1144 16 millions JPEG et JPEG2000Joint Photographic Experts GroupExcellente compressionCompression destructriceSpécialement conçu pour les photographies, il est cependant à utiliser avec délicatesse tant sa compression peut brouiller l'image. Le format JPEG2000, évolution du format original, peut être réglé pour compresser sans pertes. GIF (Graphical Interchange Format)H&R Block et CompuservePossibilité d'animation et de transparence, compression efficaceLimité à 256 couleursTrès répandu sur le Web malgré ses faiblesses et un problème de droit sur son format de compression. À déconseiller pour les photos. PNG (Portable Network Graphics)W3CExcellente compression sans perte. Possibilité de transparence. Standard donc pérenne.Pas très efficace pour les larges photographiesFormat destiné à remplacer le format GIF et ses limitations, mais ayant encore du mail à s'implanter dans les habitudes des développeurs. Peut remplacer les JPEG comme les GIF (sauf en ce qui concerne l'animation). TIFF (Tagged Image File Format) AldusCompression sans perte efficace. Couche de transparence.Lourdeur des fichiers non compressés. Format propriétaire.Format de stockage très utilisé, à éviter pour le Web BMP (Bitmap)MicrosoftFormat par défaut de WindowsDisponible uniquement sur la plateforme de MicrosoftGénéralement non compressé - le format RLE est possible mais peu reconnu PSD (Photoshop Document)AdobeTrès complet, conserve toutes les couches de l'image.Taille prohibitiveFormat standard de l'outil Photoshop, très populaire mais à limiter au stockage de retouche d'image du fait de la taille des fichiers.

31 Format BMP Défini par Microsoft pour Windows Caractéristiques
1, 4, 8 ou 24 bits : jusqu'à 16 millions de couleurs. Compression : sans perte, RLE (rarement). Fichiers de taille importante. Reconnu par une majorité de logiciels. Image Nb couleurs Compression Taille Droopy 256 770 Ko RLE 613 Ko Tournesol 16 millions 5363 Ko 1745 Ko Le format BMP est un des formats les plus simples développé conjointement par Microsoft et IBM, ce qui explique qu'il soit particulièrement répandu sur les plates formes Windows et OS/2. Un fichier BMP est un fichier bitmap, c'est-à-dire un fichier d'image graphique stockant les pixels sous forme de tableau de points et gérant les couleurs soit en couleur vraie soit grâce à une palette indexée. Le format BMP a été étudié de telle manière à obtenir un bitmap indépendant du périphérique d'affichage (DIB, Device independent bitmap). La structure d'un fichier bitmap est la suivante : En-tête du fichier (en anglais file header) En-tête du bitmap (en anglais bitmap information header, appelé aussi information Header) Palette (optionnellement) Corps de l'image Entête du fichier L'entête du fichier fournit des informations sur le type de fichier (Bitmap), sa taille et indique où commencent les informations concernant l'image à proprement parler. L'entête est composé de quatre champs : La signature (sur 2 octets), indiquant qu'il s'agit d'un fichier BMP à l'aide des deux caractères. BM, 424D en hexadécimal, indique qu'il s'agit d'un Bitmap Windows. BA indique qu'il s'agit d'un Bitmap OS/2. CI indique qu'il s'agit d'une icone couleur OS/2. CP indique qu'il s'agit d'un pointeur de couleur OS/2. IC indique qu'il s'agit d'une icone OS/2. PT indique qu'il s'agit d'un pointeur OS/2. La taille totale du fichier en octets (codée sur 4 octets) Un champ réservé (sur 4 octets) L'offset de l'image (sur 4 octets), en français décalage, c'est-à-dire l'adresse relative du début des informations concernant l'image par rapport au début du fichier Entête de l'image L'entête de l'image fournit des informations sur l'image, notamment ses dimensions et ses couleurs. L'entête de l'image est composé de quatre champs : 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, ... 0C pour OS/2 1.x F0 pour OS/2 2.x 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), c'est-à-dire le nombre de bits utilisés pour coder la couleur. Cette valeur peut-être égale à 1, 4, 8, 16, 24 ou 32 La méthode de compression (sur 4 octets). Cette valeur vaut 0 lorsque l'image n'est pas compressée, ou bien 1, 2 ou 3 suivant le type de compression utilisé : 1 pour un codage RLE de 8 bits par pixel 2 pour un codage RLE de 4 bits par pixel 3 pour un codage bitfields, signifiant que la couleur est codé par un triple masque représenté par la palette 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. Palette de l'image La palette est optionnelle. Lorsqu'une palette est définie, elle contient successivement 4 octets pour chacune de ses entrées représentant : La composante bleue (sur un octet) La composante verte (sur un octet) La composante rouge (sur un octet) Un champ réservé (sur un octet) Codage de l'image 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.

32 Format TIFF TIFF (Tagged Image File Format). Caractéristiques :
Origine Aldus et Microsoft. Standard de codage des images scannées; PAO, infographie, bureautique pour les images au trait (cliparts, FAX). Puissant mais complexe à gérer. Possibilité d'adaptation et d'évolution. Différentes versions incompatibles! Caractéristiques : Codage RVB, CMJN, couleur indexées, niveau de gris Compression : RLE, LZW, JPEG, compression FAX, ou aucune. Très bonnes performances en compression d'images noir et blanc. Fichiers assez gros. Reconnu par une majorité de logiciels. Image Nb couleurs Compression Taille Droopy 256 Aucune 771 Ko LZW 364 Ko 2 Huffman 156 Ko Tournesol 16 millions 5364 Ko 3395 Ko 462 Ko

33 Format GIF Format GIF (Graphic Interchange Format) : Caractéristiques
Compuserve, 1987 : GIF87a. Caractéristiques 256 couleurs parmi 16 millions. Compression sans perte LZW, efficace s'il y a des zones homogènes. GIF89a : possibilité de transparence, et d'animation. GIF89a : possibilité d'entrelacement (chargement graduel de l'image). Très utilisé : Reconnu par tous les logiciels ou presque LE format du Web avec JPG. Le format GIF Le format GIF (Graphic Interchange Format) est un format de fichier graphique bitmap (raster) par la société Compuserve. Il existe deux versions de ce format de fichier développées respectivement en 1987 et 1989 : GIF 87a supportant la compression LZW, l'entrelacement (permettant un affichage progressif), une palette de 256 couleurs et la possibilité d'avoir des images animées (appelées GIFs animés) en stockant plusieurs images au sein du même fichier. GIF 89a ajoutant la possibilité de définir une couleur transparente dans la palette et de préciser le délai pour les animations. Caractéristiques du format GIF Une image GIF peut contenir de 2 à 256 couleurs (2, 4, 8, 16, 32, 64, 128 ou 256) parmi 16.8 millions dans sa palette. Ainsi grâce à cette palette limitée en nombre de couleurs (et non limité en couleurs différentes), les images obtenues par ce format ont une taille généralement très faible. Toutefois, étant donné le caractère propriétaire de l'algorithme de compression LZW, tous les éditeurs de logiciel manipulant des images GIF doivent payer une redevance à la société détentrice des droits, Unisys. C'est une des raisons pour lesquelles le format PNG est de plus en plus plébiscité, au détriment du format GIF. Image Nb couleurs Compression Taille Droopy 256 LZW 353 Ko Tournesol 1203 Ko

34 Format PNG PNG (Portable Network Graphic). Caractéristiques :
Pour remplacer le GIF (devenu payant!!!). Le futur format du Web? Caractéristiques : 16 millions de couleurs. Compression sans perte LZW. Possibilité de transparence (niveau de transparence). Possibilité d'entrelacement (chargement graduel de l'image). Pas d'animation. Pas supporté pas tous les navigateurs web Le format PNG (Portable Network Graphics, ou format Ping) est un format de fichier graphique bitmap (raster). Il a été mis au point en 1995 afin de fournir une alternative libre au format GIF, format propriétaire dont les droits sont détenus par la société Unisys (propriétaire de l'algorithme de compression LZW), ce qui oblige chaque éditeur de logiciel manipulant ce type de format à leur verser des royalties. Ainsi PNG est également un acronyme récursif pour PNG's Not Gif. Caractéristiques du format PNG Le format PNG permet de stocker des images en noir et blanc (jusqu'à 16 bits par pixels de profondeur de codage), en couleurs réelles (True color, jusqu'à 48 bits par pixels de profondeur de codage) ainsi que des images indexées, faisant usage d'une palette de 256 couleurs. De plus il supporte la transparence par couche alpha, c'est-à-dire la possibilité de définir 256 niveaux de transparence, tandis que le format GIF ne permet de définir qu'une seule couleur de la palette comme transparente. Il possède également une fonction d'entrelacement permettant d'afficher l'image progressivement. La compression proposé par ce format est une compression sans perte (lossless compression) 5 à 25% meilleure que la compression GIF. Enfin PNG embarque des informations sur le gamma de l'image, ce qui rend possible une correction gamma et permet une indépendance vis-à-vis des périphériques d'affichage. Des mécanismes de correction d'erreurs sont également embarquées dans le fichier afin de garantir son intégrité. Structure d'un fichier PNG Un fichier PNG est constité d'une signature, permettant de signaler qu'il s'agit d'un fichier PNG, puis d'une série d'éléments appelés chunks (le terme "segments" sera utilisé par la suite). La signature d'un fichier PNG (en notation décimale) est la suivante : La même signature en notation hexadécimale est : E 47 0D 0A 1A 0A Chaque segment (chunk) est composé de 4 parties : La taille, un entier non signé de 4 octets, décrivant la taille du segment Le type de segment (chunk type) : un code de 4 caractères (4 octets) composés de caractères ASCII alphanumériques (A-Z, a-z, 65 à 90 et 97 à 122) permettant de qualifier la nature du segment Les données du segment (chunk data) Le CRC (cyclic redundancy check), un code correcteur de 4 octets permettant de vérifier l'intégrité du segment Les segments peuvent être présents dans n'importe quel ordre si ce n'est qu'ils doivent commencer par le segment d'en-tête (IHDR chunk) et finir par le segment de fin (IEND chunk) Les principaux segments (appelés critical chunks) sont : IHDR Image header PLTE Palette IDAT Image data IEND Image trailer Les autres segments (appelés anciliary chunks) sont les suivants : bKGD Background color cHRM Primary chromaticities and white point gAMA Image gamma hIST Image histogram pHYs Physical pixel dimensions sBIT Significant bits tEXt Textual data tIME Image last-modification time tRNS Transparency zTXt Compressed textual data Image Nb couleurs Compression Taille Droopy 256 LZW 310 Ko Tournesol 2723 Ko

35 Format JPG JPG ou JPEG (Joint Photographic Experts Group)
Comité créé en 1986 Norme adoptée en 1992/93 (ISO/CEI ou UIT-T Recommandation T.81. ) JPEG 2000 : compression par ondelettes. Caractéristiques 16 millions de couleurs. Compression avec perte Possibilité d'entrelacement (chargement graduel de l'image). Pas d’animation, pas de transparence Très utilisé Reconnu par tous les logiciels ou presque LE format du Web avec GIF Image Nb couleurs Compression Taille Droopy 16 millions Taux 1 451 Ko Taux 10 159 Ko Taux 20 119Ko Taux 99 17Ko Tournesol 897 Ko 457 Ko 346 Ko 40 Ko Cet article est le premier d'une série consacrée aux différentes techniques de compression d'image et de séquences vidéo. Nous avons choisi de ne pas nous intéresser au son, dont le stockage est moins problématique que celui des images. Rappelons qu'une image sous forme numérique est constituée d'une matrice de pixels contenant des informations sur la couleur de chacun d'entre eux. Cette information peut être codée sur 1 bit (2 couleurs - noir et blanc), 8 bits (1 octet couleurs), 16 ou 24 bits (respectivement et plus de 16 millions de couleurs: dans ce dernier cas, chaque octet code l'une des couleurs fondamentales, le rouge, le vert ou le bleu). Il est même possible de rajouter un octet contenant une information de transparence: l'information de couleur peut alors être codée sur 32 bits. La taille en octets de l'image est bien sûr proportionnelle à la précision sur la couleur, et à sa taille en pixels. La taille en octets d'une image 24 bits est vite considérable: une image 300x200 "pèse" environ 176 Ko. D'où l'intérêt des algorithmes de compression pour une transmission via le web. Ceci est encore plus vrai pour une séquence de 25 images (300x200, 24 bits) par seconde d'une durée d'une minute, dont la taille est d'environ 258 Mo! Et encore, la taille de l'image est très très petite. L'algorithme DCT Le format JPEG (Joint Photographic Experts Group) permet d'atteindre des taux de compression (sans perte notable de qualité) jusqu'à un facteur 25. La technique sous-jacente repose sur une transformation matricielle appelée DCT, pour Discrete Cosine Transform. L'algorithme DCT s'applique sur des sous-matrices (blocs) de 8x8 pixels. Mathématiquement, la transformation s'écrit, pour une sous-matrice A:tC.A.C (le . désigne un produit matriciel)où tC désigne la transformée de C: tC(i,j)=C(j,i). C est une matrice 8x8 de coefficents tels que: C(i,j)=K(j)/2*cos((2*i+1)*j*PI/16 avec K(0)=sqrt(1/2) et K(j)=1 pour j>0. La transformation DCT est orthogonale: on peut l'inverser. Si B est la matrice résultant de l'opération, on récupère A par C.B.tC. En théorie, la transformation DCT est donc sans perte. En pratique, les arrondis vont venir la fausser. La transformation inverse ne donnera pas exactement A. Minimiser les arrondis permet d'obtenir un meilleur résultat par conséquent. En elle-même, la transformation DCT ne compresse pas les données: elle modifie simplement les coefficients de la matrice initiale (RVB). Le but est analogue à celui de la transformée de Fourier d'un signal: traduire l'image dans un "domaine de fréquences" (peser le poids relatif de chaque fréquence). Le bloc 8x8 initial donne par DCT un bloc 8x8 dont les coefficients en haut à gauche sont les coefficients des basses fréquences et les coefficients en bas à droite ceux des hautes fréquences. Que représente ces fréquences? Elles caractérisent des courbes sinusoïdales qui sont elles-mêmes la décomposition du "signal" que représente l'image (en l'occurence le bloc). Ce sont des "fréquences spatiales". Notons qu'il est préférable, afin d'obtenir ultérieurement une meilleure compression, de convertir au préalable (avant la transformation DCT) l'image RVB en image YUV (luminance - chrominance - saturation ou luminosité - teinte - saturation). Une image 16 bits traduite en luminance - chrominance puis transformée par DCT donnera lieu à une matrice de blocs 8x8 contenant des paires de coefficients DCT exploitables au mieux. Quantification et encodage Une fois la transformation DCT effectuée, la première étape de la compression proprement dite est la quantification des coefficients DCT. Chaque coefficient d'un bloc 8x8 est divisé par un quantificateur élément d'une matrice 8x8 de quantification. Ces 64 quantificateurs sont soit calculés en fonction d'un paramètre de compression, soit donnés par des tables standards, optimisées par les concepteurs du format JPEG: il existe une table de quantification pour l'information de luminance, une autre pour l'information de chrominance (données ci-dessous). Luminance Chrominance Chaque coefficient DCT est divisé par le quantificateur correspondant, puis arrondi à l'entier le plus proche. Ceci a pour effet de diminuer (voire supprimer) le poids relatif des faibles coefficients (en valeur absolue) et d'abaisser le niveau de précision qu'expriment les forts coefficients (en valeur absolue). L'étape de quantification (quantization) est donc l'étape de perte d'information. L'encodage, dernière étape du processus, est précédé d'une réorganisation de la matrice (ensemble des sous-matrices ou blocs): les coefficients correspondant aux basses fréquences, et en bas à droite les coefficients correspondant aux hautes fréquences (ces derniers ayant beaucoup plus de chances d'être proches de - ou égaux à - zéro). On utilise ensuite généralement l'algorithme de Huffman pour effectuer l'encodage. Arbres de Huffman Un tel arbre est construit à partir de la matrice (préparée selon le processus ci-dessus) en construisant une liste des éléments et de leur fréquence (cette le fois le nombre d'occurences de chaque coefficient dans la matrice), par ordre croissant. Ensuite, les deux éléments de plus basse fréquence (occurence) consitueront deux des "feuilles" de l'arbre. Leur "parent" est ensuite construit en lui associant une valeur qui est la somme des fréquences de ses deux fils. Ce noeud parent est ensuite injecté dans la liste des fréquences à la place correspondant à sa valeur, tandis que les deux éléments ayant servis à l'obtenir sont enlevés de la liste. Le processus est ensuite itéré avec les autres éléments (en commençant par les fréquences basses) jusqu'à ce qu'il ne reste plus qu'un seul élément dans la liste: l'élément racine de l'arbre de Huffman. L'encodage proprement dit est constitué en associant à chaque feuille ou branche de l'arbre un identifiant unique: une feuille ou branche gauche se verra associé un "0", tandis qu'une feuille ou branche droite se verra associée un "1". Une feuille gauche d'une branche droite de la racine aura donc l'identifiant "01" (l'arbre est traversé depuis la feuille désirée), unique. Les valeurs sont placées dans une table qui constituera la plus grande partie du fichier JPEG. Ces données sont compressées par la représentation en arbre de Huffman, et au préalable par l'opération de quantification. Il existe d'autres techniques de compression d'image, notamment la compression par ondelettes, sur lesquelles nous reviendrons. La compression JPEG reste largement répandue sur le web, même si elle pourrait être supplantée par des algorithmes plus performants dans un futur proche.

36 JPEG compression Contraintes d’exploitation fixé par le comité JPEG
Modes de compression avec ou sans dégradation Implémentation hard ou soft Réseau de transport Numéris (64 kbits/s) Affichage séquentiel ou progressif Objectifs fixés ambitieux 2.25 bits/pixel : qualité de l’originale 0.75 bit/pixel : qualité excellente 0.25 bit/pixel : qualité moyenne 0.08 bit/pixel : reconnaissable !

37 JPEG compression 6 étapes
Format des données compressées et schéma de dé/codage. Algorithmes de dé/compression proposés mais non normalisés. La norme décrit principalement le format des données compressées et le schéma de codage et de décodage. Les algorithmes de compression et de décompression y sont proposés, mais ne sont pas normalisés. Ce qui fait que tout programmeur est libre d'éprouver ses propres algorithmes ou variantes, pourvus que les formats de sortie soient respectés.

38 JPEG Découpage de l’image (1) & transformation des couleurs (2)
Découper l’image en M carreaux fi(x,y) de 8 x 8 ou 16x16 pixels les matrices doivent être carrées petit bloc  temps de calcul raisonnable JPEG peut coder les couleurs sous plusieurs modèles, mais meilleure compression avec codage de type luminance/chrominance (YUV) Oeil + sensible à luminance qu’à chrominance

39 JPEG Sous échantillonnage (3)
Exploiter la faible sensibilité de l'œil à la chrominance sous échantillonner les signaux de chrominance sous échantillonner à 4:4:4, 4:2:2, 4:1:1 La façon la plus simple d’exploiter la faible sensibilité de l'œil à la chrominance est simplement de sous-échantillonner les signaux de chrominance. Généralement on utilise un sous échantillonnage de type 2h1v ou 2h2v. Dans le premier cas (le plus utilisé) on a un sous échantillonnage 1:1 horizontalement et 2:1 verticalement, dans le deuxième cas on a un sous échantillonnage 2:1 horizontalement et verticalement. Ces sous échantillonnages sont utilisés pour les chrominances, pour la luminance on n'utilise jamais de sous échantillonnage.

40 JPEG DCT (4) Discrete Cosine Transform
Appliquée sur les matrices Y, Cb et Cr Sépare les basses et les hautes fréquences présentes dans l'image Même principe que la transformée de Fourrier Décomposition de la fonction f(x,y) dans une base de N*N fonctions dont la somme pondérées = f(x,y) Calcul des coefficients C(u,v) La transformation DCT La transformation est réalisée, non pas sur l’image entière, mais sur des blocs de 8 x 8 pixels. En effet, les matrices doivent être carrées et une taille plus grande serait trop coûteuse en temps de calcul. A partir des valeurs f(x,y) du bloc considéré de NxN pixels, la transformation calcule les coefficients C(u,v) par : si 1 si w[1,N-1]

41 JPEG DCT (4) Fonction 2D Coefficient DC = valeur moyenne du bloc : c’est le plus important Coefficients AC = puissance spectrale pour chaque fréquence spatiale.

42 JPEG DCT (4) DCT C

43 JPEG Quantification (5)
Introduit les principales pertes La DCT est conservatrice si on omet les erreurs d’arrondis. Réduire le nb de valeurs correspondant aux amplitudes. Hautes fréquences = faibles amplitudes peu sensible pour l'œil  éliminées. Utilisation d’une matrice Q (u,v) qui définit le niveau de quantification pour chaque fréquence Moins de niveau pour les matrices de chrominance que pour la luminance Les tables doivent être transmises au décodeur

44 JPEG Quantification (5)

45 Codage RLE, DPCM & Huffman (6)
RLE zigzag pour les AC d’un carreau Dans notre exemple RLE sur : 0, -2, -1, -1, -1, 0, 0, -1, EOB (End Of Block)  0, -2, #3 -1, #20, -1, EOB (End Of Block) Économie de 3 valeurs Compression différentielle DPCM des cœfficients DC Huffman sur les suites de DC et AC encodés Les tables doivent être transmises au décodeur

46 JPEG Décompression Dans notre exemple Résultat : Erreur : e(x,y)
Amplitude max :5 Moyenne : 1.6 Moyenne normalisé 1% (1,6/150)

47 Autres formats PCX (PiCture eXchange). PICT FAX TGA
Environnement PC (mode CGA). 256 couleurs. Compression RLE, adapté à de faibles nombres de couleurs. PICT QuickDraw. Traite aussi le vectoriel. Spécifique à Macintosh. FAX Transmission de documents. Codage binaire (noir et blanc). Compression RLC puis type Huffman. TGA Créé par Truevision (cartes Targa et Vista). Très puissant (comme TIFF). Peu connu. Compression RLC. Palettes graphiques haut de gamme (PC). Le format PCX Le format PCX a été mis au point par la société ZSoft, éditant le logiciel PaintBrush équipant en standard les systèmes d'exploitation Microsoft Windows à partir des années 80. Le format PCX est un format bitmap permettant d'encoder des images dont la dimension peut aller jusqu'à par et codées sur 1 bit, 4 bit, 8 bit ou 24 bit (correspondant respectivement à 2, 16, 256 ou 16 millions de couleurs). La structure d'un fichier PCX est la suivante : En-tête de l'image (en anglais bitmap information header) d'une longueur de 128 octets Corps de l'image Informations Palette des couleurs (optionnelle). Il s'agit d'un champ de 768 octets permettant de stocker les différentes valeurs de rouge, de vert et de bleu (RVB) de chaque élément de la palette Entête de l'image L'entête de l'image fournit des informations sur l'image, notamment ses dimensions et ses couleurs. L'entête de l'image est composé des champs suivants : La signature du fichier (sur un octet), permettant d'identifier le type du fichier. La valeur hexadécimale 0A désigne un fichier PCX. La version (sur un octet) : 0= Version 2.5 2= Version 2.8 avec palette 3= Version 2.8 sans palette 5= Version 3.0 Le format (sur un octet), c'est-à-dire la méthode d'encodage utilisée. La valeur 1 désigne un encodage RLE. Le nombre de bits par pixel par plan (sur un octet) Xmin (sur deux octets), abscisse de l'angle supérieur gauche Ymin (sur deux octets), ordonnée de l'angle supérieur gauche Xmax (sur deux octets), abscisse de l'angle inférieur droit Ymax (sur deux octets), ordonnée de l'angle inférieur droit résolution horizontale (sur deux octets) résolution verticale (sur deux octets) Palette (sur 48 octets) Réservé (sur un octet) Nombre de plans de couleur (sur un octet) Nombre de bits par ligne (sur 2 octets) Type de palette (sur 2 octets) Remplissage (58 octets) Il est intéressant de noter que «Xmax - Xmin + 1» représente la largeur de l'image et que «Ymax - Ymin + 1» représente la hauteur de celle-ci. Codage de l'image 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 haut à gauche, puis en parcourant de gauche à droite et de haut en bas. Le format TIF Le format TIF ou TIFF (Tagged Image File Format) est un format de fichier graphique bitmap (raster). Il a été mis au point en 1987 par la société Aldus (appartenant désormais à Adobe). Les dernières spécifications (Revision 6.0) ont été publiées en 1992. Caractéristiques du format TIF Le format TIFF est un ancien format graphique, permettant de stocker des images bitmap (raster) de taille importante (plus de 4 Go compressées), sans perdition de qualité et indépendamment des plates formes ou des périphériques utilisés (Device-Independant Bitmap, noté DIB). Le format TIFF permet de stocker des images en noir et blanc, en couleurs réelles (True color, jusqu'à 32 bits par pixels) ainsi que des images indexées, faisant usage d'une palette de couleurs. De plus le format TIF permet l'usage de plusieurs espaces de couleurs : RGB CMYK CIE L*a*b YUV / YCrCb Structure d'un fichier TIFF Le principe du format TIF consiste à définir des balises (en anglais tags, d'où le nom Tagged Image File Format) décrivant les caractéristiques de l'image. Les balises permettent de stocker des informations concernant aussi bien les dimensions de l'image, le nombre de couleurs utilisées, le type de compression (de nombreux algorithmes peuvent ainsi être utilisés Packbits / CCITT G3&4 / RLE / JPEG / LZW / UIT-T), ou bien la correction gamma. Ainsi la description de l'image par balise rend simple la programmation d'un logiciel permettant d'enregistrer au format TIFF. En contrepartie la multiplicité des options proposées est telle que nombre de lecteurs d'images supportant le format TIFF ne les intègrent pas toutes, si bien qu'il arrive qu'une image enregistrée au format TIFF ne soit pas lisible sous un autre.

48 Exemple de dégradation JPG
Taux 1 Taux 10 Taux 20 897 Ko 457 Ko 346 Ko Taux 50 Taux 75 Taux 99 241 Ko 119 Ko 40 Ko

49 Taux de compression JPG
Droopy, compression 10 (159 Ko) Droopy compression 20 (119 Ko)

50 Récapitulatifs Pour Droppy Pour Tournesol Format Nb couleurs
Compression Taille Droopy Taille Tournesol BMP 256 770 Ko 5363 Ko RLE 613 Ko 1745 Ko TIFF 771 Ko 5364 Ko LZW 364 Ko 3395 Ko 2 Huffman 156 Ko 462 Ko GIF 353 Ko 1203 Ko PNG 310 Ko 2723 Ko JPG 16 millions Taux 1 451 Ko 897 Ko Taux 10 159 Ko 457 Ko Taux 20 119 Ko 346 Ko Taux 99 17 Ko 40 Ko Pour Droppy Compression sans perte : GIF & PNG. Compression avec pertes : JPG. Pour Tournesol Compression sans perte : GIF, mais 256 couleurs. PNG, mais compression insuffisante. JPG !!! Compression avec pertes : JPG


Télécharger ppt "Le média image Chapitre 3"

Présentations similaires


Annonces Google