Проблема инициализации tessnet

Мне нужно сделать OCR изображения.jpg. Я много искал и наконец получил "tessnet2". Код выглядит довольно просто, но у меня есть проблема с примером: l

Когда я пытаюсь запустить ocr, мое приложение закрывается и ничего не возвращает. Отладка выглядит следующим образом:

ocr.Init("C:\\Desarrollo\\Prueba\\ConsoleApplication1\\tessdata", "spa", false);

Первый параметр - это путь с включенным "tessdata", не так ли? Второй путь - это язык, который я хочу использовать...

В tessdata у меня есть 8 файлов, которые ему нужны.

Что я делаю не так?

Я использую C# и Visual Studio 2010. Когда я пытаюсь скомпилировать его, я получаю сообщение об ошибке.NET Framework (я использовал 4.0, и мне нужно 2.0, я уменьшаю его и теперь компилирую, но я получаю эту проблему).

Спасибо!

3 ответа

Решение

Я столкнулся с той же проблемой, но обнаружил, что использовал языковой файл для Tesseract 3.0 (не 2.0). Когда я ставил файлы, предназначенные для 2.0, это работало.

Поскольку вы также, похоже, используете 2.0 SDK, загрузите языковые файлы для 2.0 (http://code.google.com/p/tesseract-ocr/downloads/list). Файлы вверху для 3.0. Прокрутите до конца списка.

Я тоже столкнулся с той же проблемой, когда метод tessnet2.Tesseract ocr = new tessnet2.Tesseract(); ocr.Init(@"E:\QAliber\qaliber-code-133\QAliber Engine\OCR\" + @"tessdata\", "eng", false);

не удалось в методе Init(). Это не выдало мне никакой ошибки, но выполнение просто завершилось с кодом выхода 1. Чтобы исправить проблему, я загрузил файлы на английском языке из правильной версии (для меня 2.0) и удалил все ключи в реестре, где я нашел ключевое слово "тессеракт". Затем я перезагрузил машину. Это программа успешно выполняется сейчас. Единственная проблема сейчас в том, что я не получаю правильный результат (высота отрицательна). Я посмотрю на это. Но я счастлив, что по крайней мере моя программа выполняется.

Мой код работает нормально на других машинах, но не работает на одной машине. Я использую VS2010 и Framework 3.5. Контроль автоматически выходит из нижнего кода:

ocr.Init (@ "D: \ path", "eng", false);

Здесь ocr является экземпляром Tesseract().

Другие вопросы по тегам