Bonjour,
J'ai un petit problème :
Soit un objet constitué de points (à coordonnées entières et
positives) voisins.
Je souhaite connaitre les coordonnées du rectangle englobant
orienté relatif à l'objet.
La méthode que j'ai trouvé en ligne utilise le calcul de vecteurs
propres pour connaitre les axes directeurs de l'objet.
(cf. membres.lycos.fr/javamus/articles/obb.pdf page 5-6 et
http://www.essi.fr/~buffa/cours/synthese_image/PROJETS/2000/GestionCollisions3DX3D_Gourdin/rapport%20d%E9finitif.htm
chapitre 3 : "boite englobante non alignée aux axes")
Voici la methode :
Soit m2_x le moment d'ordre 2 en x : la variance en x
Soit m2_y le moment d'ordre 2 en x : la variance en y
Soit m2 la covariance.
Pour déterminer les axes directeurs de l'objet, il faut
calculer les vecteurs propres de la matrice de covariance
| m2_x m2 |
C = | |
| m2 m2_y |
Soit dans un premier temps les valeurs propres Lambda1
et Lambda2 de la matrice.
Pour obtenir les coordonnées du vecteur colonne (x, y)
relatif a la valeur propre Lambda (1 ou 2) on résout
le système suivant :
(m2_x - Lambda) . x + m2 . y = 0
m2 . x + (m2_y - Lambda) . y = 0
Ma question est toute bete :
1) Ce systeme a-t-il toujours une solution?
2) La solution est-elle unique?
3) Peut-on avoir m2 = 0 ?
4) Comment résoudre ce système correctement ?
Merci pour vos réponses éclairantes...
Fanny