В открытый доступ выложили систему распознавания текста Tesseract 5.5.0. Проект поддерживает Unicode и работает с более чем 100 языками. Итоговый результат распознавания может сохраняться как открытым текстом, так и в форматах HTML (hOCR), ALTO (XML), PDF и TSV. Исходный код проекта написан на языке программирования C++ и опубликован на GitHub под лицензией Apache 2.0. Проект Tesseract включает в себя консольную утилиту и библиотеку libtesseract для встраивания функций распознавания текста в другие приложения.
Из поддерживающих Tesseract сторонних GUI-интерфейсов можно отметить gImageReader, VietOCR и YAGF. Предлагается два движка распознавания: классический, распознающий текст на уровне шаблонов отдельных символов, и новый, базирующийся на применении системы машинного обучения на базе рекуррентной нейронной сети LSTM, оптимизированной для распознавания целиком строк и позволяющей добиться существенного увеличения точности. Для оптимизации производительности предлагаются модули, использующие OpenMP и SIMD-инструкции AVX2, AVX, AVX512F, NEON или SSE4.1.
Основные изменения и доработки в Tesseract 5.5.0:
- добавлена поддержка векторных расширений RISC-V V, на базе которых подготовлены ассемблерные оптимизации для систем с процессорами RISC-V;
- при записи результата в формате hOCR обеспечено выставление в создаваемом файле параметров ocrp_dir и ocrp_lang;
- модернизирован код для определения доступных языковых моделей;
- улучшен код для формирования файлов в формате hOCR и убрано преобразование имён файлов на платформе Windows;
- разрешено указание символьных значений в опциях «—oem» и «—psm»;
- в коде произведена замена функций access и _access на метод std::filesystem::exists(). Функции tprintf заменены на использование потока tesserr;
- удалена поддержка платформы машинного обучения Tensorflow, которая в своё время была реализована, но так и не была задействована для выполнения ИИ-моделей распознавания;
- улучшен установщик для платформы Windows.