OCR Image Simply – OCR as simple as it can be

Subject of this post is Optical Character Recognition and it’s application – as simple as it can be.

As the name suggests, Optical Character Recognition is all about recognizing letters. OCR is mostly done to non-editable files like images, PDFs, scanned documents, etc.

What OCR really is?

The current technology level provides the possibility to recognize both handwritten and printed text. The magic behind is called Artificial Naural Network. It’s not the right time and place to describe how ANNs work in detail. Generally speaking, Artificial Neural Networks takes some input (e.g. part of an image) and tries to identify some pattern in it. “Patterns” in that case reflect characters in a particular language. In order to make “patterns”, it’s necessary to teach ANN how to recognize them properly. Such a step is called ANN training. ANN training ends when accuracy is sufficient because, in the case of even a little overtrained ANN, the accuracy is much lower. In the end, ANN gives matched patterns with the highest probability.

As you may notice, trainings should be done separately for different laguages either printed or written.

What is the need?

In many cases business users are facing situation when documents are provided as images or PDFs. I bet, none of them enjoy retyping informations with use of keyboard.

Another application may be, for example, automatic recognition of credit card numbers. Yet another car plates recognition (speed cameras) or traffic sign recognition set inside cars. All of them seem to be perfect matches for OCR to be engaged and do the job! But let’s focus on documents.

Solution proposition

Let me introduce you an application I’ve managed to create recently.

“OCR Image Simply” is probably the simplest application ever made to do the trick with Optical Character Recognition. It’s written as a Windows Forms application – which means it can be used almost straight away on Windows.

What is so special about it? Well, it’s safe! It won’t transfer any data outside of your PC (which happens when one uses online solutions).

The heart of the solution is of course OCR engine. It’s implemented through a linked library. The name of the mentioned library is Tesseract (since 2006 developed by Google). I leave a link to more info about this OCR engine HERE.

With the default setup, you can execute recognition of German, English, French, Italian, Polish, Spanish languages. Applied trained ANNs are in version 3.05 (highest possible at the day of publication).

OCR Image Simply screenshot

One remark – I’m not stating “OCR Image Simply” is ideal, but is under MIT license and it’s free for everyone.

Last but not least, you can download a ZIP archive containing “OCR Image Simply” ready for use through the sourceforge.net platform. This is the simplest solution that does not require installation. Keep in mind that unzipped app have to have access to “trained ANNs” by tessdata directory (do not change folder structure). Because of that, try to run it without copying anything out.
You are more than welcome to download and share your thoughts with me.
Here is the link: https://ocr-image-simply.sourceforge.io

A few technical details regarding “OCR Image Simply”:

AuthorMarek Pierścieniak (coolautomations.com)
LanguageC# (.NET Framework 4.7.2)
Integrated Development EnviornmentVisual Studio Community 2019 (16.7.7)
LibrariesTesseract
(NuGet package by Charles Weld – Tesseract engine version 3.05.02)
Requirements to run.NET Framework installed
A few technical details regarding “OCR Image Simply”

Recommended Posts

3 Comments

  1. I did it! “The first pancake is always spoiled” 🙂

  2. Hi Marek,
    I don’t seem to be able to browse/open PDFs, is there a work around?
    Thanks

    • Hi Richard,
      PDF is not an image. Convert your PDF into image (or take a screenshot of the document) – this way it’ll work.


Add a Comment

Your email address will not be published. Required fields are marked *