Analyze easily document files with AI: Optical Character Recognition OCR
Published: 2022-08-05 14:24:50

_This article is brought to you by the Eden AI team. We allow you to test and use in production a large number of AI engines from different providers directly through our API and platform. You are a solution provider and want to integrate Eden AI, contact us at : contact@edenai.co._

## Intro:

In this article, we are going to see how we can easily integrate a Optical Character Recognition (OCR) engine in your project and how to choose and access the right engine according to your data.

## Definition:

Optical Character Recognition, also called OCR, is a technology that recognizes text within a digital image. The basic process of OCR involves examining the text of a document and translating the characters into code that can be used for data processing. OCR engines are made up of a combination of hardware and software that is used to convert physical documents into machine-readable text. Hardware to copy or read text while software typically handles the advanced processing.

## History:

OCR traces its roots back to telegraphy. On the eve of the First World War, physicist Emanuel Goldberg invented a machine that could read characters and convert them into telegraph code. In the 1920s, he went a step further and created the first electronic document retrieval system.

Early versions of OCR had to be trained with images of each character and were limited to recognising one font at a time. In the 1970s, inventor Ray Kurzweil commercialised “omni-font OCR”, which could process text printed in almost any font.

OCR Technology became popular in the early 1990s while attempting to digitize historic newspapers. In the early 2000s, OCR became available online as a cloud-based service, accessible via desktop and mobile applications.

Today, there’s a host of OCR service providers offering technology (often accessible via APIs) capable of recognising most characters and fonts to a high level of accuracy.

## Use cases:

You can use OCR in numerous fields, and sometimes specific models are trained for those fields. Here are some common use cases:

- healthcare: digitize a patient’s entire medical history: health reports, X-rays, disease history, treatment tracking, diagnoses, hospital records, insurance coverage, payments
- banking: leverages image processing to reliably convert scanned documents from images into searchable PDF files, allowing for specific information retrieval with keyword search.
- legal: scanning, storage, and preservation in searchable databases are now possible for all printed documents: affidavits, judgments, declarations, notices, wills, etc.
- supply chain: read instantaneous batch codes, expiration dates and serial numbers
- insurance: claims processing can be automated by OCR and supporting technologies

## The Multi cloud approach

When you need a OCR engine, you have 2 options:

- First option: multiple open source OCR engines exist, they are free to use. Some of them can be performant but it can be complex to set up and use. Using an open source AI library requires data science expertise. Moreover, you will need to set up a server internally to run open source engines.
- Second option: you can use engines from your cloud provider. Actually, cloud providers like Google Cloud, AWS, Microsoft Azure, Alibaba Cloud or IBM Watson are all providing multiple AI engines including OCR. This option looks very easy because you can stay in a known environment where you might have abilities in your company and the engine is ready-to-use.

The only way you have to select the right provider is to benchmark different providers’ engines with your data and choose the best OR combine different providers’ engines results. You can also compare prices if the price is one of your priorities, as well as you can do for rapidity.

This method is the best in terms of performance and optimization but it presents many inconveniences:

- you may not know every performant providers on the market
- you need to subscribe and contract with all providers
- you need to master each providers API documentation
- you need to check their pricings
- You need to process data in each engine to realize the benchmark

Here is where Eden AI becomes very useful. You just have to subscribe and create an Eden AI account, and you have access to many providers engines for many technologies including OCR. The platform allows you to benchmark and visualize results from different engines, and also allows you to have centralized cost for the use of different providers.

Eden AI provides the same easy to use API with the same documentation for every technology. You can use the Eden AI API to call OCR engines with a provider as a simple parameter. With only a few lines, you can set up your project in production.

## Test:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/clsi7q5f48kc9gj8b4k5.png) 
Eden AI python SDK for OCR

### Result:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bfkabl8d693ym2l2c92s.png) 
Eden AI python SDK result for OCR

### Platform:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/af1droktu10sqdxj3l6i.png)
 Eden AI Platform for OCR

## Conclusion:

There are numerous OCR engines available on the market: it’s impossible to know all of them, to know those who provide good performance. The best way you have to integrate OCR technology is the multi-cloud approach that guarantees you to reach the best performance and prices depending on your data and project. This approach seems to be complex but we simplify this for you with Eden AI which centralizes best providers APIs.