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
| # -*- coding: cp1252 -*-
# on importe Image de la librairie PIL
from PIL import Image
# on importe Image et ImageTk d'on ne sait où (???)
import Image, ImageTk
# on importe les librairies Tkinter et tkFileDialog
import Tkinter, tkFileDialog
# on importe tout à partir de Tkinter
# alors qu'on a déjà importé Tkinter (???)
from Tkinter import *
# on importe encore une fois Image de la librairie PIL (???)
from PIL import Image
# on crée la fenêtre principale du programme
fen1=Tkinter.Tk()
# on crée le canevas graphique
can1=Canvas(fen1,bg='gray',height=1000,width=1000)
# on affiche le canevas graphique dans la fenêtre principale
can1.pack(side=LEFT)
# etc, etc, réciter ligne à ligne permet de lever les incohérences dans le code
image1 = tkFileDialog.askopenfile(parent=can1,mode='rb',title='Choisir un fichier')
L,H = image1.size
image2 = tkFileDialog.askopenfile(parent=can1,mode='rb',title='Choisir un fichier')
image3 = Image.new("RGB",(L,H))
for y in range(H):
for x in range(L):
p1 = image1.getpixel((x,y))
r1 = p1[0]&240
v1 = p1[1]&240
b1 = p1[2]&240
p2 = image2.getpixel((x,y))
r2 = p2[0]>>4
v2 = p2[1]>>4
b2 = p2[2]>>4
r = r1|r2
v = v1|v2
b = b1|b2
image3.putpixel((x,y),(r,v,b))
image3.save("stegano2.png")
image3.show() |
Partager