Operator Reference

cam_par_pose_to_hom_mat3dT_cam_par_pose_to_hom_mat3dCamParPoseToHomMat3dCamParPoseToHomMat3dcam_par_pose_to_hom_mat3d (Operator)

cam_par_pose_to_hom_mat3dT_cam_par_pose_to_hom_mat3dCamParPoseToHomMat3dCamParPoseToHomMat3dcam_par_pose_to_hom_mat3d — Convert internal camera parameters and a 3D pose into a 3×4 projection matrix.

Signature

cam_par_pose_to_hom_mat3d( : : CameraParam, Pose : HomMat3D)

Herror T_cam_par_pose_to_hom_mat3d(const Htuple CameraParam, const Htuple Pose, Htuple* HomMat3D)

void CamParPoseToHomMat3d(const HTuple& CameraParam, const HTuple& Pose, HTuple* HomMat3D)

HHomMat3D HCamPar::CamParPoseToHomMat3d(const HPose& Pose) const

HHomMat3D HPose::CamParPoseToHomMat3d(const HCamPar& CameraParam) const

static void HOperatorSet.CamParPoseToHomMat3d(HTuple cameraParam, HTuple pose, out HTuple homMat3D)

HHomMat3D HCamPar.CamParPoseToHomMat3d(HPose pose)

HHomMat3D HPose.CamParPoseToHomMat3d(HCamPar cameraParam)

def cam_par_pose_to_hom_mat3d(camera_param: Sequence[Union[int, float, str]], pose: Sequence[Union[int, float]]) -> Sequence[float]

Description

cam_par_pose_to_hom_mat3dcam_par_pose_to_hom_mat3dCamParPoseToHomMat3dCamParPoseToHomMat3dcam_par_pose_to_hom_mat3d converts the internal camera parameters CameraParamCameraParamCameraParamcameraParamcamera_param and the 3D pose PosePosePoseposepose, which represent the external camera parameters, into the 3×4 projection matrix HomMat3DHomMat3DHomMat3DhomMat3Dhom_mat_3d, which can be used to project points from 3D to 2D. The conversion can only be performed if the distortion coefficients in CameraParamCameraParamCameraParamcameraParamcamera_param are 0. If necessary, change_radial_distortion_cam_parchange_radial_distortion_cam_parChangeRadialDistortionCamParChangeRadialDistortionCamParchange_radial_distortion_cam_par must be used to achieve this. The internal camera parameters and the pose are typically obtained with calibrate_camerascalibrate_camerasCalibrateCamerasCalibrateCamerascalibrate_cameras.

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Processed without parallelization.

Parameters

CameraParamCameraParamCameraParamcameraParamcamera_param (input_control)  campar HCamPar, HTupleSequence[Union[int, float, str]]HTupleHtuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*)

Internal camera parameters.

PosePosePoseposepose (input_control)  pose HPose, HTupleSequence[Union[int, float]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

3D pose.

Number of elements: 7

HomMat3DHomMat3DHomMat3DhomMat3Dhom_mat_3d (output_control)  hom_mat3d HHomMat3D, HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

3×4 projection matrix.

Result

cam_par_pose_to_hom_mat3dcam_par_pose_to_hom_mat3dCamParPoseToHomMat3dCamParPoseToHomMat3dcam_par_pose_to_hom_mat3d returns 2 ( H_MSG_TRUE) if all parameter values are correct. If necessary, an exception is raised

Possible Predecessors

calibrate_camerascalibrate_camerasCalibrateCamerasCalibrateCamerascalibrate_cameras, change_radial_distortion_cam_parchange_radial_distortion_cam_parChangeRadialDistortionCamParChangeRadialDistortionCamParchange_radial_distortion_cam_par

Possible Successors

project_point_hom_mat3dproject_point_hom_mat3dProjectPointHomMat3dProjectPointHomMat3dproject_point_hom_mat3d, project_hom_point_hom_mat3dproject_hom_point_hom_mat3dProjectHomPointHomMat3dProjectHomPointHomMat3dproject_hom_point_hom_mat3d

See also

create_posecreate_poseCreatePoseCreatePosecreate_pose, hom_mat3d_to_posehom_mat3d_to_poseHomMat3dToPoseHomMat3dToPosehom_mat3d_to_pose, project_3d_pointproject_3d_pointProject3dPointProject3dPointproject_3d_point, get_line_of_sightget_line_of_sightGetLineOfSightGetLineOfSightget_line_of_sight

Module

Foundation