contour_to_world_plane_xld T_contour_to_world_plane_xld ContourToWorldPlaneXld ContourToWorldPlaneXld contour_to_world_plane_xld (Operator)
Name
contour_to_world_plane_xld T_contour_to_world_plane_xld ContourToWorldPlaneXld ContourToWorldPlaneXld contour_to_world_plane_xld — Transformieren einer XLD-Kontur in die Ebene z=0 eines Weltkoordinatensystems.
Signatur
void ContourToWorldPlaneXld (const HObject& Contours , HObject* ContoursTrans , const HTuple& CameraParam , const HTuple& WorldPose , const HTuple& Scale )
HXLDCont HXLDCont ::ContourToWorldPlaneXld (const HTuple& CameraParam , const HPose& WorldPose , const HTuple& Scale ) const
HXLDCont HXLDCont ::ContourToWorldPlaneXld (const HTuple& CameraParam , const HPose& WorldPose , const HString& Scale ) const
HXLDCont HXLDCont ::ContourToWorldPlaneXld (const HTuple& CameraParam , const HPose& WorldPose , const char* Scale ) const
HXLDCont HXLDCont ::ContourToWorldPlaneXld (const HTuple& CameraParam , const HPose& WorldPose , const wchar_t* Scale ) const
(Nur Windows)
HXLDCont HPose ::ContourToWorldPlaneXld (const HXLDCont& Contours , const HTuple& CameraParam , const HTuple& Scale ) const
HXLDCont HPose ::ContourToWorldPlaneXld (const HXLDCont& Contours , const HTuple& CameraParam , const HString& Scale ) const
HXLDCont HPose ::ContourToWorldPlaneXld (const HXLDCont& Contours , const HTuple& CameraParam , const char* Scale ) const
HXLDCont HPose ::ContourToWorldPlaneXld (const HXLDCont& Contours , const HTuple& CameraParam , const wchar_t* Scale ) const
(Nur Windows)
static void HOperatorSet .ContourToWorldPlaneXld (HObject contours , out HObject contoursTrans , HTuple cameraParam , HTuple worldPose , HTuple scale )
HXLDCont HXLDCont .ContourToWorldPlaneXld (HTuple cameraParam , HPose worldPose , HTuple scale )
HXLDCont HXLDCont .ContourToWorldPlaneXld (HTuple cameraParam , HPose worldPose , string scale )
HXLDCont HPose .ContourToWorldPlaneXld (HXLDCont contours , HTuple cameraParam , HTuple scale )
HXLDCont HPose .ContourToWorldPlaneXld (HXLDCont contours , HTuple cameraParam , string scale )
def contour_to_world_plane_xld (contours : HObject, camera_param : Sequence[Union[int, float, str]], world_pose : Sequence[Union[int, float]], scale : Union[int, float, str]) -> HObject
Beschreibung
contour_to_world_plane_xld contour_to_world_plane_xld ContourToWorldPlaneXld ContourToWorldPlaneXld ContourToWorldPlaneXld contour_to_world_plane_xld transformiert die Kontur Contours Contours Contours Contours contours contours
in die Ebene z=0 in einem Weltkoordinatensystem und liefert die nun in
3D-Koordinaten beschriebene Kontur in ContoursTrans ContoursTrans ContoursTrans ContoursTrans contoursTrans contours_trans zurück. Das
Weltkoordinatensystem (wcs ) wird gewählt, indem man seine 3D-Lage in
Kamerakoordinaten in WorldPose WorldPose WorldPose WorldPose worldPose world_pose übergibt.
Diese 3D-Lage wird in der Form
erwartet. Dabei steht
ccs für das Kamerakoordinatensystem, siehe auch
Transformationen / Posen und
„Solution Guide III-C - 3D Vision“.
In CameraParam CameraParam CameraParam CameraParam cameraParam camera_param müssen die internen Kameraparameter übergeben werden
(siehe Kalibrierung für ihre Reihenfolge und das zu
Grunde liegende Kameramodell).
In vielen Fällen sind CameraParam CameraParam CameraParam CameraParam cameraParam camera_param und WorldPose WorldPose WorldPose WorldPose worldPose world_pose das
Ergebnis einer vorherigen Kamerakalibrierung mit dem Operator
calibrate_cameras calibrate_cameras CalibrateCameras CalibrateCameras CalibrateCameras calibrate_cameras . Ein Beispiel findet sich weiter unten.
Die erhaltenen 3D-Koordinaten können mit dem Parameter Scale Scale Scale Scale scale scale
beliebig skaliert werden. Der Parameter Scale Scale Scale Scale scale scale entspricht dem
Verhältnis gewünschte Einheit/ursprüngliche Einheit . Die
ursprüngliche Einheit ist durch die Koordinaten des Kalibrierkörpers
gegeben. Falls dies, wie bei der Standard-Kalibrierplatte, Meter sind, ist es
auch möglich, die gewünschte Einheit direkt durch 'm' "m" "m" "m" "m" "m" ,
'cm' "cm" "cm" "cm" "cm" "cm" , 'mm' "mm" "mm" "mm" "mm" "mm" oder 'um' "um" "um" "um" "um" "um" anzugeben.
Intern berechnet der Operator zuerst den Sehstrahl vom Projektionszentrum der
Kamera zum Bildpunkt in Kamerakoordinaten, unter Berücksichtigung der
radialen Verzeichnung. Anschließend wird dieser Sehstrahl in das in
WorldPose WorldPose WorldPose WorldPose worldPose world_pose spezifizierte Weltkoordinatensystem transformiert. Der
Schnittpunkt der Ebene z=0 mit dem Sehstrahl ergibt dann die
3D-Koordinaten der transformierten Kontur ContoursTrans ContoursTrans ContoursTrans ContoursTrans contoursTrans contours_trans .
Ausführungsinformationen
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
Wird ohne Parallelisierung verarbeitet.
Parameter
Contours Contours Contours Contours contours contours (input_object) xld_cont(-array) → object HXLDCont HObject HXLDCont Hobject
Zu transformierende Eingabe-XLD-Konturen in
Bildkoordinaten.
ContoursTrans ContoursTrans ContoursTrans ContoursTrans contoursTrans contours_trans (output_object) xld_cont(-array) → object HXLDCont HObject HXLDCont Hobject *
Transformierte XLD-Konturen in Weltkoordinaten.
CameraParam CameraParam CameraParam CameraParam cameraParam camera_param (input_control) number-array → HTuple Sequence[Union[int, float, str]] HTuple Htuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*)
Interne Kameraparameter.
WorldPose WorldPose WorldPose WorldPose worldPose world_pose (input_control) pose → HPose , HTuple Sequence[Union[int, float]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
3D-Lage des Weltkoordinatensystems in
Kamerakoordinaten.
Parameteranzahl: 7
Scale Scale Scale Scale scale scale (input_control) number → HTuple Union[int, float, str] HTuple Htuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)
Maßstab oder Dimension.
Defaultwert:
'm'
"m"
"m"
"m"
"m"
"m"
Wertevorschläge: 'm' "m" "m" "m" "m" "m" , 'cm' "cm" "cm" "cm" "cm" "cm" , 'mm' "mm" "mm" "mm" "mm" "mm" , 'microns' "microns" "microns" "microns" "microns" "microns" , 'um' "um" "um" "um" "um" "um" , 1.0, 0.01, 0.001, 1.0e-6, 0.0254, 0.3048, 0.9144
Restriktion: Scale > 0
Beispiel (HDevelop)
* Perform camera calibration (with standard calibration plate).
calibrate_cameras (CalibDataID, Error)
get_calib_data (CalibDataID, 'camera', 0, 'params', CamParam)
* Get reference pose (pose 2 of calibration object 0).
get_calib_data (CalibDataID, 'calib_obj_pose', [0,2], 'pose', WorldPose)
* Compensate thickness of plate.
set_origin_pose(ObjInCameraPose, 0, 0, 0.0006, WorldPose)
* Transform contours into world coordinate system (unit mm).
contour_to_world_plane_xld(Contours, ContoursTrans, CamParam, \
WorldPose, 'mm')
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
contour_to_world_plane_xld contour_to_world_plane_xld ContourToWorldPlaneXld ContourToWorldPlaneXld ContourToWorldPlaneXld contour_to_world_plane_xld den Wert 2 (H_MSG_TRUE ).
Vorgänger
create_pose create_pose CreatePose CreatePose CreatePose create_pose ,
hom_mat3d_to_pose hom_mat3d_to_pose HomMat3dToPose HomMat3dToPose HomMat3dToPose hom_mat3d_to_pose ,
camera_calibration camera_calibration CameraCalibration CameraCalibration CameraCalibration camera_calibration ,
hand_eye_calibration hand_eye_calibration HandEyeCalibration HandEyeCalibration HandEyeCalibration hand_eye_calibration ,
set_origin_pose set_origin_pose SetOriginPose SetOriginPose SetOriginPose set_origin_pose
Siehe auch
image_points_to_world_plane image_points_to_world_plane ImagePointsToWorldPlane ImagePointsToWorldPlane ImagePointsToWorldPlane image_points_to_world_plane
Modul
Calibration