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

Algorithmes et structures de données Discussion :

Axe principal d'une forme


Sujet :

Algorithmes et structures de données

  1. #1
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860
    Par défaut Axe principal d'une forme
    Bonjour,

    je souhaite trouver l'axe principal d'une forme binaire en 2D.

    J'utilise le moment d'inertie pour trouver l'axe principal. Si le moment mXY n'est pas nul, il faut alors faire subir une rotation d'angle a = 2mXY/(m-mX).

    Cette méthode est basé sur la répartition uniforme des pixels de part et d'autre de l'axe principal.
    Malheureusement l'axe trouvé réparti bien les pixels, mais ce n'est pas forcément l'axe principal.

    Est ce que quelqu'un connaitrait une autre méthode ?

    Merci par avance...

  2. #2
    Membre actif Avatar de ronan99999
    Inscrit en
    Juillet 2003
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Juillet 2003
    Messages : 279
    Points : 299
    Points
    299
    Par défaut
    Cela revient à chercher le minum d'une fonction de cout sur les ligne puis sur les colonnes non..?

    Tu peux utiliser les moments d'inerties centrés d'ordre deux et calculer la matrice de covariance de ton objet, tu peux alors calculer les vecteurs propres de ta matrice qui te donneront les axes principaux, celui qui t'intéresse est celui qui a la norme la plus grande.

  3. #3
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860
    Par défaut
    Bonjour,

    Citation Envoyé par ronan99999
    Tu peux utiliser les moments d'inerties centrés d'ordre deux et calculer la matrice de covariance de ton objet
    C'est ce qui est fait pour calcule mXY, c'est la formule de la covariance.

    Citation Envoyé par ronan99999
    tu peux alors calculer les vecteurs propres de ta matrice qui te donneront les axes principaux, celui qui t'intéresse est celui qui a la norme la plus grande.
    Je ne vois pas tres bien de quel type de matrice tu parles !

  4. #4
    Membre actif Avatar de ronan99999
    Inscrit en
    Juillet 2003
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Juillet 2003
    Messages : 279
    Points : 299
    Points
    299
    Par défaut
    Tu as raison je me suis planté ce n'est pas ça une matrice de covariance.

    La matrice dont je parle est formée des moments d'ordre deux, ces coefficents sont:

    I ton imagette contenant ta forme
    Support nombre de pixel contenu dans ton imagette
    avec i+j = 2
    Mij = (Sigma((x^i)*(y^j)*I(x,y)) - Sigma(I(x,y))^(i+j))/Support

  5. #5
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860
    Par défaut
    Bonjour,

    merci pour cette modification...

    Est ce qur tu pourrais me redonner la formule pour calculer les vecteurs propres ?

    Merci...

  6. #6
    Membre actif Avatar de ronan99999
    Inscrit en
    Juillet 2003
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Juillet 2003
    Messages : 279
    Points : 299
    Points
    299
    Par défaut
    La formule non, je pense qu'il y'a plein de méthode pour les calculer.

    Soit U une matrice carrée sur R de dimension deux:
    -1- Tu calcules ton polynome caractérisque (det(U-lambda*I)), tu obtiens un polynome de degrés 2 en fonction de lambda, I est matrice identité de meme dimension que U
    -2- tu trouves ces racines (du polynome caractéristique) qui sont ces valeurs propres l1 et l2
    -3- soit l1 et l2 tes valeurs propres, tu calcules u1 et u2 vecteurs propres grace à ceci: U*u1 = u1*l1 et U*u2 = u2*l2

    Il existe je pense plein d'autres méthodes et je ne me souviens plus des cas particuliers l1 et l2 complexe ou unicité des racine).

    Le mieux si ce n'est pas claire c'est de regarder ici:

    http://fr.wikipedia.org/wiki/Vecteur_propre
    (pour ta culture)

    une méthode simple:

    http://www-lmc.imag.fr/lmc-sms/Berna...MC2/node4.html

    En gros tu as une equation du second degres à résoudre et deux systémes à deux inconnues à résoudre aussi.

  7. #7
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860
    Par défaut
    Bonjour,

    finalement, ce n'est pas résolu, j'ai un souci avec cette formule :

    Citation Envoyé par ronan99999
    I ton imagette contenant ta forme
    Support nombre de pixel contenu dans ton imagette
    avec i+j = 2
    Mij = (Sigma((x^i)*(y^j)*I(x,y)) - Sigma(I(x,y))^(i+j))/Support
    Il semblerai que ça ,ne marche pas...

Discussions similaires

  1. [VB6] [Excel] Feuille dans une form, sans excel installé
    Par ro2v dans le forum Installation, Déploiement et Sécurité
    Réponses: 3
    Dernier message: 05/05/2010, 13h45
  2. Réponses: 1
    Dernier message: 07/07/2009, 12h09
  3. ouverture d'une form en fondu transparent
    Par nicholz dans le forum Composants VCL
    Réponses: 9
    Dernier message: 08/01/2003, 12h06
  4. [VB6] masquer la barre de titre d'une form
    Par tiboleo dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 09/12/2002, 18h54
  5. [VB6][Formulaire]Appliquer un Scrollbar a une Form
    Par Boil dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 09/11/2002, 04h51

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