proj_hom_mat2d_to_poseT_proj_hom_mat2d_to_poseProjHomMat2dToPoseProjHomMat2dToPose (Operator)
Name
proj_hom_mat2d_to_poseT_proj_hom_mat2d_to_poseProjHomMat2dToPoseProjHomMat2dToPose — Berechnen einer Pose anhand der Homographie von Weltkoordinaten zu
Bildkoordinaten.
Signatur
Beschreibung
proj_hom_mat2d_to_poseproj_hom_mat2d_to_poseProjHomMat2dToPoseProjHomMat2dToPoseProjHomMat2dToPose berechnet eine Pose anhand der
HomographyHomographyHomographyHomographyhomography von 2D-Weltkoordinaten (Einheit Meter) zu 2D
Bildkoordinaten. Die HomographyHomographyHomographyHomographyhomography kann z.B. durch Verwendung
von vector_to_proj_hom_mat2dvector_to_proj_hom_mat2dVectorToProjHomMat2dVectorToProjHomMat2dVectorToProjHomMat2d erstellt werden und darf
keinesfalls mit Homographien aus 2D Matching Operatoren (z.B.
find_uncalib_descriptor_modelfind_uncalib_descriptor_modelFindUncalibDescriptorModelFindUncalibDescriptorModelFindUncalibDescriptorModel) verwechselt werden. Zur
Berechnung der Pose ist eine Kameramatrix (z.B. aus
cam_par_to_cam_matcam_par_to_cam_matCamParToCamMatCamParToCamMatCamParToCamMat) nötig, die in CameraMatrixCameraMatrixCameraMatrixCameraMatrixcameraMatrix
übergeben wird. Durch den Parameter MethodMethodMethodMethodmethod kann gewählt
werden, welches Vorgehen zur Berechnung der Pose verwendet wird. Im
Augenblick werden eine direkte Zerlegung (MethodMethodMethodMethodmethod =
'decomposition') und eine auf Singulärwertzerlegung basierende
(MethodMethodMethodMethodmethod = 'decomposition_svd') unterstützt. Die direkte
Zerlegung ('decomposition') liefert aufgrund numerischer Gründe im
Allgemeinen robustere Ergebnisse.
Die Abfolge von Aufrufen der Operatoren
vector_to_proj_hom_mat2dvector_to_proj_hom_mat2dVectorToProjHomMat2dVectorToProjHomMat2dVectorToProjHomMat2d und proj_hom_mat2d_to_poseproj_hom_mat2d_to_poseProjHomMat2dToPoseProjHomMat2dToPoseProjHomMat2dToPose
ist vector_to_posevector_to_poseVectorToPoseVectorToPoseVectorToPose für 2D Objekte ähnlich. Jedoch ist hier
keine Verfeinerung aufgrund von Redundanz möglich.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Parameter
HomographyHomographyHomographyHomographyhomography (input_control) hom_mat2d → HHomMat2D, HTupleHTupleHtuple (real) (double) (double) (double)
Die Homographie zwischen Welt- und Bildkoordinaten.
CameraMatrixCameraMatrixCameraMatrixCameraMatrixcameraMatrix (input_control) hom_mat2d → HHomMat2D, HTupleHTupleHtuple (real) (double) (double) (double)
Die Kamera Kalibriermatrix K.
MethodMethodMethodMethodmethod (input_control) string → HTupleHTupleHtuple (string) (string) (HString) (char*)
Art der Posenberechnung.
Defaultwert:
'decomposition'
"decomposition"
"decomposition"
"decomposition"
"decomposition"
Werteliste: 'decomposition'"decomposition""decomposition""decomposition""decomposition", 'decomposition_svd'"decomposition_svd""decomposition_svd""decomposition_svd""decomposition_svd"
PosePosePosePosepose (output_control) pose → HPose, HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Pose des 2D-Objekts.
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
proj_hom_mat2d_to_poseproj_hom_mat2d_to_poseProjHomMat2dToPoseProjHomMat2dToPoseProjHomMat2dToPose den Wert 2 (H_MSG_TRUE).
Vorgänger
image_points_to_world_planeimage_points_to_world_planeImagePointsToWorldPlaneImagePointsToWorldPlaneImagePointsToWorldPlane,
vector_to_proj_hom_mat2dvector_to_proj_hom_mat2dVectorToProjHomMat2dVectorToProjHomMat2dVectorToProjHomMat2d
Siehe auch
vector_to_proj_hom_mat2dvector_to_proj_hom_mat2dVectorToProjHomMat2dVectorToProjHomMat2dVectorToProjHomMat2d,
image_points_to_world_planeimage_points_to_world_planeImagePointsToWorldPlaneImagePointsToWorldPlaneImagePointsToWorldPlane,
vector_to_posevector_to_poseVectorToPoseVectorToPoseVectorToPose,
camera_calibrationcamera_calibrationCameraCalibrationCameraCalibrationCameraCalibration
Modul
Calibration