Распознавание текста (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's blog
- цитировать
- 2208 просмотров
Vitto добавь пожалуйста в статью в зависимости: imagemagick libmagick++-dev
и при запуске если ругани на библиотеки (типа libpuma.so) тогда можно попробовать собирать с такими параметрами: cmake -DCMAKE_BUILD_TYPE=debug -DCMAKE_INSTALL_PREFIX=/usr ..
не понятно зачем нужно прогу, собранную из исходников, да еще и не совсем стабильную, помещать рядом со всеми остальными.
Поэтому "-DCMAKE_INSTALL_PREFIX=/usr .." не добавил
Нашел собранные пакеты CuneiForm для debian и ubuntu на халявном файловом хостинге: http://www.mediafire.com/alexp
PS там еще кой какие проекты есть, но я особо не интересовался.
Их лучше еще куда-нибудь выложить :) А то может не стать в любой момент.
Пока только в локалке ИСа есть:
http://mirror.ddns.is74.ru/html/soft/office.htm#OCR
Можно сюда выложить ~170Mb?
Пакеты CuneiForm и YAGF для последней версии Ubuntu появились в репозитории GetDeb.net.
Поставил сегодня. Отлично работает. Жаль только ограничено текстом. Таблиц нехватает.
для сусе есть готовая сборка в репозиториях lazy_kent
http://download.opensuse.org/repositories/home:/Lazy_Kent/openSUSE_11.1
http://download.opensuse.org/repositories/home:/Lazy_Kent/openSUSE_11.2






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