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

Mathématiques Discussion :

Recaler une nappe de points 3D


Sujet :

Mathématiques

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Recaler une nappe de points 3D
    Bonjour,
    après avoir écumer faq et autres messages du forum sans succès je me décide à poster.
    Je vous explique mon soucis:

    Sous matlab, j'ai une surface représentée par une nappe de point en 3D(appelons refstat), je considère cette première surface comme référence et je définis 3points qui me serviront à créer un repère orthonormé.

    Je souhaite recaler sur cette surface de référence toutes mes autres surfaces représentées(refdyn) elles aussi par des points en 3D, à l'aide des 3 points que j'ai considéré comme fixe(c'est à dire qui ne bouge pas par rapport à la surface).

    D'un point de vue mathématique, la transformation entre ma surface de référence et une autre est due à une translation et rotation. Je voulais donc utiliser la relation suivante:
    refstat=Q*refdyn où Q = R*T Je pouvais calculer Q grâce aux repères que j'ai calculé avec mes 3 points(en espérant que mon erreur ne vienne pas de ces repères..).

    Ayant Q, je voulais multiplier cette matrice avec les coordonnées des points de ma surface dynref pour avoir les coordonnées des points recalés sur la surface statref.
    Malheureusement je ne sais pas si c'est mon idée qui est mauvaise mais cela ne fonctionne pas... J'ai essayé de n'utiliser que des matrices 3*3 en séparant rotation et translation tel que refstat= R*refdyn+T mais sans succès, la translation fonctionne très bien mais la rotation est une catastrophe...
    J'ai bien vu qu'il existait des algorithmes type ICP pour recaler les images successives mais j'ai du mal à les appliquer à mon sujet..(le code est un peu trop obscure..).

    Avant de vous embêter avec mon code je souhaite déjà savoir si mon idée de départ est bonne? ou est ce que je suis partie sur des mauvaises bases mathématiques? ca fait 2 jours que je recherche la faille de mon programme...



    Merci d'avance...

  2. #2
    Membre expérimenté
    Profil pro
    chercheur
    Inscrit en
    Avril 2004
    Messages
    830
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : chercheur

    Informations forums :
    Inscription : Avril 2004
    Messages : 830
    Points : 1 455
    Points
    1 455
    Par défaut
    Ta démarche me parait bonne.

  3. #3
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 816
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 816
    Points : 7 648
    Points
    7 648
    Par défaut
    Citation Envoyé par Nebulix Voir le message
    Ta démarche me parait bonne.
    +1

    Tu n'aurais pas pris l'inverse pour ta matrice de rotation par hasard...?

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    la démarche était bonne, mais effectivement c'était l'inverse!
    Désolée de ne pas avoir vu vos réponses, je n'avais pas eu de notifications
    Pour comparer cette méthode, je tente de regarder ce que matlab propose en fonction de recalage 3D mais ce n'est pas gagné!
    Merci encore (bcp en retard..)
    Pauline

Discussions similaires

  1. [JavaScript] transformer une virgule en point
    Par ep31 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 17/09/2007, 17h01
  2. Obtenir la zone minimum englobante d'une liste de points(x,y)
    Par Chekov dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 05/02/2007, 17h18
  3. [j3d] afficher une ligne qui point vers un objet
    Par guitalca dans le forum 3D
    Réponses: 1
    Dernier message: 06/03/2006, 22h44
  4. Requete sur une table qui pointe 2 fois sur une autre
    Par Satch dans le forum Langage SQL
    Réponses: 1
    Dernier message: 10/01/2006, 09h48
  5. Trouver equation à partir d'une liste de points
    Par scarabee dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 27/05/2004, 18h05

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