Попытка заставить Tess4J работать

Я пытался, пока безуспешно, заставить Tess4J работать на NetBeans. Я следую инструкциям здесь: - http://tess4j.sourceforge.net/tutorial/

Я следил за ним слово в слово, но получил это сообщение об ошибке: -

"Ошибка при открытии файла данных ./tessdata/eng.traineddata. Убедитесь, что для переменной среды TESSDATA_PREFIX задан родительский каталог вашего каталога "tessdata". Ошибка загрузки языка 'eng' Tesseract не может загрузить ни один язык!"

Может кто-нибудь сказать мне, что это значит, пожалуйста, и как это исправить?

У меня есть скриншот проекта в NetBeans: -

введите здесь описание изображения


person Jeremy Watts    schedule 26.08.2018    source источник
comment
Вы на машине с Windows?   -  person sorifiend    schedule 26.08.2018
comment
Вы рассматривали возможность установки переменной среды, на которую он жалуется?   -  person    schedule 26.08.2018
comment
@sorifiend Да, я   -  person Jeremy Watts    schedule 26.08.2018
comment
@feelingunwelcome Я должен признать здесь свое невежество. Я делаю все это как проект для работы. Несмотря на то, что мои навыки программирования неплохи, я не самый ИТ-специалист. Я даже не знаю, что он говорит или означает, не говоря уже о том, как с этим бороться. Я погуглил ошибку и не нашел многого, что проливает свет.   -  person Jeremy Watts    schedule 26.08.2018
comment
У меня есть идея, @sorifiend, и я говорю серьезно. Я заплачу вам за удаленное управление моим ноутбуком и настройку его для меня. Я серьезно. Я буду paypal вам деньги. Дайте знать, если вас это заинтересовало.   -  person Jeremy Watts    schedule 27.08.2018
comment
@JeremyWatts Я бы предпочел ответить только здесь, чтобы вы могли сделать это сами. Вам необходимо скачать eng.traineddata отсюда: github.com/tesseract- ocr/tessdata/raw/master/eng.traineddata, а затем поместите его в папку tessdata внутри папки вашего проекта.   -  person sorifiend    schedule 28.08.2018


Ответы (3)


Установите полный путь к данным, как показано ниже:

process.setDatapath("F:/Jar/Tess4J-3.4.8-src/Tess4J/tessdata");

Или поместите файлы tessdata в корневой каталог проекта. Он должен работать нормально.

person Md. Golam Mostafa    schedule 25.07.2019

Дополнительные необходимые файлы отсутствуют в ваших переменных среды.

Мы можем видеть на странице инструкции, которую вы связали:

Поскольку библиотеки DLL созданы с использованием Visual Studio 2015/2017, убедитесь, что у вас установлен распространяемый компонент Visual C++ 2015 или VC++ 2017.

Самый быстрый способ решить ваши проблемы — убедиться, что у вас установлен распространяемый пакет VC++ 2017.

В качестве альтернативы вы можете получить необходимые файлы в другом месте и вручную добавить их в местоположение вашего проекта или в другое место в вашем пути к классам.

Изменить: если вы не работаете на компьютере с Windows или просто хотите полностью собрать библиотеку, см. здесь: https://github.com/tesseract-ocr/tesseract/wiki/Compiling

person sorifiend    schedule 26.08.2018
comment
Почему минус? Пожалуйста, добавьте комментарий или сделайте предложение, если есть проблема. - person sorifiend; 26.08.2018
comment
Я установил распространяемый пакет VC++ 2017, и мне все еще не удалось его запустить. - person Jeremy Watts; 26.08.2018
comment
@JeremyWatts Вы знаете, где находится ваша папка tessdata? Если вы следовали руководству, они должны находиться в корневом каталоге вашего проекта. В Netbeans выберите представление «Файлы», и оно должно появиться. Если его нет, то это ваши проблемы. Если он есть, то убедитесь, что он содержит файл eng.traineddata. - person sorifiend; 26.08.2018
comment
Хорошо, да, вам нужно захватить языковые пакеты. См. этот вопрос и ответы для получения большого количества полезной информации: stackoverflow.com/questions/ 14800730/tesseract-running-error В частности, вы можете найти их все здесь: github.com/tesseract -ocr/tessdata - person sorifiend; 26.08.2018
comment
Прогулка в Интернете, которую я видел, пытаясь установить эту штуку, началась с поиска проекта Tess4J, а затем перетаскивания файлов из него в новый проект под названием OCR (или какое-то другое имя). Не лучше ли импортировать проект Tess4J в тот, над которым вы работаете? - person Jeremy Watts; 27.08.2018
comment
Если вместо этого вы используете Tess4J в связанном проекте, это нормально, но вам нужно включить файл eng.traineddata в этот проект, потому что в настоящее время он отсутствует. - person sorifiend; 27.08.2018
comment
Хорошо, я начал все это снова, используя это пошаговое руководство: - tess4j.sourceforge.net/tutorial Я следовал примеру NetBeans дословно, но все равно не смог заставить его работать. Файл eng.traineddata определенно находится в папке tessdata, но я все еще получаю сообщение об ошибке «Не удалось загрузить язык eng». Tesseract не может загрузить ни один язык! Тем не менее, eng.traneddata определенно находится в папке tessdata. - person Jeremy Watts; 16.09.2018
comment
Попробуйте тогда поместить eng.traneddata его в корневую директорию проекта. Я могу только догадываться, потому что вы сказали, что следовали всем инструкциям, но похоже, что ваша IDE по какой-то причине не знает о папке tessdata. Также убедитесь, что папка tessdata находится в том же месте, что и файл tess4j.jar lib. - person sorifiend; 16.09.2018

Экземпляр ITesseract = новый Tesseract();
instance.setDatapath(C:\Users\Tux\Documents\tessdata);

это сработало для меня. вы можете поместить языковой файл в папку «tessdata». вы можете создать папку tessdata в любом месте

person Tumi Madi    schedule 03.04.2021