Распознать текст под Linux? Не вижу проблем!

Nov 07, 2013 03:27



Итак, жизнь заставила изучить и этот вопрос. Опять же, благодаря студенческим будням сына. В общем, прислали ему сканы, которые надо было распознать. Нет, конечно же, существует в природе замечательная (и ни разу не дешевая!) программа ABBYY Finereader, которая, говорят, в ломаном виде вроде бы как под Wine работает. Но это - однозначно не наш метод! Итак, решаем быть честными и обойтись исключительно свободным, и вдобавок, нативным ПО.

Имеем: компьютер с Scientific Linux 6.x (так уж сложилось, что с некоторых пор я использую в основном именно этот дистрибутив и дома, и на работе). Естественно, нижеприведенные инструкции относятся и к другим клонам Red Hat Enterprise Linux 6.x - CentOS 6 и т.п.

Собственно программа оптического распознавания (OCR) называется CuneiForm и в виде исходных кодов доступна здесь.

В нашем случае можно не возиться со сборкой из исходников, а взять готовый пакет из репозитория  Nux-Dextop:

yum --enablerepo=nux-dextop install cuneiform

В настоящее время доступна версия 1.1.0.

Заявленные возможности программы: поддержка множества языков (в том числе украинского), сохранение форматирования исходного документа, вывод в txt, hocr, html, распознавание факсов и текстов, отпечатанных на матричном принтере.

Но в полном соответствии с канонами жанра, присутствует здесь и неизбежная ложка дегтя: данная программа является консольной, т.е. все общение с ней идет исключительно из командной строки. А отечественный юзер (как, впрочем, и "импортный") отнюдь не настолько суров, чтобы безропотно взяться за освоение данной науки. Ну, не может он жить без "гуя", и все!

Что ж, вы хочете GUI - их есть у меня! Ставим оболочку под названием YAGF. Опять же, можем заняться сборкой из исходников (инструкция по сборке прилагается в файле INSTALL в скачиваемом .tar.gz-архиве). А можем просто скачать и установить готовый пакет yagf-0.9.1-1.17.i686.rpm (для 32-битной системы), или yagf-0.9.1-1.17.x86_64.rpm (для 64-битной). Результат приведен на скриншоте в заголовке статьи.

Чтобы в распознанном тексте можно было проверить орфографию, необходимы соответствующие словари. Они имеются в виде RPM-пакетов вида aspell-XX, где XX - язык распознавания текста (aspell-en - английсий язык, aspell-ru - русский, aspell-uk - украинский и т.д.).

Пакет aspell-en имеется в репозитории EPEL (.i686 и x86_64 соответственно), aspell-ru - в репозитории CentALT (.i686 и x86_64 соответственно), а пакет aspell-uk - в репозитории Russian Fedora Free (.i686 и x86_64 соответственно).

Удачной Вам установки и хорошего распознавания!

linux, компьютер, записки сумасшедшего

Previous post Next post
Up