IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation multimédia/Jeux Python Discussion :

Enregistrer image Python


Sujet :

Programmation multimédia/Jeux Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 29
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 10
    Par défaut Enregistrer image Python
    Bonjour à tous ! Voilà, je crée sur Python un logiciel photo. Donc j'ouvre mon image, je lui applique un filtre ( vert par exemple ) puis je souhaite l'enregistrer sur mon ordinateur ( l'image modifiée ). Voici mon programme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    import Image, ImageTk
    import Tkinter, tkFileDialog
    from Tkinter import *
    from PIL import Image
    import ImageFilter
    import sys
    import ImageDraw
    import ImageFont
     
     
     
     
    def ouvrir_image():
        global image, photo, can1, item
        image = tkFileDialog.askopenfile(parent=can1,mode='rb',title='Choisir un fichier')
        image = Image.open(image)
        photo = ImageTk.PhotoImage(image)
        x,y=image.size
        item=Canvas.create_image(can1,x,y,image=photo)
     
     
     
     
    def filtre_vert():
        global image, photo, item, can1
        x,y=image.size
        im2=Image.new("RGB",(x,y))
        pix=im2.load()
        for i in range (0,x):
            for j in range (y):
                p=image.getpixel((i,j))
                pix[i,j]=(0,p[1],0)
        im2.save('image.jpg')
        photo = ImageTk.PhotoImage(im2)
        im2=Image.open('image.jpg')
        can1.itemconfigure(item,image=photo)
        im2=Canvas.create_image(can1,x,y,image=photo)
     
     
     
    def sauvegarde_image():
        global image, im2
        png=options={}
        options['defaultextension']='.png'
        DossierSauvegarde=tkFileDialog.asksaveasfile('w',**png)
        im2.save(DossierSauvegarde.name)
     
     
     
     
     
    # PROGRAMME PRINCIPAL
     
    fen1=Tkinter.Tk()
    can1=Canvas(fen1,bg='gray',height=1000,width=1000)
    can1.pack(side=LEFT)
    fen1.title("Logiciel")
    bou1=Button(fen1,text='Quitter',command=fen1.quit)
    bou1.pack(side=BOTTOM)
    bou2=Button(fen1,text='Télécharger une photo',command=ouvrir_image)
    bou2.pack()
    bou3=Button(fen1,text='Appliquer un filtre vert',command=filtre_vert)
    bou3.pack()
    bou4=Button(fen1,text='Enregistrer image',command=sauvegarde_image)
    bou4.pack()
    fen1.mainloop()
    fen1.destroy()

    Et en fait mon problème c'est qu'il m'enregistre une image jpg en 0 octet, et n'ouvre donc rien quand je souhaite l'afficher. Et en message d'erreur python me dit "NameError: global name 'im2' is not defined".

    Quelqu'un saurait-il m'aider? Merci d'avance

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Salut,

    Il faudrait montrer le message d'erreur complet, le contexte nous en dira plus.

    Pour PhotoImage() tu ne dois pas donner le chemin du fichier ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
        photo = ImageTk.PhotoImage('image.jpg')
    c'est vraiment une question.

Discussions similaires

  1. Enregistrement image png
    Par merdassiahmad dans le forum Entrée/Sortie
    Réponses: 20
    Dernier message: 13/05/2008, 15h42
  2. enregistrement image png
    Par merdassiahmad dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 12/05/2008, 10h40
  3. Création & Enregistrement Image
    Par CBleu dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 25/11/2006, 08h10
  4. enregistrer image sur disk
    Par gy0m76 dans le forum C
    Réponses: 4
    Dernier message: 17/11/2006, 17h03
  5. enregistrer image sur disque avec URL
    Par meufeu dans le forum Langage
    Réponses: 8
    Dernier message: 26/10/2005, 12h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo