Файл ".SO" для Tesseract OCR - PullRequest
       5

Файл ".SO" для Tesseract OCR

0 голосов
/ 13 июля 2011

Мне нужно использовать «.so» файл Tesseract OCR (оптическое распознавание символов) для моего приложения для Android.Может кто-нибудь объяснить мне, как получить ".so" файл для Tesseract OCR?

Я пытался импортировать весь проект, который не работает.

Ответы [ 4 ]

2 голосов
/ 24 июля 2011

README, поставляемый с tesseract-android-tools , станет вашим лучшим другом. Я использовал Ubuntu 11.04 в VirtualBox. В Ubuntu (я полагаю, вы захотите перенести их в Windows позже):

1) Скачать Android NDK

2) SVN проект tesseract-android-tools. Я использовал tesseract-android-tools-read-only/tesseract-android-tools/ в качестве каталога $ PROJECT, FYI.

3) Используйте ndk-build (подробно описано в README) для сборки tesseract. Это создаст папку libs в $ PROJECT и три файла .so, которые вам нужны.

Я считаю, что есть способ сделать это с Cygwin, но я не уверен, как, поскольку у меня уже была готовая к использованию виртуальная машина.

Оттуда (используя инструкции на http://code.google.com/p/tesseract-android-tools/updates/list):

4) tesseract tools на самом деле является библиотекой и содержит eclipse .project, поэтому просто импортируйте этот проект после сборки с помощью ndk и создайте его.

5) Установите его как lib: http://developer.android.com/guide/developing/projects/projects-eclipse.html#SettingUpLibraryProject

6) Теперь в том же рабочем пространстве создайте новый проект Android, т.е. ваше приложение. Перейдите к свойствам и обратитесь к библиотеке из шага 3 (http://developer.android.com/guide/developing/projects/projects-eclipse.html#ReferencingLibraryProject)

7) Создайте свое приложение на базе Android 2.2 (мин): http://code.google.com/p/tesseract-android-tools/issues/detail?id=5#c16

И это должно работать!

Обратите внимание, что вы должны использовать Android 2.2 или выше. Надеюсь, это поможет !!

1 голос
/ 06 апреля 2012

@ Раджу: У меня была такая же проблема, как и у вас.После поиска решений я нашел это: http://gaut.am/making-an-ocr-android-app-using-tesseract/

Не знаю, если ваш случай похож на мой!?!Но я разрабатываю с использованием Eclipse под ОС Windows.Блог (предыдущая ссылка) говорит, что это не может быть сделано под Windows, поэтому вы должны использовать Linux (например, Ubuntu в виртуальной машине).Кроме того, в блоге подробно объясняются шаги, которые необходимо выполнить.

@ jmiles Я попытался выполнить «ndk-build» под Ubuntu, а затем перенес результат в Windows.Я построил тессеракт и сделал его «Библиотекой»;однако при попытке распознавания символов всегда возникают ошибки: Вот некоторые сообщения журнала: 04-04 14: 32: 28.569: E / 2130968577 (561): java.lang.IllegalArgumentException: путь к данным должен содержать подпапку tessdata!04-04 14: 32: 28.569: E / 2130968577 (561): на com.googlecode.tesseract.android.TessBaseAPI.init (TessBaseAPI.java:167)

Есть ли у вас @jmiles или @CommonsWare какие-либоИдея о проблеме ??

0 голосов
/ 10 мая 2012

Вам необходимо скачать файл языковых данных для тессеракта и поместить его в папку 'tessdata', а затем инициализировать с ним тессеракт как

TessBaseAPI.init("your language file tessdata folder","language mostly 'eng'");

Теперь это будет работать.

0 голосов
/ 13 июля 2011

Вам потребуется установить Android NDK, преобразовать содержимое Tesseract в расширение NDK и добавить его в свое Java-приложение через JNI. Это вряд ли будет легко. Вы не можете просто взять .so для, скажем, Linux и вставить его в свой проект.

...