2010-12-28 6 views
0

J'ai actuellement un ensemble de coordonnées cartésiennes 2D par ex. {(1,3), (2,2), (3,4)} Qui sera placé dans un réseau 2D, pour effectuer SVD correctement, la matrice serait-elle assemblée de telle sorte que les coordonnées forment les colonnes ou les lignes, par ex.Format de matrice SVD OpenCV

1 3 
2 2 
3 4 

ou

1 2 3 
3 2 4 

Je fais un peu de tâtonnement comparant à des exemples de SVD j'ai trouvé en ligne, la matrice résultante semble généralement être réduit à néant, avec quelques-unes des valeurs bousculés .

Pour clarifier davantage si j'avais une matrice E qui était MxN comme indiqué ici http://upload.wikimedia.org/wikipedia/commons/b/bb/Matrix.svg

Pour définir la matrice comme un tableau 2D serait-il Array [M] [N] ou Array [N] [M]

Je suppose que cela importe réellement en raison de l'arithmétique matricielle n'étant pas commutative? Quelqu'un peut-il vérifier cela?

Répondre

-1

This link décrit comment créer une matrice à partir d'un ensemble de vecteurs

Afin de créer une matrice par compoundage vecteur comme des structures que nous devons faire deux choses à la « vecteur intérieur »:

Nous devons prendre la transposition de sorte que il s'agit d'une ligne plutôt que d'une colonne. Nous avons besoin d'une opération de multiplication qui en fera un champ.

Toutefois, cela ne clarifie pas les normes utilisées pour OpenCV et SVD.