Inspiré des sérigraphies d'Andy Warhol : la même image, quatre filtres différents
En 1962, l'artiste américain Andy Warhol a créé le Diptyque Marilyn : une même image répétée, chaque fois avec des couleurs différentes. Tu vas créer ton polyptyque numérique : ta propre photo, répétée avec des filtres que tu inventes.
CoursAssembler quatre images
L'image finale est deux fois plus large et deux fois plus haute que la photo.
polyptyque.py
from PIL import Image
photo = Image.open("mon_image.jpg").convert("RGB")
largeur, hauteur = photo.size
creation = Image.new("RGB", (2 * largeur, 2 * hauteur))
for x inrange(largeur):
for y inrange(hauteur):
R1, V1, B1 = photo.getpixel((x, y))
creation.putpixel((x, y), (R1, V1, B1)) # zone 1 : image d'origine
R2, V2, B2 = V1, B1, R1 # zone 2 : filtre n°1
creation.putpixel((x + largeur, y), (R2, V2, B2))
R3, V3, B3 = 255 - R1, 255 - V1, 255 - B1 # zone 3 : filtre n°2
creation.putpixel((x, y + hauteur), (R3, V3, B3))
g = (R1 + V1 + B1) // 3# zone 4 : filtre n°3
creation.putpixel((x + largeur, y + hauteur), (g, g, g))
creation.show()
creation.save("NOM_Prenom_polyptyque.jpg")
Chaque pixel \((x\,;y)\) de la photo est lu une fois, puis écrit quatre fois, décalé de la largeur ou de la hauteur de la photo.
Des idées de filtres
Idée
Calcul
négatif
\((255 - R_1\,;255 - V_1\,;255 - B_1)\)
permutation des canaux
\((V_1\,;B_1\,;R_1)\)
un seul canal
\((R_1\,;0\,;0)\) pour ne garder que le rouge
niveaux de gris
\((g\,;g\,;g)\) avec \(g = \dfrac{R_1 + V_1 + B_1}{3}\)
deux couleurs, façon affiche
si \(g > 128\), une première couleur ; sinon une seconde, par exemple rose et bleu ciel
mélange avec un drapeau
moyenne de la photo et du drapeau (exercice de fusion)
pixellisation, flou
voir les exercices de pixellisation et de flou
ExercicesÀ toi de créer
EX 44Je m'entraîne🌶️🌶️application
Exercice 44 — Quatre fois la même image
Recopie polyptyque.py avec l'image de ton choix (photo de la classe libre de droit, paysage, objet…), en donnant à photo le nom de ton fichier. Exécute-le.
Quelle est la définition de ton image finale, si la photo mesure 400 pixels sur 300 ?
Remplace le filtre de la zone 4 par un filtre de ton choix.
Indice
La photo et le programme doivent être dans le même dossier.
💾 NOM_Prenom_ex44.py
EX 45Projet🌶️🌶️🌶️🌶️défi
Exercice 45 — Mon polyptyque numérique
Crée ton polyptyque : une image finale composée d'au moins quatre images juxtaposées, obtenues avec des filtres que tu écris toi-même.
Image de départ : une image libre de droit, sans visage reconnaissable, dont tu indiques la source dans un commentaire.
Version de base : quatre zones. En haut à gauche, l'image d'origine. Les trois autres reçoivent des filtres différents.
Version moyenne : au moins un filtre mélange la photo avec un drapeau que tu as créé toi-même (pas le drapeau français vu en cours).
Version avancée : plus de quatre zones, ou au moins un filtre que tu as inventé (pixellisation, flou, seuillage en deux couleurs, mélange…).
L'originalité, la difficulté des programmes et l'esthétique du polyptyque comptent dans l'évaluation. Dépose sur Pronote le programme NOM_Prenom_polyptyque.py et l'image finale.
Critère
Points
Le programme fonctionne, il est lisible et commenté (source de l'image indiquée)
5
Variété et originalité des filtres
6
Difficulté technique (drapeau, filtre inventé, plus de quatre zones)
5
Qualité esthétique de l'image finale
4
Total
20
Indice 1
Teste chaque filtre séparément sur une petite image avant de les assembler.
Indice 2
Pour un drapeau, construis d'abord une image drapeau avec une double boucle (voir l'exercice sur les drapeaux), puis mélange-la.
Indice 3
Pour changer la taille de la photo de départ : photo = photo.resize((400, 300)).