Я столкнулся с проблемой при использовании библиотеки tesseract.Я успешно скомпилировал leptonica и tesseract libs, с VS2017 .Теперь я использовал эти библиотеки в проекте MFC, где они скомпилированы без ошибок.Вот код:
tesseract::TessBaseAPI api;
if (0 != api.Init(NULL, _T("eng"), tesseract::OEM_DEFAULT))
{
m_sState.Format(_T("tesseract initialize error"));
return FALSE;
}
ничего не усложняет, ничего плохого ... но я столкнулся с 2 проблемами:
- Даже этот код выполняется или нет, у меня огромная утечка памяти.
Обнаружены утечки памяти!Выгрузка объектов -> {65734} нормальный блок в 0x014EEB88, длиной 24 байта.Данные: 10 00 00 00 08 00 00 00 46 58 44 65 62 75 67 00 {65733} нормальный блок в 0x014EEB40, длиной 24 байта.Данные: 10 00 00 00 08 00 00 00 46 58 44 65 62 75 67 00 {65732} нормальный блок с 0x03880908, длиной 8 байт.Данные: <> 10 BE 96 0F 00 00 00 00 {65731} нормальный блок с 0x014EBDA8, длиной 32 байта.Данные: A8 BD 4E 01 A8 BD 4E 01 A8 BD 4E 01 01 01 CD CD {65730} нормальный блок 0x03880A20, длиной 8 байт.Данные: <> 04 BE 96 0F 00 00 00 00 {65729} нормальный блок в 0x014EE990, длиной 24 байта.
Каждый раз, когда выполняется этот код, приложение отправляется по маршруту «ошибка инициализации tesseract».Я не понимаю, почему ...
Я пытался запустить этот проект на VS2017 в Win10 64bit, все библиотеки и мой проект скомпилированы как Debug ... ifэтот вопрос ... можете ли вы помочь мне использовать tesseract для чтения простых изображений?
Последнее редактирование: Когда я включаю этот код в консольное приложение:
#include <leptonica/allheaders.h>
#include <tesseract/baseapi.h>
int main()
{
std::cout << "Hello World!\n";
tesseract::TessBaseAPI api;
if (0 != api.Init(NULL, NULL))
{
std::cout << "tesseract initialize error\n";
std::cout << "Last error:" << GetLastError() << std::endl;
}
}
я получаюследующие сообщения об ошибках:
Hello World!
Error in pixReadMemTiff: function not present
Error in pixReadMem: tiff: no pix returned
Error in pixaGenerateFontFromString: pix not made
Error in bmfCreate: font pixa not made
Error opening data file C:\Program Files (x86)\Tesseract-OCR\eng.traineddata
Please make sure the TESSDATA_PREFIX environment variable is set to your "tessdata" directory.
Failed loading language 'eng'
Tesseract couldn't load any languages!
tesseract initialize error
Last error:3
, но у меня нет папки "Tesseract-OCR" в "Program Files (x86)" ...