object_model_3d_to_xyz T_object_model_3d_to_xyz ObjectModel3dToXyz ObjectModel3dToXyz (Operator)
Name
object_model_3d_to_xyz T_object_model_3d_to_xyz ObjectModel3dToXyz ObjectModel3dToXyz — Transformieren eines 3D-Objektmodells in Bilder.
Signatur
void ObjectModel3dToXyz (HObject* X , HObject* Y , HObject* Z , const HTuple& ObjectModel3D , const HTuple& Type , const HTuple& CamParam , const HTuple& Pose )
HImage HObjectModel3D ::ObjectModel3dToXyz (HImage* Y , HImage* Z , const HString& Type , const HCamPar& CamParam , const HPose& Pose ) const
HImage HObjectModel3D ::ObjectModel3dToXyz (HImage* Y , HImage* Z , const char* Type , const HCamPar& CamParam , const HPose& Pose ) const
HImage HObjectModel3D ::ObjectModel3dToXyz (HImage* Y , HImage* Z , const wchar_t* Type , const HCamPar& CamParam , const HPose& Pose ) const
(Nur Windows)
HImage HCamPar ::ObjectModel3dToXyz (HImage* Y , HImage* Z , const HObjectModel3D& ObjectModel3D , const HString& Type , const HPose& Pose ) const
HImage HCamPar ::ObjectModel3dToXyz (HImage* Y , HImage* Z , const HObjectModel3D& ObjectModel3D , const char* Type , const HPose& Pose ) const
HImage HCamPar ::ObjectModel3dToXyz (HImage* Y , HImage* Z , const HObjectModel3D& ObjectModel3D , const wchar_t* Type , const HPose& Pose ) const
(Nur Windows)
static void HOperatorSet .ObjectModel3dToXyz (out HObject x , out HObject y , out HObject z , HTuple objectModel3D , HTuple type , HTuple camParam , HTuple pose )
HImage HObjectModel3D .ObjectModel3dToXyz (out HImage y , out HImage z , string type , HCamPar camParam , HPose pose )
HImage HCamPar .ObjectModel3dToXyz (out HImage y , out HImage z , HObjectModel3D objectModel3D , string type , HPose pose )
Beschreibung
object_model_3d_to_xyz object_model_3d_to_xyz ObjectModel3dToXyz ObjectModel3dToXyz ObjectModel3dToXyz transformiert die Punkte des 3D-Objektmodells
ObjectModel3D ObjectModel3D ObjectModel3D ObjectModel3D objectModel3D in die drei Bilder X X X X x , Y Y Y Y y und
Z Z Z Z z .
Es gibt zwei mögliche Transformationsmethoden, die über den Parameter
Type Type Type Type type ausgewählt werden:
'cartesian' "cartesian" "cartesian" "cartesian" "cartesian" :
Die 3D-Punkte des Modells werden zunächst mit der übergebenen
Pose Pose Pose Pose pose transformiert. Anschließend werden sie mittels der
in CamParam CamParam CamParam CamParam camParam übergebenen Kameraparameter in ein Bild
projiziert.
Die internen Kameraparameter CamParam CamParam CamParam CamParam camParam beschreiben die
Art der Projektion (siehe Kalibrierung / Mehrbild ).
Die Pose Pose Pose Pose pose wird in der Form
erwartet. Dabei steht
ccs für das Kamerakoordinatensystem und
mcs für das Modellkoordinatensystem (ein 3D
Weltkoordinatensystem), siehe auch Transformationen / Posen und
„Solution Guide III-C - 3D Vision“.
Folglich beschreibt die Pose die Position und Orientierung des
Modellkoordinatensystems zum Kamerakoordinatensystem.
Die X-, Y- und Z-Koordinaten der transformierten Punkte werden jeweils
in das entsprechende Ausgabebild an die projizierte Stelle geschrieben.
Werden mehrere Punkte auf die selbe Bildkoordinate projiziert, so wird
nur der Punkt mit dem kleinsten Z-Wert in die Bilder geschrieben.
Die Größe der Bilder wird durch die Kameraparameter festgelegt.
Die zurückgegebenen Bilder zeigen das Objekt so wie es von der Kamera
unter der entsprechenden Pose gesehen werden würde.
'from_xyz_map' "from_xyz_map" "from_xyz_map" "from_xyz_map" "from_xyz_map" :
Diese Transformationsmethode ist nur möglich, wenn das 3D-Objektmodell
mit dem Operator xyz_to_object_model_3d xyz_to_object_model_3d XyzToObjectModel3d XyzToObjectModel3d XyzToObjectModel3d erstellt wurde.
Hier werden die 3D-Punkte an die Stelle der Bilder geschrieben von
der sie ursprünglich kamen. Dabei wird die in
xyz_to_object_model_3d xyz_to_object_model_3d XyzToObjectModel3d XyzToObjectModel3d XyzToObjectModel3d erstellte Abbildung der Punkte in
Bildkoordinaten verwendet.
Die Parameter CamParam CamParam CamParam CamParam camParam und Pose Pose Pose Pose pose werden ignoriert.
Die Größe der Bilder ist gleich der Bildgröße der ursprünglich an
xyz_to_object_model_3d xyz_to_object_model_3d XyzToObjectModel3d XyzToObjectModel3d XyzToObjectModel3d übergebenen Bilder und kann über
get_object_model_3d_params get_object_model_3d_params GetObjectModel3dParams GetObjectModel3dParams GetObjectModel3dParams mit 'mapping_size' "mapping_size" "mapping_size" "mapping_size" "mapping_size"
abgefragt werden.
Diese Transformationsmethode ist schneller als 'cartesian' "cartesian" "cartesian" "cartesian" "cartesian" .
Sie ist z.B. nützlich um das Ergebnis einer mit
segment_object_model_3d segment_object_model_3d SegmentObjectModel3d SegmentObjectModel3d SegmentObjectModel3d durchgeführten Segmentierung
anzuzeigen.
Achtung
Kameras mit hyperzentrischen Objektiven werden nicht unterstützt.
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
X X X X x (output_object) singlechannelimage → object HImage HImage Hobject * (real)
Bild mit den X-Koordinaten der 3D-Punkte.
Y Y Y Y y (output_object) singlechannelimage → object HImage HImage Hobject * (real)
Bild mit den Y-Koordinaten der 3D-Punkte.
Z Z Z Z z (output_object) singlechannelimage → object HImage HImage Hobject * (real)
Bild mit den Z-Koordinaten der 3D-Punkte.
ObjectModel3D ObjectModel3D ObjectModel3D ObjectModel3D objectModel3D (input_control) object_model_3d → HObjectModel3D , HTuple HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
Handle des zu transformierenden 3D-Objektmodells.
Type Type Type Type type (input_control) string → HTuple HTuple Htuple (string) (string ) (HString ) (char* )
Transformationsmethode.
Defaultwert:
'cartesian'
"cartesian"
"cartesian"
"cartesian"
"cartesian"
Werteliste: 'cartesian' "cartesian" "cartesian" "cartesian" "cartesian" , 'from_xyz_map' "from_xyz_map" "from_xyz_map" "from_xyz_map" "from_xyz_map"
CamParam CamParam CamParam CamParam camParam (input_control) campar → HCamPar , HTuple HTuple Htuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*)
Kameraparameter.
Pose Pose Pose Pose pose (input_control) pose → HPose , HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Pose des 3D-Objektmodells.
Parameteranzahl: Pose == 0 || Pose == 7 || Pose == 12
Ergebnis
object_model_3d_to_xyz object_model_3d_to_xyz ObjectModel3dToXyz ObjectModel3dToXyz ObjectModel3dToXyz liefert den Wert 2 (H_MSG_TRUE) wenn alle
Parameter korrekt sind.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
read_object_model_3d read_object_model_3d ReadObjectModel3d ReadObjectModel3d ReadObjectModel3d ,
xyz_to_object_model_3d xyz_to_object_model_3d XyzToObjectModel3d XyzToObjectModel3d XyzToObjectModel3d
Alternativen
project_object_model_3d project_object_model_3d ProjectObjectModel3d ProjectObjectModel3d ProjectObjectModel3d
Siehe auch
xyz_to_object_model_3d xyz_to_object_model_3d XyzToObjectModel3d XyzToObjectModel3d XyzToObjectModel3d ,
get_object_model_3d_params get_object_model_3d_params GetObjectModel3dParams GetObjectModel3dParams GetObjectModel3dParams
Modul
3D Metrology