Распознавание текста (OCR) в Linux

Я уже очень давно искал свободную (или хотят бы бесплатную) программу распознавания текста для Linux, способную предоставить хоть часть удобства FineReader. Недавно мои поиски увенчались успехом.

Предыстория.
На протяжении многих лет OCR CuneiForm фирмы Cognitive Technologies была главным конкурентом FineReader. Обе системы распознавания имели примерно одинаковую эффективность, обе постоянно разрабатывали внедряли все новые технологии распознавания. Именно в CuneiForm впервые в мире применили технологию адаптивного распознавания. Применялись технологии, основанные на нейронных сетях и механизмы воссоздания формы исходного документа. Но, не смотря на все техническое совершенство CuneiForm, победил FineReader. По разным причинам разработка CuneiForm прекратилась на несколько лет, а когда ее решено было возобновить оказалось, что текущее положение вещей, а именно господство FineReader, не позволит вновь выйти на рынок. И тогда, 12 декабря 2007 года, компания Cognitive Technologies запускает программу «Распознавание должно быть на каждом компьютере». В рамках этой программы была выпущена сначала freeware версия CuneiForm, а затем и ее исходные коды под лицензией BSD. Кроме того планируется запустить свободный он-лайн сервис распознавания.

После выпуска исходных кодов началось портирование движка puma, используемого в CuneiForm на *nix системы.

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

Кроме портирования движка началась разработка графического интерфейса для него. Существует два проекта по создания GUI - Cuneiform-Qt и YAGF.

Я опишу процесс установки ядра CuneiForm и GUI для него - YAGF.

И так качаем CuneiForm отсюда. Для компиляции нам понадобится cmake. Распаковываем архив, запускаем терминал, переходим в папку с распакованными файлами и пишем в терминале следующее:
mkdir builddir
cd builddir
cmake -DCMAKE_BUILD_TYPE=debug ..
make
sudo make install
В результате вы станете обладателем консольной системы распознавания. Но нам этого мало! Мы хотим GUI! Не вопрос - качаем исходник YAGF отсюда. Для компиляции нам понадобятся все пакеты qt4*-dev, libaspell-dev, imagemagick и libmagick++-dev, а для проверки русской орфографии пакет aspell-ru (почему-то у меня в системе не стоял). Кроме того, если хотите управлять сканированием, то надо установить XSane и подружить его со сканером.
Распаковываем содержимое архива, запускаем терминал и пишем:
mkdir builddir
cd builddir
cmake -DCMAKE_BUILD_TYPE=debug ..
make
cp yagf ..
cp libxspreload.so ..
cp yagf_lt.qm ..
cp yagf_ru.qm ..
sudo make install
ПРИМЕЧАНИЕ. Копирование четырех файлов командой "cp" связано с недоработкой скриптов. Возможно в более поздних версиях эти команды не понадобятся.
Все! Можно запускать программу командой yagf или из раздела меню "Графика".
Напоследок добавлю: программы, к сожалению, еще не способны полностью заменить FineReader, но уже стремятся к этому. Связка, которую я представил, не самая стабильная и удобная - например почему-то она отказалась распознавать текст на сером фоне даже если я только его выделяю. Но в целом я вполне доволен найденным мной решением и надеюсь оно принесет пользу не только мне.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".
Vitto аватар
User offline. Last seen 1 день 22 часа ago. Offline
Зарегистрирован: 01/04/2009

Нашел один недостаток движка (собственно поэтому он скрин распознать не может) - не справляется с маленькими изображениями. После увеличения изображения в два раза качество возросло до ~95%

captain аватар
User offline. Last seen 21 неделя 2 дня ago. Offline
Зарегистрирован: 11/08/2009

Vitto добавь пожалуйста в статью в зависимости: imagemagick libmagick++-dev
и при запуске если ругани на библиотеки (типа libpuma.so) тогда можно попробовать собирать с такими параметрами: cmake -DCMAKE_BUILD_TYPE=debug -DCMAKE_INSTALL_PREFIX=/usr ..

Vitto аватар
User offline. Last seen 1 день 22 часа ago. Offline
Зарегистрирован: 01/04/2009

не понятно зачем нужно прогу, собранную из исходников, да еще и не совсем стабильную, помещать рядом со всеми остальными.
Поэтому "-DCMAKE_INSTALL_PREFIX=/usr .." не добавил

Vitto аватар
User offline. Last seen 1 день 22 часа ago. Offline
Зарегистрирован: 01/04/2009

Нашел собранные пакеты CuneiForm для debian и ubuntu на халявном файловом хостинге: http://www.mediafire.com/alexp
PS там еще кой какие проекты есть, но я особо не интересовался.

Redfoxnet аватар
User offline. Last seen 1 неделя 1 день ago. Offline
Зарегистрирован: 23/03/2009

Их лучше еще куда-нибудь выложить :) А то может не стать в любой момент.

Не кормите тролля, иначе анонимус не заметит между вами разницу.

Vitto аватар
User offline. Last seen 1 день 22 часа ago. Offline
Зарегистрирован: 01/04/2009

Пока только в локалке ИСа есть:
http://mirror.ddns.is74.ru/html/soft/office.htm#OCR
Можно сюда выложить ~170Mb?

Vitto аватар
User offline. Last seen 1 день 22 часа ago. Offline
Зарегистрирован: 01/04/2009

Пакеты CuneiForm и YAGF для последней версии Ubuntu появились в репозитории GetDeb.net.

jabx аватар
User offline. Last seen 26 недель 6 дней ago. Offline
Зарегистрирован: 21/01/2010

Поставил сегодня. Отлично работает. Жаль только ограничено текстом. Таблиц нехватает.
для сусе есть готовая сборка в репозиториях lazy_kent
http://download.opensuse.org/repositories/home:/Lazy_Kent/openSUSE_11.1
http://download.opensuse.org/repositories/home:/Lazy_Kent/openSUSE_11.2

anonymous

Опробовал - хорошая вещь!

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".

Отправить комментарий

  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.
  • You can use BBCode tags in the text.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <bash>, <c>, <cpp>, <diff>, <drupal5>, <drupal6>, <haskell>, <java>, <javascript>, <latex>, <lisp>, <lua>, <mysql>, <ocaml>, <ocaml-brief>, <perl>, <php>, <php-brief>, <python>, <ruby>, <sql>. Beside the tag style "<foo>" it is also possible to use "[foo]".
  • You may quote other posts using [quote] tags.
  • E-Mail addresses are hidden with reCAPTCHA Mailhide.

Подробнее о форматировании

CAPTCHA
Докажите, что вы не робот.

Вход в систему

Последние комментарии

Наши друзья

UfaLUG