set_calib_data_observ_poseT_set_calib_data_observ_poseSetCalibDataObservPoseSetCalibDataObservPoseset_calib_data_observ_pose (Operator)

Name

set_calib_data_observ_poseT_set_calib_data_observ_poseSetCalibDataObservPoseSetCalibDataObservPoseset_calib_data_observ_pose — Set observed calibration object poses in a calibration data model.

Signature

set_calib_data_observ_pose( : : CalibDataID, CameraIdx, CalibObjIdx, CalibObjPoseIdx, ObjInCameraPose : )

Herror T_set_calib_data_observ_pose(const Htuple CalibDataID, const Htuple CameraIdx, const Htuple CalibObjIdx, const Htuple CalibObjPoseIdx, const Htuple ObjInCameraPose)

void SetCalibDataObservPose(const HTuple& CalibDataID, const HTuple& CameraIdx, const HTuple& CalibObjIdx, const HTuple& CalibObjPoseIdx, const HTuple& ObjInCameraPose)

void HCalibData::SetCalibDataObservPose(Hlong CameraIdx, Hlong CalibObjIdx, Hlong CalibObjPoseIdx, const HPose& ObjInCameraPose) const

static void HOperatorSet.SetCalibDataObservPose(HTuple calibDataID, HTuple cameraIdx, HTuple calibObjIdx, HTuple calibObjPoseIdx, HTuple objInCameraPose)

void HCalibData.SetCalibDataObservPose(int cameraIdx, int calibObjIdx, int calibObjPoseIdx, HPose objInCameraPose)

def set_calib_data_observ_pose(calib_data_id: HHandle, camera_idx: int, calib_obj_idx: int, calib_obj_pose_idx: int, obj_in_camera_pose: Sequence[Union[float, int]]) -> None

Description

For a calibration data model of type CalibSetupCalibSetupCalibSetupCalibSetupcalibSetupcalib_setup='hand_eye_moving_cam'"hand_eye_moving_cam""hand_eye_moving_cam""hand_eye_moving_cam""hand_eye_moving_cam""hand_eye_moving_cam", 'hand_eye_stationary_cam'"hand_eye_stationary_cam""hand_eye_stationary_cam""hand_eye_stationary_cam""hand_eye_stationary_cam""hand_eye_stationary_cam", 'hand_eye_scara_moving_cam'"hand_eye_scara_moving_cam""hand_eye_scara_moving_cam""hand_eye_scara_moving_cam""hand_eye_scara_moving_cam""hand_eye_scara_moving_cam", or 'hand_eye_scara_stationary_cam'"hand_eye_scara_stationary_cam""hand_eye_scara_stationary_cam""hand_eye_scara_stationary_cam""hand_eye_scara_stationary_cam""hand_eye_scara_stationary_cam" with no calibration object (see create_calib_datacreate_calib_dataCreateCalibDataCreateCalibDataCreateCalibDatacreate_calib_data), the hand-eye calibration is based on so-called observations of an arbitrary object in the camera coordinate system. In the following this object will be called calibration object. Additionally, the corresponding poses of the robot tool in the robot base coordinate system must be known. With set_calib_data_observ_poseset_calib_data_observ_poseSetCalibDataObservPoseSetCalibDataObservPoseSetCalibDataObservPoseset_calib_data_observ_pose, you store an observation of the calibration object pose in the calibration data model CalibDataIDCalibDataIDCalibDataIDCalibDataIDcalibDataIDcalib_data_id. An observation of the calibration object pose consists of the following data:

CameraIdxCameraIdxCameraIdxCameraIdxcameraIdxcamera_idx:

Index of the observing camera

CalibObjIdxCalibObjIdxCalibObjIdxCalibObjIdxcalibObjIdxcalib_obj_idx:

Index of the observed calibration object

CalibObjPoseIdxCalibObjPoseIdxCalibObjPoseIdxCalibObjPoseIdxcalibObjPoseIdxcalib_obj_pose_idx:

Index of the observed pose of the calibration object. You can choose it freely, without following a strict order. If you specify an index that already exists for the calibration object CalibObjIdxCalibObjIdxCalibObjIdxCalibObjIdxcalibObjIdxcalib_obj_idx, the corresponding observation data is replaced by the new one.

ObjInCameraPoseObjInCameraPoseObjInCameraPoseObjInCameraPoseobjInCameraPoseobj_in_camera_pose:

Pose of the observed calibration object relative to observing camera.

Note that, since the model CalibDataIDCalibDataIDCalibDataIDCalibDataIDcalibDataIDcalib_data_id uses a general sensor and no calibration object (i.e., the model was created by create_calib_datacreate_calib_dataCreateCalibDataCreateCalibDataCreateCalibDatacreate_calib_data with NumCamerasNumCamerasNumCamerasNumCamerasnumCamerasnum_cameras=0 and NumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsnumCalibObjectsnum_calib_objects=0), both CameraIdxCameraIdxCameraIdxCameraIdxcameraIdxcamera_idx and CalibObjIdxCalibObjIdxCalibObjIdxCalibObjIdxcalibObjIdxcalib_obj_idx must be set to 0. If the model uses a camera and an calibration object (i.e., NumCamerasNumCamerasNumCamerasNumCamerasnumCamerasnum_cameras=1 and NumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsnumCalibObjectsnum_calib_objects=1), then find_calib_objectfind_calib_objectFindCalibObjectFindCalibObjectFindCalibObjectfind_calib_object or set_calib_data_observ_pointsset_calib_data_observ_pointsSetCalibDataObservPointsSetCalibDataObservPointsSetCalibDataObservPointsset_calib_data_observ_points must be used.

The observation pose data can be accessed later by calling get_calib_data_observ_poseget_calib_data_observ_poseGetCalibDataObservPoseGetCalibDataObservPoseGetCalibDataObservPoseget_calib_data_observ_pose using the same values for the arguments CameraIdxCameraIdxCameraIdxCameraIdxcameraIdxcamera_idx, CalibObjIdxCalibObjIdxCalibObjIdxCalibObjIdxcalibObjIdxcalib_obj_idx, and CalibObjPoseIdxCalibObjPoseIdxCalibObjPoseIdxCalibObjPoseIdxcalibObjPoseIdxcalib_obj_pose_idx.

Execution Information

This operator modifies the state of the following input parameter:

During execution of this operator, access to the value of this parameter must be synchronized if it is used across multiple threads.

Parameters

CalibDataIDCalibDataIDCalibDataIDCalibDataIDcalibDataIDcalib_data_id (input_control, state is modified)  calib_data HCalibData, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle of a calibration data model.

CameraIdxCameraIdxCameraIdxCameraIdxcameraIdxcamera_idx (input_control)  number HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Index of the observing camera.

Default value: 0

Suggested values: 0, 1, 2

CalibObjIdxCalibObjIdxCalibObjIdxCalibObjIdxcalibObjIdxcalib_obj_idx (input_control)  number HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Index of the calibration object.

Default value: 0

Suggested values: 0, 1, 2

CalibObjPoseIdxCalibObjPoseIdxCalibObjPoseIdxCalibObjPoseIdxcalibObjPoseIdxcalib_obj_pose_idx (input_control)  number HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Index of the observed calibration object.

Default value: 0

Suggested values: 0, 1, 2

Restriction: CalibObjPoseIdx >= 0

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

Pose of the observed calibration object relative to the observing camera.

Number of elements: 7

Possible Predecessors

find_marks_and_posefind_marks_and_poseFindMarksAndPoseFindMarksAndPoseFindMarksAndPosefind_marks_and_pose, set_calib_data_cam_paramset_calib_data_cam_paramSetCalibDataCamParamSetCalibDataCamParamSetCalibDataCamParamset_calib_data_cam_param, set_calib_data_calib_objectset_calib_data_calib_objectSetCalibDataCalibObjectSetCalibDataCalibObjectSetCalibDataCalibObjectset_calib_data_calib_object

Possible Successors

set_calib_dataset_calib_dataSetCalibDataSetCalibDataSetCalibDataset_calib_data, calibrate_camerascalibrate_camerasCalibrateCamerasCalibrateCamerasCalibrateCamerascalibrate_cameras

Alternatives

find_calib_objectfind_calib_objectFindCalibObjectFindCalibObjectFindCalibObjectfind_calib_object

Module

Calibration