Ficha de revisão: Introduction aux manipulations d'images en Python

📋 Plan du Cours

  1. Création d’une image PIL
  2. Définition des couleurs RGB
  3. Zones colorées du drapeau
  4. Coordonnées d’une image
  5. Description du drapeau
  6. Modèle colorimétrique RGB
  7. Transformation négatif d’image
  8. Filtre vert sur image
  9. Permutation des couleurs RGB
  10. Conversion en niveaux de gris
  11. Création de filtres combinés

📖 1. Création d’une image PIL

🔑 Notions clés & Définitions

Création d’une image PIL : Utilisation de la fonction Image.new() de la bibliothèque PIL pour générer une nouvelle image. Elle permet de définir le mode de couleur, les dimensions, et éventuellement la couleur de fond initiale.

Initialisation d’une image vide : Procédé consistant à créer une image sans contenu prédéfini, généralement avec une couleur de fond par défaut ou spécifiée. La méthode Image.new() sert à cette initialisation.

Utilisation de la bibliothèque PIL pour créer des images : La bibliothèque PIL (Python Imaging Library) fournit des outils pour créer, modifier, et sauvegarder des images numériques. La création d’une image passe par l’importation de cette bibliothèque et l’appel à ses fonctions.

Définition des dimensions d’une image : Spécification de la largeur et de la hauteur en pixels lors de la création de l’image, sous la forme d’un tuple (largeur, hauteur).

Format de couleur RGB : Mode de représentation des couleurs où chaque pixel est défini par un triplet (R, V, B), correspondant aux intensités de rouge, vert et bleu. La valeur de chaque composante est un entier entre 0 et 255.

📝 Points essentiels

  • La fonction Image.new() permet de créer une nouvelle image en précisant le mode ('RGB') et les dimensions (largeur, hauteur).
  • La création d’une image vide se fait en utilisant cette fonction, sans contenu initial, ou avec une couleur de fond spécifique.
  • La bibliothèque PIL doit être importée avec from PIL import Image pour accéder à ses fonctionnalités.
  • La taille de l’image est définie par un tuple (375, 256) dans l’exemple, correspondant à 375 pixels de large et 256 pixels de haut.
  • Le format RGB implique que chaque pixel est représenté par un triplet (R, V, B) avec des valeurs entre 0 et 255.

💡 À retenir

La création d’une image PIL consiste à utiliser la fonction Image.new() en précisant le mode RGB et les dimensions, permettant d’obtenir une image vide prête à être modifiée pixel par pixel.

📖 2. Définition des couleurs RGB

🔑 Notions clés & Définitions

  • Couleurs en RGB : Représentation des couleurs par triplet (R, V, B), où chaque composante est un entier compris entre 0 et 255.
  • Triplet (R, V, B) : Format utilisé pour coder une couleur, avec R pour Rouge, V pour Vert, et B pour Bleu.
  • Valeurs entières entre 0 et 255 : Chaque composante (R, V, B) est une valeur entière dans cet intervalle, 0 signifiant absence de cette couleur, et 255 sa luminance maximale.

📝 Points essentiels

  • La couleur en RGB est définie par trois composantes : R (Rouge), V (Vert), B (Bleu).
  • Chaque composante est un entier compris entre 0 et 255.
  • La couleur jaune, par exemple, est représentée par (255, 255, 0), ce qui signifie une luminance maximale en Rouge et Vert, et aucune en Bleu.
  • La représentation RGB permet de coder toutes les couleurs visibles dans une image numérique.
  • La valeur 0 indique l’absence de la composante, tandis que 255 indique son intensité maximale.
  • La couleur est codée par un triplet, par exemple :
    CouleurRVBExemple
    Noir000(0, 0, 0)
    Blanc255255255(255, 255, 255)
    Rouge25500(255, 0, 0)
    Vert02550(0, 255, 0)
    Bleu00255(0, 0, 255)

💡 À retenir

La couleur en RGB est codée par un triplet de trois entiers compris entre 0 et 255, permettant de représenter toutes les couleurs d’une image numérique.

📖 3. Zones colorées du drapeau

🔑 Notions clés & Définitions

Zones rectangulaires du drapeau : Parties délimitées par des coordonnées x et y, formant des rectangles, utilisées pour organiser la répartition des couleurs dans l’image.
Coloriage pixel par pixel dans des zones définies : Processus consistant à parcourir chaque pixel d’une zone spécifique et à lui attribuer une couleur précise, en utilisant des boucles imbriquées.
Utilisation de boucles imbriquées pour remplir des zones : Technique où deux boucles for imbriquées parcourent respectivement les coordonnées x et y pour colorier tous les pixels d’une zone rectangulaire.

📝 Points essentiels

  • La création des zones rectangulaires se fait en définissant des plages de valeurs pour x (colonnes) et y (lignes).
  • La zone jaune occupe la colonne x de 0 à 149 sur toute la hauteur (y de 0 à 255).
  • La zone bleue occupe la colonne x de 150 à 374, mais seulement la moitié haute (y de 0 à 127).
  • La zone verte occupe la même colonne x de 150 à 374, mais la moitié basse (y de 129 à 255).
  • Le coloriage pixel par pixel est réalisé par des boucles imbriquées : la boucle extérieure parcourt y, la boucle intérieure parcourt x, et chaque pixel est colorié avec la méthode putpixel.
  • La coordonnée (0,0) correspond en haut à gauche de l’image, avec x vers la droite et y vers le bas.

💡 À retenir

Les zones rectangulaires du drapeau sont définies par des plages de coordonnées x et y, et remplies pixel par pixel à l’aide de boucles imbriquées, permettant une organisation spatiale précise des couleurs.

📖 4. Coordonnées d’une image

🔑 Notions clés & Définitions

  • Coordonnées d’un pixel (x, y) : La position d’un pixel dans une image numérique, repérée par deux valeurs entières. La valeur x désigne la colonne (horizontale), et la valeur y désigne la ligne (verticale).
  • Origine en haut à gauche (0,0) : Le point de référence de l’image où la colonne x et la ligne y sont toutes deux à 0. C’est le coin supérieur gauche de l’image.
  • Repère de l’image numérique : Système de coordonnées utilisant (x, y) pour localiser chaque pixel, avec l’origine en haut à gauche, x croissant vers la droite, y croissant vers le bas.

📝 Points essentiels

  • La coordonnée (x, y) désigne un pixel situé à la colonne x (partant de la gauche) et à la ligne y (partant du haut).
  • La valeur x varie de 0 à la largeur de l’image moins un, et la valeur y varie de 0 à la hauteur moins un.
  • L’origine (0, 0) étant en haut à gauche, la lecture des pixels se fait en parcourant d’abord la ligne y=0, puis la ligne y=1, etc., en allant de gauche à droite pour x.
  • La notation (x, y) permet d’accéder ou de modifier la couleur d’un pixel précis dans l’image.

💡 À retenir

Les coordonnées d’un pixel dans une image numérique sont définies par (x, y), avec l’origine en haut à gauche, ce qui facilite la localisation et la manipulation pixel par pixel dans le repère de l’image.

📖 5. Description du drapeau

🔑 Notions clés & Définitions

  • Drapeau : représentation graphique composée de zones rectangulaires colorées selon un agencement précis, créée par programmation pixel par pixel.
  • Zones : parties délimitées du drapeau, chacune occupant une portion spécifique de l’image, définies par des coordonnées (x, y).
  • Couleurs : valeurs RGB attribuées aux zones pour leur donner une identité visuelle (exemples : jaune, bleu, vert).
  • Dimensions : taille en pixels de l’image, ici 375 pixels de largeur et 256 pixels de hauteur.
  • Organisation spatiale des couleurs : disposition des zones colorées selon leur position horizontale (colonnes) et verticale (hauteur), permettant de diviser le drapeau en zones rectangulaires distinctes.
  • Division en zones rectangulaires : découpage de l’image en plusieurs rectangles, par exemple :
    • Zone 1 : rectangle jaune sur toute la hauteur, colonne gauche (x ∈ [0 ; 149])
    • Zone 2 : rectangle bleu en haut à droite (x ∈ [150 ; 374], y ∈ [0 ; 127])
    • Zone 3 : rectangle vert en bas à droite (x ∈ [150 ; 374], y ∈ [129 ; 255])

📝 Points essentiels

  • La création du drapeau se fait par programmation pixel par pixel, en utilisant des boucles imbriquées pour parcourir les coordonnées (x, y).
  • La zone jaune occupe la moitié gauche de l’image, de x=0 à x=149, sur toute la hauteur (y=0 à y=255).
  • La zone bleue occupe la moitié droite, en haut, de x=150 à x=374, y=0 à y=127.
  • La zone verte occupe la moitié droite, en bas, de x=150 à x=374, y=129 à y=255.
  • La ligne y=128 n’est pas explicitement coloriée, elle conserve la couleur par défaut (noir).
  • La disposition spatiale des couleurs est organisée en zones rectangulaires, permettant une segmentation claire du drapeau.

💡 À retenir

Le drapeau est constitué de trois zones rectangulaires distinctes, organisées horizontalement et verticalement, chacune colorée selon une disposition précise en pixels, permettant une représentation structurée et programmée.

📖 6. Modèle colorimétrique RGB

🔑 Notions clés & Définitions

  • Modèle colorimétrique RGB : Représentation des couleurs par un triplet (R, V, B), où chaque composante est une valeur entière comprise entre 0 et 255, correspondant à l’intensité de la couleur rouge, vert ou bleu dans la pixelisation d’une image numérique.

  • Triplet (R, V, B) : Ensemble de trois valeurs entières (Rouge, Vert, Bleu) qui définissent la couleur d’un pixel. Chaque composante peut varier de 0 (absence de cette couleur) à 255 (intensité maximale).

  • Intensité de chaque composante : La valeur numérique allant de 0 à 255 qui indique la force ou la présence de la couleur correspondante dans un pixel. Par exemple, R=255 signifie rouge à son maximum, R=0 signifie absence de rouge.

📝 Points essentiels

  • La couleur d’un pixel est codée par un triplet (R, V, B) dans le modèle RGB, chaque valeur étant un entier entre 0 et 255.

  • La valeur 0 indique que la composante couleur est absente, tandis que 255 indique qu’elle est à son maximum d’intensité.

  • La représentation RGB permet de créer une large gamme de couleurs en combinant différentes intensités de rouge, vert et bleu.

  • La manipulation pixel par pixel dans une image numérique se fait en modifiant ou en lisant ces triplets de valeurs.

💡 À retenir

Le modèle RGB représente chaque couleur par un triplet d’entiers de 0 à 255, où chaque composante correspond à l’intensité d’une couleur primaire, permettant de générer toutes les couleurs visibles dans une image numérique.

📖 7. Transformation négatif d’image

🔑 Notions clés & Définitions

Inversion des couleurs (255 - composante) : Opération consistant à soustraire chaque composante de couleur (R, V, B) de 255, ce qui inverse la couleur d’origine pour produire un effet de négatif photographique.
Effet de négatif photographique : Transformation visuelle où chaque pixel voit ses couleurs inversées, donnant une image qui ressemble à un négatif d’une photographie classique.
Transformation négative d’image : Processus qui modifie chaque pixel en remplaçant ses composantes par leur valeur inversée (255 - composante), créant ainsi une version négative de l’image initiale.

📝 Points essentiels

  • La transformation consiste à appliquer la formule composante inversée = 255 - composante pour chaque pixel, ce qui produit un effet de négatif photographique.
  • La lecture de chaque pixel se fait via getpixel((x, y)), puis ses composantes sont inversées par 255 - r, 255 - v, 255 - b.
  • La nouvelle couleur est réécrite dans l’image avec putpixel((x, y), (n_r, n_v, n_b)).
  • Ce traitement pixel par pixel permet de créer une image où les couleurs sont inversées, donnant un rendu négatif.
  • La méthode est utilisée pour obtenir un effet visuel de négatif photographique, en simulant la transformation d’un film photographique en négatif.

💡 À retenir

La transformation négative d’image repose sur l’inversion des composantes RGB par la formule (255 - composante), produisant un effet de négatif photographique qui inverse visuellement les couleurs de l’image initiale.

📖 8. Filtre vert sur image

🔑 Notions clés & Définitions

Application d’un filtre vert
Procédé consistant à transformer une image en modifiant ses pixels selon une règle spécifique pour obtenir un rendu monochromatique vert, en conservant la luminance ou en remplaçant certains pixels par du vert.

Remplacement de pixels noirs par du vert
Opération où tous les pixels dont la couleur est considérée comme noire ou très sombre (composantes RGB inférieures à 30) sont remplacés par une couleur verte pure (0, 255, 0). Cela permet de rendre certains éléments noirs ou très sombres en vert vif.

Filtre monochromatique vert basé sur la luminance
Transformation qui, pour chaque pixel, conserve uniquement la composante verte (v) et met les composantes rouge et bleu à zéro, produisant une image en nuances de vert. La luminance est implicite dans la conservation de la composante verte, qui est la plus sensible à la perception humaine.

📝 Points essentiels

  • La transformation ne s’applique pas uniformément à tous les pixels : une condition if/else distingue les pixels noirs/très sombres (r, v, b < 30) des autres.
  • Si un pixel est noir ou très sombre, il est remplacé par du vert pur (0, 255, 0).
  • Sinon, le traitement consiste à supprimer les composantes rouge et bleu (n_r = 0, n_b = 0) et à conserver uniquement la composante verte (n_v = v), ce qui donne un filtre monochromatique vert.
  • La condition de détection des pixels noirs ou très sombres repose sur le seuil 30 pour chaque composante RGB.
  • Le résultat final est une image où les pixels noirs ou très sombres deviennent verts, et tous les autres pixels apparaissent en nuances de vert, accentuant la perception de cette couleur.

💡 À retenir

Le filtre vert remplace les pixels noirs ou très sombres par du vert vif et transforme l’ensemble de l’image en nuances monochromatiques vertes, en utilisant une condition basée sur la luminance implicite de la composante verte.

📖 9. Permutation des couleurs RGB

🔑 Notions clés & Définitions

  • Permutation des composantes RGB : Échange ou réorganisation des valeurs des trois composantes R, V, B d’un pixel selon un ordre spécifique, sans en modifier la somme ou l’intensité lumineuse globale. Par exemple, échanger R et B, ou faire une permutation circulaire (R→V, V→B, B→R).

  • Échange circulaire (R→V, V→B, B→R) : Type particulier de permutation où chaque composante prend la valeur de la composante précédente dans un cycle. Concrètement, la composante R devient la nouvelle V, V devient B, et B devient R, formant un décalage circulaire des valeurs.

  • Effet de décalage de couleurs : Résultat visuel obtenu par la permutation circulaire des composantes RGB, qui modifie la teinte perçue sans changer l’intensité lumineuse totale, produisant des couleurs décalées ou déformées par rapport à l’original.

📝 Points essentiels

  • La permutation des composantes RGB consiste à échanger ou réorganiser les valeurs R, V, B d’un pixel selon un ordre défini, notamment par permutation circulaire (R→V, V→B, B→R).

  • Lorsqu’on applique la permutation circulaire, chaque composante prend la valeur de la composante précédente dans le cycle, ce qui modifie la teinte sans affecter l’intensité lumineuse globale.

  • Les couleurs neutres (gris, blanc, noir) sont insensibles à la permutation car leurs trois composantes sont égales, donc échanger leurs valeurs ne change rien à leur apparence.

  • La permutation des couleurs peut produire un effet de décalage de couleurs, modifiant la perception visuelle de l’image tout en conservant la luminosité.

💡 À retenir

La permutation circulaire des composantes RGB déplace les valeurs de couleur dans un cycle, créant un effet de décalage de couleurs tout en conservant l’intensité lumineuse, ce qui modifie la teinte perçue sans altérer la luminosité globale.

📖 10. Conversion en niveaux de gris

🔑 Notions clés & Définitions

Conversion en niveaux de gris : Transformation d'une image couleur en une image où chaque pixel est représenté par une nuance de gris, en utilisant une valeur unique de luminosité L pour chaque pixel.

Moyenne pondérée des composantes RGB : Méthode de calcul de la luminosité L en combinant les valeurs R, V, B selon des coefficients spécifiques, reflétant la sensibilité de l’œil humain à chaque couleur.

Calcul de la luminosité (L) : Opération mathématique qui détermine la valeur de gris d’un pixel à partir de ses composantes RGB, selon la formule :
L = (21×r + 71×v + 8×b) // 100

📝 Points essentiels

  • La conversion en niveaux de gris ne nécessite pas de condition if/else ; tous les pixels sont traités de la même manière.
  • La luminosité L est calculée à partir des composantes RGB par une moyenne pondérée :
    L = (21×r + 71×v + 8×b) // 100
  • Les coefficients 21, 71, et 8 reflètent la sensibilité de l’œil humain, étant donné que l’œil est plus sensible au vert, moins au bleu, et moyennement au rouge.
  • La valeur L est une moyenne pondérée qui donne une perception plus fidèle de la luminosité réelle du pixel.
  • La nouvelle couleur du pixel en niveaux de gris est (L, L, L), où chaque composante est égale à la luminosité calculée.

💡 À retenir

La conversion en niveaux de gris repose sur une moyenne pondérée des composantes RGB, utilisant des coefficients qui tiennent compte de la sensibilité de l’œil humain, pour obtenir une représentation fidèle de la luminosité.

📖 11. Création de filtres combinés

🔑 Notions clés & Définitions

Création de filtres combinés : processus consistant à appliquer successivement plusieurs transformations sur une image pour obtenir un effet personnalisé. Cela inclut la combinaison de différentes opérations telles que la modification de contours, la permutation de couleurs, et l’assombrissement, afin d’obtenir un résultat visuel spécifique.

Combinaison de transformations : réalisation simultanée ou séquentielle de plusieurs effets (contours, permutation, assombrissement) sur chaque pixel ou zone de l’image, pour créer un filtre unique et complexe.

Script intégrant plusieurs effets : programme qui, pour chaque pixel, exécute plusieurs opérations enchaînées (ex : détection de pixels noirs, permutation de couleurs, assombrissement) afin de générer un filtre personnalisé. La logique conditionnelle permet de traiter différemment certains pixels selon leur couleur ou luminosité.

📝 Points essentiels

  • La création d’un filtre combiné repose sur la mise en œuvre successive de plusieurs transformations, telles que la détection de pixels noirs pour remplacer leur couleur par une couleur vive (ex : cyan vif), la permutation circulaire des composantes RGB (ex : R→B, V→R, B→V), et l’assombrissement par division des composantes (ex : // 2).

  • Le script doit définir des conditions (ex : seuils pour pixels noirs ou très clairs) pour appliquer des effets spécifiques à certains pixels, tout en laissant d’autres zones inchangées ou modifiées différemment.

  • La logique conditionnelle permet de distinguer plusieurs cas : pixels noirs, pixels très clairs, et tous les autres, chacun étant traité par une opération adaptée.

  • La combinaison d’effets permet d’obtenir des résultats visuels variés, en jouant sur la palette de couleurs, la luminosité, et la permutation des composantes, pour créer des filtres originaux et personnalisés.

💡 À retenir

La création de filtres combinés consiste à enchaîner plusieurs transformations pixel par pixel, en utilisant des conditions pour cibler certains pixels, afin d’obtenir un effet visuel complexe et personnalisé.

📊 Tableaux de Synthèse

AspectDétailsAuteur / Référence
Création d’une image PILUtilise Image.new() pour définir mode, dimensions, couleur de fond-
Définition des couleurs RGBTriplet (R, V, B) avec valeurs entre 0 et 255-
Zones du drapeauRectangles délimités par coordonnées x et y, remplies pixel par pixel-
Coordonnées d’un pixel(x, y) avec origine en haut à gauche, x à droite, y en bas-
Description du drapeauOrganisation spatiale en zones rectangulaires avec couleurs RGB-
Modèle colorimétrique RGBReprésente chaque couleur par triplet (R, V, B)-
Transformation négatifInversion des valeurs RGB pour obtenir l’image négative-
Filtre vert sur imageApplication d’un filtre vert en modifiant la composante V-
Permutation des couleurs RGBÉchanger les composantes R, V, B selon un ordre défini-
Conversion en niveaux de grisMoyenne ou pondération des composantes RGB pour gris-
Création de filtres combinésApplication successive de plusieurs filtres sur une image-

⚠️ Pièges & Confusions Fréquentes

  1. Confondre la valeur maximale (255) avec la valeur minimale (0) pour définir une couleur.
  2. Oublier d’importer la bibliothèque PIL (from PIL import Image) avant utilisation.
  3. Mal définir les coordonnées x et y, notamment en inversant la logique (x horizontal, y vertical).
  4. Ne pas respecter l’origine en haut à gauche lors du coloriage ou de la lecture des pixels.
  5. Oublier que la couleur RGB est un triplet (R, V, B) et non une autre structure.
  6. Confondre la dimension de l’image (largeur, hauteur) avec (hauteur, largeur).
  7. Se tromper dans la définition des plages de coordonnées pour remplir une zone (ex: y de 129 à 255 au lieu de 128 à 255).
  8. Ne pas utiliser de boucles imbriquées pour remplir une zone rectangulaire.
  9. Confondre la permutation des composantes RGB avec la conversion en niveaux de gris.
  10. Oublier que la conversion en niveaux de gris peut se faire par moyenne ou pondération.

✅ Checklist Examen

  1. Connaître la fonction Image.new() et ses paramètres pour créer une image PIL.
  2. Savoir définir une couleur RGB par triplet (R, V, B) avec valeurs entre 0 et 255.
  3. Être capable d’identifier et de décrire les zones rectangulaires du drapeau à partir de coordonnées x et y.
  4. Maîtriser la notation (x, y) pour localiser un pixel dans l’image.
  5. Expliquer comment remplir pixel par pixel une zone rectangulaire à l’aide de boucles imbriquées.
  6. Connaître la dimension de l’image en pixels (largeur, hauteur) et leur impact sur la création.
  7. Savoir comment représenter la couleur jaune, bleu, vert en RGB.
  8. Comprendre la disposition spatiale des zones du drapeau (zone gauche, haut droite, bas droite).
  9. Savoir comment appliquer un filtre vert en modifiant la composante V.
  10. Être capable d’échanger ou permuter les composantes RGB d’un pixel.
  11. Connaître la méthode pour convertir une image en niveaux de gris (moyenne ou pondération).
  12. Savoir comment créer un filtre combiné en appliquant plusieurs transformations successives.

Teste seu conhecimento

Teste seu conhecimento sobre Introduction aux manipulations d'images en Python com 11 perguntas de múltipla escolha com correções detalhadas.

1. Comment doit-on utiliser la fonction PIL `Image.new()` pour créer une image vide de dimensions 375x256 en mode RGB avec un fond blanc ?

2. Quelles sont les composants clés qui caractérisent la représentation RGB des couleurs dans une image numérique ?

Faça o quiz →

Revisar com flashcards

Memorize os conceitos chave de Introduction aux manipulations d'images en Python com 22 flashcards interativos.

Création d’une image PIL — définition ?

Utilisation de `Image.new()` pour générer une nouvelle image.

Couleurs RGB — rôle ?

Représenter les couleurs par triplet (R, V, B).

Zones colorées du drapeau — délimitation ?

Parties rectangulaires définies par coordonnées x, y.

Veja os flashcards →

Similar courses

Crie suas próprias fichas de revisão

Importe seu curso e a IA gera fichas, quizzes e flashcards em 30 segundos.

Gerador de fichas