Die Veröffentlichung des Text-Erkennungssystems Tesseract 5.0

Die Veröffentlichung von Tesseract 4.1, einem System zur optischen Zeichenerkennung, das die Erkennung von UTF-8-Zeichen und Texten in mehr als 100 Sprachen, einschließlich Russisch, Kasachisch, Weißrussisch und Ukrainisch unterstützt, wurde angekündigt. Das Ergebnis kann sowohl als einfacher Text als auch in den Formaten HTML (hOCR), ALTO (XML), PDF und TSV gespeichert werden. Ursprünglich wurde das System zwischen 1985 und 1995 im Labor von Hewlett Packard entwickelt, 2005 wurde der Code unter der Apache-Lizenz veröffentlicht und seither mit Unterstützung von Google weiterentwickelt. Die Quelltexte des Projekts werden unter der Apache 2.0-Lizenz verbreitet.

Tesseract umfasst ein Konsolen-Tool und die Bibliothek libtesseract, um Funktionen zur Texterkennung in andere Anwendungen zu integrieren. Zu den unterstützenden GUI-Interfaces von Drittanbietern für Tesseract gehören gImageReader, VietOCR und YAGF. Es werden zwei Erkennungs-Engines angeboten: die klassische, die Text auf der Grundlage von Einzelzeichen-Vorlagen erkennt, und die neue, die auf einem Machine-Learning-System basierend auf rekurrenten neuronalen Netzen (LSTM) basiert. Letztere ist optimiert für die Erkennung ganzer Textzeilen und ermöglicht eine signifikante Steigerung der Genauigkeit. Vorgefertigte, trainierte Modelle sind für 123 Sprachen veröffentlicht. Zur Optimierung der Leistung stehen Module zur Verfügung, die OpenMP und SIMD-Instruktionen wie AVX2, AVX, NEON oder SSE4.1 verwenden.

Wesentliche Verbesserungen in Tesseract 5.0:

  • Die erhebliche Änderung der Versionsnummer ist auf API-Änderungen zurückzuführen, die die Abwärtskompatibilität beeinträchtigen. Insbesondere ist die öffentlich zugängliche API libtesseract nicht mehr an die proprietären Datentypen GenericVector und STRING gebunden. Stattdessen werden im Code std::string und std::vector verwendet.
  • Die Struktur der Quelltexte wurde reorganisiert. Die öffentlichen Header-Dateien wurden in das Verzeichnis include/tesseract verschoben.
  • Die Speicherverwaltung wurde überarbeitet, alle Aufrufe von malloc und free wurden durch C++-Code ersetzt. Der gesamte Code wurde modernisiert.
  • Es wurden Optimierungen für ARM- und ARM64-Architekturen hinzugefügt, um Berechnungen durch ARM NEON-Instruktionen zu beschleunigen. Eine allgemeine Leistungsoptimierung für alle Architekturen wurde durchgeführt.
  • Neue Trainings- und Texterkennungsmodi wurden implementiert, die auf Gleitkomma-Berechnungen basieren. Diese neuen Modi bieten eine höhere Leistung und eine reduzierte Speicherauslastung. Im LSTM-Engine ist der schnelle float32-Modus standardmäßig aktiviert.
  • Der Übergang zur Verwendung von Unicode-Normalisierung in der NFC-Form (Normalization Form Canonical) wurde vollzogen.
  • Eine Option zur Anpassung der Detaillierung von Protokollen (—loglevel) wurde hinzugefügt.
  • Das auf Autotools basierende Build-System wurde überarbeitet und auf den nicht-rekursiven Modus umgestellt.
  • Der Branch „master“ in Git wurde in „main“ umbenannt.
  • Unterstützung für neue Versionen von macOS und Apple-Systemen, die auf dem M1-Chip basieren, wurde hinzugefügt.

    Quelle: opennet.ru
Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster