Аналог finereader для linux

Обновлено: 04.07.2024

Одна из областей, в которых отставание Linux от Windows считается значительным и трудно преодолимым, является оптическое распознавание текста. Так как необходимость распознать текст время от времени появляется практически у каждого пользователя компьютера, потребность в программном обеспечении такого рода надо признать актуальной проблемой. В связи с этим недавно я решил потратить немного времени и провести сравнительное тестирование имеющихся систем оптического распознавания текста (OCR), доступных в Linux. Для полноты картины рассматривались как локально устанавливаемые программы, так и онлайновые сервисы.

Методика тестирования

ABBYY FineReader for Linux

В процессе установки программа запросила ключ, после чего благополучно активировалась. Программа имеет множество ключей командной строки, позволяющих гибко настроить параметры распознавания. Я использовал команду вида:

В целом здесь все понятно. Ключи -if и -of задают распознаваемый файл и файл, в который записывается результат работы программы. С помощью -f задается формат вывода. Необходимо отметить, что если в тексте имеются слова на иностранном языке, необходимо обязательно задать его вторым после ключа -rl. В противном случае программа будет пытаться распознать все на русском.

ABBYY Fine Reader Online

Для полноты картины необходимо рассмотреть еще один продукт от ABBYY - онлайновый сервис ABBYY Fine Reader Online . Ранее он позволял после несложной регистрации распознавать бесплатно до 10 страниц в день, теперь же бесплатно можно распознать только три страницы сразу после регистрации, после чего необходимо платить. Минимальный пакет стоит 3$ за 20 страниц. Сервис поддерживает большое количество языков и форматов файлов.

Cuneiform

На второе место по известности среди систем OCR можно смело поставить программу cuniform. Первоначально программа CuneiForm была разработана компанией Cognitive Technologies как коммерческий продукт. CuneiForm поставлялся с некоторыми моделями сканеров. Однако после нескольких лет перерыва разработки, 12 декабря 2007 года анонсировано открытие исходных текстов программы, которое состоялось 2 апреля 2008 года.
По умолчанию в Ubuntu 10.10 доступна достаточно старая версия 0.7. Однако после добавления соответствующего PPA можно стать обладателем версии 1.0. Для Cuneiform написаны два графических интерфейса - YAGF и Cuneiform-Qt .
Для тестирования я использовал версию 1.0.0, установленную из вышеуказанного PPA. Распознавание производилось с помощью команды вида:

В руководстве cuneiform приводится опция --fax, которая включает оптимизацию работы программы для распознавания документов, переданных с помощью факса, однако при ее использовании результат получается хуже, поэтому я не привел его в таблице.

GOCR - это свободная кроссплатформенная система оптического распознавания текстов, работающая из командной строки. Программа пока находится в ранней стадии разработки, поэтому имеет ряд серьезных недостатков (например, распознает только одноколоночный текст). Кроме того, изучение man-страницы показало, что опций, позволяющих задать язык распознавания, программа не имеет, что подтвердилось экспериментом - русский текст gocr пытается распознать как английский. Естественно, в таблицу я данную программу включать не стал.

Ocrad

Tesseract

Tesseract - свободная программа для распознавания текстов, разрабатывавшаяся Hewlett-Packard с середины 1980-х по середину 1990-х. Затем ее разработка была заморожена на 10 лет. В августе 2006 г Google купил её и открыл исходные тексты под лицензией Apache 2.0 для продолжения разработки. В настоящий момент программа уже работает с UTF-8, поддержка языков (включая русский с версии 3.0) осуществляется с помощью дополнительных модулей.
Так как в репозиториях Ubuntu присутствует 2-я версия программы, а русский язык поддерживается только с релиза 3.0.0, программу я собирал из исходных текстов по инструкциям, найденным в сети.
Итак, скачиваем здесь архив с исходными текстами (в моем случае это tesseract-3.00.tar.gz, но с выходом новых версий название может быть другим), распаковываем его и переходим в директорию с исходными кодами.
Для корректной работы tesseract необходим пакет leptonica - ПО с открытым исходным кодом, необходимое для приложений, работающих и анализирующих изображения. Устанавливаем его:

Кроме того, для работы tesseract необходимо установить следующие пакеты: libpng12-dev, libjpeg62-dev, libtiff4-dev, zlib1g-dev, libtool build-essential. Устанавливаем и их, а затем из директории с исходным кодом начинаем конфигурирование и сборку программы:

При подтверждении опций необходимо изменить имя пакета (номер 2) на tesseract-ocr.

изменение имени пакета на tessract-ocr

Все остальные опции принимаем по умолчанию. В результате будет установлен tesseract 3.0, а также собран deb-пакет, поэтому в следующий раз программу можно будет устанавливать обычным способом с помощью GDebi.
С первого раза программа у меня не собралась, пожаловавшись на отсутствие каталога /usr/local/share/tessdata. После того, как я создал его вручную, процесс завершился благополучно.
Теперь необходимо скачать с сайта программы пакет поддержки русского языка (rus.traineddata.gz), распаковать его и скопировать содержимое архива (а это должен быть один файл rus.traineddata) в директорию /usr/local/share/tessdata/.
Изображения перед распознаванием необходимо прнобразовать в формат tiff.
Для распознавания я использовал команду вида:

Если программа не заработала и возникают ошибки, связанные с отсутствием необходимых библиотек или правами доступа, выполните следующие команды:

Теперь все должно работать.
Для tesseract имеется графический интерфейс tesseract-gui , который тоже надо собирать из исходного кода. У меня он запустился, но распознавать текст почему-то не захотел. Еще есть система OCRopus , которая может использовать движок tesseract. Собственно поэтому я ее отдельно рассматривать не стал.

SILVERCODERS OCR Server

Данная программа представляет собой мощную коммерческую серверную систему распознавания, предназначенную для предприятий и поддерживающую 189 языков, среди них и русский. Она разработана специально для интегрирования в корпоративные системы документооборота. Триальной версии для свободного скачивания нет, поэтому опробовать мне эту систему не удалось.

Free OCR

Free OCR - бесплатный онлайн-сервис для оптического распознавания текста, использующий движок tesseract. Размер загружаемого изображения ограничен 2 Мб. Поддерживаются форматы JPG, GIF, TIFF BMP и PDF (только первая страница, в скором времени обещают поддержку первых 10 страниц). Также, существует лимит на 10 изображений в час.
Сервис распознает множество языков - русский, украинский, английский, немецкий, французский, турецкий, большинство восточноевропейских языков.

img2txt

img2txt - многоязычный онлайн-сервис для оптического распознавания текста. Поддерживаются форматы JPG, PNG, TIFF с размером файла до 2 Мб. В будущем обещают поддержку PDF и DJVU. На Википедии сервис обозначен как коммерческий и проприетарный, однако на самом сайте никакой информации об типе лицензии и используемом движке нет. Мои три тестовые страницы распознались без проблем. Никакой оплаты или хотя бы регистрации не просили.

OnlineOCR

NewOCR

NewOCR - бесплатный OCR сервис, поддерживающий 29 языков распознавания, включая русский. Позволяет загружать файлы в форматах JPEG, PNG, GIF, BMP, многостраничный TIFF размером до 5 Мб, а также многостраничные PDF размером до 20 Мб. Поддерживается многоколоночное форматирование текста.

Кроме того, необходимо отметить, что на рынке имеется еще одна коммерческая система распознавания от компании vividata , однако стоимость этой программы составляет $2400 (!) плюс по $100 за каждый дополнительный язык, отдельная плата, например, за модуль вывода в PDF ($1200) и т.д., поэтому я даже не стал заморачиваться с ее установкой. Ко всему прочему программа видимо очень давно не обновлялась (файлы в установочном архива датируются 2001 годом) и сами разработчики сомневаются в том, что она заработает на современных дистрибутивах. Поэтому тестировать vividata я не стал.
Также я решил включить в таблицу Google Docs, так как эта служба в настоящее время также позволяет производить распознавание русского текста. По имеющимся данным она использует tessract, однако нельзя исключить, что в своем сервисе Google использует какие-нибудь дополнительные наработки, поэтому интересно сравнить ее с остальными.

Результаты сравнительного тестирования систем оптического распознавания

Программа (сервис) Точность распознавания, %
Образец 1 Образец 2 Образец 3
FineReader for Linux 100% 100% 87%
FineReader Online 100% 100% 94%
Cuneiform 1.0.0 94% 94% 17%
Tesseract 3.0.0 97% 98% 5%
Free OCR 96% 93% 61%
img2txt 96% 94% 24%
NewOCR 94% 94% 41%
Google Docs 93% 96% 58%

Выводы

Результаты, приведенные в таблице, показывают, что при хорошем качестве распознаваемого материала все участвовавшие в тестировании программы обеспечивают высокое качество распознавания, причем снижение разрешения с 300 до 200 dpi практически не влияет на результат. В то же время при распознавании некачественного материала ABBYY Fine Reader явно вырывается вперед, что неудивительно, учитывая ресурсы, задействованные в разработке данного приложения. Однако в целом можно отметить, что широко распространенное суждение о том, что для Linux нет хороших систем оптического распознавания текста, сегодня уже не выдерживает критики.
Для нерегулярного домашнего применения подойдет любая из представленных в обзоре бесплатных систем, а для организации, деятельность которой связана с частым использованием систем распознавания, особенно если дело касается факсов и другого материала посредственного качества, стоит подумать о покупке Fine Reader, тем более, что открытый API позволяет интегрировать его в любую корпоративную систему документооборота.

Используя бесплатный аналог ABBYY FineReader вы экономите 3590 рублей.

img2txt

Бесплатная программа img2txt

Windows, Linux, FreeBSD, Mac OS X, Android, iOS, Веб-сервис официальный сайт 06 февраль 2016 Бесплатное ПО - лицензия для личного и коммерческого использования подробнее. Распознавание текста 22

img2txt - онлайн сервис по распознаванию текстов из отсканированных изображений. Сервис работает с английским, русским и украинским языками. Стоит отметить, что загружаемое изображение не должно содержать таблицы, изображения, диаграммы, а также превышать 4 Мб. Кроме того, оно должно быть представлено в одном из следующих форматов: jpg, jpeg, png. подробнее.

Бесплатная программа www.free-ocr.com

Windows, Linux, FreeBSD, Mac OS X, Android, iOS, Веб-сервис официальный сайт 06 февраль 2016 Бесплатное ПО - лицензия для личного и коммерческого использования подробнее. Распознавание текста 17

Free Online OCR

Бесплатная программа Free Online OCR

Windows, Linux, FreeBSD, Mac OS X, Android, iOS, Веб-сервис официальный сайт 06 февраль 2016 Бесплатное ПО - лицензия для личного и коммерческого использования подробнее. Распознавание текста 38

Free Online OCR - бесплатный онлайн сервис для распознавания текста. К достоинствам аналога ABBYY FineReader можно отнести хорошее качество распознавания текста; неограниченное количество загрузок; работа с 70 языками, в том числе русским; распознавание текста, содержащего сразу несколько языков; отсутствие регистрации. Free Online OCR предоставляет возможность выделять, а также разворачивать часть документа, предназначенную для дальнейшей обработки. Распознает следующие форматы: JPEG, JFIF, PNG, GIF, BMP, PBM, PGM, PPM и PCX. Работает с такими форматами сжатия как Unix compress, bzip2, bzip и gzip; со следующими мультистраничными документами: TIFF, PDF и DjVu. Распознает файлы DOCX и ODT с изображениями. Работает с ZIP архивами. Результат может быть получен в виде простого текста (TXT), документа Microsoft Word (DOC) и PDF-файла Adobe Acrobat. подробнее.

SimpleOCR

Бесплатная программа SimpleOCR

Windows, Linux, FreeBSD, Mac OS X официальный сайт 06 февраль 2016 Бесплатное ПО - лицензия для личного и коммерческого использования подробнее. Распознавание текста 7

SimpleOCR - бесплатное приложение для распознавания текста. Умеет распознавать рукописный текст. Поддерживаемые языки: английский, голландский, французский. Умеет читать изображения со сканера. подробнее.

Бесплатная программа OnlineOCR.net

Windows, Linux, FreeBSD, Mac OS X, Android, iOS, Веб-сервис официальный сайт 14 августа 2017 Бесплатное ПО - лицензия для личного и коммерческого использования подробнее. Распознавание текста 4

Подскажите аналоги finereader или лучше не тратить время на поиски, а под виндой пользоваться этой прогой?


Подскажите аналоги finereader или лучше не тратить время на поиски, а под виндой пользоваться этой прогой?

tesseract может дать более-менее вменяемое качество. Но не finereader конечно. Если не готов жертвовать качеством – то под вайном идет только в путь. 11 версия вроде. Я пользуюсь.

но как только разметка страницы отклоняется от стандартной, то есть появляются картинки, таблицы, вставочки, то tesseract начинает всасывать с заглотом у finereader. Такие вот пироги.


ни разу не пробовал, кстати. Сканирую всегда в pdf другой программой: simple-scan.


Как ни странно finereader который под линукс. Tesseract вполне годно распознает plain text, а вот в форматирование и таблицы не может. Есть некое подобие ocrfeeder, но с finereader не сравнится. Я использую tesseract в составе башскрипта для снятия скриншота и дальнейшего распознавания и вставки без форматирования.

ЕГа е ЕЛО п Шаецето е й Кодде о арДИТе ИЛ сеаа ееа аТОЛ ее) ор ога ЕТеЦИ Ь ЕОа ААа Я- 1еа о1е о оЕН ото ее НЕ ауе ее еЙ тто л келя < уИа КЕЙ Де н оТЯ ИЕВ но с Ппегеайег не сравнится. Я использую ‘еззегас! в составе башскрипта для снятия скриншота и дальнейшего распознавания и вставки без ПУОН ЫЕ Е ОИИВ

вот как tesseract распознал ваш пост :^)

Как ни странно Ппегеачег который под линукс. Теззегас! вполне годно распознает р1атп 1еху, а вот в форматирование и таблицы не может. Есть некое подобие оспеечег, но с Нпегеадег не сравнится. Я использую

еще. непонятно от чего зависит


еще блин результат заманаешься вставлять в лор т.к.

0xc is not a legal XML character


Я как-то пользовался распознавалкой текста, виндовой естественно, так вот, для корректного распознавания текста DPI должно быть не ниже чем 360.

на экране столько нет


Есть апскейл и он помогает. Как доберусь до компа, гляну сколько там dpi в тесеракт передается.


Попробуй поднять dpi в редакторе, может поможет.

в каком редакторе? я поставил 360 - тот же самый результат


Ну значит не прокатило.
Суть в том, что буквы на изображених с низким разрешением получаются слишком скачкообразными и рваными.

В общем попробуй увеличить маштаб в браузере с которого делаешь скриншот.

причём тут масштаб и dpi? оно алфавит не может правильно выбрать.


При том сколько точек на букву.


Отдельный английский или предложения на английском распознает замечательно.

P.S. У меня апскейл средствами image-magic 300%.

cuneiform 1.1.0 for linux

Как ни странно finereader который под пинукс. Tesseract вполне годно распознает ptain text, а вот в форматирование и таблицы не может. Есть некое подобие ocrfeeder, но с finereader не сравнится. Я использую tesseract в составе башскрипта для снятия скриншота и дапьнейшего распознавания и вставки без форматирования.

convert -negate -adaptive-resize 300% + cuneiform -f text -l ruseng


cuneiform лучше читает с экрана, а вот сканы увы хуже. Но этому наблюдению уже лет 5, за cuneiform не слежу, он развивается?

P.S. Для распознавания pdf использую pdfxchange viewer в вайне, он работает быстрее чем ocrmypdf+tesseract.

einhander ★★★★★ ( 04.11.20 19:09:38 )
Последнее исправление: einhander 04.11.20 19:12:12 (всего исправлений: 1)

cuneiform лучше читает с экрана, а вот сканы увы хуже

Дык зависит от. Некоторые сканы и tesseract как бессвязную кашу вываливает (и 3-й, и 4-й), а cuneiform их прилично распознает. И наоборот. Так что при распознавании djvu десяток случайных страниц распознаю им и тессерактом, чтобы решить, чем распознавать весь документ. Получается примерно 50/50.

за cuneiform не слежу, он развивается?

По-моему нет, только баги правят. Правда я как его собрал последний раз года полтора назад, так обновления больше и не проверял.

Перацкую венду в виртуалку, в венду перацкий finereader. Рекомендую 14-й, он по-моему самый лучший сейчас из всех версий и лучше последнего сейчас - 15-го.

Где-то так. Opensource-ные OCR - это боль и страдание для серьёзной работы. Хотя если качество распознавания не так важно, как автоматизация, то лучше опенсорс, ибо тут уже проприетарные распознавалки - боль и страдание.

Из опенсорсных - самый лучший это tesseract, на втором месте - cuneiform. Tesseract, если всерьёз использовать, надо натренировать на нужный текст, статьи как это делать гуглятся. Тренированный tesseract заметно лучше распознает, но чудес все-равно не жди

А да, чуть не забыл. Предварительно для тессеракта очень сильно желательно, для файнридер просто желательно обработать и подготовить сканы к распознаванию. Рекомендую с помощью ScanTailor. Если есть время и силы разбираться - ScanKromsator


Cuneiform мне эту программу расхваливали точнее ее версию под windiws. Сам не пользовался.

XoFfiCEr ★★★★ ( 04.11.20 20:47:44 )
Последнее исправление: XoFfiCEr 04.11.20 20:48:11 (всего исправлений: 1)

Cuneiform застыл по качеству примерно в 1999-2000 и с тех пор не развивался. Через лет 9 его движок заопенсорсили, а саму программу перевели во freeware. Надежды на улучшение движка не оправдались, его просто быстро портировали под линукс и с тех пор только мелкие баги правили. А ведь даже теоретический материал выкладывали, но никто не стал в математику лезть

27416

Знаете как называлась эта статья вначале? Она называлась «Бесплатные программы для распознавания текста (OCR) под Windows»… Задумка была рассмотреть программы, которые используют движок для распознавания текста tesseract-ocr (сейчас его развивает Гугл). Сначала намечался обзор по большому количеству программ, потом их осталось три, потом я хотел рассказать о двух программах, которые бесплатные, но могут конкурировать с ABBYY FineReader, затем я решил, что и одна программа — тоже неплохо. Но, в конце-концов, я пришёл к выводу, что программы или бесплатные или хорошие (хотя бы рабочие).

Если вы читаете эту статью, значит с распознаванием текста на Linux мне повезло больше. Почему tesseract-ocr и почему на нём сошёлся свет клином? tesseract-ocr — это бесплатный, с открытым исходным кодом движок, который когда-то давно показывал хорошие результаты, потом долго, до 2006 года его никто не развивал. А с 2006 года за него взялась Гугл. Проект не заброшен, в настоящее время примерно раз в год происходят обновления версии. Гугл некачественно не делает, и сейчас можно констатировать, tesseract-ocr — это хороший бесплатный движок для распознавания текста. Дело в том, что разработать собственную систему OCR, пожалуй, под силу только большим корпорациями и распространяться эта система может, следовательно, только как коммерческий продукт. В результате бесплатные программы для распознавания текста являются, фактически, оболочкой (надстройкой, графическим интерфейсом) для одного или нескольких бесплатных движков распознавания текста. tesseract-ocr — вещь хорошая и распознаёт хорошо (на уровне коммерческих продуктов), но кому интересно работать в командной строке, чтобы её использовать? Кому интересное распознавать по одному изображению? Кто бы отказался от возможности пакетной обработки графических файлов, в том числе PDF, в качественном пользовательском интерфейсе?

Сейчас, по сути, мы и будем оценивать качество реализации пользовательского интерфейса и других полезных функций в программах, которые используют tesseract-ocr в качестве своего движка, важнейшего компонента.

И ещё важное замечание. Если кто-то ругает бесплатную программу для распознавания текста, это совсем не значит, что программа плохая и что она будет плохо работать. Вполне возможно, что тот, кто ругает программу по распознаванию текста (особенно указывая на низкое качество распознавания), использует другой движок, другой OCR (например, вместо tesseract-ocr использует cuneiform или какой-нибудь ещё). Не нужно этому доверять. В программе (многие из них это поддерживают), просто выберите хороший движок OCR и, весьма вероятно, результат вас поразит.

Итак, приступим к тестированию хороших прграмм для распознавания текста (OCR) под Linux.

Предварительная подготовка

  • tesseract-ocr — движок для распознавания текста (может использоваться в командной строке)
  • tesseract-ocr-rus — содержит дополнительные данные для русского языка
  • cuneiform — ещё один движок OCR

Официальный сайт программы, на котором вы можете найти разные ссылки, в том числе на скомпилированные пакеты, исходный код, блог автора (там есть его семейная фотография — мне было любопытно посмотреть) и пр.

В репозиториях Linux Mint версия OCRFeeder 0.7.11, а последней версией, выпущенной автором, является OCRFeeder 0.8.1. Свежие версии добавили новые функции (например, поддержка многостраничных файлов изображений TIFF) и исправили разные ошибки. Поэтому если вы можете ставить программы из исходных кодов — то стоит сделать так.

Все остальные, ставьте из репозитория, даже та версия, которая там есть, работает прекрасно.

После установки в меню «Офис» появляется значок программы. Запускаем её. Всё интуитивно понятно. Можно целиком импортировать PDF файл. Можно распознавать отдельные страницы или файл полностью. Результат распознавания текста выше всякий похвал! Я специально взял для пример PDF файл со средним качеством сканирования.

Я в восторге от программы: распознаёт быстро, поддерживает пакетную обработку изображений, без проблем импортирует PDF файлы, может распознавать как по одной странице, так и весь файл целиком, высокое качество распознавания текста (сильно зависит от качества сканирования!), можно сохранить все распознанные страницы в один файл, можно сохранять в .odt (формат LibreOffice). Я попробовал ещё один документ, с высоким качеством сканирования — результат отличный.

27418

Следующей в нашем почётном списке качественных программ для распознавания текста становится YAGF.

Думаю, что русскоговорящим будет особенно приятно узнать, что автором является русскоговорящий Андрей Боровский (не знаю где он живёт и какое у него гражданство). Русскоязычная страничка программы здесь.

Программа активно развивается, и опять, в репозитории только версия YAGF 0.9.2 от 3 сентября 2012 года (!), а крайней, которую выпустил автор, является YAGF 0.9.5 от 28 января 2015 года. За это время была добавлена поддержка многостраничных TIFF изображений, импорт DjVu, автосохранение, новые языки и т. д. Поэтому если вы знаете, что нужно делать с тарболом, то рекомендую ставить из исходных кодов. Остальные довольствуемся тем, что есть в репозитории.

После установке в меню Офис появится ещё один значок. Запускаем программу. Всё интуитивно понятно, только при импорте PDF файла программа предлагает выбрать страницы (диапазон страниц), которые нас интересуют и папку, куда будут сохранены промежуточные изображения (на которые будет разбит PDF файл).

Далее всё как и с предыдущей программой: возможность распознать отдельные страницы или файл целиком, высокое качество распознавания, возможность сохранить все страницы в один файл, для сохранения можно выбрать формат простого текстового файла или HTML.

27419

В своём обзоре я использовал не самые новые версии хороших бесплатных программ для распознавания текста на Linux. Я доволен результатом. Будем наедятся, что авторы не забросят свои наработки.

Честно говоря, меня поразила низкая активность пользователей, например, в комментариях (как в репозиториях, так и в блоге OCRFeeder). Неужели это интересно четверым людям? Неужели никто больше не сканирует? Судя по популярности пиратского ABBYY FineReader, вопросы сканирования интересуют очень многих. Пользователи устанавливают в свои компьютеры несколько десятков крякнутых программ, а затем рассказывают, что под Linux нет специализированного софта. Софта предостаточно, и бесплатные версии, доступные для свободной установки на Linux, зачатую, не уступают дорогим коммерческим продуктам под Windows.

Тем не менее, не нужно обольщаться. Экосистема свободного софта довольно хрупкая. Каждая из рассмотренных программ разрабатывается одним человеком. Т.е. если он слишком занят, или потерял интерес — программа становится заброшенной.

Я, как и многие из читающих, не могу помочь написанием кода или материально (мне бы самому кто помог). Но я, как минимум, могу помочь популяризировать проекты с открытым исходным кодом. И многие из читающих это могут сделать — рассказать о них в блоге, на своём сайте или в социальной сети.

Я призываю вас делать это. Не нужно воспринимать программы с открытым исходным кодом (и вообще бесплатные проекты) как данность. Нужно помогать авторам в меру своих сил. Как минимум, то, что может сделать каждый из нас, это рассказать об этих проектах, стремиться сделать их популярными. Ведь популярному проекту проще найти помощь, поддержку среди обширной аудитории.

Читайте также: