Bonjour Ingrid,
j'arrive un peu tard peut-être mais je te propose un truc pas trop compliqué.
1/ Créer 4 images avec un test simple sur la valeur moyenne des pixels.
2/ Concaténer ces 4 images.
Le résultat est visible ici :
https://photos.app.goo.gl/ZjyNWowb4ZQMyKgW7 Je suis parti de l'image tux (la deuxième image).
Le code pour créer une des 4 images.
Il faut changer le triplet RVB dans l'instruction putpixel pour chacune des 4 images.
- Code: Tout sélectionner
from PIL import Image
im=Image.open("tux.jpg")
(c,l)=im.size
for x in range (c):
for y in range(l):
(r,v,b)=im.getpixel((x,y))
moy=int((r+v+b)/3)
if moy>80 :
im.putpixel((x,y),(128,128,0))
else:
im.putpixel((x,y),(0,128,128))
im.save("warhol_4.jpg")
Le code pour concaténer les 4 images
- Code: Tout sélectionner
from PIL import Image
def concat (im1,im2,im3,im4):
(c1,l1)=im1.size
(c2,l2)=im2.size
(c3,l3)=im3.size
(c4,l4)=im4.size
im5=Image.new("RGB",(c1+c2,l1+l3))
im5.paste(im1)
im5.paste(im2,(c1,0))
im5.paste(im3,(0,l1))
im5.paste(im4,(c1,l1))
im5.save("concat.jpg")
im1=Image.open("warhol_1.jpg")
im2=Image.open("warhol_2.jpg")
im4=Image.open("warhol_3.jpg")
im3=Image.open("warhol_4.jpg")
concat(im1,im2,im3,im4)
Voilà, il y a sûrement plus élégant mais mon expérience ne date pas de plus d'un mois.
Laurent