egosum123 | Bonjour, je viens vers vous parce que j'ai un léger soucis avec mon programme python.
En effet, j'utilise PIL pour convertir des matrices en images, et il s'avère que je reçoit l'erreur "ValueError: not enough image data"
Pourtant elle n'arrive pas dans les autres programmes où j'utilise PIL, j'ai beau chercher, je ne trouve pas grand chose: A L'AIDE
Code :
- def hauteurTerrain(T,n,h):
- """crée une image pour représenter le terrain"""
- T=terrain_coline(n,h)
- couleurs=[(0,120,0)]
- for i in range (h+1):
- a=120-i
- couleurs.append((0,a,0))
- couleurs=[''.join([chr(j) for j in couleur]) for couleur in couleurs]
- img_str=''
- for ligne in range (2*n-1):
- for colonne in range(n-1):
- img_str +=couleurs[T[ligne,colonne]]
- img=Image.frombytes("RGB",(n,2*n),bytes(img_str, 'ASCII'))
- #Sauvegarde en PNG
- img.save("C:\\Users\\François 2\\Desktop\\TIPE\\propagation python\\terrain.png", "PNG" )
- print(T)
- return img
|
Celui-ci fonctionne par contre:
Code :
- def image(M,n,destination):
- """crée une image pour représenter l'état du feu"""
- #couleurs
- couleurs=[(0,127,0),(127,0,0),(48,48,48)]
- #convertion en code ASCII
- couleurs=[''.join([chr(x) for x in couleur]) for couleur in couleurs]
- #Construction chaine avec les valeurs de M
- img_str=''
- for ligne in range (2*n-1):
- for colonne in range(n-1):
- img_str +=couleurs[M[ligne,colonne]]
- #création de l'image
- img=Image.frombytes("RGB",(n,2*n),bytes(img_str, 'ASCII'))
- #Sauvegarde en PNG
- img.save(destination, "PNG" )
- return img
|
Merci d'avance pour votre aide qui sera précieuse!! |