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 :

méthodes d'interpolation d'un nuage de points 3D


Sujet :

Mathématiques

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 265
    Points : 352
    Points
    352
    Par défaut méthodes d'interpolation d'un nuage de points 3D
    Bonjour,
    je cherche à interpoler un nuage de points en 3D. la surface doit etre aussi lisse que je le souhaite. Pour cela j'utilise les splines de coques minces sous matlab ( fct tpaps dans la curve fitting toolbox).
    j'obtiens bien la surface que je souhaite mais le temps de calcul est rédibitoire ( j'ai plusieurs millier de point et meme en prenant petit bou par petit bou avec un recouvrement le facteur temps est trop important).
    D'ou mes questions :
    -Connaitriez-vous une autre methode d'interpollation qui remplisse les meme critère ( surface lisse peu ou pas d'oscillation).

    -Ou bien connaitriez vous une moyen de passer par de l'optimisation ?( je pourrais ainsi réduire mon temps de calcul en initialisant mes paramètres grâce a un a priori de forme)

    merci d'avance
    cédric

  2. #2
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Citation Envoyé par gpcbitnik38 Voir le message
    -Connaitriez-vous une autre methode d'interpollation qui remplisse les meme critère ( surface lisse peu ou pas d'oscillation).
    Si tu peux définir/calculer les normales à ta surface pour tes points, il y a de très bons algorithmes de reconstruction de surface.

    (recherches les documents de Hugues Hoppe sur le site Mircrosoft Research)
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 265
    Points : 352
    Points
    352
    Par défaut
    le problème est que mon nuage n'est pas uniformément reparti.
    au endroit ou je n'ai pas de points je risque d'avoir des problèmes non?
    j'ai mis en pièce jointe une image d'un nuage de point et une image du type de surface que j'aimerais avoir si ça peu aider
    Images attachées Images attachées   

  4. #4
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Citation Envoyé par gpcbitnik38 Voir le message
    le problème est que mon nuage n'est pas uniformément reparti.
    au endroit ou je n'ai pas de points je risque d'avoir des problèmes non?
    Les algos de reconstruction gèrent ce genre de problèmes.

    j'ai mis en pièce jointe une image d'un nuage de point et une image du type de surface que j'aimerais avoir si ça peu aider
    Il semble y avoir un axe de progression (sur la profondeur), un peu comme si on faisait l'aquisition d'un histogramme en fonction du temps.

    Si c'est le cas habituel, tu peux peut-être procéder par "tranche" pour construire la surface.
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 265
    Points : 352
    Points
    352
    Par défaut
    si par tranche tu veux dire morceau par morceau en fonction de la profondeur je l'ai deja testé.
    je divise le temps de calcul par un facteur 7 à 10 selon le nombre de points dans mon nuage. mais le calcul reste toujours relativement long. En plus je perds en continuité a cause du recouvrement que je doit mettre en place pour limiter les effets de bord. ( la spline n'as plus de point de contrôle proche et remonte, c'est tres visible dans les coins surtout si je tombe entre 2 sculptures).

    En réalité le nuage de point est issu de l'extraction des fonds de sillons d'un pneu, d'ou la "périodicité" que tu peux constater. le nuage que tu vois est un secteur d'un pneu il en faut en gros 10 comme ça pour faire un tour de roue.

    je suis en train de lire les papiers que tu m'as indiqué j'ai de quoi me documenter pour un moment ^^
    merci pour ta réactivité c'est très appréciable si d'autre idée te passe par la tete je suis preneur au cas ou je n'arrive pas a implémenter celle ci ^^

  6. #6
    Membre expérimenté
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Points : 1 685
    Points
    1 685
    Par défaut
    Bonjour,

    Citation Envoyé par gpcbitnik38 Voir le message
    j'utilise les splines de coques minces sous matlab ( fct tpaps dans la curve fitting toolbox).
    j'obtiens bien la surface que je souhaite mais le temps de calcul est rédibitoire ( j'ai plusieurs millier de point et meme en prenant petit bou par petit bou avec un recouvrement le facteur temps est trop important).
    Plusieurs milliers de points c'est peu. Le problème de lenteur doit donc venir :
    1. de ton propre code qui n'est pas optimisé (en particulier vectorisé),
    2. du code de la curve fitting toolbox qui n'est lui-même pas optimisé,
    3. du choix du langage qui n'est pas compilé (matlab est interprété)

    As-tu essayé de coder une simple interpolation de Lagrange pour voir le temps que cela mettrait?

  7. #7
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 265
    Points : 352
    Points
    352
    Par défaut
    pour ce qui est de mon code en effet il n'est pas vectorisé.
    par contre pour la curve fitting toolbox l'algo de la decomposition QR de la matrice du systeme ne m'est pas accessible mais je pense que comme pour cpaps et spaps la routine doit etre en fortran donc vraisemblablement plutot rapide.
    Pour le langage je n'est pas trop le choix ^^ je doit avoir des resultat sous matlab avant de passer en c.

    j'ai trouvé quelque chose d'interessant hier sur internet ou on me parle d'interpolation multiquadratique.
    je n'est pas encore trouvé de bon article m'xpliquant la méthode si quelqu'un a des explication ( et/ou une référence vers un papier ) je suis preneur ^^

  8. #8
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Citation Envoyé par gpcbitnik38 Voir le message
    j'ai trouvé quelque chose d'interessant hier sur internet ou on me parle d'interpolation multiquadratique.
    je n'est pas encore trouvé de bon article m'xpliquant la méthode si quelqu'un a des explication ( et/ou une référence vers un papier ) je suis preneur ^^
    Et bien c'est une méthode interpolation basée sur un calcul de barycentre pondéré : P = somme { ai.Pi }. Les coefficients ai dépendent de la distance entre P (le point cherché) et chaque Pi (les points connus) selon une fonction quadratique. (cf. radial basis function)
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

Discussions similaires

  1. Interpolation d'un nuage de points
    Par Massploper dans le forum OpenCV
    Réponses: 2
    Dernier message: 29/11/2011, 14h22
  2. Interpolation nuage de points 2D à rectangle
    Par funkyplayer dans le forum MATLAB
    Réponses: 11
    Dernier message: 11/07/2010, 16h55
  3. Interpolation de surface 3D a partir d'un nuage de point (autre que la triangularisation) Matlab
    Par kriskadespe dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 23/07/2009, 17h02
  4. Interpolation à partir d'un nuage de points
    Par phy4me dans le forum Fortran
    Réponses: 12
    Dernier message: 04/04/2008, 20h46
  5. interpolation couleur entre nuage de points
    Par soubre dans le forum OpenGL
    Réponses: 2
    Dernier message: 02/07/2005, 15h52

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