2012-02-23 4 views
0

Ok l'a résolu. Je vais d'abord utiliser un outil Matlab et l'échiquier pour obtenir les paramètres intrinsèques. Et le je vais utiliser cv :: solvePnP()C++ obtenir la position de la caméra dans les coordonnées du monde (opencv)

Ouais j'ai utilisé la recherche mais, malheureusement, cela ne m'a pas aidé beaucoup.

Comme le titre l'indique, je dois trouver les coordonnées de la caméra dans le monde réel. Mais je suis également confronté à quelques problèmes concernant les commandes opencv. Jusqu'à présent, je connais quelques points dans l'image et les coordonnées du monde correspondant. (pire cas 6 points sont connus)

Pour obtenir la caméra cooridnates je pensais d'utiliser la formule:

transp (x, y, z) = - transp (R) * t, où R et t sont les paramètres extrinsèques

alors maintenant mon problème est: comment calculer R et t? Je veux dire qu'une fonction opencv existe qui résout ce problème? Parce qu'il y a beaucoup de fonctions d'étalonnage de caméra. Ou dois-je d'abord calculer les paramètres intrinsèques?

edit: voici la fonction que je voulais dire: http://opencv.willowgarage.com/documentation/python/calib3d_camera_calibration_and_3d_reconstruction.html#calibratecamera2

mais je ne sais pas comment les paramètres doivent ressembler. Comment puis-je initialiser Mat ([[x1] [y1] [z1]] .... [[x6] [y6] [Z6]]) manuellement un par exemple 3x6 Matrice comme cv ::

Répondre

0

Le Les matrices R et T sont la rotation et les translations entre les deux vues de la caméra dans un système stéréo. la description du logiciel est destinée à une paire stéréo.

Les chapitres 11 et 12 du openCV book donnent de bonnes descriptions

Questions connexes