LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Implementing Tesseract DLL files in labview

Hey everybody 

 

I am tring to solve the task of making a small program that will use the dll files from google's tesseract project in a labview VI:
https://code.google.com/p/tesseract-ocr/

 

I want to compare the built in vision OCR to the performance of the Tesseract code and compare the two. 

 

 

Has anyone been successful in doing so? It seems no matter which version of the tesseract software I install it will not accept the dll files when trying to make a constuctor Node. 

The furthest I got was downloading some .net wrapper of nuget:

https://www.nuget.org/packages/Tesseract/

Building the project and then using the dll from that. Labview accepts this dll but I run into an error that says:

Error 1172 occurred at Constructor Node Error creating instance of TesseractEngine in assembly Tesseract.TesseractEngine, Tesseract, Version=2.4.1.0, Culture=neutral, PublicKeyToken=ebeb3d86bef60cbe, (System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
Inner Exception: System.DllNotFoundException: Failed to find library "liblept168.dll" for platform x86.)

 

 

0 Kudos
Message 1 of 4
(4,714 Views)

bump 🙂

0 Kudos
Message 2 of 4
(4,657 Views)

For anyone who stumbles on this post as I did, I had the same error, I have a solution. It took me a long time to figure out where Tesseract was looking for the DLLs when being run as an EXE. The LabVIEW build application puts DLLs into a sub directory called 'data'. This is fine for the 'Tesseract.dll' but liblept172.dll and libtesseract304.dll need to go in different directories. What I ended up doing was placing the x86 & x64 directories in the same directory as the executable. x86 & x64 contain the respective builds of liblept172.dll and libtesseract304.dll.

 

The directory structure ends up looking like this:

 

..\My Application\data\Tesseract.dll

..\My Application\x64\liblept172.dll

..\My Application\x64\libtesseract304.dll

..\My Application\x86\liblept172.dll

..\My Application\x86\libtesseract304.dll

..\My Application\My Application.exe

 

By the way the x64 directory is not required, I think because LV is x86. I just included it to help illustrate what's required.

 

I used a .Net wrapper for Tesseract that can be found here:

https://github.com/charlesw/tesseract

 

I followed, after a while, the troubleshooting steps contained in the Wiki there.

 

0 Kudos
Message 3 of 4
(3,718 Views)

Hi ,

Is there any possibility of finding the text size using Tesseract DLL.

Please advice if any possibilities available.

 

 

0 Kudos
Message 4 of 4
(3,510 Views)