Intensite de niveau de gris

Signaler
Messages postés
4
Date d'inscription
jeudi 7 janvier 2021
Statut
Membre
Dernière intervention
7 janvier 2021
-
Messages postés
849
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
15 janvier 2021
-
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

Messages postés
30589
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
15 janvier 2021
7 226
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
Messages postés
4
Date d'inscription
jeudi 7 janvier 2021
Statut
Membre
Dernière intervention
7 janvier 2021



Voici l'image en question
Messages postés
849
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
15 janvier 2021
96
Bonjour,

Belle photo, ma fois .....
Messages postés
30589
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
15 janvier 2021
7 226 >
Messages postés
849
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
15 janvier 2021

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 ?
Messages postés
849
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
15 janvier 2021
96
pas mal ...