Browse Source

pg waz herre :p

master
rep 6 years ago
parent
commit
df95cf25c9
14 changed files with 552 additions and 34 deletions
  1. +1
    -0
      bb.py
  2. BIN
      bb.pyc
  3. +85
    -34
      hacheuur.py
  4. +466
    -0
      test.pickle
  5. BIN
      test/test..00000_20151019-18h11m09s.png
  6. BIN
      test/test..00000_20151019-18h19m52s.png
  7. BIN
      test/test..00000_20151019-18h35m17s.png
  8. BIN
      test/test..00000_20151019-18h44m02s.png
  9. BIN
      test/test..00000_20151019-18h44m19s.png
  10. BIN
      test/test..00000_20151019-18h56m10s.png
  11. BIN
      test/test..00000_20151019-19h10m37s.png
  12. BIN
      test/test..00000_20151019-19h10m50s.png
  13. BIN
      test/test..00000_20151019-19h10m52s.png
  14. BIN
      test/test.png

+ 1
- 0
bb.py View File

@ -0,0 +1 @@
a=[1,2,3]

BIN
bb.pyc View File


+ 85
- 34
hacheuur.py View File

@ -4,7 +4,7 @@
# haacheuur 0.24
# port industriel de port la nouvelle - couleur - 60cm*30cm
# image source : pln.jpg
# image rendue : pln..20150910-11h59m53s.jpg
# image obtenue : pln..20150910-11h59m53s.jpg
import sys
import Image
@ -19,61 +19,115 @@ import time
# modifs du 30/10/2013
import ImageEnhance
#ouvertrure de l'image source et conversion en mode 1bit
#ouvertrure de l'image source et conversion en mode couleur 1bit
im1 = Image.open(str(sys.argv[1])).convert('1')
im2 = im1.copy()
#rapport d'allongement de la nouvelle image par rapport à la largeur de l'image originale
allongement = 1
allongement = 4
im3 = Image.new("RGBA",(im1.size[0], im1.size[1]))
im4 = Image.new("RGBA",(im1.size[0]*allongement, im1.size[1]))
Larg = im1.size[0]
Haut = im1.size[1]
import pickle
for i in range(10):
# nombre aleatoire compris dans les limites de l'image
def randHaut(): return random.randint(0, im1.size[1])
loadfile = True
class Sequence:
def __init__(s):
randomCoupeHauteur = []
s.randomCopyPosi =[]
s.proportions=[]
s.choix=[]
s.sizeOutput=None
s.sizeInput=None
"""
seq = dict()
seq["randomCoupeHauteur"] = []
seq["randomCopyPosi"] = []
seq["proportions"] = []
seq["choix"] = []
seq["sizeOutput"]= im4.size
seq["sizeInput"] = im1.size
"""
if loadfile:
seq=pickle.load(open("test.pickle"))
else :
seq=Sequence()
for i in range(1):
# constitution de la liste des tranches horizontales
# genre comme si qu'on avait un 16 pistes :)
randomCoupeHauteur = [0, \
randHaut(),randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(),randHaut(), \
im1.size[1]]
# rangement des valeurs des plus petites au plus grandes
randomCoupeHauteur.sort()
# DEBUG
liste = []
# nombre aleatoire compris dans les limites de l'image
def randHaut():
return random.randint(0, im1.size[1])
if loadfile:
randomCoupeHauteur = seq.randomCoupeHauteur
else:
randomCoupeHauteur = [0, \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
im1.size[1]]
# rangement des valeurs des plus petites au plus grandes
randomCoupeHauteur.sort()
seq.randomCoupeHauteur = randomCoupeHauteur
# les hachures
def Hacheur(haut, bas) :
n=0
i=0
#!!!!!!!!!!
while n<im4.size[0] :
randomListe = [(1280,2),(640,4),(320,5),(240,4),(160,6),(120,4),(120,8),(80,16),(60,16),(20,32),(8,24),(8,16),(5,64),(3,24),(2,24),(1,128),(1,64),(1,6)]
choix = 0
if loadfile:
proportions = seq.proportions
choix_rnd = seq.choix[i]
randomCopyPosi = seq.randomCopyPosi[i]
else:
proportions = [(160,6),(120,4),(120,8),(80,16),(60,16),(20,32),(8,24),(8,16),(5,64),(3,24),(2,24),(1,256),(1,128),(1,64),(1,32),(1,16),(1,8)]
seq.proportions = proportions
#proportions = seq.proportions[]
choix_rnd = random.randint(0, len(proportions)-1)
#choix_rnd = random.randint(0, len(proportions)-1)
seq.choix.append(choix_rnd)
# positionnement de la copie, aleatoirement, entre 0 et la largeur totale de l'image
randomCopyPosi = random.randint(0, (im1.size[0]-largeur))
#randomCopyPosi = seq.randomCopyPosi
seq.randomCopyPosi.append(randomCopyPosi)
i+=1
# tirage au sort
randomFacteur = random.randint(0, len(randomListe)-1)
#seq["choix"].append(choix_rnd)
# assignation des valeurs (paires) finales choisies
randomCopyLargFinal = randomListe[randomFacteur][0]
repeat = randomListe[randomFacteur][1]
largeur = proportions[choix_rnd][0]
repeat = proportions[choix_rnd][1]
# positionnement de la copie, aleatoirement, entre 0 et la largeur totale de l'image
randomCopyPosi = random.randint(0, (im1.size[0]-randomCopyLargFinal))
#seq["randomCopyPosi"].append(randomCopyPosi)
cx1 = randomCopyPosi
cx2 = randomCopyPosi + randomCopyLargFinal
cx2 = randomCopyPosi + largeur
# decoupage du sample
im3 = im2.crop((cx1,haut,cx2,bas))
@ -83,7 +137,7 @@ for i in range(10):
#collage, n fois, du sample
while loop<repeat:
px1 = n
px2 = n + randomCopyLargFinal
px2 = n + largeur
draw = ImageDraw.Draw(im3)
@ -92,7 +146,7 @@ for i in range(10):
im4.paste(im3, (px1, haut, px2, bas))
n = n + randomCopyLargFinal
n = n + largeur
loop = loop + 1
def TrancheHorizontale() :
@ -113,10 +167,6 @@ for i in range(10):
for j in range(len(randomCoupeHauteur)-1):
Hacheur(randomCoupeHauteur[j], randomCoupeHauteur[j+1])
# DEBUG
#print liste
#print sorted(set(liste),key=liste.count)
# CTRL + S
#chemin du script : scriptpy = sys.argv[0]
#chemin de l'image : str(sys.argv[1])
@ -124,6 +174,7 @@ for i in range(10):
script = scriptpy[:-3]
n = "%05d" % i
im4.save(script+"."+n+"_"+strftime("%Y%m%d-%Hh%Mm%Ss", gmtime())+".png",'PNG', quality=100)
pickle.dump(seq, open("test.pickle","w"))
#print script+"."+str(i)+"_"+strftime("%Y%m%d-%Hh%Mm%Ss", gmtime())+".jpg"
#millis = int(round(time.time() * 1000))


+ 466
- 0
test.pickle View File

@ -0,0 +1,466 @@
(i__main__
Sequence
p0
(dp1
S'sizeInput'
p2
NsS'proportions'
p3
(lp4
(I160
I6
tp5
a(I120
I4
tp6
a(I120
I8
tp7
a(I80
I16
tp8
a(I60
I16
tp9
a(I20
I32
tp10
a(I8
I24
tp11
a(I8
I16
tp12
a(I5
I64
tp13
a(I3
I24
tp14
a(I2
I24
tp15
a(I1
I256
tp16
a(I1
I128
tp17
a(I1
I64
tp18
a(I1
I32
tp19
a(I1
I16
tp20
a(I1
I8
tp21
asS'randomCopyPosi'
p22
(lp23
I312
aI71
aI349
aI318
aI486
aI365
aI131
aI478
aI35
aI282
aI310
aI398
aI447
aI132
aI213
aI360
aI25
aI468
aI496
aI461
aI377
aI284
aI250
aI375
aI60
aI130
aI104
aI108
aI322
aI188
aI18
aI89
aI119
aI69
aI276
aI105
aI143
aI155
aI328
aI323
aI290
aI320
aI188
aI231
aI252
aI68
aI225
aI178
aI396
aI257
aI269
aI254
aI18
aI245
aI234
aI209
aI31
aI35
aI298
aI301
aI190
aI225
aI300
aI64
aI86
aI115
aI41
aI432
aI304
aI491
aI454
aI153
aI27
aI32
aI322
aI357
aI193
aI225
aI435
aI181
aI315
aI319
aI69
aI338
aI369
aI63
aI118
aI45
aI78
aI336
aI347
aI171
aI80
aI463
aI37
aI197
aI189
aI109
aI145
aI297
aI379
aI465
aI165
aI131
aI185
aI381
aI484
aI317
aI267
aI494
aI162
aI84
aI409
aI376
aI236
aI303
aI21
aI4
aI37
aI244
aI286
aI202
aI206
aI454
aI453
aI268
aI113
aI249
aI408
aI181
aI417
aI153
aI476
aI437
aI199
aI440
aI377
aI183
aI400
aI384
aI469
aI434
aI27
aI370
aI373
aI30
aI29
aI341
aI497
aI330
aI308
aI96
aI74
aI90
aI151
aI405
aI349
aI269
aI104
aI250
aI490
aI62
aI258
aI314
aI331
aI177
aI343
aI311
aI155
aI293
aI389
aI88
aI100
aI218
aI378
aI302
aI282
aI403
aI243
aI153
asS'sizeOutput'
p24
NsS'randomCoupeHauteur'
p25
(lp26
I0
aI44
aI48
aI65
aI86
aI87
aI95
aI112
aI116
aI119
aI122
aI135
aI135
aI136
aI163
aI255
aI260
aI265
aI265
aI306
aI315
aI324
aI349
aI350
aI368
aI370
aI385
aI415
aI425
aI460
aI492
aI505
aI510
aI512
asS'choix'
p27
(lp28
I7
aI7
aI3
aI9
aI5
aI2
aI11
aI6
aI13
aI7
aI0
aI3
aI14
aI16
aI7
aI3
aI13
aI11
aI6
aI15
aI14
aI3
aI15
aI4
aI10
aI1
aI8
aI3
aI6
aI16
aI9
aI0
aI0
aI0
aI3
aI7
aI15
aI14
aI9
aI8
aI16
aI16
aI6
aI12
aI1
aI0
aI11
aI3
aI5
aI4
aI3
aI3
aI0
aI1
aI14
aI1
aI0
aI16
aI7
aI0
aI8
aI2
aI15
aI2
aI0
aI2
aI4
aI6
aI16
aI16
aI5
aI9
aI6
aI9
aI6
aI2
aI16
aI16
aI7
aI4
aI5
aI6
aI1
aI5
aI3
aI0
aI12
aI1
aI1
aI7
aI4
aI5
aI9
aI10
aI8
aI5
aI8
aI1
aI13
aI10
aI14
aI9
aI11
aI11
aI5
aI11
aI12
aI12
aI10
aI14
aI7
aI0
aI6
aI3
aI9
aI15
aI6
aI11
aI0
aI1
aI16
aI10
aI8
aI15
aI8
aI7
aI8
aI10
aI7
aI4
aI9
aI11
aI13
aI6
aI13
aI13
aI4
aI2
aI10
aI3
aI8
aI14
aI8
aI9
aI3
aI2
aI8
aI2
aI11
aI6
aI4
aI7
aI1
aI2
aI7
aI3
aI11
aI2
aI3
aI1
aI5
aI13
aI0
aI3
aI2
aI9
aI2
aI6
aI11
aI9
aI15
aI7
aI0
aI16
aI3
aI16
aI16
aI5
aI13
aI1
asb.

BIN
test/test..00000_20151019-18h11m09s.png View File

Before After
Width: 512  |  Height: 512  |  Size: 12 KiB

BIN
test/test..00000_20151019-18h19m52s.png View File

Before After
Width: 512  |  Height: 512  |  Size: 14 KiB

BIN
test/test..00000_20151019-18h35m17s.png View File

Before After
Width: 1024  |  Height: 512  |  Size: 22 KiB

BIN
test/test..00000_20151019-18h44m02s.png View File

Before After
Width: 1024  |  Height: 512  |  Size: 20 KiB

BIN
test/test..00000_20151019-18h44m19s.png View File

Before After
Width: 2048  |  Height: 512  |  Size: 42 KiB

BIN
test/test..00000_20151019-18h56m10s.png View File

Before After
Width: 2048  |  Height: 512  |  Size: 36 KiB

BIN
test/test..00000_20151019-19h10m37s.png View File

Before After
Width: 2048  |  Height: 512  |  Size: 24 KiB

BIN
test/test..00000_20151019-19h10m50s.png View File

Before After
Width: 2048  |  Height: 512  |  Size: 24 KiB

BIN
test/test..00000_20151019-19h10m52s.png View File

Before After
Width: 2048  |  Height: 512  |  Size: 24 KiB

BIN
test/test.png View File

Before After
Width: 512  |  Height: 512  |  Size: 83 KiB

Loading…
Cancel
Save