FAQ
Kurze Antworten auf häufige Fragen zu LumiScan AI Object Matching. Jeder Eintrag verweist auf die Seite mit den Details. Probleme und Fehlermeldungen sind unter Fehlerbehebung beschrieben.
Jeder Eintrag hat einen festen Anker (zum Beispiel #faq-run-inference). Um eine Fehlermeldung zu finden, durchsuchen Sie die Seite Fehlerbehebung danach.
|
Erste Schritte
Was macht LumiScan AI Object Matching, und was benötigt es?
- Antwort
-
Es erkennt mit einem trainierten neuronalen Netz Objekte in Bildern und meldet deren Position und Orientierung in Pixelkoordinaten. Es läuft auf ctrlX OS (ctrlX CORE oder ctrlX IPC) mit dem ctrlX Data Layer oder auf einem PC (Windows 11 oder Ubuntu 24.04) mit LumiScan Keryx und wird über den Data Layer gesteuert; die Knotenadressen sind auf beiden gleich. Es nimmt selbst keine Bilder auf; es liest Bilder, die eine andere Anwendung veröffentlicht, zum Beispiel der LumiScan Cam Driver (
hdvisionsystems/lumiscan-cam-driver/camera1/output/image). Das Modell wird mit dem LumiScan Annotation Framework und dem LumiScan Training Framework erstellt. - Mehr
Kann ich die TPU-Beschleunigung verwenden, und was sind die Voraussetzungen?
- Betrifft
-
ctrlX OS
- Antwort
-
Die TPU-Beschleunigung ist optional. Wird sie verwendet, muss die ctrlX CORE eine TPU enthalten, und es gelten die folgenden Versionen: ctrlX CORE X3 mit App-Version v1.2 oder neuer, ctrlX CORE X7 mit App-Version v1.1 oder neuer und App Hardware Support genau 2.6.2. Mit einer HAILO-TPU ist das Zurückstufen des Hardware Support auf v2.6.2 zwingend erforderlich. Setzen Sie in der JSON-Datei des Modells
provideraufHAILO. Auf einem PC verwenden Sie stattdessen eine NVIDIA-GPU mitprovideraufCUDA. - Mehr
Konfiguration
Wo sind die Konfigurationsdateien?
- Antwort
-
Im Ordner
lumiscan-ai-object-matching. Auf ctrlX OS öffnen Sie in der Weboberfläche von ctrlX OS Home > Manage app data, wählen File View und öffnen diesen Ordner. Auf einem PC ist es der Einstellungsordner der Anwendung: unter Windows%APP_RESOURCE_DIR%\etc\lumiscan-ai-object-matching, oder ohneAPP_RESOURCE_DIRC:\ProgramData\HD Vision Systems GmbH\LumiScan Vision Suite\lumiscan-ai-obj-mat\etc\lumiscan-ai-object-matching. Starten Sie die Anwendung neu, nachdem Sie eine Datei geändert haben. Die Einstellungen können auch auf dem Data Layer unterhdvisionsystems/lumiscan-ai-object-matching/system/settingsgelesen und geändert werden. Der Ordner enthält:-
ai-object-matching.json: Konfiguration der Anwendung (inputFileTypeLumiScan-CtrlX-AI-Object-Matching);moduleslistet die Modulkonfigurationsdateien auf. -
Eine Modulkonfigurationsdatei (zum Beispiel
ai-object-matching-module.json,inputFileTypeLumiScan-CtrlX-AI-Object-Matching-Module). Ihrnameist der Netzname, der in der Data-Layer-Adresse verwendet wird, undneuralNetworkConfigverweist auf die JSON-Datei des Modells. -
models: die Modelldateien.
-
- Mehr
-
Ordnerstruktur von LumiScan AI Object Matching, Einstellungen auf dem Data Layer
Was ist im Ordner models, und welche Modellparameter darf ich ändern?
- Antwort
-
Der Ordner models enthält zwei vom LumiScan Training Framework erzeugte Dateien, die zusammengehören: eine
.onnx-Datei mit dem trainierten Netz und eine.json-Datei mit den Erkennungsparametern. Nur diese JSON-Parameter sollten von Hand geändert werden; starten Sie die Anwendung danach neu:-
thresholdList: Mindestkonfidenz je Klasse, zwischen0.0und1.0(1.0= 100 %). -
pathToNetwork: Pfad zur.onnx-Datei, relativ zur JSON-Datei. -
provider:CPUoderHAILOauf ctrlX OS,CPUoderCUDA(eine NVIDIA-GPU) auf einem PC. -
deviceIndex: muss derzeit0sein.
-
- Mehr
Wie verwende ich ein neu trainiertes Modell?
- Antwort
-
Laden Sie das neue Modell zusammen mit seiner Beschreibungsdatei hoch (sie werden immer als eine Einheit behandelt); auf einem PC kopieren Sie beide in den Ordner
modelsdes Einstellungsordners. Stellen Sie sicher, dass die Modulkonfigurationsdatei inmodulesvonai-object-matching.jsonaufgeführt ist und dass ihrneuralNetworkConfigauf die JSON-Datei des neuen Modells verweist. Prüfen Sie die übrigen Moduleinstellungen, speichern Sie und starten Sie die Anwendung neu. - Mehr
Welche Bildformate und Bildquellen werden unterstützt?
- Antwort
-
Eine im Modul konfigurierte externe Bildadresse muss
<address>/data(Array vonuint8_t),<address>/heightund<address>/width(uint32_t) sowie<address>/pixel-type(Mono8oderRGB8) bereitstellen. Diese Schnittstelle ist für den LumiScan Cam Driver entworfen und getestet; für andere Quellen wird die Funktion nicht garantiert. Ist keine externe Bildadresse konfiguriert, legt das Modulhdvisionsystems/lumiscan-ai-object-matching/<network name>/input/imagean, wo Sie das Rohbild schreiben und seine Breite, Höhe und sein Pixelformat setzen. RGB-Daten sind als Höhe, Breite, Kanal angeordnet. Ab v2.2.0 kann ein Modul auch den Bild-Stream des Cam Driver inferieren (experimentell). - Mehr
-
Konfigurationsdatei eines Moduls, Inferenz auf einem Bild-Stream
Inferenz ausführen
Wie starte ich eine Inferenz und erhalte das Ergebnis?
- Antwort
-
Verwenden Sie den ready/request-Handshake auf
hdvisionsystems/lumiscan-ai-object-matching/<network name>/control/inference/: Warten Sie, bisreadyTrueist, merken Sie sich den Wert von<network name>/output/package-identifier, setzen SierequestaufTrue, warten Sie, bisreadyFalseist (die Inferenz läuft bereits), setzen SierequestaufFalseund warten Sie, bisreadywiederTrueist. Istoutput/package-identifierum eins gestiegen, war die Inferenz erfolgreich: Lesen Sie das Ergebnis unter<network name>/output/result.status/codeist am Ende jeder über den Handshake angeforderten Inferenz3, unabhängig davon, ob sie erfolgreich war. Ab v2.1.0 können Sie stattdessen einmal auf<network name>/control/inference/executeschreiben, was bis zum Abschluss der Operation blockiert;status/codebehält dann den Ausgang:0,100001oder-1. Nur ein Prozess darfrequestzur Zeit schreiben. - Mehr
-
Inferenz starten, Ausgang einer Inferenz, Release Notes: v2.1.0
Wie beschränke ich das Ergebnis auf bestimmte Klassen?
- Antwort
-
Schreiben Sie die Namen der aufzunehmenden Klassen auf
hdvisionsystems/lumiscan-ai-object-matching/<network name>/input/class-filters; lassen Sie das Array leer, um die Filterung zu deaktivieren. Mit der Standard-Klassenzuordnung istclass_indexim Ergebnis die Position der Klasse im class-names-Array des Netzes. Das Arrayinstanceskann Objekte verschiedener Klassen enthalten, das SPS-Programm muss also die benötigte Klasse auswählen. - Mehr
Ergebnisse in ctrlX PLC Engineering lesen
Wo bekomme ich das FlatBuffers-Schema für das Ergebnis?
- Betrifft
-
ctrlX OS
- Antwort
-
Der Ergebnisknoten
<network name>/output/resultist eine FlatBuffers-Nachricht, die durchobject_detection.fbsbeschrieben wird. Die Anwendung kopiert diese Datei bei jedem Start nachlumiscan-ai-object-matching/schemas/flatbuffers; laden Sie sie in Manage app data mit dem Download-Symbol in der Spalte Actions oder über WebDAV herunter. Bearbeiten Sie keine Dateien inschemas, da der Ordner bei jedem Start neu angelegt wird. Laden Sie das Schema nach einem Update der Anwendung erneut herunter und importieren Sie es erneut. - Mehr
Wie importiere ich das Schema in mein SPS-Projekt?
- Antwort
-
Sie benötigen ctrlX PLC Engineering 2.6 oder neuer und die Bibliotheken
CXA_DatalayerundCXA_Flatbuffersim Library Manager. Klicken Sie im Gerätebaum mit der rechten Maustaste auf Application, wählen Sie Import from FlatBuffers file… und wählen Sieobject_detection.fbs. Fehlt Import from FlatBuffers file… im Kontextmenü, fehlt die ctrlX-Data-Layer-Bibliothek: Installieren SieCXA_Datalayerüber Tools > Library Repository… und wiederholen Sie den Import. - Mehr
Wie lese ich Position und Score der besten Erkennung?
- Antwort
-
Nachdem die Inferenz abgeschlossen und erfolgreich war (Handshake:
output/package-identifierist um eins gestiegen;inference/execute:status/codeist0), lesen Sie den Ergebnisknoten mitDL_ReadNodeValueund übergebenGetDataundGetSizedesDL_NodeValueangetRootAsResultvonhdv_object_detection2d_Result. Die Instanzen sind nach Score sortiert (höchster zuerst);getBestIndex()liefert immer die beste. Von der Instanz liefertGetScore()den Score (0.0 bis 1.0) undgetOrientedBoundingBox()die Box mitGetCenterX()/GetCenterY()in Pixeln; der Winkel ist in Grad und kann negativ sein. Die Funktionsbausteine lesen den Puffer an Ort und Stelle, verwenden oder kopieren Sie die Werte also vor dem nächsten Lesen. - Mehr
Fehlerbehebung
Probleme und Fehlermeldungen sind Schritt für Schritt unter Fehlerbehebung beschrieben:
Lizenzierung und Support
Welche Lizenz benötige ich, und was passiert ohne Lizenz?
- Antwort
-
Die ctrlX-Lizenz für LumiScan AI Object Matching ist
SWL-W-XCx-OBJxMATCHxHDVSx-V2NN. Im ctrlX Store für ctrlX OS gekauft, ist sie eine ctrlX-Lizenz und benötigt keinen LumiScan Key. Auf ctrlX OS beendet sich die Anwendung kurz nach dem Start, wenn die Lizenz fehlt; der Grund steht im Systemprotokoll. Eine fehlende Lizenz wird als Status-4"MissingLicense"gemeldet. - Mehr
Wo finde ich weitere Antworten oder erhalte Support?
- Antwort
-
Siehe die LumiScan-FAQ der gesamten Dokumentation. Wenden Sie sich an den Customer Success von HD Vision Systems unter customer.success@hdvisionsystems.com oder +49 6221 6721905; für Lizenzen an licenses@hdvisionsystems.com.
- Mehr