2011-04-01 5 views
4

J'utilise opencv avec C, et j'essaie d'obtenir les paramètres extrinsèques (Rotation et translation) entre 2 caméras.Comment utiliser un échiquier pour trouver la rotation/translation entre 2 caméras

On me dit qu'un modèle en damier peut être utilisé pour calibrer, mais je ne trouve pas de bons échantillons à ce sujet. Comment vais-je faire cela?

modifier

Les suggestions sont données pour calibrer une seule caméra avec un damier. Comment trouveriez-vous la rotation et la traduction entre deux caméras étant donné les images en damier des deux vues?

Répondre

1

Une image d'une caméra est juste une projection d'un tas d'échantillons de couleur sur un plan. En supposant que la caméra elle-même crée des images avec des pixels carrés, la position possible d'un pixel donné est un vecteur de l'origine de la caméra à travers le plan sur lequel le pixel a été projeté. Nous nous référerons à ce plan comme le plan de l'image.

Un échantillon ne vous donne pas beaucoup d'informations. Deux échantillons vous en disent un peu plus - la position de la caméra par rapport au plan créé par trois points: les deux points d'échantillonnage et la position de la caméra. Et un troisième échantillon vous indique la position relative de la caméra dans le monde; ce sera un seul point dans l'espace. Si vous prenez les trois mêmes échantillons et les trouvez dans une autre image prise d'une caméra différente, vous pourrez déterminer la position relative des caméras à partir des trois échantillons (et leurs orientations basées sur les vecteurs droit et haut). du plan de l'image). À la bonne distance, vous devez connaître la distance entre les points d'échantillonnage réels. Dans le cas d'un damier, ce sont les dimensions physiques du damier.