Tag Archiv: русский

Первые впечатления от OCR-пакета Tesseract 3.0 (установка и работа в Ubuntu) [Обновлено]

Tesseract 3.0

На днях было объявлено о выходе третьей версии пакета распознавания  текста Tesseract.  Вероятно, самым интересным новшеством оказалось  добавление поддержки русского и украинского языков, адекватной работой с которыми до сих пор мог похвастаться лишь Cuneiform

Небезынтересно будет узнать, что  первоначально разработкой этого продукта занималась Hewlett-Packard (начиная с 80-х годов и до середины 90-х), после чего Tesseract был в «замороженном» состоянии, и лишь начиная с 2006го года Google открыл исходные тексты программы и разработка снова сдвинулась с мертвой точки. 

 Учитывая, что в репозиториях Ubuntu доступна лишь ветка 2.х, то я собирал третью версию из исходников. 


Итак, для работы Tesseract нам понадобиться  пакет Leptonica

sudo aptitude install leptonica-progs

sudo ldconfig

и другие необходимые пакеты (которые, возможно, у вас уже установлены)

 sudo aptitude install libpng12-dev libjpeg62-dev libtiff4-dev zlib1g-dev libtool build-essential

Распаковываем исходники и из каталога с распакованными файлами выполняем следующую последовательность команд:

./runautoconf
./configure
make

Если возникают ошибки — устраняем их. Когда эти этапы пройдены, выполняем

sudo checkinstall

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

 Далее положитесь на checkinstall и соглашайтесь с опциями по умолчанию. В результате в системе будет установлен Tesseract 3.0

Пакет подхватывается теми программами, которые работали и со второй версией (например gscan2pdf), но, к сожалению, доступен лишь английский язык и добавление языковых файлов для третьей версии в рабочий каталог программы (/usr/local/share/tessdata/) результата не дал.


Не смотря на присутствие пакетов в каталоге, явное задание языка при помощи опции -l приводило к сообщению вида


Error openning data file /usr/local/share/tessdata/russian.traineddata

Виной тому недоработка программы или же моя ошибка? К сожалению, в документации установка языковых файлов рассматривается вскользь, и для ветки 2.х. Таким образом, самая любопытная заявленная возможность — поддержка русского и украинского языков — пока остается «за кадром». Хочется верить, что эта проблема будет решена в ближайшее время, и быть может одним из читателей этого блога ;).

Итак, разобрался с проблемой при работе из консоли. 

(Спасибо zdenko podobny за помощь и внимание). Следует отметить, что я вводил полное название языка, а следовало лишь трехбуквенный код согласно начала имени файла. Кроме того, на скопированные файлы пришлось поставить права доступа 777

sudo chmod 777 /usr/local/share/tessdata/*.traineddata
Таким образом удалось заставить работать программу из конзоли, пример

tesseract image.tiff textukr -l ukr

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

Выкладываю также свой полученный deb-файл (для архитектуры amd64) на локальном ftp и файлообменнике для интернет-пользователей. Используйте на свой страх и риск.

p.s. Ниже прикладываю пример распознавания текста на украинском языке:

Випереджувальні темпи зростання зовнішньоторговельного
обороту, іноземних інвестицій, збільшення частки зовнішньоекономічних
операцій у валовому внутрішньому продукті різних країн та інші
кількісні показники характеризують рух країн у напрямі глобалізації.
Орієнтація багатьох економічних систем на побудову ринкової
моделі господарювання потребує розвитку всебічних міжнародних
економічних зв’язків з метою реалізації економічного потенціалу країни
на зовнішньому ринку. Без цього неможливо цивілізовано побудувати
ринок, перейти на інтенсивну модель економічного зростання, посісти
достойне місце у світовій економічній системі господарювання.
У визначенні стратегії і тактики інтегрування економіки країни
до світового економічного простору домінують дві точки зору. Періпа
грунтується на тезі швидкої (шокової) лібералізації зовнішньо-
економічних зв’язків (неолібералізм), друга (градуалізм) — на
поступовому переході до « відкритості» економіки, що передбачає
поетапний процес, який має свою структурну специфіку і потребує
активної ролі держави у даній сфері взаємовідносин.
Теоретично неолібералізм передбачає повсюдне згортання
господарської діяльності держави, форсування інтернаціоналізації
економіки, гомогенізацію світогосподарських механізмів регулювання
шляхом надання стихійному ринку повної свободи і забезпечення
умов вільної конкуренції. Постулюється, що формування єдиного
глобального ринку зумовить таке зростання ефективності, яке зможе
забезпечити загальний добробут.
Підґрунтям концепції «шокової терапії» е ідеї монетаристів, які
виходять з того, що ринок — це найбільш ефективна форма організації
економічної системи, яка здатна до самоорганізації, тому трансформація
перехідного періоду має відбуватися за мінімальною участю держави.
Основне завдання держави — підтримка стійкої фінансової системи,
оскільки без стабільної грошової одиниці ринок ефективно
функціонувати не може. Саме тому підтримка стабільного валютного
курсу і гальмування зростання інфляції, на їх думку, є основними
завданнями. Головним інструментом антиінфляційної політики
монетаристи вважають одночасну лібералізацію цін і різке скорочення
державних витрат. Слід зауважити, що особлива роль у даній моделі
трансформування економічної системи відводиться міжнародним
економічним організаціям як координаторам, які реалізують курс на
лібералізацію господарської політики.
4

Исходный файл в tiff формате выглядел так (нажмите, чтобы увеличить):

Решение проблемы с набором русских букв в Ubuntu 10.04 в отдельных программах

Ранее я уже писал о проблеме с набором русских букв в Opera 10.53. То, что я вначале принял за недоработку Opera, оказалось особенностью Ubuntu 10.04 с локалью ru_UA
Как выяснилось, русские буквы перестали набираться и в wine-приложениях (и возможно, что wine и opera перечень не ограничивается).
Разработчики Ubuntu в версии 10.04 решили, что локаль теперь обозначается как ru_UA.utf8, тогда как Opera и wine ожидают ru_UA.UTF-8. 

Проблему решает выполнение следующей команды, которая добавит необходимые настройки в профиль:


echo «export LC_ALL=ru_UA.UTF-8» >> ~/.profile

 Так же можно, не дожидаясь перезагрузки, выполнить сразу

  export LC_ALL=ru_UA.UTF-8

За решение спасибо  Русскоязычному сообществу Ubuntu Linux

Если не набирается русский текст в Opera, а также Opera как браузер по умолчанию.

В репозиторий Ubuntu поспешили добавить бета-версию браузера Opera ветки 10.50, тогда как на сайте Opera для Linux все еще в качестве стабильной рекомендуют 10.10.
Как оказалось, в новой Opera присутствует проблема невозможности набора русских (и украинских) букв.  При выборе русской/украинской раскладки текст в полях для ввода  на страницах при наборе просто не появляется.

Эта проблема возникла не только у меня, а и у знакомых, которые используют Opera в Ubuntu. Хочется надеяться, что данная проблема будет устранена в ближайшее время, а пока я советую вернуться на стабильную версию.

Обновлено: проблема оказалась глобальной и подробнее рассмотрена  здесь.

Для этого удалите имеющуюся версию:

sudo aptitude remove opera

 и установите 10.10 прямо с сайта Opera. Сообщение о том, что в репозитории доступна более новая версия просто игнорируйте.

p.s. Если вы хотите сделать Opera браузером по умолчанию, то это вы сможете сделать при помощи выполнения в конзоли или по ALT+F2 команды

gnome-default-applications-properties

где вы сможете сделать необходимые настройки.

Также доступ к этим настройкам вам доступен через меню под пунктом «Предпочитаемые приложения».