FAQ
Kurze Antworten auf häufige Fragen zu LumiScan Area Detector. Jeder Eintrag verweist auf die Seite mit den Details.
Jeder Eintrag hat einen festen Anker (zum Beispiel #faq-pixel-formats). Probleme, Fehlermeldungen und Statuscodes sind Schritt für Schritt unter Fehlerbehebung beschrieben.
|
Voraussetzungen und Einrichtung
Welche Bildquelle braucht der Area Detector?
- Antwort
-
Die Anwendung kommuniziert nicht selbst mit einer Kamera. Sie liest den Bildknoten einer anderen Anwendung, die auf demselben Gerät läuft - demselben ctrlX CORE oder ctrlX IPC oder demselben PC (ein Zugriff auf einen entfernten Data Layer wird nicht unterstützt), normalerweise LumiScan Cam Driver, zum Beispiel
hdvisionsystems/lumiscan-cam-driver/camera1/output/image. Jede Anwendung funktioniert, wenn ihr Bildknotendata(rohe, unkomprimierte uint8-Pixeldaten),width,heightundpixel-type(Name des GenICam-Pixelformats) bereitstellt. Ein Referenzbild ist nicht nötig. - Mehr
Welche Pixelformate werden unterstützt?
- Antwort
-
Mono8,Mono12,RGB8,RGB12,BGR8,BGR12,BayerGR8,BayerGR12,BayerRG8undBayerRG12. Bayer-Bilder werden vor der Erkennung in Farbe umgewandelt und 12-Bit-Bilder auf 8 Bit herunterskaliert; ein Schwellwert, der auf einem Format eingestellt wurde, gilt also auch für ein anderes. Jedes andere Pixelformat wird mit Statuscode-3abgelehnt. - Mehr
Erkennen und Messen
Wie führe ich eine Erkennung aus und lese das Ergebnis?
- Antwort
-
Setzen Sie
<module>/detect-area/input/input-image-address, schreiben Sie auf<module>/detect-area/execute(ein blockierender Aufruf) und prüfen Sie, dassoutput/status-code1ist. Lesen Sie dannoutput/result:blobsist nach Fläche sortiert,blobs[0]ist also die größte Region; jeder Blob hat seinen Mittelpunktx,y, seineareain Pixeln (gezählt, nie aus einer angepassten Form abgeleitet), seinlabelund ein umschließendes Rechteck.blob_countgibt die Anzahl der Regionen an undtotal_areadie Summe, die bei Bedeckungs-, Verunreinigungs- und Füllstandsprüfungen meist die Zahl ist, auf die Sie reagieren. - Mehr
-
Flächen erkennen, Anleitung: Teilefläche aus einem Kamerabild messen
Wie finde ich den richtigen Schwellwert?
- Antwort
-
Messen Sie das Bild, statt zu raten.
FIXEDist in dieser Version das einzigeinput/method; alles andere wird abgelehnt.-
Setzen Sie
system/analyse-scene/input/input-image-addressund schreiben Sie aufsystem/analyse-scene/execute. -
Lesen Sie
output/recommended-settings:node=value-Zeilen relativ zumdetect-area/input/eines Moduls, mit dem Schwellwert, der Angabe, welche Seite das Teil ist, und ob Löcher gefüllt werden sollen. Nichts wird für Sie geschrieben. -
Prüfen Sie den Rat mit
output/histogram: Der Schwellwert sollte im Tal zwischen dem Buckel des Teils und dem des Hintergrunds liegen. Ein Buckel bedeutet, dass kein Schwellwert funktionieren wird und die Beleuchtung korrigiert werden muss. -
Setzen Sie
<module>/detect-area/input/method-specific/fixed/level(0-255, Standard128).
-
- Mehr
Welche Vorverarbeitungsfilter gibt es, und was brauchen sie?
- Antwort
-
input/preprocess/methodwendet vor der Erkennung einen Filter an:NONE(Standard),LOG(Laplacian of Gaussian),DOG(Difference of Gaussians;sigma-firstmuss sich vonsigma-secondunterscheiden) oderDOH(Determinant of Hessian;kernel-sizemuss 1, 3, 5 oder 7 sein). Nur die Parameter der gewählten Methode werden gelesen und geprüft. Alle drei normalisieren ihre Ausgabe, der Schwellwert muss nach dem Einschalten eines Filters also eventuell neu gesetzt werden. - Mehr
Wie finde ich die Pixel, die zu einer gemeldeten Region gehören?
- Antwort
-
Jeder Durchlauf veröffentlicht
output/blob-labels, einen gewöhnlichen Bildknoten (data,width,height,pixel-type) inMono16, mit einer Regionsnummer pro Pixel und0für Hintergrund. Die Nummern sind dieblobs[].label-Werte inoutput/result; alle Pixel, die das Label eines Blobs enthalten, sind also diese Region; eine Binärmaske istlabels > 0. Das Bild umfasst den ganzen Frame in der Größe des Eingabebildes, und Labels werden nicht neu nummeriert. Es wird geleert, wenn der nächste Durchlauf beginnt. - Mehr
Wie schränke ich die Suche ein oder mache sie schneller?
- Antwort
-
Setzen Sie
input/crop/(startX,startY,width,height); eine Breite oder Höhe von null reicht bis zum rechten bzw. unteren Rand, lauter Nullen durchsuchen also das ganze Bild. Eine Region, die über einen Rand hinausreicht, wird abgelehnt und nicht beschnitten; die Meldung nennt die Eingabe und die Grenze, die sie verletzt hat. Für mehr Geschwindigkeit schränken Sie zuerst den Bereich ein und erhöhen dann den Schwellwert, damit Rauschen und Staub den Schwellwert nicht mehr überschreiten. - Mehr
Wie erkenne ich Flächen auf jedem Frame eines Kamera-Streams?
- Antwort
-
Lassen Sie ein Modul den Stream des Cam Driver abonnieren (experimentell): Schreiben Sie den Stream-Ordner der Kamera, zum Beispiel
hdvisionsystems/lumiscan-cam-driver/camera1/control/publish/output/stream, auf<module>/control/subscribe/input/address, setzen Siecontrol/subscribe/input/enableauftrueund schreiben Sie aufcontrol/subscribe/execute. Jeder Frame wird mit den Eingaben vondetect-areadurchsucht, und ein Ergebnis pro Frame wird aufcontrol/subscribe/output/stream/resultveröffentlicht. Das Label-Bild wird nicht gestreamt. Um das neueste Ergebnis als einfachesdetect-area/output/resultzu lesen, setzen Siecontrol/subscribe/input/keep-latest-outputauftrue. - Mehr
Statuscodes und Fehler
Wie erkenne ich, ob eine Erkennung erfolgreich war, und wo steht der Grund für einen Fehlschlag?
- Antwort
-
Prüfen Sie das Vorzeichen von
output/status-code: Größer als 0 ist Erfolg,0bedeutet, dass die Operation seit dem Start der Anwendung nicht ausgeführt wurde, kleiner als 0 bedeutet, dass sie fehlgeschlagen ist und nichts erzeugt hat; verwenden Sie das Ergebnis dann nicht. Der Grund steht aufoutput/status-text. Ein fehlgeschlagener Schreibvorgang aufexecuteantwortet nur mit einem Statuscode (über REST mit einem bloßen400), lesen Sie also anschließendoutput/status-text; der Text steht auch im Protokoll der Anwendung: auf ctrlX OS im ctrlX Logbook oderjournalctl, auf einem PC in der Konsolenausgabe der Anwendung. - Mehr
Fehlerbehebung
Probleme und Fehlermeldungen sind Schritt für Schritt unter Fehlerbehebung beschrieben:
Module, Lizenzierung und Support
Wo liegen die Einstellungsdateien?
- Antwort
-
Im Konfigurationsverzeichnis der Anwendung,
lumiscan-area-detector/: die Anwendungs-Einstellungsdateilumiscan-area-detector.jsonund eine<module-id>.jsonpro gespeichertem Modul.-
Auf ctrlX OS: in der aktiven Solution,
/var/snap/rexroth-solutions/common/solutions/activeConfiguration/lumiscan-area-detector. -
Auf einem PC (Windows):
%APP_RESOURCE_DIR%\etc\lumiscan-area-detector; ohneAPP_RESOURCE_DIRC:\ProgramData\HD Vision Systems GmbH\LumiScan Vision Suite\lumiscan-areadetect\etc\lumiscan-area-detector. -
Auf einem PC schreibt
lumiscan-areadetect --generate-settings <folder>ein Beispiel beider Dateien, mit ihren JSON-Schemas, in einen Ordner Ihrer Wahl.
-
- Mehr
Welche Lizenz brauche ich, und wie viele Module deckt sie ab?
- Antwort
-
Eine Lizenz deckt zehn Module ab; das elfte Modul belegt eine zweite Lizenz desselben Schlüssels, und ein Modul wird mit Status
-11abgelehnt, wenn keine Lizenz auf dem Gerät es abdeckt. Bezugswege:-
Bei HD Vision Systems gekauft: Die Lizenz liegt auf einem LumiScan Key (Windows 11 oder Ubuntu 24.04). Pro Gerät, auf dem die Software gleichzeitig läuft, wird ein LumiScan Key benötigt; Keys können zwischen Geräten getauscht werden.
-
Im ctrlX Store für Windows 11 gekauft: ctrlX WORKS plus ein LumiScan Key.
-
Im ctrlX Store für ctrlX OS (ctrlX CORE oder IPC) gekauft: eine ctrlX-Lizenz, kein Key.
-
- Mehr
Wo finde ich weitere Antworten oder 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