pose_to_hom_mat ( : : CamPose : HomTransMat )

Convert external camera parameters into homogeneous transformation matrix.

pose_to_hom_mat is used to convert the external camera parameter (camera pose CamPose) into the equivalent homogeneous 4x3 transformation matrix HomTransMat.

This transformation matrix consists of a 3x3 rotation matrix and a translational vector. The values are given as a tupel HomTransMat in the following order: The first nine values describe the three columns of the rotation matrix and the last three values describe the translation.

The input tupel CamPose describes the external camera parameter by the 3D translational vector (in meter), the three rotation angles and the representation type of the 3D transform: Hereby the value 0 says, that the 3D rotation is performed before the 3D translation, that the three rotations are specified as angles (in degree), and that the rotation order is Gamma-Beta-Alpha, i.e., the first rotation is around the Z-axis, the second one around the new Y-axis, and the third one around the new X-axis. Other representation types for the 3D transform are not supported yet.


Parameters

CamPose (input_control)
number-array -> real / integer
External camera parameters.
Number of elements: 7

HomTransMat (output_control)
affin3d-array -> real
Homogeneous transformation matrix.
Number of elements: 12


Example
/* read internal camera parameters */
read_cam_par(::'campar.dat':CamParam) >
/* read initial camera pose */
read_cam_pose(::'campose.initial':StartCamPose) >
/* read 3D world points [WorldPointsX,WorldPointsY,WorldPointsZ] */
/* extract correspondent 2D image points [PixelsRow,PixelsColumn] */
/* calibration of external camera parameters: */
camera_calibration(::WorldPointsX,WorldPointsY,WorldPointsZ,
                   PixelsRow,PixelsColumn,CamParam,StartCamPose,6:
                   Dummy,FinalCamPose,Errors) >
/* transform FinalCamPose to 4x3 transformation matrix */
pose_to_hom_mat(::FinalCamPose:HomTransMatWorldCam).

Result

pose_to_hom_mat returns TRUE if all parameter values are correct. If necessary an exception is raised


Possible Predecessors

camera_calibration, read_cam_pose


Possible Successors

hom_3d_trans, hom_mat_invert, hom_mat_translate, hom_mat_rot, hom_mat_to_pose


See also

camera_calibration, write_cam_pose, read_cam_pose, hom_mat_to_pose, project_3d_point, inverse_project_pixel, hom_mat_rot, hom_mat_translate, hom_mat_invert, hom_3d_trans



Copyright © 1996-1997 MVTec Software GmbH