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

MATLAB Discussion :

Renvoi index d'un tenseur d'ordre 3


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 15
    Points : 11
    Points
    11
    Par défaut Renvoi index d'un tenseur d'ordre 3
    Bonjour à tous,

    Voilà dans le cadre d'un traitement d'image, je dispose d'un tenseur d'ordre 3 (r*c*3)

    r et c correspondent au dimensions de mon image, j'ai donc un tenseur semblable à du RGB.

    J'aimerais pour chaque pixel, donc pour le vecteur (r,c,:) trouver la valeur maximum mais surtout renvoyer l'indice de la cellule dans lequel se trouve le max.

    Par exemple si A(1,1,:) = [5 14 9], j'aimerais pouvoir renvoyer le nombre 2 car mon max pour ce pixel se trouve en deuxième position...

    Quelqu'un aurait une solution à me proposer ? Renvoyer la valeur du max ne me pose aucune problème mais renvoyer l'indice de la case dans laquelle il l'a trouvé...

    UN grand merci !

    François

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Simplement avec la fonction MAX:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [M indice] = max(A,[],3)

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 15
    Points : 11
    Points
    11
    Par défaut
    Merci beaucoup !! C'était plutôt simple...

    Une autre question :

    J'ai maintenant ma matrice M (r*c) qui contient des 1, 2 ou 3 et mon image B en niveaux de gris (r*c aussi).
    J'aimerais maintenant obtenir la moyenne de niveaux de gris des pixels de l'image B qui sont référencés comme 1 dans la matrice M et ainsi de suite pour 2 et 3 afin d'obtenir trois moyennes de niveaux de gris.

    Je pense qu'il faudrait que j'extraie les coordonnées des cellules contenant des 1 dans la matrice M pour ensuite aller rechercher les valeurs de gris des cellules ayant ces coordonnées dans l'image et ensuite moyenner le tout... Une idée plus "élégante" ?

    FRançois

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 15
    Points : 11
    Points
    11
    Par défaut
    Ok avec la fonction find(M==1), je peux renvoyer les indices des cellules contenant le chiffre 1 mais ce sont des indices qui comptent de haut en bas puis de gauche à droite. Je ne vois pas après comment accéder à la nième cellule de mon image en niveau de gris pour l'inclure dans ma moyenne...

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par alias_sg1 Voir le message
    Ok avec la fonction find(M==1), [...] mais ce sont des indices qui comptent de haut en bas puis de gauche à droite.
    Ce n'est pas un problème.
    Je te conseille de faire un tour sur ces 2 points de la :

Discussions similaires

  1. renvois, index, signet
    Par poctoy dans le forum Word
    Réponses: 4
    Dernier message: 21/09/2012, 19h40
  2. Réponses: 8
    Dernier message: 10/12/2009, 16h55
  3. Ma requête renvoie les jours dans le mauvais ordre
    Par moi&dev dans le forum PostgreSQL
    Réponses: 11
    Dernier message: 27/08/2007, 11h51
  4. [Swing] probleme de JList. (refresh et renvoi index)
    Par koolway dans le forum Composants
    Réponses: 6
    Dernier message: 24/03/2006, 19h39
  5. Réponses: 5
    Dernier message: 11/12/2003, 14h45

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