Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
4.0 Accuracy and Performance
See testing section in https://github.com/tesseract-ocr/docs/blob/master/das_tutorial2016/7Building%20a%20Multi-Lingual%20OCR%20Engine.pdf for accuracy rates for different languages.
Big test in Google Data Center (Hindi?)
|Engine||Total char errors||Word Recall Errors||Word Precision Errors||Walltime||CPUtime*|
Note in the above table that LSTM is faster than Tess 3.04 (without adding cube) in both wall time and CPU time! For wall time by a factor of 2.
Median of three results from test on HP Z420 on a single Hindi page.
|Original (cube + tess)||7.6||7.3|
|LSTM With OpenMP+AVX||1.8||3.8|
|LSTM No OpenMP with AVX||2.7||2.4|
|LSTM No OpenMP with SSE||3.1||2.7|
|LSTM No OpenMP no SIMD at all||4.6||4.1|
My first test with a simple screenshot gave significant better results with LSTM, but needed 16 minutes CPU time (instead of 9 seconds) with a debug build of Tesseract (-O0). A release build (-O2) needs 17 seconds with LSTM, 4 seconds without for the same image.
The slow speed with debug is to be expected. The new code is much more memory intensive, so it is a lot slower on debug (also openmp is turned off by choice on debug). The optimized build speed sounds about right for Latin-based languages. It is the complex scripts that will run faster relative to base Tesseract.