FAQ

Kurze Antworten auf häufige Fragen zu LumiScan Text Reader. 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-read-text). Um eine Fehlermeldung zu finden, durchsuchen Sie die Seite Fehlerbehebung danach.

Voraussetzungen und Einrichtung

Welche Bildquelle und welche Pixelformate braucht der Text Reader?

Antwort

Die Anwendung liest den Bildknoten einer anderen Anwendung, die auf demselben Gerät läuft - derselben ctrlX CORE oder demselben ctrlX IPC oder demselben PC (ein entfernter Data-Layer-Zugriff wird nicht unterstützt), normalerweise LumiScan Cam Driver, zum Beispiel hdvisionsystems/lumiscan-cam-driver/camera1/output/image. Der Knoten muss data (rohe, unkomprimierte uint8-Pixeldaten), width, height und pixel-type bereitstellen. Unterstützte Pixelformate sind Mono8, Mono12, RGB8, RGB12, BGR8, BGR12, BayerGR8, BayerGR12, BayerRG8 und BayerRG12; Bayer-Bilder werden vor dem Lesen in Farbe umgewandelt und 12-Bit-Bilder auf 8 Bit herunterskaliert. Jedes andere Pixelformat wird mit Statuscode -3 abgelehnt.

Mehr

Voraussetzungen

Welche Bildqualität braucht OCR?

Antwort

Keine Einstellung holt Text zurück, den die Kamera nicht erfasst hat. Als Faustregel:

  • Zeichen mindestens 20 Pixel hoch, bei kleinem oder verrauschtem Druck 30 oder mehr;

  • guter Kontrast zwischen Kennzeichnung und Hintergrund;

  • Text im Fokus und nicht von der Beleuchtung überstrahlt;

  • Text ungefähr aufrecht, sofern Sie kein Layout mit Orientierungserkennung verwenden.

Mehr

Voraussetzungen

Text lesen

Wie führe ich einen Lesevorgang durch und werte das Ergebnis aus?

Antwort

Setzen Sie <module>/read-text/input/input-image-address, schreiben Sie auf <module>/read-text/execute (ein blockierender Aufruf) und prüfen Sie output/status-code. Bei 1 lesen Sie output/result: text ist das gesamte Leseergebnis, wie die Engine es angeordnet hat, und wird nicht nach min-score gefiltert; words[] enthält jedes Wort mit seinem score und seinem Rahmen, gefiltert nach min-score; word_count, mean_score sowie language, engine und layout, wie sie tatsächlich verwendet wurden, werden ebenfalls gemeldet. In der Produktion prüfen Sie word_count und words[0].score, bevor Sie words[0].text mit dem erwarteten Wert vergleichen.

Mehr

Text lesen, Anleitung: Eine Bauteilkennzeichnung aus einem Kamerabild lesen

Sprachmodelle

Wie lese ich eine andere Sprache?

Antwort

Englisch (eng) und osd werden mit der Anwendung ausgeliefert.

  • Laden Sie die .traineddata-Datei von github.com/tesseract-ocr/tessdata_fast (kleiner und schneller, der richtige Standard für Bauteilkennzeichnungen) oder tessdata_best herunter.

  • Laden Sie sie, ohne sie umzubenennen, in das auf system/tessdata-dir genannte Verzeichnis hoch: auf ctrlX OS über die ctrlX-Dateischnittstelle, auf einem PC, indem Sie die Datei dorthin kopieren.

  • Setzen Sie <module>/read-text/input/language auf den Dateinamen ohne .traineddata, zum Beispiel deu. Die Codes haben nicht alle drei Buchstaben (zum Beispiel chi_sim).

  • Das Modell ist beim allernächsten Lesevorgang nutzbar, ohne Neustart. Hochladen entfernt nie die mitgelieferten Modelle.

Mehr

Sprachmodelle

Ich habe eine Modelldatei ersetzt - verwendet der Leser die neue?

Antwort

Ja, ab dem nächsten read-text, ohne Neustart. Die Erkennungs-Engine wird einmal pro Modul aufgebaut und behalten, aber vor jedem Lesen prüft der Leser Größe und Zeitstempel der Modelldatei und vergleicht, wenn sich eines davon geändert hat, ihren Inhalt mit dem, aus dem die Engine aufgebaut wurde. Ein geändertes Modell wird erneut geladen; das Protokoll meldet The '<language>' model in '<directory>' changed on disk; loading it again. Auch ein Bild-Stream liest das nächste Bild mit dem Modell, wie es auf dem Datenträger liegt.

Ursache

Schlägt ein Lesevorgang direkt nach dem Ersetzen mit -7 fehl, konnte die Datei noch nicht geladen werden - zum Beispiel bei einem noch laufenden Upload.

Lösung

Lesen Sie erneut, sobald der Upload abgeschlossen ist; dieser Lesevorgang lädt das neue Modell.

Mehr

Sprachmodelle

Bild-Stream

Wie lese ich den Text auf jedem Bild eines Kamera-Streams?

Antwort

Abonnieren Sie mit einem Modul den Stream des Cam Driver (experimentell): Schreiben Sie den Stream-Ordner der Kamera, zum Beispiel hdvisionsystems/lumiscan-cam-driver/camera1/control/publish/output/stream, nach <module>/control/subscribe/input/address, setzen Sie control/subscribe/input/enable auf true und schreiben Sie auf control/subscribe/execute. Jedes Bild wird mit den Eingaben von read-text gelesen, und ein Ergebnis pro Bild wird auf control/subscribe/output/stream/result veröffentlicht. Um das neueste Ergebnis als normales read-text/output/result zu lesen, setzen Sie control/subscribe/input/keep-latest-output auf true.

Mehr

Text auf einem Bild-Stream lesen, Streams

Statuscodes und Fehler

Woran erkenne ich, ob ein Lesevorgang funktioniert hat, und wo steht der Grund für einen Fehler?

Antwort

Prüfen Sie das Vorzeichen von output/status-code: größer als 0 ist Erfolg, 0 bedeutet, dass die Operation seit dem Start der Anwendung nicht gelaufen ist, kleiner als 0 bedeutet, dass sie fehlgeschlagen ist und nichts erzeugt hat. Der Grund steht auf output/status-text. Ein fehlgeschlagener Schreibvorgang auf execute antwortet nur mit einem Statuscode (über REST ein bloßes 400), lesen Sie also anschließend output/status-text; der Text steht auch im Anwendungsprotokoll: auf ctrlX OS im ctrlX Logbook oder journalctl, auf einem PC in der Konsolenausgabe der Anwendung. -1 bedeutet, dass das Modul belegt war; nichts wurde getan, und das vorherige Leseergebnis bleibt unberührt. Jedes andere execute leert output/result beim Start, lesen Sie das Ergebnis also, bevor Sie den nächsten Lesevorgang auslösen.

Mehr

Eine Methode ausführen, Ausführungsstatus, Text lesen

Module, Lizenzierung und Support

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 -11 abgelehnt, 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, ist ein LumiScan Key nötig; 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.

  • Auf ctrlX OS beendet sich die Anwendung kurz nach dem Start, wenn die Lizenz fehlt; der Grund wird in das Systemprotokoll geschrieben.

Mehr

Voraussetzungen, Modulverwaltung, FAQ zur Lizenzierung

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

FAQ zur Lizenzierung