IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Calcul scientifique Python Discussion :

traitement d'image python


Sujet :

Calcul scientifique Python

  1. #1
    Candidat au Club
    Homme Profil pro
    systemes embarques et intelligence
    Inscrit en
    Décembre 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Tchad

    Informations professionnelles :
    Activité : systemes embarques et intelligence
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2022
    Messages : 2
    Points : 2
    Points
    2
    Par défaut traitement d'image python
    Bonjour, je cherche à implémenter un algorithme pour le traitement d'image auquel j'ai rencontré ce problème:TypeError: 'float' object is not subscriptable. voici le bout de code à corriger sous python:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    decimg = np.zeros(shape=[heit,wid,4],dtype=np.uint8)
    for i in range(heit):
        for j in range(wid):
            decimg[i,j]=enimg[i,j]^KC[z]
            z+=1
     
    plt.imshow(decimg)
    plt.show()
    plt.imsave('tryi.png',decimg)

  2. #2
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 674
    Points : 5 259
    Points
    5 259
    Par défaut
    Bonjour,

    Lorsque python renvoie une erreur, il donne des informations sur les instructions qui ont généré l'erreur.
    La moindre des choses est de fournir le message d'erreur complet.

    En plus, ton script n'est pas complet (et mal indenté de surcroit, merci d'utiliser le bouton avec le #).
    En l'état enimg, z, heit, wid, et d'autres ne sont pas déclarés.

    Avec ces seules informations, je dirais que la variable enimg est de type float et tu l'utilise comme une liste en faisant enimg[i,j]^KC[z].

  3. #3
    Candidat au Club
    Homme Profil pro
    systemes embarques et intelligence
    Inscrit en
    Décembre 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Tchad

    Informations professionnelles :
    Activité : systemes embarques et intelligence
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2022
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Le programme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    img=mpimg.imread('try.jpg')
    heit=img.shape[0]
    wid=img.shape[1]
    KC=(2,5,heit*wid)
    z=0
    enimg = np.zeros(shape=[heit,wid,4],dtype=np.uint8)
    for i in range(heit):
        for j in range(wid):
            enimg[i,j]=img[i,j]^KC[z]
            z+=1
    plt.imshow(enimg)
    plt.show()
    En effet j'ai essayé de convertir la ligne enimg comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    enimg[i,j]=float(img[i,j]^KC[z])
    mais ça me donne type d'erreur: 'float' object is not subscriptable

  4. #4
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 674
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 674
    Points : 5 259
    Points
    5 259
    Par défaut
    En premier lieu assure toi que le contenu de img est bien celui que tu crois.
    Le retour de imread varie selon le type d'image.
    Voir documentation https://matplotlib.org/stable/api/_a...ot.imread.html

    Par exemple, ton code (sans le cast en float) sur une image à moi retourne l'erreur ci-dessous car je n'ai pas le même format d'image que toi :
    could not broadcast input array from shape (3,) into shape (4,).

    Edit : enlevé une bêtise.

    Tu as également un autre problème avec z qui va déclencher une erreur quand il dépassera 2 car KC est un tuple avec 3 valeurs.

  5. #5
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 954
    Points : 9 284
    Points
    9 284
    Par défaut
    Hello,
    plutôt (pas le chien) que de nous balancer un code dont on ne sait pas ce qu'il doit faire, si tu nous expliquais quel genre de traitement d'images tu cherches à exécuter (par exemple que représente KC, que doit on obtenir). Il y a peut-être d'autres solutions avec d'autres bibliothèques ou un autre algorithme.
    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

Discussions similaires

  1. traitement d'image en python
    Par kimo_063 dans le forum Général Python
    Réponses: 5
    Dernier message: 13/04/2015, 14h29
  2. traitement d'image: segmentation avec opencv dans python
    Par Bimboucha dans le forum Bibliothèques tierces
    Réponses: 25
    Dernier message: 09/04/2014, 15h14
  3. traitement d'image avec python
    Par chilo113 dans le forum Général Python
    Réponses: 1
    Dernier message: 27/11/2013, 08h10
  4. Capture + Traitement d'images avec Python ?
    Par afranck64 dans le forum Programmation multimédia/Jeux
    Réponses: 7
    Dernier message: 17/11/2011, 17h34
  5. Traitement d'image avec Python sans modules
    Par kevgen dans le forum Général Python
    Réponses: 4
    Dernier message: 23/11/2010, 00h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo