Trouver un plan moyen

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
bird12358
Messages: 4
Enregistré le: 04 Nov 2013, 16:58

Trouver un plan moyen

par bird12358 » 13 Nov 2013, 18:32

Tout d'abord, bonjour a tous et à toutes, je suis nouveau sur ce forum. Je suis étudiant en informatique et j'ai un soucis.

Je suis en train de travailler sur un code permettant de trouver un plan commun a plusieurs données 3D.
J'ai trouvé un code en c sur internet mais je ne comprends pas bien les étapes de calculs.

J'explique les étapes que j'ai comprise:
- On cherche avec ransac : pour n itérations
---> On prend 3 points (A,B,C) au hasard et on calcule la barycentre Pmean
---> On calcul vCA vBA et on calcul le produit vectorielle vNormal qui est la normal du plan formé par ces 3 points.
---> Ensuite cherche l'erreur de cette ensemble:
>> Pour chaque points on calcule le vecteur vPmean = v( Pmean - P)
>> On calcule le produit scalaire vNormal*vPMean
>> on l'ajoute a l'erreur de l'ensemble
---> SI le cumule des erreurs est inférieurs à la meilleur erreur >> VnormalBest = Vnormal et VmeanBest = vmean

- Une fois que ransac est fini et que l'on a les VnormalBest et vmean on cherche les inliers.
- Après que l'on ait les inliers, on cherche le barycentre des points présents PInliersmeans = somme (points)/nbpoints.
- Après c'est dit que l'on cherche la covariance en construisant une matrice m3cov de taille 3x3
---> Pour cela, pour chaque Inlier, on calcul le vecteur formé par les points (PInliersmeans , Pinliers) = vImI
---> On crée une matrice 3x3 issue de la multiplication de vImI et de sa transposé M33 = vImI*vImIT
---> Et on ajoute à la m3cov (initialisé à une matrice identité) m3cov = m3cov +m33.

- Apres lorsque la boucle est faite il sort une normal issue de la décomposition singulière de m3cov ... :marteau:

C'est la que je ne pige pas,comment ca se fait qu'il peut obtenir la normal que je suppose être une normal moyenne a partir de m3cov??

Je suis conscient que ca fait un pavass mais si quelqu'un pouvait m'expliquer je lui serai très reconnaissant.

D'avance merci.



siger
Membre Complexe
Messages: 2705
Enregistré le: 16 Fév 2013, 19:56

par siger » 14 Nov 2013, 13:47

bonjour,

je crois qu'avant de chercher a comprendre comment fonctionne le programme, il vaudrait mieux determiner les etapes geometriques ou analytiques qui conduisent au résultat .....

pour ma part je ne trouve cela ni clair ni evident.
exemple: plan commun a plusieurs donnees 3D ???????
pourquoi le barycentre? ( un barycentre est defini par une ponderation) centre de gravité?
.....

bird12358
Messages: 4
Enregistré le: 04 Nov 2013, 16:58

par bird12358 » 14 Nov 2013, 13:57

Apparemment d'apres ce que j'ai compris du code, c'est qu'il utilise l'ACP pour déterminer le vecteur normal moyen du nuage de points.

Il trouve d'abord le centre du nuage de points Pm, puis pour chaque points P dans ce nuage il crée un vecteur vPPm qui est le vecteur normée formée par le point P et le centre du nuage de points Pm.

La matrice de covariance = vPPm' * vPPm;

Et pour trouver le vecteur normal à ce nuage de points, il décompose la matrice de covariance . Le vecteur propre associée a la valeur propre min est la normal au nuage de points...

C'est vrai mathématiquement? La valeur propre est un vecteur orthogonal au nuage de points?

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 29 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite