SNT Photo Television

Identification

Infoforall

2 - Tele-vision ou Image à distance


Cette activité est basée sur TELE-VISION, une activité développée par Maryline Althuser, professeur de mathématiques au collège Jean Prévost, Villard de Lans, Isère - IREM de Grenoble.

Télé-vision a reçu en 2017 le Trophée Shannon de la théorie de l’information numérique.

Des ressources pour mener Télé-vision sont disponibles sur le site de l'IREM - Université de Grenoble ou de l'Université de Lille.

1 - Encodage et jetons

Vous allez manipuler des images simples constituées de 25 pixels noirs ou blancs. Votre objectif sera de transmettre une image à votre voisin en lui faisant passer les informations sous forme d'objets: des jetons bicolores.

Les images encodées sont des images de 5 pixels sur 5 pixels.

01° Vous êtes l'émetteur : encodez l'image qu'on vous a fourni à l'aide des jetons. Vous les placerez sur une seule ligne. Une fois l'encodage terminé, laissez les jetons en place mais prenez votre image en main.

02° Vous êtes le récepteur : échangez votre place avec quelqu'un. Tentez de décoder la succession de jetons pour en déduire l'image initiale. Quel est le problème ? Comparez finalement votre décodage avec l'image initiale en la demandant à la personne qui l'a décodé.

Choix d'encodage

Pour que le récepteur puisse décoder votre image, il faut qu'il sache comment la décoder !

Il convient donc de transmettre au récepteur certaines informations en plus du contenu encodé de l'image :

  • Le nom ou le numéro de votre encodage ?(.jpg, .png ...)
  • ou

  • La couleur qui correspond à telle couleur du jeton
  • A quoi correspond successivement chaque jeton.

Voici un EXEMPLE possible d'encodage :

  • Un jeton bleu veut dire BLANC,
  • un jeton rouge veut dire NOIR
  • On considère qu'il s'agit d'une image 5 x 5
  • On commence par le pixel en haut à gauche et on suit la numérotation suivante (lecture naturelle) :
  • 0102030405
    0607080910
    1112131415
    1617181920
    2122232425

Mais on peut aussi faire cela (technique du serpent) :

0102030405
1009080706
1112131415
2019181716
2122232425

Ou encore, comme ça (technique de la diagonale) :

0103041011
0205091219
0608131820
0714172124
1516222325

2 - Encodage et d6

Changeons de support pour transmettre l'image : nous allons maintenant utiliser des dés à 6 faces.

Le principe est donc de voir comment utiliser le dé autrement qu'en simple jeton.

Si on prend 1-2-3 pour BLEU et 4-5-6 pour ROUGE, autant garder les jetons !

03° Vous êtes l'émetteur : utilisez les dés pour réaliser un encodage de votre image ainsi que des deux images suivantes. Il s'agit bien entendu de proposer un seul encodage qui permette de gérer au moins ces 3 images.
Laissez les dés encodant votre propre image en ligne et sur place, ainsi que votre fiche décrivant l'encodage que vous avez créé.

La croix noire :

Parapluie :

04° Vous êtes le récepteur : changez de place avec un autre groupe. Tentez de décoder l'image proposée en lisant leur fiche.

05° Retour en groupe-classe. Donnons à l'oral quelques encodages utilisés par les groupes.
Comment pourrait-on indiquer quel encodage a été utilisé DANS LE CODE de l'image ?
Peut-on comparer facilement les encodages entre eux ? Analysons un ou deux encodages pour trouver leurs "défauts". Notamment, regardons s'ils peuvent encoder tous les types d'images.

Quelques exemples de propositions obtenues lors d'autres séances :


...ENCODAGE PAR SEQUENCES PREVUES A L'AVANCE...

ORDRE : Remplissage en utilisant la technique du serpent.

ENCODAGE : les dés codent juste des séquences de dés.

  • 1 veut dire un pixel noir
  • 2 veut dire deux pixels noirs
  • 3 veut dire trois pixels noirs
  • 4 veut dire un pixel blanc
  • 5 veut dire deux pixels blancs
  • 6 veut dire trois pixels blancs

CROIX NOIRE (17 dés) :
16141 41616 14141 61

PARAPLUIE (17 dés) :
43414 14151 64164 15
43414 14151 55155 15

Recul sur l'encodage proposé

Quel est le meilleur type d'images à encoder ainsi ?

Quel est le pire type d'images à encoder ainsi ?

Existe-il des images impossibles à encoder ainsi ?


...ENCODAGE PAR SEQUENCES PREVUES A L'AVANCE LE RETOUR...

ORDRE : Remplissage en utilisant la technique de la lecture gauche-droite ligne par ligne.

ENCODAGE :

  • 1 veut dire passage à la ligne
  • 2 veut dire alternance noir-blanc
  • 3 veut dire alternance blanc-noir
  • 4 veut dire un pixel noir
  • 5 veut dire un pixel blanc
  • 6 veut dire deux pixels blanc

CROIX NOIRE (15 dés ou 20 dés si on gère la largeur réglable)
26413 35164 61335 12641
26433 56463 35264

PARAPLUIE (12 dés ou 17 dés si on gère la largeur réglable) :
34212 24164 16416 41
34222 46464 64

Recul sur l'encodage proposé

Quel est le meilleur type d'images à encoder ainsi ?

Quel est le pire type d'images à encoder ainsi ?

Existe-il des images impossibles à encoder ainsi ?


...ENCODAGE DES ALTERNANCES...

ORDRE : Remplissage en utilisant la technique de la lecture gauche-droite ligne par ligne.

ENCODAGE :

Le premier dé est particulier : il donne la première couleur à utiliser.

  • 1 pour BLANC
  • 6 pour NOIR

Pour les dés suivants, la valeur correspond au nombre de pixels à placer pour cette couleur. Par exemple, 1416 veut dire que le premier pixel est BLANC. On a donc 4 pixels BLANCS puis 1 pixel NOIR puis 6 pixels BLANCS.

CROIX NOIRE (18 dés)
61311 11131 31111 131

PARAPLUIE (16 dés) :
11311 11112 14141 2

Recul sur l'encodage proposé

Quel est le meilleur type d'images à encoder ainsi ?

Quel est le pire type d'images à encoder ainsi ?

Existe-il des images impossibles à encoder ainsi ?


...ENCODAGE DES COORDONNEES NOIRES...

ORDRE : Remplissage en utilisant la technique de la lecture gauche-droite ligne par ligne.

ENCODAGE :

On commence sur la ligne du haut.

Les dés valant 1 à 5 veulent dire de placer un pixel NOIR sur cette colonne.

Un 6 veut dire de passer à la ligne.

On donne uniquement le numéro de la colonne des pixels NOIRS.

CROIX NOIRE (14 dés)
15624 63624 6156

PARAPLUIE (14 dés) :
23461 35636 3636

Recul sur l'encodage proposé

Quel est le meilleur type d'images à encoder ainsi ?

Quel est le pire type d'images à encoder ainsi ?

Existe-il des images impossibles à encoder ainsi ?

Vous avez normalement compris le principe.

On notera que préciser le protocole ou l'encodage en début de fichier-image est exactement ce qu'on a fait avec le HTML : le fichier-htlm commence par <!DOCTYPE html> pour indiquer que la suite du texte est à comprendre comme du HTML.

06° Votre encodage permet-il d'encoder ces deux images simples ? Comparer votre nombre de dés avec l'une des images plus complexes ci-dessus :

Le point noir :

Le point blanc :

3 - Compression

Une technique de compression est un encodage qui nécessite moins d'octets pour stocker l'image qu'avec un stockage naïf où on encodage chaque pixel individuellement.

Type de fichier image

Les fichiers-images BITMAP (.bmp) sont des images non comprimées. Elles sont donc de bonne qualité mais sont très "lourdes" à envoyer et à stocker. Evitez ce genre de format pour des envois emails ou sur un site Web.

Les fichiers-images PNG pour Portable Network Graphics (.png) sont des images comprimées sans dégradation de l'image elle-même lorsqu'on la décode. Elles permettent un gain important du poids de l'image. Bonus : le format est compatible avec la couche de transparence (dite couche ALPHA).

Les fichiers-images JPEG pour Joint Photographic Experts Group (.jpg ou .jpg) sont des images comprimées avec dégradation de l'image elle-même lorsqu'on la décode. Elles permettent un gain très important du poids de l'image mais au détriment de la qualité finale. Cela ne pose pas de soucis sur le Web mais la perte des détails peut se voir à l'impression. Autre désavantage : le format n'est pas compatible avec la couche ALPHA.

Les fichiers-images GIF pour Graphics Interchange Format (.gif) sont des images comprimées en limitant le nombre de couleurs. Elles ne permettent donc pas de récupérer des images de bonne qualité mais sont assez utilisées sur le Web. Avantages : le format est compatible avec la couche ALPHA et il permet de faire se succéder plusieurs images pour créer une "image animée".

07° Défi : choisir ou proposer un encodage qu'on utilisera sur chacune des images ci-dessous.

  1. Noter clairement votre protocole sur votre feuille
  2. Encoder chacune des images et donner le nombre de dés nécessaires pour chacune des images
  3. Calculer la somme des dés pour envoyer toutes les images.
  4. Calculer le nombre de dés moyen pour envoyer une image.

1/8 La croix noire :

2/8 Hello :

3/8 Parapluie :

4/8 Immeuble :

5/8 Damier :

6/8 Le point noir :

7/8 Interdit :

8/8 La barre :

08° Un encodage efficace sur UNE image est-il nécessairement efficace sur TOUTES les autres images ?

4 - Correction d'erreur

Pour les plus rapides !

Reste encore un problème : comment le récepteur peut-il savoir si l'image est bien la bonne ? Comment parvenir à détecter qu'un des dés n'est pas à la bonne valeur ?

09° Proposez un encodage qui rajoute des éléments supplémentaires. On parle de redondance d'informations. Votre encodage doit parvenir à détecter (au moins dans certains cas) que l'un des dés n'est plus le bon.

Nous allons le vérifier en encodant l'image suivante et en modifiant l'un des dés. Quelqu'un devra tenter de voir si l'image est potentiellement bonne ou corrompue.

5 - Taille de l'image

Pour les encore plus rapides !

Si on résume, pour transmettre une image, on doit 

  • Fournir l'encodage utilisé pour générer les données de l'image
  • Fournir les données permettant de générer l'image

Si on doit fournir la méthode d'encodage à chaque transfert d'images, ca n'est pas très efficace.

Le mieux est donc comme nous l'avons vu d'avoir un ensemble de méthodes communes à tous les ordinateurs et de simplement fournir l'identifiant de cette méthode d'encodage.

Dernière difficulté vue aujourd'hui : la taille.

10° Proposez un encodage unique permettant d'encoder les deux images ci-dessous.

Le drapeau :

Dents de scie :

La fois prochaine, nous verrons comment gérer les images en couleur.

Activité publiée le 11 11 2019
Dernière modification : 11 11 2019
Auteur : ows. h.