Публикуван е релизът на системата за оптично разпознаване на текст Tesseract 5.2, която поддържа разпознаване на символи UTF-8 и текстове на над 100 езика, включително руски, казахски, беларуски и украински. Резултатът може да се запазва както в обикновен текст, така и във форматите HTML (hOCR), ALTO (XML), PDF и TSV. Първоначално системата е била създадена между 1985 и 1995 година в лабораторията на компания Hewlett Packard, а през 2005 година кодът е бил отворен под лиценза Apache и по-късно е бил развиван с участието на служители на компания Google. Изходните текстове на проекта се разпространяват под лиценза Apache 2.0.
Tesseract включва конзолна утилита и библиотека libtesseract за вграждане на функции за разпознаване на текст в други приложения. Сред поддържащите Tesseract външни GUI интерфейси можем да споменем gImageReader, VietOCR и YAGF. Предлагат се два двигателя за разпознаване: класически, разпознаващ текст на ниво шаблони на отделни символи, и нов, базиран на приложение на система за машинно обучение с базова мрежа LSTM, оптимизирана за разпознаване на цели редове и позволяваща значително увеличение на точността. Готови натренирани модели са публикувани за 123 езика. За оптимизиране на производителността се предлагат модули, използващи OpenMP и SIMD инструкции AVX2, AVX, AVX512F, NEON или SSE4.1.
Основни подобрения в Tesseract 5.2:
- Добавени са оптимизации, реализирани с използването на инструкции Intel AVX512F.
- В C API е реализирана функция за инициализация на tesseract с зареждане от паметта на модела за машинно обучение.
- Добавен е параметър invert_threshold, определящ нивото на инвертиране на текстовите редове. По подразбиране е зададена стойност 0.7. За да се деактивира инвертирането, стойността трябва да бъде 0.
- Настроена е обработката на много големи документи на 32-битови хостове.
- Осъществен е преход от използването на функции std::regex към std::string.
- Подобрен е сборният сценарий за Autotools, CMake и системи за непрекъсната интеграция.
Източник: opennet.ru
