I am using the Tesseract OCR engine in an iPhone application to read specific number fields from invoices. Using a lot of pre-processing of photos (adaptive threshold value, cleaning artifacts, etc.), the results are finally quite accurate, but there are still some cases that I want to improve.
If the user takes a photo in low light conditions and there is some noise or artifacts in the image, the OCR mechanism interprets these artifacts as additional numbers. In some rear cases, it can be read, for example, the number "32.15" EUR as "5432.15" EUR, and this is not at all good for the confidence of the end user in the product.
I assume that if there is an internal error reading the OCR engine associated with each character read, it will be higher by the “54” digits of my previous example, since they are recognized by small noise pixels, and if I had access to these read error values, I I can easily discard erroneous numbers.
Do you know any method for obtaining the value of the reading error (or any value of the accuracy coefficient) for each individual character returned using the OCR tesseract mechanism?
source
share