Frigivelse af tekstgenkendelsessystemet Tesseract 5.0

Udgivelsen af ​​det optiske tekstgenkendelsessystem Tesseract 4.1 er blevet offentliggjort, som understøtter genkendelse af UTF-8-tegn og tekster på mere end 100 sprog, herunder russisk, kasakhisk, hviderussisk og ukrainsk. Resultatet kan gemmes både i klartekst og i HTML (hOCR), ALTO (XML), PDF og TSV formater. I første omgang blev systemet oprettet i 1985-1995 i laboratoriet hos Hewlett Packard, i 2005 blev koden åbnet under Apache-licensen og videreudviklet med deltagelse af Google-medarbejdere. Kildeteksterne til projektet distribueres under Apache 2.0-licensen.

Tesseract inkluderer et konsolværktøj og libtesseract-biblioteket til indlejring af OCR-funktionalitet i andre applikationer. Tesseract-understøttende tredjeparts GUI'er inkluderer gImageReader, VietOCR og YAGF. Der foreslås to genkendelsesmotorer: en klassisk, der genkender tekst på niveau med individuelle karaktermønstre, og en ny baseret på brugen af ​​et maskinlæringssystem baseret på et tilbagevendende neuralt netværk LSTM, optimeret til genkendelse af hele linjer og muliggør en markant stigning i nøjagtigheden. Klartrænede modeller er blevet udgivet til 123 sprog. For at optimere ydeevnen tilbydes moduler, der bruger OpenMP og SIMD instruktioner AVX2, AVX, NEON eller SSE4.1.

Vigtigste forbedringer i Tesseract 5.0:

  • Den væsentlige ændring af versionsnummeret skyldes ændringer i API'en, der bryder kompatibiliteten. Især libtesseract public API er ikke længere bundet til de proprietære datatyper GenericVector og STRING, i stedet for hvilke std::string og std::vector bruges i koden.
  • Kildetræet er blevet omorganiseret. De offentlige header-filer er blevet flyttet til mappen include/tesseract.
  • Hukommelsesstyring er blevet redesignet, alle opkald til malloc og gratis er blevet erstattet med C++ kode. En generel kodeopgradering er blevet udført.
  • Tilføjede optimeringer til ARM- og ARM64-arkitekturer, ARM NEON-instruktioner bruges til at fremskynde beregninger. Udført generel ydelsesoptimering for alle arkitekturer.
  • Implementeret nye former for modeltræning og tekstgenkendelse, baseret på brug af flydende kommaberegninger. De nye tilstande er kendetegnet ved højere ydeevne og reduceret hukommelsesforbrug. I LSTM-motoren er float32 hurtig tilstand aktiveret som standard.
  • Overgangen til brug af Unicode-normalisering ved hjælp af NFC-formen (Normalization Form Canonical) er foretaget.
  • Tilføjet en mulighed for at konfigurere logdetaljer (-loglevel).
  • Montagesystemet baseret på Autotools er blevet redesignet, som er skiftet til montage i ikke-rekursiv tilstand.
  • 'master'-grenen i Git er blevet omdøbt til 'main'.
  • Tilføjet understøttelse af nye udgivelser af macOS- og Apple-systemer baseret på M1-chippen.

    Kilde: opennet.ru

Tilføj en kommentar