Répondre :
Bonsoir,
En gras tout ce que j'ai modifié. Je reste tout de même assez perplexe sur le fait qu'on mette ça dans une simple liste en ignorant les changements de ligne.
Donc là le programme renvoie un tableau avec le nombre de pixels blancs puis le nombre de pixels noirs puis le nombre de pixels blancs... en lisant l'image de gauche à droite et de haut en bas. Si tab[0] = 0 alors le premier pixel est noir, si tab[0] != 0 alors le premier pixel est blanc.
from PIL import Image
def encodage(): #Je ne comprends pas l'intérêt du paramètre "image".
# ouverture de la figure
Figure2 = Image.open("visage.png")
# dimensions de la figure
h, l = Figure2.size
# définition des couleurs
blanc = (255, 255, 255)
noir = (0, 0, 0)
# tableau des résultats
tab = []
# étude du premier pixel
if Figure2.getpixel((0, 0)) == blanc:
coul = 1 # coul vaut 1 si le pixel est blanc
else:
tab.append(0)
coul = 0 # coul vaut 0 si le pixel est noir
# nombre de pixels de chaque sorte
nb_noirs = 0
nb_blancs = 0
# parcours de l'image
for y in range(h):
for x in range(l):
if Figure2.getpixel((x, y)) == noir: # le pixel est noir
if coul == 1: # le précédent était blanc
coul = 0
nb_noirs += 1
tab.append(nb_blancs)
nb_blancs = 0
else:
nb_noirs += 1
else: # le pixel est blanc
if coul == 1: # le précédent était blanc
nb_blancs += 1
else:
coul = 1
nb_blancs += 1
tab.append(nb_noirs)
nb_noirs = 0
if coul == 1 : #traitement de la dernière série de pixels identiques
tab.append(nb_blancs)
else:
tab.append(nb_noirs)
return tab
Bonne soirée.
Merci d'avoir visité notre site, qui traite de Informatique. Nous espérons que les informations partagées vous ont été utiles. N'hésitez pas à nous contacter si vous avez des questions ou besoin d'assistance. À très bientôt, et pensez à ajouter notre site à vos favoris !