J'ai un système de caméra stéréo calibré et des positions de pixels du même objet dans les vues des deux caméras. Existe-t-il un moyen simple de calculer les coordonnées du monde 3D de l'objet en utilisant OpenCv (et les paramètres intrinsèques/extrinsèques) ou dois-je traiter les lignes 3D générées pour les deux caméras et les transformations entre elles? Est-ce que CvReprojectImageTo3D peut vous aider? Merci beaucoupComment calculer les coordonnées 3D d'un point dans OpenCV
2
A
Répondre
1
Vous pouvez trianguler ces points. Pour chaque caméra, vous savez que x = IP * EP * X, avec des coordonnées d'écran homogènes x = 2D, IP = matrice de caméra intrinsèque, EP = matrice de caméra extrinsèque et coordonnées homogènes du monde X 3D. Cette formule 2 équations linéaires donné par caméra, entraînant un problème linéaire A * X = B. Pour chaque appareil, append à A:
Ps = IP * EP
A(row 1) = x.x * Ps(row 3) - Ps(row 1)
A(row 2) = x.y * Ps(row 3) - Ps(row 2)
B(row 1 & 2) = 0
Il y a 4 inconnues. Pour éviter 0 comme solution, ajoutez [0 0 0 1] à A et [1] à B.
La résolution peut être effectuée avec Jacobi method, ou quelque chose de similaire.
Je n'ai pas trouvé/ne connais pas de méthode dans OpenCV, mais la mise en œuvre de la méthode ci-dessus devrait être faisable si vous savez quelles matrices d'étalonnage sont.
Questions connexes
- 1. Les coordonnées du pixel vers la ligne 3D (opencv)
- 2. Comment calculer les coordonnées les plus proches d'un point donné à partir d'une liste de coordonnées
- 3. 3D Coordonnées après rotation
- 4. Comment trouver les coordonnées d'un point avec un autre point sur une image en utilisant OpenCV
- 5. Calculer les coordonnées
- 6. Comment calculer la profondeur du rectangle 3D?
- 7. Comment convertir les coordonnées spatiales 3D en coordonnées 2D?
- 8. Transformation de coordonnées dans OpenCV
- 9. opencv rvec aux coordonnées sphériques
- 10. Comment calculer les coordonnées d'image normalisées à partir des coordonnées de pixels?
- 11. Transformer les coordonnées de la souris en coordonnées 3D
- 12. Conversion de coordonnées 3D en coordonnées 2D
- 13. Trouver les coordonnées d'un point dans OpenLayers
- 14. Comment calculer Rayintersection 3D pour la cueillette
- 15. calculer la latitude/longitude Point
- 16. Point dans les coordonnées de la matrice
- 17. tracer un point 3d dans MatLab
- 18. déplacer un point dans l'espace 3D
- 19. Java/Graphics: Tracer les coordonnées 3D?
- 20. détection de visage opencv 2d à 3d
- 21. distance Calculer en coordonnées cartésiennes dans Mathematica
- 22. Un point dans l'espace 3D d'un angle
- 23. Actionscript 3D comment faire pivoter autour de coordonnées 3D
- 24. OpenCV avec reconstruction 3D stéréo
- 25. Conversion de coordonnées 3D en coordonnées d'écran dans OpenGL
- 26. Les coordonnées de la texture: comment les calculer?
- 27. Trouver toutes les coordonnées entre deux points (en 3d)
- 28. Comment calculer le point de l'arc elliptique
- 29. comment ajouter un point à un autre point dans opencv c
- 30. Comment éliminer les éléments de 3D Matrix avec opencv Library?