Intensite de niveau de gris

uzatye Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -  
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Voila mon probleme , en faite je n'arrive vraiment pas a un de mes exos...surement que je n'ai pas les moyens pour le faire :)
Le prolbleme parle de renvoyez une nouvelle image en niveau de gris
dont chaque pixel contient l'intensité en rouge de l'image précédente
pour l'insant j'ai fais ca
def image_rouge_gris(tab):
    """ Précondition : len(image_tab[0, 0]) == 3
        Renvoie une nouvelle image en niveau de gris
        dont chaque pixel contient l'intensité en rouge de l'image précédente
    """
    i = []
    nb_lignes, nb_colonnes = taille(tab)
    tab = tableau_n_x_m(nb_lignes, nb_colonnes)
    for i in range(nb_lignes):
        for j in range(nb_colonnes): 
            i.append(tab[i][j][0])
    return tab2

Merci de beaucoup de votre aide
Configuration: Windows / Firefox 84.0

3 réponses

jee pee Messages postés 41520 Date d'inscription   Statut Modérateur Dernière intervention   9 720
 
Bonjour,

D'abord l'énoncé semble incertain. " chaque pixel contient l'intensité en rouge de l'image précédente ". L'image précédente ? donc tu as l'image à passer en niveau de gris et une autre image ???

Après tu devrais nous donner tout le code, pas juste une fonction.

Enfin en ligne 8 tu écrases le tableau reçu en paramètre avant de le traiter ? En ligne 11 tu rajoutes à la variable i, l'indice de la boucle, un pixel ?? et en 12 tu retournes tab2 qui surgit de nulle part ???

PS : Pour la mise en forme des sources, au dessus de la zone d'édition de tes messages, il y a des icônes pour l'enrichissement du texte. Celle qui a cet aspect
<> ▼
permet d'appliquer au code, suivant une liste de valeurs, le format correspondant à sa nature.
Un petit tuto là : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
0
uzatye Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 


Voici l'image en question
0
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 
Bonjour,

Belle photo, ma fois .....
0
jee pee Messages postés 41520 Date d'inscription   Statut Modérateur Dernière intervention   9 720 > Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention  
 
bon dieu ... mais c'est bien sûr ! L'image précédente de la future image, c'est l'image originale ;-)

Je ne suis pas convaincu par ne garder que l'intensité rouge,


Dans une autre question aussi le rouge était privilégié, mais bof,


Perso je trouve que la moyenne RVB somme plus juste.


         R, V, B = img.getpixel((x, y))
#         gris = R                                 # solution 1
#         gris = int(R*0.299 + V*0.114 + B*0.144)  # solution 2
#         gris = (R + V + B)//3                    # solution 3
         img.putpixel((x, y), (gris, gris, gris))


Tu en penses quoi Phil ?
0
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 
pas mal ...
0