A fost publicat release-ul sistemului de recunoaștere optică a textului Tesseract 4.1, care suportă recunoașterea caracterelor UTF-8 și a textelor în peste 100 de limbi, inclusiv rusă, kazahă, belarusă și ucraineană. Rezultatul poate fi salvat atât ca text brut, cât și în formate HTML (hOCR), ALTO (XML), PDF și TSV. Sistemul a fost inițial creat între 1985 și 1995 în laboratorul companiei Hewlett Packard, iar în 2005 codul a fost deschis sub licența Apache și a fost dezvoltat ulterior cu participarea angajaților Google. Codul sursă al proiectului este distribuit sub licența Apache 2.0.
Tesseract include o utilitate de consolă și biblioteca libtesseract pentru integrarea funcțiilor de recunoaștere a textului în alte aplicații. Printre interfețele GUI terță parte care suportă Tesseract se numără gImageReader, VietOCR și YAGF. Oferă două motoare de recunoaștere: clasic, care recunoaște textul la nivel de șablon pentru caractere individuale, și noul, bazat pe aplicarea unui sistem de învățare automată bazat pe rețele neuronale recurente LSTM, optimizat pentru recunoașterea întregilor linii și care permite o îmbunătățire semnificativă a preciziei. Modelele antrenate sunt publicate pentru 123 de limbi. Pentru optimizarea performanței, sunt disponibile module care folosesc OpenMP și instrucțiuni SIMD AVX2, AVX, NEON sau SSE4.1.
Îmbunătățiri principale în Tesseract 5.0:
- Schimbarea semnificativă a numărului versiunii este legată de modificările API-ului care afectează compatibilitatea. În special, API-ul public libtesseract nu mai este legat de tipurile de date proprietare GenericVector și STRING, ci este utilizat std::string și std::vector în cod.
- A fost reorganizată structura codului sursă. Fișierele de antet publice au fost mutate în directorul include/tesseract.
- Gestionarea memoriei a fost revizuită, toate apelurile malloc și free fiind înlocuite cu cod C++. O modernizare generală a codului a avut loc.
- S-au adăugat optimizări pentru arhitecturile ARM și ARM64, instrucțiunile ARM NEON fiind utilizate pentru accelerarea calculului. O optimizare generală a performanței a fost realizată pentru toate arhitecturile.
- S-au implementat noi moduri de antrenare a modelelor și de recunoaștere a textului, bazate pe utilizarea calculului cu virgulă mobilă. Noile moduri oferă performanțe mai mari și un consum mai mic de memorie. În motorul LSTM, modul rapid float32 este activat implicit.
- S-a realizat o tranziție la utilizarea normalizării Unicode cu utilizarea formei NFC (Normalization Form Canonical).
- A fost adăugată o opțiune pentru configurarea detaliilor logurilor (—loglevel).
- Sistemul de compilare bazat pe Autotools a fost revizuit, fiind transformat pentru a compila în mod nerecursiv.
- Ramura «master» în Git a fost redenumită în «main».
- A fost adăugată suportul pentru noile versiuni macOS și sistemele Apple bazate pe procesorul M1.
Sursa: opennet.ro
