Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/07056.jsonl.gz/1058

Images numériques¶
Notebook Jupyter
Attention, cette activité est à effectuer dans un notebook Jupyter. Les instructions dans les cellules codeplay ne sont pas exécutables en l’état. Une version .ipynb est disponible ci-dessous
La grotte de Lascaux est témoin d’une des premières tentatives de l’humanité de figer des images sur un support matériel.
En termes de science informatique, il s’agit de l’encodage d’une image sur un substrat rocheux à l’aide de peinture.
Les images, de nos jours, sont utilisées énormément pour les jeux vidéo, la télévision, la réalité virtuelle.
Comment est‐ce qu’on fait pour les afficher concrètement sur un écran ?
Trois types de «couleurs»¶
Images en noir et blanc¶
Une image noir et blanc est une image ou chaque pixel peut avoir deux valeurs:
0 = noir
1 = blanc
Pour créer des images dans la suite de ce notebook, nous allons systématiquement procéder de la même manière, en 2 étapes :
Créer une variable et lui affecter les données de notre image sous forme de tableau à 2 dimensions
Afficher l’image
Notre tableau est défini par une paire de crochets [] à l’intérieur duquel chaque ligne de pixel est séparé par des virgules. Chaque ligne est elle aussi définie par une paire de crochets [] à l’intérieur de laquelle les pixels sont également séparés par des virgules.
Attention toutes les lignes doivent contenir le même nombre de pixel.
Si on souhaite ajouter une seconde ligne de pixel à l’exemple précédent, il suffit d’écrire :
Voici un exemple un tout petit peu plus compliqué d’une image de 11 x 8 pixels :
Exercice¶
Reproduisez le code ci-dessus et modifiez-le afin d’obtenir l’alien ci-dessous
Images en niveau de gris¶
Si on veut avoir une image en niveaux de gris, on va pouvoir utiliser par exemple huit bits (1 octet) pour chacun des pixels.
Huit bits, ça nous donne 256 valeurs possibles (2 puissance 8).
On va avoir le zéro qui va être du noir, 255 le maximum qui sera du blanc, et les valeurs intermédiaires qui seront des gris plus ou moins foncés.
On pourrait aussi utiliser un nombre de bits différents pour augmenter ou diminuer le nombre de niveaux de gris possibles. Une alternative serait également d’utiliser une valeur décimale entre 0 (= noir) et 1 (= blanc)
Exercice¶
En utilisant le même principe que l’exercice précédent, créez le cœur de Link
Images en couleur¶
Enfin, on va pouvoir faire de la couleur en combinant du rouge, du vert et du bleu.
Couleur de base¶
Une couleur primaire est une couleur qui ne peut pas être reproduite par un mélange d’autres couleurs.
Toutes les couleurs peuvent donc être créées avec les couleurs de base rouge, vert et bleu.
Le mélange des trois couleurs de base donne la couleur blanche.
Système RGB¶
Le système RGB (Red, Green, Blue) définit une couleur par ces 3 composantes Rouge, Vert, Bleu. Une couleur est donc un tuple (collection ordonnée de plusieurs éléments), et nous pouvons définir les 3 couleurs de base comme ceci:
Ce qui nous permet de créer une image avec 3 pixels: rouge, vert, bleu
Exercice¶
Definissez la couleur blanche et créez une image du drapeau d’Italie (vert, blanc, rouge) puis de France (bleu, blanc, rouge).
Mélanger des couleurs¶
Additivité des couleurs¶
Les couleurs sont additives.
rouge + bleu donne magenta
rouge + vert donne jaune
vert + bleu donne cyan
Vérifions les codes RGB de nos mélanges de couleurs
Exercice¶
Créez une image de taille 3x3 ou la colonne du milieu représente le mélange des deux couleurs à gauche et droite.
rouge magenta bleu vert jaune rouge bleu cyan vert
Noir et blanc¶
Toutes les couleurs mélangées donnent le blanc. L’absence de toute couleur donne le noir.
Exercice¶
Nous pouvons maintenant créer des simples icones, comme par exemple le drapeau Suisse.
[SwissFlag]{.image}
Création d’icones¶
Afin de créer votre icone personalisée, vous devez commencer par créer une image. Cette image devra ensuite être déclinée en plusieurs tailles. Toutes ces images devront être rassemblée dans un dossier qui sera ensuite transformé en un jeu d’icones utilisables.
Première étape - Création de l’image¶
Créez une image de taille 32x32 représentant ce que vous souhaitez.
Enregistrez votre image¶
Pour enregistrer votre image, nous allons rendre les axes invisibles et
choisir le nom de fichier, par exemple
toto.png .
Le code ci-dessous va s’occuper de faire cela pour vous, il vous faut
juste remplacer
monImage par la variable qui contient votre image et
choisir un nom pour votre image à la place de
toto.png, puis
d’executer la cellule.
Générez le jeu d’icones¶
Pour générer un jeu d’icones pour OSX, il faut créer l’icone à différentes taille, typiquement 16x16, 32x32, 128x128, 256x256 et 512x512.
La commande pour transformer votre image en icon 32x32 pour iconset est :
sips -z 32 32 monImage.png –out icon_32x32.png
Une fois les différentes tailles générées, on les met dans un dossier FolderName.iconset sur lequel on applique la commande :
iconutil -c icns FolderName.iconset
En attendant que vous ayez les compétences pour coder ces instructions
par vous même, la cellule ci-dessous va le faire pour vous.
Après son exécution, vous devriez avoir un nouveau fichier
myIcon.icns
que vous pourrez utiliser pour remplacer l’icone de n’importequel
fichier ou dossier en le faisant glisser à la place de l’icone actuelle
dans la fenêtre d’information (cmd + i).