set_calib_data_observ_pointsT_set_calib_data_observ_pointsSetCalibDataObservPointsSetCalibDataObservPointsset_calib_data_observ_points (Operator)

Name

set_calib_data_observ_pointsT_set_calib_data_observ_pointsSetCalibDataObservPointsSetCalibDataObservPointsset_calib_data_observ_points — Set point-based observation data in a calibration data model.

Signature

set_calib_data_observ_points( : : CalibDataID, CameraIdx, CalibObjIdx, CalibObjPoseIdx, Row, Column, Index, Pose : )

Herror T_set_calib_data_observ_points(const Htuple CalibDataID, const Htuple CameraIdx, const Htuple CalibObjIdx, const Htuple CalibObjPoseIdx, const Htuple Row, const Htuple Column, const Htuple Index, const Htuple Pose)

void SetCalibDataObservPoints(const HTuple& CalibDataID, const HTuple& CameraIdx, const HTuple& CalibObjIdx, const HTuple& CalibObjPoseIdx, const HTuple& Row, const HTuple& Column, const HTuple& Index, const HTuple& Pose)

void HCalibData::SetCalibDataObservPoints(Hlong CameraIdx, Hlong CalibObjIdx, Hlong CalibObjPoseIdx, const HTuple& Row, const HTuple& Column, const HTuple& Index, const HTuple& Pose) const

static void HOperatorSet.SetCalibDataObservPoints(HTuple calibDataID, HTuple cameraIdx, HTuple calibObjIdx, HTuple calibObjPoseIdx, HTuple row, HTuple column, HTuple index, HTuple pose)

void HCalibData.SetCalibDataObservPoints(int cameraIdx, int calibObjIdx, int calibObjPoseIdx, HTuple row, HTuple column, HTuple index, HTuple pose)

def set_calib_data_observ_points(calib_data_id: HHandle, camera_idx: int, calib_obj_idx: int, calib_obj_pose_idx: int, row: Sequence[Union[float, int]], column: Sequence[Union[float, int]], index: Sequence[Union[int, str]], pose: Sequence[Union[float, int]]) -> None

Description

For a calibration model of type CalibSetupCalibSetupCalibSetupCalibSetupcalibSetupcalib_setup='calibration_object'"calibration_object""calibration_object""calibration_object""calibration_object""calibration_object" (see create_calib_datacreate_calib_dataCreateCalibDataCreateCalibDataCreateCalibDatacreate_calib_data), cameras are calibrated based on so-called observations of calibration objects. With set_calib_data_observ_pointsset_calib_data_observ_pointsSetCalibDataObservPointsSetCalibDataObservPointsSetCalibDataObservPointsset_calib_data_observ_points, you store such an observation in the calibration data model CalibDataIDCalibDataIDCalibDataIDCalibDataIDcalibDataIDcalib_data_id. An observation 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. Of course, the same index can be assigned to poses of different calibration objects.

RowRowRowRowrowrow, ColumnColumnColumnColumncolumncolumn, IndexIndexIndexIndexindexindex:

Extracted image coordinates and corresponding index of the calibration marks of the calibration object. RowRowRowRowrowrow and ColumnColumnColumnColumncolumncolumn are tuples containing the same number of elements. IndexIndexIndexIndexindexindex can either contain a tuple (of the same length) or the value 'all'"all""all""all""all""all", indicating that the points [Row, Column] correspond in a one-to-one relation to the calibration marks of the calibration object. If the number of row or column coordinates does not match the number of calibration marks, a corresponding error message is returned.

PosePosePosePoseposepose:

A roughly estimated pose of the observed calibration object relative to observing camera.

If you are using the HALCON calibration plate, it is recommended to use find_calib_objectfind_calib_objectFindCalibObjectFindCalibObjectFindCalibObjectfind_calib_object instead of set_calib_data_observ_pointsset_calib_data_observ_pointsSetCalibDataObservPointsSetCalibDataObservPointsSetCalibDataObservPointsset_calib_data_observ_points, since the contour information, which it stores in the calibration data model, enables a more precise calibration procedure with calibrate_camerascalibrate_camerasCalibrateCamerasCalibrateCamerasCalibrateCamerascalibrate_cameras.

The observation data can be accessed later by calling get_calib_data_observ_pointsget_calib_data_observ_pointsGetCalibDataObservPointsGetCalibDataObservPointsGetCalibDataObservPointsget_calib_data_observ_points 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: 0

Suggested values: 0, 1, 2

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

Index of the calibration object.

Default: 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: 0

Suggested values: 0, 1, 2

Restriction: CalibObjPoseIdx >= 0

RowRowRowRowrowrow (input_control)  number-array HTupleSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Row coordinates of the extracted points.

ColumnColumnColumnColumncolumncolumn (input_control)  number-array HTupleSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Column coordinates of the extracted points.

IndexIndexIndexIndexindexindex (input_control)  number-array HTupleSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

Correspondence of the extracted points to the calibration marks of the observed calibration object.

Default: 'all' "all" "all" "all" "all" "all"

Suggested values: 'all'"all""all""all""all""all", 0, 1, 2

PosePosePosePoseposepose (input_control)  number-array HTupleSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Roughly estimated 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