Einen Code lesen
Ein Lauf hat zwei Schritte: angeben, welches Bild gelesen werden soll, und dann execute aufrufen.
Alle Pfade unten sind relativ zum Basispfad der Anwendung, hdvisionsystems/lumiscan-dmc-reader.
1. Den Reader auf ein Bild richten
Schreiben Sie die Adresse des Bildknotens in input/image-address:
hdvisionsystems/lumiscan-cam-driver/camera1/output/image
Das ist die Adresse des Bildknotens selbst, nicht die seines Kindknotens data – der Reader hängt
beim Lesen /data, /width, /height und /pixel-type an.
Die Adresse wird gemerkt; sie muss also nur neu gesetzt werden, wenn sich die Bildquelle ändert.
2. execute aufrufen
Schreiben Sie einen leeren Wert in die Methode execute.
Der Aufruf ist blockierend: Er kehrt zurück, wenn die Suche abgeschlossen ist. Danach enthält
output/results jeden Data-Matrix-Code, der in diesem Bild gefunden wurde – siehe
Das
Ergebnis.
Was ein Lauf tut
-
Liest die Adresse aus
input/image-address. -
Liest
data,width,heightundpixel-typeunter dieser Adresse und wandelt die Pixel in ein Bild um – mit De-Bayering, wenn das Format es verlangt. -
Durchsucht das gesamte Bild nach ECC 200 Data-Matrix-Codes.
-
Schreibt jeden gefundenen Code in
output/results.
Es gibt keine Region of Interest und keine Teilsuche: Jeder Lauf liest den vollständigen aktuellen Inhalt des Bildknotens.
Wenn ein Lauf fehlschlägt
Ein Lauf schlägt fehl, wenn das Bild nicht gelesen werden kann – keine Adresse gesetzt, eine Adresse,
die sich nicht auflösen lässt, ein fehlender oder zu kurzer data-Puffer oder ein Pixelformat, das der
Reader nicht unterstützt. Der Grund wird in das Protokoll der Anwendung geschrieben; auf ctrlX OS ist
das das Systemprotokoll.
|
Ein fehlgeschlagener Lauf lässt Ein leeres |