-
Créer un panorama
Bonjours a tous
Dans le cadre d'un projet je dois assembler les images issues d'une video.
J'arrive parfaitement à recuperer chaques frames de la video pour identifier les points d'interets et les retrouver dans la frame suivante.
Cependant je me demandais si il existait une fonction dans OpenCV pour calculer la matrice de transformation en ces deux frames. J'ai besoin des 3 deplacements et des 3 rotations afin de pouvoir assembler mes images et creer un panorama.
Merci
-
Bonjour
Je suis actuellement sur un sujet analogue. Dans les exemples de OpenCV il y a un exemple appellé "find_object.cpp", Il réalise tout ce que tu veux.
Pour être plus précis il cherche et trouve les points d'intérets de deux images, les mets en correspondance avec un appel à la fonction cvFindHomography qui renvoie la matrice d'homograhie.
C'est a dire A ton point de départ , H ta matrice et B ton point d'arrivée tu as pour tout point :*
A x H = B
(Je ne suis pas sur ici mais je pense, de toute façon l'esprit est la).
La matrice renvoyée est une matrice 3x3. Si quelqu'un passe par la et saurais me dire comment la transformer pour l'utiliser en OpenGL (qui lui prends des matrices 4x4) sans utiliser une autre bibliothèque, c'est le bienvenu.
-
merci jiii.fr
En effet je suis en train de tester cette fonction et meme si en utilisant la matrice d'homographie pour projeter mes images avec la fonction cvWarpPerspective j'ai un resultat coerent, j'ai un peu de mal a voir comment je vais pouvoir les positionner sans connaitre leur position relative.
Il me semble que la matrice 3x3 est de la forme R-tn mais je n'en suis pas sure. Par contre ce dont je suis sure c'est que je ne voit pas comment je vais en sortir le vecteur deplacement pour pouvoir recoller mes images.