| Operatoren |
create_calib_data — Anlegen eines generischen HALCON-Kalibrierdatenmodells.
create_calib_data( : : CalibSetup, NumCameras, NumCalibObjects : CalibDataID)
Der Operator create_calib_data erstellt ein generisches Modell für Kalibrierdaten. Das Modell speichert:
Beschreibung des Kameraaufbaus,
Einstellungen des Kalibrierverfahrens,
Kalibrierdaten, und
Ergebnisse der Kamerakalibrierung oder der Hand-Auge-Kalibrierung.
Im Parameter CalibSetup wird der generische Typ des Kalibrieraufbaus gesetzt. Derzeit werden drei Typen unterstützt. Ein Modell vom Typ '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' oder '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. NumCameras setzt die Anzahl der Kameras ein, die gleichzeitig im Aufbau kalibriert werden. NumCalibObjects 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 (NumCalibObjects=1). Bei Hand-Auge Kalibrierungen ist zu beachten, dass derzeit nur zwei Setups unterstützt werden: eine Kamera (NumCameras=1) und einem Kalibierkörper (NumCalibObjects=1) oder ein allgemeiner Sensor ohne Kalibrierobjekt (NumCameras=0, NumCalibObjects=0).
Der Ausgabeparameter CalibDataID 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_cameras 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_cameras. Für Hand-Auge Kalibrierungen, wird der Handle an calibrate_hand_eye 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_eye.
Ein Kalibrierdatenmodell CalibDataID kann nur von einem Thread aus verwendet werden. Verschiedene Kalibrierdatenmodelle können dagegen in unterschiedlichen Threads genutzt werden.
Generischer Typ des Kalibrieraufbaus.
Defaultwert: 'calibration_object'
Werteliste: 'calibration_object', 'hand_eye_moving_cam', 'hand_eye_stationary_cam'
Festgesetzte Anzahl der Kameras im Kalibrieraufbau.
Defaultwert: 1
Restriktion: NumCameras >= 0
Festgesetzte Anzahl der Kalibrierkörper im Kalibrieraufbau.
Defaultwert: 1
Restriktion: NumCalibObjects >= 0
Handle des Kalibriermodells.
set_calib_data_cam_param, set_calib_data_calib_object
Calibration
| Operatoren |