| Operatoren |
set_origin_pose — Verschieben des Ursprungs einer 3D-Lage (Pose).
set_origin_pose( : : PoseIn, DX, DY, DZ : PoseNewOrigin)
set_origin_pose verschiebt den Ursprung der 3D-Lage PoseIn um den Vektor, der durch die Parameter DX, DY und DZ gegeben ist, und liefert das Ergebnis in PoseNewOrigin zurück. Beachten Sie, dass diese Translation relativ zum lokalen Koordinatensystem der 3D-Lage selbst durchgeführt wird. Wenn z.B. PoseIn die Lage eines Objekts im Kamerakoordinatensystem beschreibt, erhält man PoseNewOrigin durch Verschiebung des Objektkoordinatensystems um DX entlang seiner eigenen x-Achse (und so weiter für die anderen Achsen), und nicht entlang der x-Achse des Kamerakoordinatensystems. Dies entspricht der folgenden Transformationskette:
set_origin_pose ist also eine Abkürzung für die folgende Sequenz von Operatoren:
pose_to_hom_mat3d (PoseIn, HomMat3DIn) hom_mat3d_translate_local (HomMat3DIn, DX, DY, DZ, HomMat3DNewOrigin) hom_mat3d_to_pose (HomMat3DNewOrigin, PoseNewOrigin)
Eine typische Anwendung dieses Operators ist, wenn man ein Weltkoordinatensystem definiert, indem man die Standard-Kalibrierplatte auf die Messebene legt. In diesem Fall entsprechen die von camera_calibration zurückgelieferten externen Kameraparameter PoseIn einem Koordinatensystem, das über der Messebene liegt, da das Koordinatensystem der Kalibrierplatte auf deren Oberfläche liegt und die Platte eine gewisse Dicke hat. Zur Korrektur ruft man set_origin_pose mit dem Translationsvektor (0,0,D) auf, wobei D der Dicke der Kalibrierplatte entspricht.
Neue 3D-Lage nach Verschiebung des Ursprungs.
Parameteranzahl: 7
Sind die Parameterwerte korrekt, dann liefert set_origin_pose den Wert 2 (H_MSG_TRUE).
create_pose, hom_mat3d_to_pose, camera_calibration, hand_eye_calibration
write_pose, pose_to_hom_mat3d, image_points_to_world_plane, contour_to_world_plane_xld
Foundation
| Operatoren |