Bonsoir,
dans le cadre d'un projet informatique je dois créer un logiciel de traitement d'images.
J'ai donc créé plusieurs fonctions qui traitent une liste de listes représentant les pixels de mon image (pour appliquer par exemple une symétrie à l'image).
J'utilise ensuite .bind pour associer mes fonctions à des boutons
mon script ressemble à ça :
import Tkinter as TK
from PIL import Image as img
from PIL import ImageTk as imTK
import numpy as np
uneImage=img.open('CARRE NB.jpg')
uneImage=uneImage.convert('L') #conversion en N&B
tabImage=np.array(uneImage)
lImage=tabImage.tolist()
tabImage2=np.asarray(lImage)
lImage2=img.fromarray(tabImage2)
lImage2=lImage2.convert('L')
lImage2.save('test2.jpg')
!!!!! FONCTIONS !!!!!
def symetrieh(lImage):
L=lImage
return L[::-1]
def ImSymH(lImage):
L=symetrieh(lImage)
tabImage=np.array(L)
Im=img.fromarray(tabImage)
lImage2=imTK.PhotoImage(Im)
zone_dess.create_image(200,450,image=lImage2)
INTERFACE GRAPHIQUE
zone_dess= TK . Canvas (fen , height=600 , width=1000 , bg="red", cursor="tcross")
zone_dess.pack(side="right")
Image=imTK.PhotoImage(uneImage)
zone_dess.create_image(200,200,image=Image)
CREATION ET PARAMETRES DE LA ZONE DE COMMANDES
zone_commandes = TK . Frame (fen)
zone_commandes.pack(side="left")
bout_1 = TK . Button ( zone_commandes , text = "Symetrie H", cursor="target")
bout_1.bind("<Button-1>", ImSymH)
bout_1.pack(side="bottom")
Et quand je clique sur le fameux bouton dans l'interface graphique j'obtiens un message d'erreur sur la console python :
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python27\lib\lib-tk\Tkinter.py", line 1536, in __call__
return self.func(*args)
File "F:/PROJET/*******.py", line 37, in ImSymH
L=symetrieh(lImage)
File "F:/PROJET/*******.py", line 34, in symetrieh
return L[::-1]
AttributeError: Event instance has no attribute '__getitem__'
Si quelqu'un pouvait m'expliquer ce que signifient ces messages et comment résoudre le problème svp
Merci d'avance 