Skip to main content
No items found.
logo dropboxsign
Why Dropbox Sign?
Expand or collapse accordion

What you can do

Sign documents online
Create electronic signatures
Choose or create templates
Fill and sign PDFs
Complete online contracts
Document management
Explore features
icon arrow right

Use cases

Sales and business development
Human resources
Startups
Financial technology
Real estate
On-demand services
Products
Expand or collapse accordion
icon dropbox
Sign
Make it easy to send and sign
icon dropbox
Sign API
Integrate eSign in your workflow
icon dropbox fax
Fax
Send faxes without a fax machine
icon dropbox integrations
Integrations
We meet you where you work
Resources
Expand or collapse accordion
Blog
Workflow expertise & product news
Customer stories
Real-world stories with real results
Help center
In-depth guidance for our products
Resource library
Reports, videos, and info sheets
Developers
Pricing
Expand or collapse accordion
Dropbox Sign pricing
Find the right plan for you
Dropbox Sign API pricing
Real-world stories with real results
Contact sales
Sign up
Contact Sales
Sign in
Expand or collapse accordion
Dropbox Sign
Dropbox Forms
Dropbox Fax
Free trial
Blog
/
Developers

Best Free and Open Source Optical Character Recognition (OCR) Software

by 
Shweta Goyal
April 29, 2022
8
minute read
Best Free and Open Source Optical Character Recognition (OCR) Software editorial illustration
icon tooltip

New look, same great product! HelloSign is now Dropbox Sign.

icon close

There are multiple benefits to digitizing documents for your business, but once a text document has been turned into a PDF, how do you search or edit the text? There are programs available to solve this problem, and many of them are both free and open source.


Optical character recognition (OCR) software allows you to convert non-editable files, like PDF files or images, into editable text. There are multiple OCR tools on the market. This roundup will compare some of the best free, open source OCR tools so that you can choose one for your projects.

‍

How Does OCR Software Work?

OCR software identifies text from scanned documents or images and converts the text into a searchable or editable format, such as Microsoft Word or plain text. These tools can work with cloud storage providers so that your organization’s invoices or other documents are both easier to manage and easily retrievable.

‍

What Are the Challenges of OCR Tools?

There are specific challenges involved in using OCR software, which the tools listed are designed to address. Those challenges include:


Accuracy — OCR tools aren’t always 100 percent accurate and might not be able to recognize every letter or number in a document. You can improve accuracy through pre-processing, correcting the image by sharpening it and smoothing it out, or post-processing, detecting and correcting errors. Tesseract, for instance, offers pre-processing like noise removal and erosion. EasyOCR offers automatic pre-processing, while PaddleOCR provides post-processing. Tools that use deep learning algorithms have a special advantage in terms of increasing accuracy.


Language support — OCR tools need to be able to work with multiple languages since there’s no guarantee that your organization’s documents will all be in English. Tesseract, EasyOCR, and PaddleOCR support more than fifty languages. CognitiveOCR, however, only supports up to thirty languages at the time of writing.

‍

Why Do You Need OCR Software?

OCR tools help you eliminate the manual work of editing or accessing documents, saving you both time and money. You can more efficiently access and edit vital information. Because you can easily digitize and share your organization’s paperwork, you can fully achieve a paperless office.

‍

Why Have These OCR Tools Been Chosen?

There are multiple options for OCR software, and many offer different features and functionalities. The section below contains a roundup of five free, open source OCR programs, based on several factors: how well they integrate with other tools, how actively they’re maintained, community support, accuracy, what languages they support, GPU optimization, and whether they offer wrappers or libraries for multiple programming languages.

‍

Best Free, Open Source OCR Software

‍

Tesseract

Tesseract was developed by Hewlett-Packard, then released as an open source program by HP and the University of Nevada, Las Vegas. Tesseract 4 uses a neural network (LSTM) OCR engine for line recognition, while Tesseract 3 uses a legacy OCR engine for character pattern recognition.


Tesseract’s OCR engine uses the Leptonica library for opening images in TIFF, PNG, and JPG format, and it provides output in PDF, hOCR (HTML), TSV, or plain text. It’s available for Windows, Linux, and macOS X. It can be used directly via the command line or with its API.


Tesseract integrates with multiple tools available for mobile, iOS, and other systems. It can also be integrated with third-party tools to work with graphical user interfaces (GUIs). The GitHub organization is actively maintained as tesseract-ocr with over fourteen repositories. At the time of writing, Tesseract’s main repository has 43.8k+ stars and 7.8k+ forks.


Tesseract also offers excellent community support, with various projects like Tesseract Polish, Tesseract models for Indian Languages, and Ancient Greek OCR. You can find more community projects in the documentation.


The accuracy of the output depends on various factors like language, image quality, data trained, page segmentation, and engine. For better accuracy, you can preprocess images using tools like OpenCV or ImageMagick to perform noise removal, scaling, binarization, rotation, image inverting, dilation, and erosion.


Half of the code was originally written in C and half in C++, then compiled as C++. Tesseract is compatible with various programming languages and has wrappers available in Java, Python, Ruby, and Swift, among others.


At the time of writing, Tesseract supports Unicode (UTF-8) and now recognizes more than one hundred languages, including Spanish, Latin, and Hindi. It can also be trained to work in other languages. By default, it uses English for processing, but you can use `-l` to add another language or `+` for a combination of languages.

‍

EasyOCR

EasyOCR was developed by Jaded AI. Built on top of the PyTorch library and text detection and recognition models, EasyOCR integrates OCR algorithms like:


  • Text detection model: Character Region Awareness For Text Detection (CRAFT)
  • Text recognition model: ResNet for feature extraction, long short-term memory (LSTM) for sequence labeling, and connectionist temporal classification (CTC) decoding (CRNN for end-to-end trainable model).
  • It is growing fast and actively maintained on GitHub with 13.7k stars and 1.8k forks.


EasyOCR has good community support, and serves as a dependency for multiple other GitHub repositories. Because it’s built on the PyTorch library, it’s more accurate. You do not need to do image preprocessing, which can be done automatically.


By default, EasyOCR uses GPU for computing, which increases its OCR speed. If you want to use CPU mode, which is slower than Tesseract, you need to set `gpu=false`. You need a GPU accelerated environment if you want to use GPU.


At the time of writing, EasyOCR currently supports eighty-three languages, including Polish, Tamil, Swedish, and Thai. It can read multiple languages at once, but they must be compatible with each other. It is a Python package and supports only the Python programming language.

‍

PaddleOCR

PaddleOCR, developed by Baidu, is based on the deep learning framework PaddlePaddle (PArallel Distributed Deep LEarning). It supports Linux, Windows, macOS, and other systems.


PaddleOCR consists of an ultra-lightweight and general OCR model, integrating OCR algorithms like:

  • Text detection models: EAST, DB, SAST
  • Text recognition models: CRNN, Rosetta, STAR-Net, RARE, SRN


You can train and deploy PaddleOCR to servers, mobile (both iOS and Android), embedded, and IoT devices. It has a Paddle Lite library that helps to integrate with cross-platform hardware for easy deployment. It supports both CPU and GPU. For faster computing, GPU is preferred.


PaddleOCR supports the Python programming language, but for inference and deployment, you can use C++ and Python. Various options are available for serving and benchmarks. You can easily install any package using the pip package manager. You can also use this GitHub repo to convert Paddle to PyTorch.


At the time of writing, PaddleOCR is actively maintained and growing fast, with 18.8k stars and 3.9k forks. It offers good community support and serves as a dependency for various GitHub projects.


PaddleOCR isn’t necessarily the most accurate, but after some post-processing, PaddleOCR presents tough competition to Tesseract, especially in the Chinese language. At the time of writing, it supports more than eighty languages, including Korean, German, and French.

‍

GOCR

GOCR (or JOCR) was developed under the GNU public license by Joerg Schulenburg. (It was initially known as GNU OCR but later changed to Joerg’s OCR). It supports input formats like TIFF, GIF, PNG, PNM, PBM, and BMP to output a text file. It supports Windows, Linux, and OS/2.


You can integrate GOCR with different frontends, which makes it easy to port to different operating systems and architectures. You don’t have to train a program or store large fonts. You can simply call from the command line to get the results.


It is not always accurate because it has difficulty reading handwritten text, noisy images, and overlapping characters. It’s available in English and can also translate barcodes. At the time of writing, GOCR is not actively maintained, with no new releases since 2018. It doesn’t seem to have large community support, either


It works on the CPU but not with the GPU. It was written in the C programming language. Some wrappers are available, like gocr-php, Golang implementation, and GOCR.js.


Cognitive OpenOCR

Cognitive OpenOCR (Cuneiform) by Cognitive Technologies was developed by combining databases from other openware OCR programs, plus user input and feedback. It supports twenty to thirty languages, including Russian, English, Turkish, and Italian.


Because it’s database is built-in, you don’t need an internet connection to use it; however, it has not been actively maintained since 2019 and does not offer community support.


Most of the time, outputs need editing, and the tool gives poor results with less contrasted images, making it less accurate. It works on the CPU but does not support GPU. It was written in C and C++ and has a wrapper available in .NET.

‍

Conclusion

OCR programs can be a tremendous asset to businesses as they complete their digitization of documents and switch to paper-free offices. The programs listed above offer a range of benefits depending on your context.


Consider the languages you need, available support, and other features when choosing OCR software for your organization.


Looking for more ways to achieve a paperless office? Discover how to embed eSignatures into any website or app with the Dropbox Sign API to make signing accessible for everyone, everywhere.

‍

Stay in the loop

Done! Please check your inbox.

Thank you!
Thank you for subscribing!

Lorem ipsum

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Lorem ipsum
icon arrow right
icon close

Up next:

Close-up illustration of a handwritten signature, representing modern digital signing solutions.
Developers
15
minute read

Integrating Dropbox Sign with Ruby on Rails: A Step-by-Step Tutorial

Close-up illustration of a handwritten signature, representing modern digital signing solutions.
Developers
15
minute read

Dropbox Sign vs. SignNow for developers

eBook

How small businesses can navigate hybrid work to their advantage

Products
Dropbox SignDropbox Sign APIDropbox FaxIntegrations
Why Dropbox Sign
Electronic signaturesSign documentsSign and Fill PDFsOnline contractsCreate electronic signaturesSignature editorSign word documents
Support
Help centerContact salesContact supportManage cookiesGetting started: Dropbox SignGetting started: Dropbox Sign API
Resources
BlogCustomer storiesResource centerLegality guideTrust center
Partners
Strategic PartnersPartners locator
Company
CareersTermsPrivacy
icon facebookicon youtube

Accepted payment methods

Mastercard logoVisa logoAmerican Express LogoDiscover logo
CPA Compliance BadgeHIPAA compliance badgeSky High Enterprise Ready badgeISO 9001 Certified badge

Dropbox Sign electronic signatures are legally binding in the United States, European Union, United Kingdom, and in many countries around the world.
For more information, please view our Terms and Conditions and Privacy Policy

OSZAR »