J'ai une caméra calibrée et j'ai les paramètres intrinsèques. J'ai également les paramètres extrinsèques relatifs à un point (l'origine du monde) sur une surface plane dans le monde réel. Ce point que j'ai défini comme origine dans les coordonnées du monde réel [0,0,0] avec une normale de [0,0,1].
À partir de ces paramètres extrinsèques, je peux déterminer la position et la rotation de la caméra dans les coordonnées 3D du plan mondial en utilisant ceci ici: http://en.wikipedia.org/wiki/Camera_resectioning
Maintenant, j'ai un deuxième point dont j'ai extrait les coordonnées de l'image pour [x, y]. Comment puis-je maintenant obtenir la position 3D de ce point dans le système de coordonnées mondial?
Je pense que l'intuition ici est que je dois tracer un rayon qui va du centre optique de la caméra (dont j'ai maintenant la position 3D comme décrit ci-dessus), à travers le plan d'image [x, y] de la caméra, puis à travers mon avion du monde réel que j'ai défini en haut.
Maintenant, je peux intersecter un rayon 3D de coordonnées mondiales avec un plan comme je le sais normal et pointer sur ce plan. Ce que je ne comprends pas, c'est comment je trouve la position et la direction 3D quand il quitte le plan d'image à travers un pixel. C'est la transformation à travers différents systèmes de coordonnées qui me déroute.