l`univers numerique le codage des images en format bitmap

Transcription

l`univers numerique le codage des images en format bitmap
LE
L’UNIVERS NUMERIQUE
CODAGE DES IMAGES EN FORMAT
BITMAP
A / Le format Bitmap
Bitmap signifie « carte de bits ». C'est la façon la plus simple de coder une image : l'image est décrite point par
point. Les points d'une image sont appelés des 'pixels': ce mot est la contraction de « picture elements ».
Chaque pixel est décrit par un nombre indiquant sa couleur. L'image est donc représentée par une série de
nombre, chacun représentant la couleur d'un pixel. Les bitmaps existent sous différents formats, selon le nombre
de couleurs possibles pour un pixel. Le fichier contient également un en-tête comprenant différents
renseignements, tels que ses dimensions et son format.
Le codage est simple mais l'image Bitmap occupe beaucoup de place mémoire: les pixels sont petits, donc
nombreux! Nous allons essayer de décoder quelques-uns de ces formats.
Remarque : Les résultats sont valables pour des Bitmaps non compressés, réalisés avec des programmes simples
comme Paint.
Note : Lorsqu'on examine un bitmap avec l’application « Exafich », on peut le visualiser dans une petite fenêtre. Le
bouton « + » permet de le voir agrandi 4 fois et le bouton « - »de revenir à la taille normale.
B / Le Bitmap monochrome
Ce format ne connaît que deux couleurs : noir et blanc.
1 / Combien faut-il de bits pour stocker la couleur d'un pixel dans ce format ?
Il faut 1 bit pour stocker la couleur d’un pixel.
2 / Combien de points peut-on décrire avec un octet ?
Avec un octet, on peut décrire 8 points ou pixels.
3 / Combien faut-il d'octets pour stocker une image de 800 sur 600 pixels (taille de votre écran) dans ce format ?
Donner le résultat en octets, en kilooctets et en kibioctets.
Le stockage d’une image de 800 x 600 pixels nécessite : 800 x 600 = 480 000 pixels, donc 480 000 bits.
Nombre d’octets : 480 000 / 8 = 60 000 octets
Nombre de kilooctets : 60 000 / 1000 = 60 ko.
Nombre de kibioctets : 60 000 / 1024 = 58,594 kio.
Les fichiers « noir01.bmp », « blanc01.bmp », « lignes 01.bmp », « nb01.bmp » sont des bitmaps monochromes,
de même taille, mais contenant des images différentes. Examiner chacun d'eux à l’aide de l’application « Exafich ».
4 / Identifier l'en-tête de fichier : c'est la partie qui est identique dans les trois fichiers. Combien compte-t-elle
d'octets dans le format monochrome?
En-tête du fichier : 42-4D-BE-00-00-00-00-00-00-00-3E-00-00-00-28-00-00-00-20-00-00-00-20-0000-00-01-00-01-00-00-00-00-00-80-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-0000-00-00-00-FF-FF-FF-00
Nombre d’octets de l’en-tête : 62 octets
BAC Pro
SEN
L’UNIVERS NUMERIQUE
Corrigé Activité 3
Le codage des images en format Bitmap
Page 1
Le reste du fichier contient la description de l'image. Il est conseillé pour les questions suivantes d'utiliser
l'affichage en hexadécimal et de "penser en base 2" !
5 / Quelle est la couleur correspondant à la valeur 0 ? À la valeur 1 ?
La valeur « 0 » correspond à la couleur noire
La valeur « 1 » correspond à la couleur blanche
6 / Quelle suite de digits binaires utilise-t-on pour décrire une alternance de points blancs et noirs ?
Quelles sont les deux valeurs possibles pour un octet décrivant une alternance de points blancs et noirs ? (donner
cette valeur en binaire, puis en hexadécimal).
On utilise une suite de « 0 » et de « 1 » pour décrire une alternance de points blancs et noirs.
Les deux valeurs possibles pour un octet décrivant une alternance de points blancs et noirs sont :
% 10101010 = $ AA et 01010101 = $ 55
7 / Ecrire en hexadécimal
7-1 / La suite d'octets binaires représentant une suite de 32 points noirs.
32 points noirs  32 bits à « 0 » ou 4 octets $ 00 :
00 – 00 – 00 - 00
7-2 / La suite d'octets binaires représentant une suite de 32 points blancs.
32 points blancs  32 bits à « 1 » ou 4 octets $ FF :
FF – FF – FF - FF
7-3 / La suite d'octets binaires représentant une suite de 32 points alternativement blancs et noirs, commençant
par un point blanc.
32 points alternativement blancs et noirs commençant par un point blanc : AA – AA – AA - AA
7-3 / La suite d'octets binaires représentant une suite de 32 points alternativement blancs et noirs, commençant
par un point noir.
32 points alternativement blancs et noirs commençant par un point noir : 55 – 55 – 55 - 55
8 / Le fichier « ligne01.bmp »' représente une alternance de lignes noires et blanches. Ouvrir le fichier avec
l’application Paint pour voir son aperçu. D'après les réponses à la question 7, les points d'une image sont-ils lus par
ligne ou par colonne ?
Les points d'une image sont lus par ligne (Suite de 00 et de FF)
9 / De haut en bas ou de bas en haut ? Justifier votre réponse.
Le fichier « ligne01.bmp » commence par une ligne noire et finit par une ligne blanche. Les données
commencent par $ FF-FF-FF-FF (ligne blanche) et finissent par $ 00-00-00-00 (ligne noire). L'image est
donc décrite de bas en haut : la première ligne est à la fin des données et la dernière au début.
BAC Pro
SEN
L’UNIVERS NUMERIQUE
Corrigé Activité 3
Le codage des images en format Bitmap
Page 2
10 / Le fichier « nb01.bmp » comprend des lignes de points alternativement blancs et noirs. Ouvrir le fichier avec
l’application Paint pour voir son aperçu. D'après les réponses à la question 7, les points de l'image sont-ils lus de
droite à gauche ou de gauche à droite ?
Le fichier « nb01.bmp » contient une alternance de lignes noires, de 32 points de large et 1 pixel de haut, et
de lignes composée de 32 points blancs et noirs alternés. On lit dans le fichier, en hexa 00-00-00-00 (pour
une ligne noire) et $ AA-AA-AA-AA , c'est à dire une suite de points noirs et blancs alternés commençant
par un point blanc. Comme les lignes commencent par un point blanc et se terminent par un noir, on en déduit
qu'elles sont décrites de gauche à droite (sinon on aurait eu $55-55-55-55).
Dans tous les autres formats de bitmap les données image se trouvent également à la fin du fichier et se lisent de
la même façon (sauf si le bitmap est compressé).
C / Les éléments de l’en-tête
Pour cette partie il est conseillé d'utiliser plutôt l'affichage en base 10.
1 / Quels sont les caractères correspondant aux deux premiers octets de l'en-tête ?
Que signifient ces deux octets ?
Ce sont les codes ASCCI des lettres B ($ 42) et M ($4D), pour « BitMap »
............................................................................................................................................................
2 / Les fichiers « noir01.bmp », « noir01_1616.bmp » et « noir01_800.bmp » sont des fichiers monochromes de
dimensions différentes. En examinant sa valeur décimale pour ces trois fichiers, déterminer ce que représente
le troisième octet de l'en-tête.
« noir01.bmp » : $ BE = (190)10 / « noir01_1616.bmp » : $ 7E = (126)10 / « noir01_800.bmp » : $ A2 = = (162)10
Cet octet représente la taille du fichier en octets.
3 / Le nombre de digits nécessaires pour décrire un pixel est également stocké dans l'en-tête. Trouver où ! ( Les
fichiers « noir01.bmp », « bmp4.bmp », « bmp8.bmp » et « bmp24.bmp » sont codés respectivement sur
1,4,8 et 24 bits)
Le nombre de digits utilisé pour coder un point est le 29ème de l’en-tête. (13ème octet de la deuxième ligne (le
quatrième à partir de la droite) (24)10 = $ 18
Ces résultats sont également valables pour les autres formats de bitmap.
D / Le bitmap 4 bits (La couleur d’un point est codé sur 4 bits)
1 / Combien de couleurs différentes peut-on coder sur 4 bits ?
Avec 4 bits, on peut faire 24 combinaisons différentes, donc 16 couleurs
2 / Combien de points, au format bitmap 4 bits, peut-on décrire avec un octet ?
Avec un octet, on peut décrire 2 points ou pixels.
BAC Pro
SEN
L’UNIVERS NUMERIQUE
Corrigé Activité 3
Le codage des images en format Bitmap
Page 3
3 / Combien faut-il de symboles pour écrire la couleur d'un point en hexadécimal ?
Il suffit d’un symbole hexadécimal par point, puisqu'un symbole hexadécimal permet d'écrire 16 valeurs, de 0
à 15.
4 / Combien faut-il d'octets pour décrire une image de 800 sur 600 pixels avec ce format? Donner le résultat en
octets, puis en kilooctets et kibioctets.
Une image de 800 x 600 pixels nécessite : 800 x 600 = 480 000 pixels. Chaque pixel est codé sur 4 bits.
Donc une image est codé sur : 480 000 x 4 = 1 920 000 bits
Nombre d’octets : 1 920 000 / 8 = 240 000 octets
Nombre de kilooctets : 240 000 / 1000 = 240 ko.
Nombre de kibioctets : 240 000 / 1024 = 234,375 kio ~ 234 kio .
E / Le bitmap 24 bits (La couleur d’un point est codé sur 24 bits)
1 / Combien peut-on coder de couleurs différentes sur 24 bits ?
Avec 24 bits, on peut faire 224 combinaisons différentes, donc 16 777 216 couleurs (16 millions de couleurs)
2 / Combien faut-il d'octets pour décrire une image de 800 sur 600 pixels avec ce format? Donner le résultat en
octets, en kilooctets et en mégaoctets.
Une image de 800 x 600 pixels nécessite : 800 x 600 = 480 000 pixels. Chaque pixel est codé sur 24 bits.
Donc une image est codé sur : 480 000 x 24 = 11 520 000 bits
Nombre d’octets : 11 520 000 / 8 = 1 440 000octets
Nombre de kilooctets : 1 440 000 / 1000 = 1 444 000 ko = 1,444 M0.
Nombre de kibioctets : 1 440 000 / 1024 = 1 406.25 kio ~ 1 406 kio .
Nombre de mebioctets : 1 440 000 / 220 ~ 1,373 Mio .
BAC Pro
SEN
L’UNIVERS NUMERIQUE
Corrigé Activité 3
Le codage des images en format Bitmap
Page 4
ANNEXES
Contenu des différents fichiers visualisés à l’aide de l’application « Exafich »
BAC Pro
SEN
L’UNIVERS NUMERIQUE
Corrigé Activité 3
Le codage des images en format Bitmap
Page 5
BAC Pro
SEN
L’UNIVERS NUMERIQUE
Corrigé Activité 3
Le codage des images en format Bitmap
Page 6
BAC Pro
SEN
L’UNIVERS NUMERIQUE
Corrigé Activité 3
Le codage des images en format Bitmap
Page 7

Documents pareils