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

Images Discussion :

Normalisation de plusieurs valeurs


Sujet :

Images

  1. #21
    Membre du Club
    Femme Profil pro
    Inscrit en
    Février 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Février 2009
    Messages : 227
    Points : 69
    Points
    69
    Par défaut
    pour calculer mes nouvelles valeurs normalisées par rapport a l'ancienne matrice j'ai fais ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for i=1:4
    %vect=load('c:\Matlab\vect.txt');% vecteur des paramétres de la nouvelle image
    vect=[1 2 3 4];
    vect_temp(i)=vect(1)-min(A(:,i));
    vect_normalised(i)=vect_temp(i)/max(A_temp(:,i));
    je ne sais pas si c'est juste ce que j'ai écris ou pas

    comme mes valeurs sont a des échelles trés différentes qui varient de 10-6 à 10+4, quand j'essaye de les mettre dans un seule vecteur le résulta que j'ai est le vecteur avec la valeur max et les autres à 0

  2. #22
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Ce n'est pas parce que toutes tes valeurs sont écrasées à zéro que ce n'est pas juste.

    Imagine tu compares un immeuble de 600m de haut avec une maison sans étage et une maison avec étage. Ces deux maisons ont beau avoir des hauteurs différentes, cette différence est minime au regard de la différence qu'il y a avec l'immeuble. Donc je ne pense pas que toutes tes valeurs sont à 0, elles sont simplement écrasé autour de zéro. Tu peux remédier à ça en écrivant format long dans ta command window afin d'utiliser plus de chiffres significatifs.

    Sinon je n'ai pas compris cette ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vect_temp(i)=vect(1)-min(A(:,i));
    Moi j'aurai fait un truc de ce style plutôt:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    new_vecteur = cat(1,new_valeur,A(:,1));
    new_vecteur_normalise = (new_vecteur-min(new_vecteur))/max(new_vecteur);
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  3. #23
    Membre du Club
    Femme Profil pro
    Inscrit en
    Février 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Février 2009
    Messages : 227
    Points : 69
    Points
    69
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vect_temp(i)=vect(1)-min(A(:,i));
    cela veut dire la première valeur du vecteur moins le min du vecteur correspondant

    je vais tester ce que tu ma proposé de faire

    merci

  4. #24
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Citation Envoyé par eviasra Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vect_temp(i)=vect(1)-min(A(:,i));
    cela veut dire la première valeur du vecteur moins le min du vecteur correspondant

    je vais tester ce que tu ma proposé de faire

    merci
    Oui j'ai bien compris mais je n'ai pas compris ce que représente ce vecteur: vect=[1 2 3 4];
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  5. #25
    Membre du Club
    Femme Profil pro
    Inscrit en
    Février 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Février 2009
    Messages : 227
    Points : 69
    Points
    69
    Par défaut
    non c'été pour le test mon vrai vecteur est celui ci

    parcontre d'aprés ton dernier code si j'ai bien compris il renormalise les anciennes valeurs ( exple de 17)
    alors que moi je veux seulement normalisée les nouvelles valeurs ( exemple du 7.5
    Fichiers attachés Fichiers attachés

  6. #26
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Citation Envoyé par eviasra Voir le message
    par contre d'aprés ton dernier code si j'ai bien compris il renormalise les anciennes valeurs ( exple de 17)
    alors que moi je veux seulement normalisée les nouvelles valeurs ( exemple du 7.5
    Oui mais l'exemple du 7.5 est inclus dans l'exemple du 17, cela veut dire que si ta valeur est comprise entre min(A) et max(A), alors ça ne changera pas ses valeurs de normalisation. En clair c'est transparent, ça va juste ajouter ta nouvelle valeur.
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  7. #27
    Membre du Club
    Femme Profil pro
    Inscrit en
    Février 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Février 2009
    Messages : 227
    Points : 69
    Points
    69
    Par défaut


    Alors l'exemple du 17 va changé toutes les valeurs que j'ai déja normalisées et je voudrai pas faire ça

    ce que j'ai fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    A=load('c:\Matlab\matrice.txt')
    for i=1:4
    A_temp(:,i) = A(:,i)-min(A(:,i));
    A_normalised(:,i) = A_temp(:,i)/max(A_temp(:,i));
    end
     
    for i=1:4
    vect=load('c:\Matlab\new_vecteur.txt');% vecteur des paramétres de la nouvelle image
    vect_temp(i)=vect(1)-min(A(:,i));
    vect_normalised(i)=vect_temp(i)/max(A_temp(:,i));
    end
    par contre les résultats ne sont pas entre 0 et 1

  8. #28
    Membre du Club
    Femme Profil pro
    Inscrit en
    Février 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Février 2009
    Messages : 227
    Points : 69
    Points
    69
    Par défaut
    je pense que c'est bon ,l'erreur était dans

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vect_temp(i)=vect(1)-min(A(:,i));
    j'ai mis 1 a la place de i

    j'aimerai que tu me confirme si mon écriture est juste stp

  9. #29
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Citation Envoyé par eviasra Voir le message

    Alors l'exemple du 17 va changé toutes les valeurs que j'ai déja normalisées et je voudrai pas faire ça
    Le dernier code que je t'ai transmis ne changera pas les valeurs normalisées si tes nouvelles valeurs sont comprises entre ta valeur max et min de ton vecteur initial !
    Citation Envoyé par eviasra Voir le message
    ce que j'ai fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    A=load('c:\Matlab\matrice.txt')
    for i=1:4
    A_temp(:,i) = A(:,i)-min(A(:,i));
    A_normalised(:,i) = A_temp(:,i)/max(A_temp(:,i));
    end
     
    for i=1:4
    vect=load('c:\Matlab\new_vecteur.txt');% vecteur des paramétres de la nouvelle image
    vect_temp(i)=vect(1)-min(A(:,i));
    vect_normalised(i)=vect_temp(i)/max(A_temp(:,i));
    end
    par contre les résultats ne sont pas entre 0 et 1
    cette ligne vect=load('c:\Matlab\new_vecteur.txt');% vecteur des paramétres de la nouvelle image ne doit pas être mise dans la boucle, là tu vas charger ton fichier à chaque itération.
    et je dirai que c'est plutôt ça? vect_temp(i)=vect(i)-min(A(:,i));
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  10. #30
    Membre du Club
    Femme Profil pro
    Inscrit en
    Février 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Février 2009
    Messages : 227
    Points : 69
    Points
    69
    Par défaut
    je l'ai mis dans la boucle car j'ai 4 paramétres différents

  11. #31
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    mais les 4 paramètres sont chargés en une fois, là à chaque fois tu réimportes ton fichier sans aucun changement à chaque itération
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  12. #32
    Membre du Club
    Femme Profil pro
    Inscrit en
    Février 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Février 2009
    Messages : 227
    Points : 69
    Points
    69
    Par défaut
    désolée je voulais dire plusieurs images à 4 paramétres

  13. #33
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    de toute façon, étant donné que la ligne contenant le load ne dépend pas de i, c'est qu'elle n'a pas besoin d'être mise dans la boucle.
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  14. #34
    Membre du Club
    Femme Profil pro
    Inscrit en
    Février 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Février 2009
    Messages : 227
    Points : 69
    Points
    69
    Par défaut
    Bonjour gooby

    juste une remarque pour la normalisation pourquoi on a fait

    alors que sur la fonction il faut diviser par max(a)-min(a)

  15. #35
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Parce que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    A_norm=(A-min(A) )/(max(A) - min(A) );
    Cela revient à faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    B = A-min(A);
    A_norm = B/max(B);
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  16. #36
    Membre du Club
    Femme Profil pro
    Inscrit en
    Février 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Février 2009
    Messages : 227
    Points : 69
    Points
    69
    Par défaut
    ah mais oui merci encore

  17. #37
    Membre du Club
    Femme Profil pro
    Inscrit en
    Février 2009
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Février 2009
    Messages : 227
    Points : 69
    Points
    69
    Par défaut
    gooby

    je reviens pour le problème d'affichage je ne comprends toujours pas pourquoi ça marche pour certaines images et pas pour d'autres

Discussions similaires

  1. Fonction qui retourne plusieurs valeurs !
    Par casafa dans le forum C++
    Réponses: 20
    Dernier message: 23/04/2014, 16h56
  2. Réponses: 7
    Dernier message: 15/02/2005, 13h55
  3. [PL/SQL] Fonction qui retourne plusieurs valeurs
    Par Loko dans le forum Oracle
    Réponses: 2
    Dernier message: 07/12/2004, 09h43
  4. Plusieurs valeurs dans un value
    Par nebule dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 30/11/2004, 10h58
  5. [Composant] Drag & Drop de plusieurs valeurs à la fois
    Par slowpoke dans le forum Composants VCL
    Réponses: 3
    Dernier message: 23/12/2003, 10h26

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