Есть ли бесплатная библиотека OCR для Android? [закрыто]

148

Я ищу OCR Java, который работает на Android, однако Asprise, похоже, не является независимым от платформы OCR. Есть ли какой-либо OCR с открытым исходным кодом, который я могу использовать для разработки приложений для Android?

user121196
источник
9
Этот вопрос должен быть вновь открыт, это очень важный и действительный вопрос
Утсав Гупта
5
Google недавно выпустил OCR API: developers.google.com/vision/text-overview
Wirling

Ответы:

38

Оптическое распознавание текста может сильно загружать процессор, возможно, вы захотите пересмотреть это на смартфоне.

Кроме того, насколько мне известно, популярными библиотеками OCR являются Aspire и Tesseract . Ни один из них не является прямым Java, так что вы не получите встроенную библиотеку Android OCR.

Тем не менее, Tesseract имеет открытый исходный код (размещенный на GitHub infact); так что вы можете потратить некоторое время на портирование нужного вам набора на Java. Насколько я понимаю, это не безумный C ++, поэтому, в зависимости от того, насколько сильно вам нужно OCR, это может стоить времени.

Итак, короткий ответ: Нет.

Длинный ответ: если вы готовы работать на это.

Кевин Монтроз
источник
2
перенося его, вы имеете в виду переписать подмножество в Java? Это может занять много усилий, так что там нет 100% Java OCR?
user121196
13
Я бы порекомендовал попробовать обернуть Tesseract в слой JNI через Android NDK, а не пытаться перенести его на Java Android. Тессеракт, похоже, уже портирован на ARM, поэтому проще установить поверх него JNI API. Кроме того, это поддерживает скорость (эр), чем любой порт Java, и упростит долгосрочное обслуживание.
CommonsWare
15
Уже существует интерфейс JNI Tesseract для Java под названием Tessjeract. code.google.com/p/tesjeract
sventechie
1
Тессеракт не будет в нескольких минутах ходьбы от C до Java. Код, который я видел, очень идиоматичен в 80-х, и его нелегко перенести на другие языки.
плинтус
2
@ Винсент исчез в прошлом году. Теперь доступна версия JNA: github.com/nguyenq/tess4j, но также и Android-форк: github.com/rmtheis/tess-two
sventechie
21

У меня довольно много удачи с tesseract-android-tools

Бен Пирсон
источник
Вопрос закрыт, но хорошо бы найти кого-то, у кого были положительные результаты. Очень сложно найти людей в этих проектах типа sourceforge. Вопрос: пробовали ли вы Tesseract с изображениями паспортов или документов, удостоверяющих личность? С текстовыми PDF-файлами все в порядке, но я борюсь с изображениями.
PKHunter
Я не пробовал ничего с изображениями, это был просто документ с текстом (тот же шрифт, шрифт, размер)
Бен Пирсон,
Я надеюсь, что это работает для меня
Романтик Электрон
20

Другим вариантом может быть отправка изображения в веб-приложение (возможно, в более поздний момент) и его обработка OCR там без проблем с портом C ++ -> Java и, возможно, засорение мобильного ЦП.

Жако
источник
очень хорошая идея: я предполагаю, что вы имели в виду веб-сервис (asmx), спасибо
Omidoo
4

Да, есть.

Но OCR очень обширный. Я знаю приложение для Android, которое имеет функцию распознавания текста, но это может быть не тот вид распознавания, который вы ищете.

Это приложение с открытым исходным кодом называется Aedict , и оно выполняет распознавание рукописных японских символов. Это не так медленно.

Если это не то, что вы ищете, уточните, какие символы и какой ввод данных (история касания XY).

Николас Рауль
источник
2

Вы можете использовать читатель OCR Google Docs .

richardwiden
источник
Разместил этот ответ на другом вопросе, который был помечен как дубликат этого, поэтому я подумал, что я мог бы также опубликовать его здесь
richardwiden
1
Не актуальная ссылка на документацию
Владимир