open_scene_engine — Startet und verbindet sich zur Scene Engine, dem Tool zur
Generierung synthetischer Daten.
open_scene_engine( : : GenParamName, GenParamValue : SceneEngine)
Der Operator open_scene_engine startet das Datengenerierungs-Tool
Scene Engine als Prozess und verbindet sich mit der gestarteten Instanz.
Das Starten und Verbinden kann über die generischen Parameter
GenParamName und GenParamValue konfiguriert werden.
Der gestartete Prozess wird automatisch beendet, wenn das in
SceneEngine zurückgegebene Handle gelöscht wird.
Dies ist üblicherweise der Fall, wenn kein Tupel mehr dieses Handle
enthält.
Alternativ kann der Prozess manuell beendet werden, in dem
clear_handle auf das SceneEngine-Handle aufgerufen
wird.
Der Operator sucht die ausführbare Datei an den folgenden Orten und verwendet den ersten Treffer.
Der Wert des generischen Parameters 'executable' (siehe unten).
Die Umgebungsvariable HALCON_SCENE_ENGINE, welche üblicherweise bei der Installation der Scene Engine gesetzt wird. Es ist zu beachten, dass der Wert von HALCON_SCENE_ENGINE am Ende '/scene_engine' (unter Linux) bzw. '/scene_engine.exe' (unter Windows) enthalten muss.
Die Datei 'run_scene_engine.sh' (unter Linux) bzw.
'scene_engine.exe' (unter Windows) im
Standardinstallationspfad $HALCONROOT/../SceneEngine-25.11.
Zu beachten ist, dass das Tool korrekt installiert sein muss.
Dies kann beispielsweise über den MVTec Software Manager (SOM) geschehen.
Insbesondere müssen die notwendigen Bibliotheken für das Tool auffindbar
sein. Unter Linux erfordert das die Erweiterung der Umgebungsvariable
LD_LIBRARY_PATH um das Verzeichnis /lib der Scene
Engine Installation:
LD_LIBRARY_PATH=/path/to/SceneEngine/lib:$LD_LIBRARY_PATH
Alternativ kann das Skript 'run_scene_engine.sh' der Scene Engine Installation als Wert des generischen Parameters 'executable' verwendet werden (siehe unten).
Assets sind 3D-Modelle, Texturen und Environment Maps,
welche verwendet werden, um die generierten Bilder vielfältiger und
realistischer zu machen.
Die Assets müssen korrekt installiert sein, beispielsweise über
den MVTec Software Manager (SOM).
Die Umgebungsvariable HALCON_ASSET_DIR muss auf den
Ordner der installierten Assets gesetzt sein.
Alternativ kann der Ordner der Assets über den Operator
set_scene_engine_param gesetzt werden.
Um zu prüfen, dass die Assets korrekt von der Scene Engine
gefunden wurden, kann der Operator get_scene_engine_param
mit dem Argument 'assets' verwendet werden.
Der Operator unterstützt die folgenden generischen Parameter, welche
als Paare von Parametername und Parameterwert in GenParamName
und GenParamValue übergeben werden können.
'debug_log_file': Ein String, der den Dateinamen und Pfad einer Debugdatei angibt, beispielsweise 'c:/temp/scene_engine.log'. Ist ein Wert gesetzt, legt die geöffnete Scene Engine Instanz die entsprechende Datei an und schreibt Debuginformationen hinein.
'executable': Ein String, welcher den Ort der ausführbaren Datei der Scene Engine beinhaltet. Es ist zu beachten, dass der Wert von 'executable' am Ende '/scene_engine' (unter Linux) bzw. '/scene_engine.exe' (unter Windows) enthalten muss. Unter Linux ist es auch möglich, das Skript 'run_scene_engine.sh' der Scene Engine Installation als Wert von 'executable' zu verwenden, sofern auch der vollständige Pfad zum Skript angegeben wird. Dieses Skript hilft beim korrekten Setzen der Umgebungsvariablen.
Default: Siehe oben für die Standardsuchpfade.
'timeout': Nach dem Starten des Prozesses wartet der Operator 'timeout' Sekunden auf die Verbindung durch den gestarteten Prozess. Falls sich der Prozess nicht innerhalb dieses Zeitraums verbindet, wird ein Fehler zurückgegeben. Wird der Timeout auf 0 gesetzt, bricht der Operator den Verbindungsversuch nicht ab.
Default: 60.0
Dieser Operator liefert ein Handle zurück. Es ist zu beachten, dass der Zustand einer Instanz dieses Handletyps durch bestimmte Operatoren geändert werden kann, obwohl das Handle als Eingabeparameter in diesen Operatoren verwendet wird.
GenParamName (input_control) attribute.name(-array) → (string)
Parameternamen.
Default: []
Wertevorschläge: 'debug_log_file', 'executable', 'timeout'
GenParamValue (input_control) attribute.value(-array) → (string / real / integer)
Parameterwerte.
Default: []
Wertevorschläge: 'c:/temp/scene_engine.log', '/tmp/scene_engine.log', 'scene_engine', 'scene_engine.exe', 10.0, 0
SceneEngine (output_control) scene_engine → (handle)
Handle der Scene Engine-Verbindung.
Sind die Parameterwerte korrekt, dann liefert
open_scene_engine den Wert 2 (
H_MSG_TRUE)
. Gegebenenfalls wird eine
Fehlerbehandlung durchgeführt.
set_scene_engine_param,
run_scene_engine
render_object_model_3d,
disp_object_model_3d
3D Metrology