Uitgave van het tekstherkenningssysteem Tesseract 5.0

De release van het Tesseract 4.1 optische tekstherkenningssysteem is gepubliceerd, dat de herkenning van UTF-8-tekens en teksten in meer dan 100 talen ondersteunt, waaronder Russisch, Kazachs, Wit-Russisch en Oekraïens. Het resultaat kan worden opgeslagen in platte tekst of in de formaten HTML (hOCR), ALTO (XML), PDF en TSV. Het systeem werd oorspronkelijk gemaakt in 1985-1995 in het Hewlett Packard-laboratorium; in 2005 werd de code geopend onder de Apache-licentie en verder ontwikkeld met medewerking van Google-medewerkers. De broncode van het project wordt gedistribueerd onder de Apache 2.0-licentie.

Tesseract bevat een consolehulpprogramma en de libtesseract-bibliotheek voor het inbedden van OCR-functionaliteit in andere applicaties. GUI-interfaces van derden die Tesseract ondersteunen, zijn onder meer gImageReader, VietOCR en YAGF. Er worden twee herkenningsengines aangeboden: een klassieke die tekst herkent op het niveau van individuele tekenpatronen, en een nieuwe die gebaseerd is op het gebruik van een machinaal leersysteem gebaseerd op een LSTM terugkerend neuraal netwerk, geoptimaliseerd voor het herkennen van hele tekenreeksen en het mogelijk maken van een aanzienlijke toename van de nauwkeurigheid. Er zijn kant-en-klare getrainde modellen gepubliceerd voor 123 talen. Om de prestaties te optimaliseren, worden modules aangeboden die gebruik maken van OpenMP- en SIMD-instructies AVX2, AVX, NEON of SSE4.1.

Belangrijke verbeteringen in Tesseract 5.0:

  • Een aanzienlijke wijziging in het versienummer is te wijten aan wijzigingen in de API die de compatibiliteit verbreken. In het bijzonder is de openbaar beschikbare libtesseract API niet langer gebonden aan de eigen GenericVector- en STRING-gegevenstypen, ten gunste van std::string en std::vector.
  • De brontekstboom is gereorganiseerd. Openbare headerbestanden zijn verplaatst naar de directory include/tesseract.
  • Het geheugenbeheer is opnieuw ontworpen, alle malloc- en gratis oproepen zijn vervangen door C++-code. Er heeft een algemene modernisering van de code plaatsgevonden.
  • Optimalisaties toegevoegd voor ARM- en ARM64-architecturen; ARM NEON-instructies worden gebruikt om berekeningen te versnellen. Er is prestatie-optimalisatie uitgevoerd die voor alle architecturen geldt.
  • Er zijn nieuwe modi geïmplementeerd voor trainingsmodellen en tekstherkenning op basis van het gebruik van drijvende-kommaberekeningen. De nieuwe modi bieden hogere prestaties en een lager geheugenverbruik. In de LSTM-engine is de snelle float32-modus standaard ingeschakeld.
  • Er is een overstap gemaakt naar het gebruik van Unicode-normalisatie met behulp van de NFC-vorm (Normalization Form Canonical).
  • Een optie toegevoegd om logdetaillering te configureren (--loglevel).
  • Het bouwsysteem op basis van Autotools is opnieuw ontworpen en overgeschakeld naar bouwen in niet-recursieve modus.
  • De "master" -branch in Git is hernoemd naar "main".
  • Ondersteuning toegevoegd voor nieuwe releases van macOS- en Apple-systemen op basis van de M1-chip.

    Bron: opennet.ru

Voeg een reactie