1, 2, 3, codez ! - Activités cycle 3 - Séance 3.3 (optionnelle): Comment encore une image en gris ou en couleurs ?

Résumé

Les élèves approfondissent le travail de la séance précédente en abordant l’encodage numérique d’images en niveaux de gris et en couleurs.

Notions

« Information »

  • Une image peut être représentée sous la forme d'une grille de carrés appelés pixels.
  • Plus on juxtapose de bits, plus on peut représenter d’éléments différents.
  • en niveau de gris, chaque pixel peut être représenté par plusieurs bits
  • en couleur, chaque pixel peut être représenté par 3 nombres (sur un ou plusieurs bits) représentant une quantité de rouge, de vert et de bleu.
  • Plus on juxtapose de bits, plus on peut représenter d'éléments différents.

Matériel

Par binôme

Pour la classe

Lexique

Image, pixel, codage

Durée :

1h30, éventuellement en 2 fois 45 min

Situation déclenchante

L’enseignant fait ré-émerger les conclusions de la séance précédente : on peut encoder une image en noir et blanc par une grille de pixels, en indiquant « 0 » pour un pixel blanc et « 1 » pour un pixel noir.
Si les élèves avaient proposé à la Séance III-3.1 d’améliorer la représentation des images de fruits en coloriant plus ou moins fortement les cases, l’enseignant revient sur cette proposition qu’il avait notée : « vous aviez eu l’idée, lorsque nous avions pixellisé les images de fruits, de ne pas faire seulement des cases noires et blanches, mais aussi des cases grises. ».
Que cette proposition ait été faite ou pas par les élèves, l’enseignant ouvre ensuite une image en niveaux de gris à l’aide de l’éditeur d’image (fichier III-3.3_recherche_gris), et zoome suffisamment pour que les pixels soient visibles. Il demande si cette image comporte seulement des pixels noirs et blancs. Les élèves constatent qu’il y a des pixels gris clairs, gris moyen, gris foncé, en plus des pixels noirs et blancs, ce qui amène à la première activité de recherche.

Recherche : encodage d’une image en nuances de gris (par binômes et collectivement)

L’enseignant demande si des 0 et des 1 vont suffire pour encoder les pixels noirs, blancs et gris plus ou moins clair. Les élèves répondent que non, et proposent de mettre aussi d’autres chiffres que le 0 et le 1. L’enseignant demande aux élèves de chercher comment cette image a été encodée (ils ont accès au fichier III-3.3_recherche_gris et peuvent l’ouvrir avec les logiciels de leur choix).  En cas de difficulté, l’enseignant peut suggérer d’ouvrir ce fichier d’une part avec un logiciel éditeur de texte et d’autre part avec un logiciel éditeur d’image (voir partie haute de la Fiche 42).

Après quelques minutes, la synthèse est faite collectivement. Les élèves auront constaté, en comparant le fichier ouvert avec l’éditeur de texte d’une part et avec l’éditeur d’images d’autre part :

  • qu’il y a une indication P2 sur la première ligne, et non plus P1 (l’enseignant précise que cela indique que la suite sera encodée en niveaux de gris).
  • qu’il y a, sur la deuxième ligne, une indication du nombre de lignes et du nombre de colonnes (ici 15 15), comme c’était le cas pour l’encodage des images en noir et blanc.
  • qu’il y a une ligne supplémentaire contenant l’indication 7, justement le chiffre maximum apparaissant dans la grille de pixel qui vient ensuite.
  • que la grille de pixels comporte des chiffres entre 0 et 7, c’est-à-dire 8 chiffres différents (et non plus seulement des 0 et des 1 comme c’était le cas pour un encodage en noir et blanc).
  • que plus le chiffre est petit, plus le pixel correspondant est sombre (pixels noirs encodés par 0, pixels gris de plus en plus clairs encodés par les chiffres 1 à 6, pixels blancs encodés par 7). C’était le contraire en noir et blanc (0 correspondait alors aux pixels blancs).

Si certaines de ces observations n’ont été faites par aucun binôme, l’enseignant guide la classe. Si des interrogations subsistent, l’enseignant peut encourager les élèves à procéder à des modifications du fichier dans l’éditeur de texte, et à actualiser l’image dans l’éditeur d’images (Fichier/Rouvrir), pour voir ce qui est alors modifié.

Notes scientifiques

  • L’encodage en niveaux de gris se fait classiquement sur un nombre de nuances correspondant à une puissance de 2 (par exemple 8, 16, 32 ou 256 niveaux de gris), ce qui correspond à un encodage de chaque pixel sur respectivement, 3 bits, 4 bits, 5 bits et 8 bits) (voir Séance III-1.3).
  • L’extension pgm des fichiers image signifie « portable grayscale map » ou « carte transportable en nuances de gris ».

Défi : encoder un dégradé de gris(en binômes)

L’enseignant lance aux élèves le défi suivant : ils doivent créer avec l’éditeur de texte un fichier représentant un dégradé de gris, comme celui projeté au tableau (signaler le pixel blanc tout à gauche s’il n’est pas visible). Le fichier, vide pour le moment, s’appelle III-3.3_defi_gris_vierge.pgm.

Puis les élèves doivent sauvegarder le fichier et l’ouvrir avec l’éditeur d’image, sans fermer l’éditeur de texte, et appeler l’enseignant lorsqu’ils ont, côte à côte, d’une part le fichier ouvert avec l’éditeur de texte, et d’autre part le dégradé visible avec l’éditeur d’image.
Un encodage possible, que la majorité des binômes propose, est le suivant :

P2
16 1
15
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

Pour arriver à ce résultat, les élèves doivent avoir compté le nombre de niveaux de gris sur le dégradé (16 en l’occurrence), et avoir adapté la troisième ligne en conséquence. Ils doivent également avoir adapté le format de la grille de pixels (16 colonnes et une seule ligne) et avoir encodé les pixels avec des valeurs décroissantes de 15 à 0, pour que le pixel blanc soit à gauche et le noir à droite conformément à la demande du défi.
Un autre encodage possible parmi d’autres est  par exemple :

P2
16 1
31
31 29 27 25 23 21 19 17 15 13 11 9 7 5 3 0

Recherche : encodage d’un  pixel en couleur (par binômes et collectivement)

L’enseignant rappelle que les images peuvent aussi être en couleurs. Il signale le fichier III-3.3_recherche_couleur, qui permet d’encoder un unique pixel en couleur. Il demande aux élèves d’essayer de comprendre comment fonctionne l’encodage grâce à ce fichier, comme ils l’ont fait dans le cas des niveaux de gris. Il leur suggère de ne toucher qu’à la dernière ligne pour commencer, et de regarder le résultat à l’écran avec les loupes (qu’il distribue).

L’encodage proposé dans le fichier, qui donne un pixel rouge, est celui-ci :

P3
1 1
7
7 0 0

Les élèves  peuvent essayer, pour la troisième ligne, les cas extrêmes 0 0 0 (pixel noir), 7 7 7 (pixel blanc), 0 7 0 (pixel vert), 0 0 7 (pixel bleu), 0 7 7 (pixel cyan), 7 0 7 (pixel magenta), 7 7 0 (pixel jaune) et une multitude de combinaisons intermédiaires de leur choix (par exemple 7 6 2 qui donne un jaune d’or ou 1 5 6 qui donne un bleu ciel).

Lors de la mise en commun, les élèves rapportent qu’à la loupe, on voit de petites lumières rouges, vertes et bleues, de forme rectangulaire, juxtaposées de façon répétitive dans cet ordre répété de gauche à droite de l’écran. Lorsqu’on indique 0 0 0 sur la dernière ligne du fichier, les lumières de l’écran (aussi bien les rouges que les vertes et les bleues) sont peu lumineuses à la loupe, alors qu’avec 7 7 7, elles sont très lumineuses. Avec 7 0 0, seules les lumières rouges sont très lumineuses, etc. La classe synthétise collectivement que les trois valeurs de la dernière ligne indiquent le niveau de luminosité du pixel dans le rouge, le vert et le bleu (le pixel carré a donc 3 sous-pixels rectangulaires, de trois teintes R, V et B). La sensation que l’on a à distance de l’écran dépend de la balance entre les luminosités dans les trois teintes. La couleur obtenue pour les combinaisons suivantes est gardée visible au tableau en vue du défi suivant :

0 0 0 7 7 7 7 0 0 0 7 0 0 0 7 0 7 7 7 0 7 7 7 0
Noir Blanc Rouge Vert Bleu Cyan Magenta Jaune

L’enseignant peut indiquer que le plus souvent, il y a 256 niveaux de rouge, de vert et de bleu possible, et non pas 8. Il précise que pour le défi suivant, on va au contraire réduire le nombre de niveaux de rouge, de vert et de bleu, pour n’en avoir que 2 : éteint ou allumé, comme pour le codage en noir et blanc.

Notes scientifiques

  • L’extension de fichier ppm signifie « Portable Pixel Map » pour « Carte transportable de pixels ».
  • Usuellement, les sous-pixels sont encodés sur 8 bits, ce qui correspond à 256 niveaux d’intensité possibles (valeurs de 0 à 255). Il faut donc 24 bits pour décrire un pixel en RVB (voir Séance III-1.3).

Défi : encoder un mini-phare en couleur

L’enseignant lance le dernier défi. Il s’agit d’encoder un petit phare en couleur, en utilisant seulement deux niveaux de luminosité pour les sous-pixels : 0 pour un sous-pixel éteint et 1 pour un sous-pixel allumé.

Autrement dit, le fichier III-3.3_defi_couleur_prerempli à modifier commence par :

P3
5 5
1

Suivi d’une grille de valeurs 0 (pixel éteint) ou 1 (pixel allumé). Le fichier est pré-rempli avec le nombre adéquat de 0 (15 par ligne, sur 5 lignes). Une ligne de commentaire commençant par le caractère # facilite le repérage des blocs de trois sous-pixels.
Les élèves qui réussissent le défi proposent l’encodage suivant :

P3
5 5
1
#     #     #     #     #
0 1 1 0 1 1 1 0 0 1 1 0 1 1 0
0 1 1 0 1 1 1 1 1 0 1 1 0 1 1
0 1 1 0 0 0 0 0 0 0 1 1 0 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
0 0 1 0 0 1 0 0 1 0 0 1 0 0 1

Il n’y a cette fois qu’une possibilité, puisque l’encodage sur 1 bit (0 ou 1 pour chaque sous-pixel) est imposé dans le défi.

Conclusion et trace écrite

La classe synthétise collectivement ce qui a été appris au cours de cette séance :

  • On peut représenter les pixels d’une image par des nombres
  • Chaque pixel d’une image en nuances de gris est représenté par un nombre. Si l’image comporte 8 nuances de gris, ce nombre est compris entre 0 (pixel noir) et 7 (pixel blanc).
  • Chaque pixel d’une image colorée est représenté par 3 nombres qui indiquent l’intensité du rouge, du vert et du bleu de ce pixel.
  • Pour transmettre une image en nuances de gris ou en couleur, on l’encode puis on transmet la version encodée, que l’on décode à l’arrivée pour reconstituer l’image.

Les élèves notent ces conclusions dans leur cahier de sciences. L’enseignant, quant-à-lui, met à jour la portion « Information » de l’affiche intitulée « Qu’est-ce que l’informatique ? ».

Prolongements

Les élèves peuvent s’exercer en prenant des images bien connues (le personnage de Mario©, la fusée de Tintin©, l’épée de Minecraft©…) et, dans un premier temps, les pixelliser à l’aide de grilles telles que celles utilisées dans la Séance III-3.1 (grille 16x16 par exemple) puis, dans un second temps, encoder ces images dans un fichier PBM, PGM ou PPM afin de pouvoir les afficher à l’écran.
En sciences comme en arts plastiques, on peut également approfondir la recomposition des couleurs par des  triplets rouge-vert-bleu.

Notes scientifiques

  • La synthèse additive (appelée parfois « couleur lumière » à l’école) permet d’ajouter des flux colorés afin de reconstituer toutes les couleurs du spectre visible. Inversement, la synthèse soustractive (appelée parfois « couleur matière » à l’école) combine des pigments colorés qui, mis ensemble, absorbent certaines couleurs de la lumière environnante et réfléchissent les autres.
  • En utilisant trois lampes-torches recouvertes de papiers transparents colorés (emballages de bonbons) rouge, vert et bleu, les élèves peuvent tenter de reconstituer diverses couleurs, de plus en plus claires : cyan, magenta, jaune, blanc.

 


<< Séance III-3.2 Séquence III-3 Séance III-3.4 >>

 

Partenaires du projet

Pasc@line Educaland Editions Le Pommier