J'ai une application où je dois trouver une rotation à partir d'un ensemble de 15 points 3D ordonnés&indexés (X1, X2, ..., X15) vers un autre ensemble de 15 points avec le même indice (1 point initial correspondant à 1 point final).
J'ai lu beaucoup de choses sur la recherche de la rotation avec les angles d'Euler (mauvais pour certaines personnes), les quaternions ou en projetant le vecteur sur l'axe de base. Mais j'ai une contrainte supplémentaire : quelques points de mon ensemble final peuvent être erronés (i.e. avoir de mauvaises coordonnées) donc je veux discriminer les points qui demandent une rotation très éloignée de la rotation médiane.
Mon problème est le suivant : pour chaque ensemble de 3 points (non alignés) et leurs images, je peux calculer des quaternions (étant donné que la matrice de transformation ne sera pas une rotation pure, j'ai quelques calculs supplémentaires à faire mais c'est faisable). J'obtiens donc un ensemble de quaternions (455 maximum) et je veux enlever les mauvais.
Existe-t-il un moyen de trouver les points qui donnent des rotations éloignées de la rotation moyenne ? La "moyenne" et "l'écart-type" ont-ils une signification pour les quaternions ou dois-je calculer les angles d'Euler ? Et une fois que j'ai l'ensemble des "bons" quaternions, comment puis-je calculer la "moyenne" des quaternions/rotations ?
A la vôtre,
Ricola3D