KlassenKlassenKlassenKlassen | | | | Operatoren

create_calib_datacreate_calib_dataCreateCalibDatacreate_calib_dataCreateCalibDataCreateCalibData (Operator)

Name

create_calib_datacreate_calib_dataCreateCalibDatacreate_calib_dataCreateCalibDataCreateCalibData — Anlegen eines generischen HALCON-Kalibrierdatenmodells.

Signatur

create_calib_data( : : CalibSetup, NumCameras, NumCalibObjects : CalibDataID)

Herror create_calib_data(const char* CalibSetup, const Hlong NumCameras, const Hlong NumCalibObjects, Hlong* CalibDataID)

Herror T_create_calib_data(const Htuple CalibSetup, const Htuple NumCameras, const Htuple NumCalibObjects, Htuple* CalibDataID)

Herror create_calib_data(const HTuple& CalibSetup, const HTuple& NumCameras, const HTuple& NumCalibObjects, Hlong* CalibDataID)

void HCalibData::CreateCalibData(const HTuple& CalibSetup, const HTuple& NumCameras, const HTuple& NumCalibObjects)

void CreateCalibData(const HTuple& CalibSetup, const HTuple& NumCameras, const HTuple& NumCalibObjects, HTuple* CalibDataID)

void HCalibData::HCalibData(const HString& CalibSetup, Hlong NumCameras, Hlong NumCalibObjects)

void HCalibData::HCalibData(const char* CalibSetup, Hlong NumCameras, Hlong NumCalibObjects)

void HCalibData::CreateCalibData(const HString& CalibSetup, Hlong NumCameras, Hlong NumCalibObjects)

void HCalibData::CreateCalibData(const char* CalibSetup, Hlong NumCameras, Hlong NumCalibObjects)

void HOperatorSetX.CreateCalibData(
[in] VARIANT CalibSetup, [in] VARIANT NumCameras, [in] VARIANT NumCalibObjects, [out] VARIANT* CalibDataID)

void HCalibDataX.CreateCalibData(
[in] BSTR CalibSetup, [in] Hlong NumCameras, [in] Hlong NumCalibObjects)

static void HOperatorSet.CreateCalibData(HTuple calibSetup, HTuple numCameras, HTuple numCalibObjects, out HTuple calibDataID)

public HCalibData(string calibSetup, int numCameras, int numCalibObjects)

void HCalibData.CreateCalibData(string calibSetup, int numCameras, int numCalibObjects)

Beschreibung

Der Operator create_calib_datacreate_calib_dataCreateCalibDatacreate_calib_dataCreateCalibDataCreateCalibData erstellt ein generisches Modell für Kalibrierdaten. Das Modell speichert:

Im Parameter CalibSetupCalibSetupCalibSetupCalibSetupCalibSetupcalibSetup wird der generische Typ des Kalibrieraufbaus gesetzt. Derzeit werden drei Typen unterstützt. Ein Modell vom Typ 'calibration_object'"calibration_object""calibration_object""calibration_object""calibration_object""calibration_object" wird benutzt um die internen Kameraparameter und -posen von einer oder mehreren Kameras anhand der metrische Information, die aus Beobachtungen von Kalibrierkörpern gemessen wird, zu kalibrieren. Ein Modell vom Typ 'hand_eye_moving_cam'"hand_eye_moving_cam""hand_eye_moving_cam""hand_eye_moving_cam""hand_eye_moving_cam""hand_eye_moving_cam" oder 'hand_eye_stationary_cam'"hand_eye_stationary_cam""hand_eye_stationary_cam""hand_eye_stationary_cam""hand_eye_stationary_cam""hand_eye_stationary_cam" wird benutzt um eine Hand-Auge Kalibrierung basierend auf Beobachtungen eines Kalibrierkörpers und den zugehörigen Posen des Robotertools im Roboterbasiskoordinatensystem durchzuführen. NumCamerasNumCamerasNumCamerasNumCamerasNumCamerasnumCameras setzt die Anzahl der Kameras ein, die gleichzeitig im Aufbau kalibriert werden. NumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsnumCalibObjects setzt die Anzahl der Kalibrierkörper ein, die von den Kameras beobachtet werden. Bei Kamerakalibrierungen ist zu beachten, dass für telezentrische Flächenkameras, sowie für Zeilenkameras nur ein Kalibrierkörper unterstützt wird (NumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsnumCalibObjects=1). Bei Hand-Auge Kalibrierungen ist zu beachten, dass derzeit nur zwei Setups unterstützt werden: eine Kamera (NumCamerasNumCamerasNumCamerasNumCamerasNumCamerasnumCameras=1) und einem Kalibierkörper (NumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsnumCalibObjects=1) oder ein allgemeiner Sensor ohne Kalibrierobjekt (NumCamerasNumCamerasNumCamerasNumCamerasNumCamerasnumCameras=0, NumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsnumCalibObjects=0).

Der Ausgabeparameter CalibDataIDCalibDataIDCalibDataIDCalibDataIDCalibDataIDcalibDataID gibt einen Handle des neuen Kalibrierdatenmodell zurück. Dieser Handle wird im Anschluß weiteren Operatoren übergeben, um die Aufbaubeschreibung, die Kalibrierungseinstellungen und -data ins Modell zu speichern. Für Kamerakalibrierungen wird der Handle in calibrate_camerascalibrate_camerasCalibrateCamerascalibrate_camerasCalibrateCamerasCalibrateCameras eingegeben. Dieser führt die eigentliche Kamerakalibrierung aus und speichert die Kalibrierungsergebnisse wiederum im Modell. Für weitere Information über den Kalibrierungsprozess, siehe die Beschreibung vom Operator calibrate_camerascalibrate_camerasCalibrateCamerascalibrate_camerasCalibrateCamerasCalibrateCameras. Für Hand-Auge Kalibrierungen, wird der Handle an calibrate_hand_eyecalibrate_hand_eyeCalibrateHandEyecalibrate_hand_eyeCalibrateHandEyeCalibrateHandEye weitergegeben. Dieser führt die eigentliche Hand-Auge-Kalibrierung durch und speichert die Kalibrierungsergebnisse wiederum im Modell. Für weitere Information über den Kalibrierungsprozess, siehe die Beschreibung vom Operator calibrate_hand_eyecalibrate_hand_eyeCalibrateHandEyecalibrate_hand_eyeCalibrateHandEyeCalibrateHandEye.

Achtung

Ein Kalibrierdatenmodell CalibDataID kann nur von einem Thread aus verwendet werden. Verschiedene Kalibrierdatenmodelle können dagegen in unterschiedlichen Threads genutzt werden.

Parallelisierung

Parameter

CalibSetupCalibSetupCalibSetupCalibSetupCalibSetupcalibSetup (input_control)  string HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Generischer Typ des Kalibrieraufbaus.

Defaultwert: 'calibration_object' "calibration_object" "calibration_object" "calibration_object" "calibration_object" "calibration_object"

Werteliste: 'calibration_object'"calibration_object""calibration_object""calibration_object""calibration_object""calibration_object", '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"

NumCamerasNumCamerasNumCamerasNumCamerasNumCamerasnumCameras (input_control)  number HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Festgesetzte Anzahl der Kameras im Kalibrieraufbau.

Defaultwert: 1

Restriktion: NumCameras >= 0

NumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsNumCalibObjectsnumCalibObjects (input_control)  number HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Festgesetzte Anzahl der Kalibrierkörper im Kalibrieraufbau.

Defaultwert: 1

Restriktion: NumCalibObjects >= 0

CalibDataIDCalibDataIDCalibDataIDCalibDataIDCalibDataIDcalibDataID (output_control)  calib_data HCalibData, HTupleHTupleHCalibData, HTupleHCalibDataX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Handle des Kalibriermodells.

Nachfolger

set_calib_data_cam_paramset_calib_data_cam_paramSetCalibDataCamParamset_calib_data_cam_paramSetCalibDataCamParamSetCalibDataCamParam, set_calib_data_calib_objectset_calib_data_calib_objectSetCalibDataCalibObjectset_calib_data_calib_objectSetCalibDataCalibObjectSetCalibDataCalibObject

Modul

Calibration


KlassenKlassenKlassenKlassen | | | | Operatoren